|
| 1 | +--- |
| 2 | +name: Zarr-Python release checklist |
| 3 | +about: Checklist for a new Zarr-Python release. [For project maintainers only!] |
| 4 | +title: Release Zarr-Python vX.Y.Z |
| 5 | +labels: release-checklist |
| 6 | +assignees: '' |
| 7 | + |
| 8 | +--- |
| 9 | + |
| 10 | +**Release**: [v0.x.x](https://github.com/zarr-developers/zarr-python/milestones/?) |
| 11 | +**Scheduled Date**: 20YY/MM/DD |
| 12 | + |
| 13 | +**Priority PRs/issues to complete prior to release** |
| 14 | + |
| 15 | +- [ ] Priority pull request #X |
| 16 | + |
| 17 | +**Before release**: |
| 18 | + |
| 19 | +- [ ] Make sure that all pull requests which will be included in the release have been properly documented as changelog files in the [`changes/` directory](https://github.com/zarr-developers/zarr-python/tree/main/changes). |
| 20 | +- [ ] Run ``towncrier build --version x.y.z`` to create the changelog, and commit the result to the main branch. |
| 21 | +- [ ] Check [SPEC 0](https://scientific-python.org/specs/spec-0000/#support-window) to see if the minimum supported version of Python or NumPy needs bumping. |
| 22 | +- [ ] Check to ensure that: |
| 23 | + - [ ] Deprecated workarounds/codes/tests are removed. Run `grep "# TODO" **/*.py` to find all potential TODOs. |
| 24 | + - [ ] All tests pass in the ["Tests" workflow](https://github.com/zarr-developers/zarr-python/actions/workflows/test.yml). |
| 25 | + - [ ] All tests pass in the ["GPU Tests" workflow](https://github.com/zarr-developers/zarr-python/actions/workflows/gpu_test.yml). |
| 26 | + - [ ] All tests pass in the ["Hypothesis" workflow](https://github.com/zarr-developers/zarr-python/actions/workflows/hypothesis.yaml). |
| 27 | + - [ ] Check that downstream libraries work well (maintainers can make executive decisions about whether all checks are required for this release). |
| 28 | + - [ ] Xarray (@jhamman @dcherian @TomNicholas) |
| 29 | + - Zarr's upstream compatibility is tested via the [Upstream Dev CI worklow](https://github.com/pydata/xarray/actions/workflows/upstream-dev-ci.yaml). |
| 30 | + - Click on the most recent workflow and check that the `upstream-dev` job has run and passed. `upstream-dev` is not run on all all workflow runs. |
| 31 | + - Check that the expected version of Zarr-Python was tested using the `Version Info` step of the `upstream-dev` job. |
| 32 | + - If testing on a branch other than `main` is needed, open a PR modifying https://github.com/pydata/xarray/blob/90ee30943aedba66a37856b2332a41264e288c20/ci/install-upstream-wheels.sh#L56 and add the `run-upstream` label. |
| 33 | + - [ ] Titiler.Xarray (@maxrjones) |
| 34 | + - [Modify dependencies](https://github.com/developmentseed/titiler/blob/main/src/titiler/xarray/pyproject.toml) for titiler.xarray. |
| 35 | + - Modify triggers for running [the test workflow](https://github.com/developmentseed/titiler/blob/61549f2de07b20cca8fb991cfcdc89b23e18ad05/.github/workflows/ci.yml#L5-L7). |
| 36 | + - Push the branch to the repository and check for the actions for any failures. |
| 37 | + |
| 38 | +**Release**: |
| 39 | + |
| 40 | +- [ ] Go to https://github.com/zarr-developers/zarr-python/releases. |
| 41 | + - [ ] Click "Draft a new release". |
| 42 | + - [ ] Choose a version number prefixed with a `v` (e.g. `v0.0.0`). For pre-releases, include the appropriate suffix (e.g. `v0.0.0a1` or `v0.0.0rc2`). |
| 43 | + - [ ] Set the description of the release to: `See release notes https://zarr.readthedocs.io/en/stable/release-notes.html#release-0-0-0`, replacing the correct version numbers. For pre-release versions, the URL should omit the pre-release suffix, e.g. "a1" or "rc1". |
| 44 | + - [ ] Click on "Generate release notes" to auto-fill the description. |
| 45 | + - [ ] Make a release by clicking the 'Publish Release' button, this will automatically create a tag too. |
| 46 | +- [ ] Verify that release workflows succeeded. |
| 47 | + - [ ] The latest version is correct on [PyPI](https://pypi.org/project/zarr/). |
| 48 | + - [ ] The stable version is correct on [ReadTheDocs](https://zarr.readthedocs.io/en/stable/). |
| 49 | + |
| 50 | +**After release**: |
| 51 | + |
| 52 | +- [ ] Review and merge the pull request on the conda-forge [zarr-feedstock](https://github.com/conda-forge/zarr-feedstock) that will be automatically generated. |
| 53 | + |
| 54 | +--- |
| 55 | + |
| 56 | +- [ ] Party :tada: |
0 commit comments