How to create a release

The current release process entails the following steps:

  1. Make sure you have the master branch locally updated to the state on the main fork of the project.

  2. Update CHANGES.rst: run the script .maintenance/update_changes.sh <next_tag>, with the tag set to the version string of the upcoming release. Further edit the notes to add a short summary at the top.

  3. Make a commit with these changes and push the commit to the main fork on GitHub (i.e., upstream).

  4. Tag the release. For example, to release Version 0.5, we did:

    git tag -a 0.5 -m "Version 0.5"
    
  5. Push the tag:

    git push upstream 0.5
    
  6. On GitHub:
    • Navigate to the “Releases” tab

    • Click on “Draft a new release”.

    • In the “Tag version” box enter the version string of this release.

    • In “Release title” enter (for example) “Version 0.5”.

    • In the description box copy the entry in CHANGES.rst corresponding to this release (with the exclusion of the title).

  7. Announce the release through all channels currently used:

    • Slack to DIRECT collaborators.

    • More to come…