Contributing¶
Before opening a pull request, run:
Changelog fragments¶
User-visible changes need a file named changes/<pr>.<type>.md. Supported types
are added, changed, breaking, fixed, deprecated, security, and
docs. Before a pull request number exists, use an orphan filename such as
changes/+retry-observer.added.md.
Maintainers may apply skip-changelog only to internal changes that do not
affect users. Generated release pull requests carry the release label and are
exempt because they consume the fragments.
Preparing a release¶
- Run
Prepare releasewithdry_run=trueand inspect its patch artifact. - Run it again with
dry_run=falseto openrelease/X.Y.Z. - Review and merge the release pull request after
CI requiredsucceeds. - Create and push an annotated
X.Y.Ztag matchingpyproject.toml. - Watch package publication, GitHub Release creation, and versioned docs.
If publication partially fails, rerun only the failed GitHub jobs so the retained verified artifact is reused. Never rebuild a published version locally: PyPI files are immutable.