Skip to content

Release wallet-1.1.0 #1821

@notmandatory

Description

@notmandatory

Summary

In this release of bdk_wallet v1.1.0 the tx builder is updated to use transaction version 2 by default, and support for wallets using testnet4 is now live. This release also includes important updates to bdk_electrum which has a new MSRV of 1.75.0 to stay current with the latest security fixes, bdk_bitcoind_rpc introduces a new compact block filter module, as well as various bug fixes and improvements.

Commit

cc15e5d

Changelog

bdk_core

bdk_bitcoind_rpc

bdk_wallet

bdk_electrum

Checklist

Release numbering must follow Semantic Versioning. These steps assume the current master branch development version is v1.0.0.

On the day of the feature freeze

Change the master branch to the next MINOR+1 version:

  • Ensure all milestone issues and PRs closed, archive them on the project board.
  • Switch to the master branch.
  • Create a new PR branch called release/bump_dev_1.1.0.
  • Create a "draft" release page and release notes comparing master commit with prior tag v1.0.0
  • Determine which crates need a major release bump and which only need a patch release by looking at the git log. cargo-semver-checks can also help with this
    cargo semver-checks --baseline-rev <prev-tag>
  • Bump the bump_dev_1.1.0 branch to the next development version.
    • Bump the modified crates versions in their Cargo.toml files. [update this list with only changed crates]
      • bdk_core
      • bdk_chain
      • bdk_bitcoind_rpc
      • bdk_electrum
      • bdk_esplora
      • bdk_file_store
      • bdk_testenv
      • bdk_wallet
    • For crates that changed update their CHANGELOG.md files, see "keep a changelog".
    • The commit message should be: [update this list with only changed crates]
      Bump bdk_wallet version to 1.1.0 
      
      bdk_core to TBD
      bdk_chain to TBD
      bdk_bitcoind_rpc to 0.18.0
      bdk_electrum to 0.21.0
      bdk_esplora to TBD
      bdk_file_store to TBD
      bdk_testenv to TBD
      
  • Create PR and merge the release/bump_dev_1.1.0 branch to master.

On the day of the release

Tag and publish new release:

  • Add a tag to the HEAD commit in the master branch.
    • git tag wallet-1.1.0 --sign -e
    • The tag name should be wallet-1.1.0
    • The first line of the tag message should be "Release wallet-1.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 --sign flag.
  • Verify the new tag with git tag -v wallet-1.1.0
  • Add similar tags for other crates that changed versions.
    • core-TBD
    • chain-TBD
    • bitcoind_rpc-0.18.0
    • electrum-0.21.0
    • esplora-TBD
    • file_store-TBD
    • testenv-TBD
  • Wait for the CI to finish one last time.
  • Push the new tags to the bitcoindevkit/bdk repo.
    • git push upstream --tags
  • Publish all the updated crates to crates.io. [update this list with only changed crates]
    • cargo publish -p <crate name>
    • bdk_core
    • bdk_chain
    • bdk_testenv
    • bdk_bitcoind_rpc
    • bdk_electrum
    • bdk_esplora
    • bdk_file_store
    • bdk_wallet
  • Create the release on GitHub.
    • Go to "tags", click on the dots on the right and select "Create Release".
    • Set the title to Release wallet-1.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.
    • This is the final 1.1.0 release, do not 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 releases, using the Summary, on Discord, Twitter and Nostr.
  • Celebrate 🎉

Metadata

Metadata

Labels

releaseRelease related issue or PR

Type

No type

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions