Repository navigation
Release payjoin-1.2.0 #1920
Description
Create a new minor release
Rationale: #1446 (non-blocking receive) and #1907 (FFI uses payjoin::url) merged after payjoin 1.1.0. We didn't manage to release all of the FFI changes because there's a bunch of automation that doesn't exist. And it requires a bunch of manual tagging that we didn't yet do. And now we want to do those FFI releases so it makes sense to do that on top of the code we already wrote instead of waiting for another tag.
Summary
Commit
Changelog
Checklist
Release numbering must follow Semantic Versioning. These steps assume the current master
branch development version is MAJOR.MINOR.0. Release-managed crates are payjoin,
payjoin-cli, and payjoin-mailroom; tags use the <crate>-<version> scheme.
On the day of the feature freeze
Change the master branch to the next MINOR+1 version:
- Switch to the
masterbranch. - Create a new PR branch called
bump-CRATE-MAJOR-MINOR+1, eg.bump-CRATE-0-22. - Bump the
bump-CRATE-MAJOR-MINOR+1branch to the next development MINOR+1 version.- Change the
Cargo.tomlversion value toMAJOR.MINOR+1.0for the crate being released,
and update every workspace member's version requirement on it to match. - Run
contrib/update-lock-files.shto apply upgrades to the Cargo lock files. - Update the crate's
CHANGELOG.mdfile, adding a## MAJOR.MINOR+1.0section that
summarizes the PRs merged since the last release tag. - The commit message should be "Bump CRATE version to MAJOR.MINOR+1.0".
- Change the
- Create PR for the
bump-CRATE-MAJOR-MINOR+1branch tomaster.- Title PR "Bump CRATE version to MAJOR.MINOR+1.0".
- Merge the
bump-CRATE-MAJOR-MINOR+1branch tomaster.
If any issues need to be fixed before the MAJOR.MINOR+1.0 version is released:
- Merge fix PRs to the
masterbranch. - Git cherry-pick fix commits to the
bump-CRATE-MAJOR.MINOR+1branch. - Verify fixes in
bump-CRATE-MAJOR.MINOR+1branch.
On the day of the release
- Create a signed annotated tag on the
HEADcommit in themasterbranch.- The tag name should be
CRATE-MAJOR.MINOR+1.0, eg.payjoin-1.0.0. - The first line of the tag message should be "Release CRATE-MAJOR.MINOR+1.0".
- In the body of the tag message put a copy of the Summary and Changelog for the release.
- Sign with a key committed under
contrib/release/keys/, using the explicit--signflag.
**‼️ This thing needs to be a script. It doesn't really make any sense for us to have the whole section and change log repeated in the tag. ** WE SHOULD DO THIS DIFFERENTLY
- The tag name should be
- Push the new tag to the
payjoin/rust-payjoinrepo. - Approve the
releaseenvironment when it requests a reviewer. - Announce the release, using the Summary, on Discord, Twitter, Nostr, and stacker.news.
- Celebrate 🎉
Activity