- Determine which package you're releasing
- Determine the next version, following semantic versioning
- Create a release branch:
git checkout -b release/{package}-v{version} - Update that package's
pyproject.tomlwith the new version - Update that package's CHANGELOG with:
- A new header with the new version
- A new link at the bottom of the CHANGELOG for that header
git push -u origin- Once approved, merge the PR
git checkout main && git pull && scripts/release {package}- Go to the draft release href provided by the script, update that Github release with information from the CHANGELOG, and publish it
- Github actions will automatically publish a new PyPI release
Important
You'll need to set up .netrc authentication to use scripts/release.
The tag format created by the script ({package}/v{version}) is very important, because that's how we discover which package to build and publish in Github Actions.