Skip to content

Latest commit

 

History

History
40 lines (31 loc) · 3.12 KB

HOW_TO_RELEASE.md

File metadata and controls

40 lines (31 loc) · 3.12 KB

Setup

  • Create a new branch for this release: git checkout -b releasev0.X.Y
  • Update release version in ./docs/whats-new.rst
  • Increase release version in ./setup.py
  • Create a PR to prepare it, name it with one of the Nature emoji and make sure it was never used before

Prepare code for release

Code clean-up

  • Run codespell from repo root and fix errors: codespell -q 2
  • Run flake8 from repo root and fix errors

Software distribution readiness

  • Manually trigger upstream CI tests for the release branch and ensure they are passed
  • Update pinned dependencies versions in ./ci/requirements/py*-*-pinned.yml environment files using upstream CI tests information
  • Possibly update ./requirements.txt and ./docs/requirements.txt if the oldest dependencies versions were upgraded
  • Make sure that all CI tests are passed
  • Activate and make sure the documentation for the release branch is built on RTD

Preparation conclusion

  • Merge this PR to master
  • Update release date in ./docs/whats-new.rst
  • Make sure all CI tests are passed and RTD doc is built on the master branch

Publish the release

  • "Draft a new release" on GitHub. Choose a release tag v0.X.Y, fill in the release title and click on the Auto-generate release notes button.
    This will trigger the publish Github action that will push the release on Pypi.
  • Last check the ./setup.py file version of the release and that the documentation is ready
  • Publish !
  • Checkout on Pypi and Conda that the new release is distributed.

Publish on pypi

CI tests / RTD build results

CI tests CI tests Upstream Documentation Status