Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This document attempts to cover development and release practices for the synapser projects. As of synapser 1.0.0+, PythonEmbedInR is no longer used.

...

Table of Contents
minLevel1
maxLevel6
outlinetrue
typelist
printablefalse

Github repositories

The code base for Synapse R client (wrap Python client) can be found at https://github.com/Sage-Bionetworks/synapser .

...

  1. Create a new release candidate branch from develop with branch name as the version to release (v1.0-rc)

  2. Update the docs in the release candidate branch:

    1. ensure you have the R pkgdown package installed (on a Mac you may need to brew install harfbuzz, fribidi, and pandoc if you haven't already)

    2. Update the changelog contained in NEWS.md

    3. Update the version in the DESCRIPTION file, as the version is reflected in the generated documentation.

    4. from the repo directory run the following command:

      Code Block
      R -e "pkgdown::build_site()"
    5. Review the changes by inspecting docs/index.html file.

    6. Commit the changes to the docs directory. When this release branch is validated and merged to master it will automatically publish to https://r-docs.synapse.org via GitHub Pages.

  3. Create a new staging release

    1. Go to the releases of the appropriate repo https://github.com/Sage-Bionetworks/synapser/releases

    2. Click the "Draft a new release" button and fill the following values:

      Important: Check the "This is a pre-release" checkbox. This will cause the release to be deployed to test.pypi.org rather than production pypi.org.

      Tag version: X.Y-rc where X.Y where X.Y is the release version (e.g. 0.11-rc)
      Target: the previously created vX.Y-rc branch
      Release title: Same as tag version (X.Y-rc)

    3. Hit the publish button, this will trigger a GitHub Action that a GitHub Action that will test and deploy the production release to http://staging-ran.synapse.org/

  4. Notify validators about the available version. The validation version will be in format <version-to-build>.<build-number> (For example: 1.0.87, for build number 87).

...

Validators can download and/or install the new pre-release version via install.packages() (recommended) or using devtools (not-recommended). After installing the pre-release version, a validator can validate the JIRA tickets that they were assigned and change their status to

Status
colourGreen
titleCLOSE
or
Status
colourBlue
titleREOPEN
.

Option 1: Installing from Staging RAN

Staging RAN Repo: http://staging-ran.synapse.org

...

  1. Go to the releases of the appropriate repo https://github.com/Sage-Bionetworks/synapser/releases

  2. Click the "Draft a new release" button and fill the following values:

    Tag version: X.Y where X.Y is the release version (e.g. 0.11)
    Target: the previously created vX.Y-rc branch
    Release title: Same as tag version (X.Y)

    Do NOT check the "This is a pre-release" checkbox.

  3. Hit the publish button, this will trigger a GitHub Action that will test and deploy the production release to http://ran.synapse.org/

  4. Merge the develop branch to the master branch.

...