Skip to end of banner
Go to start of banner

Updating the Python client version in the synapser package.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »


Background:  The synapser R package embeds a copy of the Synapse Python client, automatically generating wrapper functions in R matching the Python command set.  When a new version of the Synapse Python client becomes available, we update the R package as follows:


  1. Create a feature branch of the synapser GitHub repo, https://github.com/Sage-Bionetworks/synapser, branching from the 'develop' branch.
  2. Visit https://pypi.python.org/pypi/synapseclient/ and click on the link to the latest version, e.g. https://pypi.python.org/pypi/synapseclient/1.7.5
  3. Copy the link to the .tar.gz archive, e.g. https://pypi.python.org/packages/70/1d/f7af7571f00e248b6410241301f7add772d1afadc745d732545304bf7d41/synapseclient-1.7.5.tar.gz
  4. In your feature branch edit inst/python/installPythonClient.py
    1. Change  packageName = "synapseclient-1.7.3" to match the version of the new Python client archive.
    2. Change urlPrefix = "https://pypi.python.org/packages/b0/73/89ff25d74e8cf342982bbbdc98ec724243f799ce1c4196181e106a5528bc/" to match the prefix of the URL found in step 3.
  5. R CMD install .
  6. run 'git status' and look for any files added, removed, or changed under the sub folder 'auto-man/'.   
    1. For any new files, copy them to man/, removing the five line header and editing as needed.
    2. For any removed files, delete the corresponding file under man/
    3. For any modified files, use 'git diff' to examine the changes and then modify the corresponding file under man/ as needed.
  7. Build and load the package:
    1. R CMD install .
    2. R
    3. library(synapser)
  8. Now use "help" or "?" to review any files modified under man/
  9. When satisfied, 'git commit -am <feature branch>', then push to GitHub.
  10. Follow the usual procedure for building/testing on all platforms, conducting a code review and releasing the package.
  • No labels