| name | Zarr-Python release checklist |
|---|---|
| about | Checklist for a new Zarr-Python release. [For project maintainers only!] |
| title | Release Zarr-Python vX.Y.Z |
| labels | release-checklist |
| assignees |
Release: v3.x.x Scheduled Date: 20YY/MM/DD
Priority PRs/issues to complete prior to release
- Priority pull request #X
Before release:
- Check SPEC 0 to see if the minimum supported version of Python or NumPy needs bumping.
- Verify that the latest CI workflows on
mainare passing: Tests, GPU Tests, Hypothesis, Docs, Lint, Wheels. - Run the "Prepare release" workflow with the target version. This will build the changelog and open a release PR with the
run-downstreamlabel. - Verify that the downstream tests (triggered automatically by the
run-downstreamlabel) pass on the release PR. - Review the release PR and verify the changelog in
docs/release-notes.mdlooks correct. - Merge the release PR.
Release:
- Draft a new GitHub Release with tag
vX.Y.Ztargetingmain. Use "Generate release notes" for the description. - Verify the release is published on PyPI and ReadTheDocs.
After release:
- Review and merge the pull request on the conda-forge zarr-feedstock that will be automatically generated.
- Party 🎉
Releasing from a branch other than main
In rare cases (e.g. patch releases for an older minor version), you may need to release from a dedicated release branch (e.g. 3.1.x):
- Create the release branch from the appropriate tag if it doesn't already exist.
- Cherry-pick or backport the necessary commits onto the branch.
- Run
towncrier build --version x.y.zand commit the result to the release branch instead ofmain. - When drafting the GitHub Release, set the target to the release branch instead of
main. - After the release, ensure any relevant changelog updates are also reflected on
main.