Skip to content

Release

Erik edited this page Feb 19, 2020 · 3 revisions

pyGSTi Release Procedure

Core developers should follow this procedure when making a new release of pyGSTi:

  1. Merge beta into master.

    Merge the content of the release into master. There may be hotfixes or other small patches in master which aren't in beta or develop -- keep needed hotfixes, and remove unneeded ones.

  2. Make sure this version of master is what you want to release.

    You can use git diff origin/master to compare your branch with the last release.

  3. Create a new tag with the incremented version number for the release.

    Use git tag -a $VERSION -m "PyGSTi version $VERSION", where $VERSION is the incremented version number, like v0.9.7.5.

  4. Push master and the new tag to the remote repository.

    Use git push --tags origin master. Only core pyGSTi developers can push to master -- you'll be informed if you don't have sufficient permissions. If you get a remote: Internal Server Error message you might need to increase the max POST buffer size using a command like git config --global http.postBuffer 157286400. Also, pushing to master can be done more explicitly in two steps by git push (to push the master branch) and git push origin "v$VERSION" (to push the tag).

  5. Watch the CI build. Make sure it passes and deploys the new version to PyPI. When the CI builds the tag, the final "deploy" stage should automatically send the new version to PyPi.

Clone this wiki locally