Release Process#

  1. Decide to do a release, and check with regular contributors on Discord that they don’t have anything pending.

  2. Ensure version pins in pyproject.toml and conda-environment.yml are in sync and up to date. Refresh uv.lock:

    uv lock

  3. Update the release notes in the develop branch via a PR.

  4. Create a new Tag and Release using the GitHub Releases Web UI

  5. Wait for the GitHub Action to run and publish the new release to PyPI

  6. Wait for the conda-forge bot to notice the new PyPI version and create a PR against the conda-forge datacube feedstock

  7. Fix any errors and merge the PR created by the conda-forge bot to create a new conda-forge release.

  8. Manually update the stable branch:

    • git checkout <release tag>

    • git push –force origin stable

  9. Post release announcements on Slack, Discord, and social media platforms.

  10. Kick back, relax, and enjoy a tasty beverage.