Skip to content

chore: automate more of the release process#3896

Open
maxrjones wants to merge 6 commits intozarr-developers:mainfrom
maxrjones:release-improvements
Open

chore: automate more of the release process#3896
maxrjones wants to merge 6 commits intozarr-developers:mainfrom
maxrjones:release-improvements

Conversation

@maxrjones
Copy link
Copy Markdown
Member

This PR aims to simplify our release process via more automation:

  • Add a github workflow that will open a PR with the consolidated changelog entry
  • Add a github workflow that will run relevant tests from the xarray/numcodecs repos
  • Update the release checklist to remove extra items and focus on the typical process of releasing from main

TODO:

  • Add unit tests and/or doctests in docstrings
  • Add docstrings and API docs for any new/modified user-facing classes and functions
  • New/modified features documented in docs/user-guide/*.md
  • Changes documented as a new file in changes/
  • GitHub Actions have all passed
  • Test coverage is 100% (Codecov passes)

@github-actions github-actions bot added the needs release notes Automatically applied to PRs which haven't added release notes label Apr 9, 2026
@d-v-b
Copy link
Copy Markdown
Contributor

d-v-b commented Apr 9, 2026

comparison between this approach and https://github.com/googleapis/release-please or similar tools?

@maxrjones
Copy link
Copy Markdown
Member Author

comparison between this approach and googleapis/release-please or similar tools?

Towncrier and release-please serve somewhat similar purposes, but release-please has a broader scope handling releases in addition to changelogs. release-please relies on conventional commits whereas towncrier relies on manual fragments.

This PR focuses on automating the system we already adopt (towncrier) rather than proposing a new system (e.g., release-please). This PR includes automating downstream tests, which are not solved by tools like towncrier or release please.

@d-v-b
Copy link
Copy Markdown
Contributor

d-v-b commented Apr 9, 2026

This PR includes automating downstream tests, which are not solved by tools like towncrier or release please.

I didn't see how that is wired up -- isn't the downstream testing job just on workflow dispatch?

@maxrjones maxrjones added the run-downstream Run the tests of downstream libraries (e.g., xarray) against zarr label Apr 9, 2026
@maxrjones
Copy link
Copy Markdown
Member Author

This PR includes automating downstream tests, which are not solved by tools like towncrier or release please.

I didn't see how that is wired up -- isn't the downstream testing job just on workflow dispatch?

58f74a6 (this PR) added a trigger for the downstream run based on a label, which is automatically added to the towncrier PR. the towncrier PR is opened via workflow dispatch.

@maxrjones maxrjones added run-downstream Run the tests of downstream libraries (e.g., xarray) against zarr and removed run-downstream Run the tests of downstream libraries (e.g., xarray) against zarr labels Apr 9, 2026
@maxrjones maxrjones added run-downstream Run the tests of downstream libraries (e.g., xarray) against zarr and removed run-downstream Run the tests of downstream libraries (e.g., xarray) against zarr labels Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs release notes Automatically applied to PRs which haven't added release notes run-downstream Run the tests of downstream libraries (e.g., xarray) against zarr

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants