Skip to content

Preparing a Release

Jack Wrenn edited this page Apr 7, 2026 · 1 revision

1. Prepare a Release PR

A release PR (e.g., #1010) bumps the Itertools version number (if necessary) and updates the changelog.

To update CHANGELOG.md, collect the PRs merged since the last tag. This command generates this list in such a way that, when pasted into a GitHub comment, is rendered as a checklist with PR titles and numbers:

git log $(git describe --abbrev=0).. --reverse --oneline \
  | cut -d' ' -f1 \
  | xargs -I {} gh pr list --search {} --state merged --json number \
  | jq '.[] | .number' \
  | sort -nu \
  | xargs -I {} echo "- [ ] #{}"

Some notes on adapting this list into a good changelog:

  • Changelog bullet points should be specific, and do not need to use PR titles verbatim.
  • Documentation changes, except in the case of new guarantees, do not need to be mentioned.
  • Internal changes unlikely to cause breakage do not need to be mentioned.

2. Cut a Release

TODO

Clone this wiki locally