Use this checklist to cut a new release.
- Update
CHANGELOG.md- Move items from "Unreleased" into a new version section.
- Bump version number
pyproject.toml
- Run CI checks locally
make ci
- Confirm CodeQL and SBOM workflows are green
- Confirm trusted publishing is configured
- PyPI/TestPyPI should trust this repo for environments
pypiandtestpypi.
- PyPI/TestPyPI should trust this repo for environments
- Run the GitHub Actions "Release" workflow
- Provide a tag like
vX.Y.Zthat matchespyproject.toml. - Choose TestPyPI or PyPI and optional prerelease flag.
- Provide a tag like
- Verify the GitHub release assets and PyPI/TestPyPI upload