Repository navigation
Release payjoin-1.0.0-rc.5 #1740
Copy link
Copy link
Closed
Description
Create a new minor release
Summary
This release renames PersistedError::error_state to fatal_state, makes
Monitor::check_for_transaction consume self, and adds
ReplayError::expiry_fallback_tx for recovering the fallback transaction from
an expired session. These are the final breaking changes before 1.0 stable.
Commit
Changelog
- Rename
PersistedError::error_state()tofatal_state()(Rename PersistedError::error_state to fatal_state #1728) Monitor::check_for_transaction()now consumesself(Consume self in Monitor check_for_transaction #1729)ReplayError::expiry_fallback_tx()returns the fallback transaction from an
expired session's event log, if available (Cli cancel UX #1700)- Update deps to patch cargo audit vulnerabilities (Update deps to handle feasible cargo audit vulnerabilities #1735)
Checklist
Release numbering must follow Semantic Versioning. These steps assume the current master
branch development version is MAJOR.MINOR.0.
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 all crates in the workspace. - Run
contrib/update-lock-files.shto apply upgrades to the Cargo lock files. - Update the
CHANGELOG.mdfile. - 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
Tag and publish new release:
- Check that the crate is publishable with
cargo publish --dry-runfrom that crate's directory. - Add a tag to the
HEADcommit in themasterbranch.- The tag name should be
CRATE-MAJOR.MINOR+1.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.
- Make sure the tag is signed, for extra safety use the explicit
--signflag.
- The tag name should be
- Wait for the CI to finish one last time.
- Build the docs locally to ensure they are building correctly.
- Push the new tag to the
payjoin/rust-payjoinrepo. - Publish the crate in question to crates.io.
- Create the release on GitHub.
- Go to "tags", click on the dots on the right and select "Create Release".
- Set the title to
Release CRATE-MAJOR.MINOR+1.0. - In the release notes body put the Summary and Changelog.
- Use the "+ Auto-generate release notes" button to add details from included PRs.
- Until we reach a
1.0.0release check the "Pre-release" box.
- Make sure the new release shows up on [crates.io] and that the docs are built correctly on [docs.rs].
- Announce the release, using the Summary, on Discord, Twitter, Nostr, and stacker.news.
- Celebrate 🎉
Metadata
Metadata
Assignees
Labels
No labels
Activity