To publish a new LumiSpy release do the following steps:
- Create a new PR to the 'main' branch for the release process, e.g.
release_v0.1.1 - In a pull request, prepare the release by running the
prepare_release.pypython script (e.g.python prepare_release.py 0.1.1), which will do the following:- update the release notes in
CHANGES.rstby runningtowncrier, - update the
setuptools_scmfallback version inpyproject.toml(for a patch release, this will stay the same).
- update the release notes in
- Check release notes
- Let that PR collect comments for a day to ensure that other maintainers are comfortable with releasing
- Verify that correct date and version number ist set in
CHANGELOG.rst
- Create a tag e.g.
git tag -a v0.1.1 -m "LumiSpy version 0.1.1". The lumispy version will be set at build time from the tag bysetuptools_scm. - Push tag to user fork for a test run
git push origin v0.1.1. Will run the release workflow without uploading to PyPi - Push tag to LumiSpy repository to trigger release
git push upstream v0.1.1(this triggers the GitHub action to create the sdist and wheel and upload to PyPi automatically).⚠️ this is a point of no return⚠️
- Prepare
CHANGELOG.rstfor development by addingUNRELEASEDheadline - Merge the PR
- Tidy up and close corresponding milestone or project
- A PR to the conda-forge feedstock will be created by the conda-forge bot