-
Notifications
You must be signed in to change notification settings - Fork 405
Description
Create a new minor release
Summary
This release of bdk_chain v0.23.2 introduces important improvements to transaction conflict handling, where IndexedTxGraph now considers transactions that conflict with relevant transactions as also relevant. The bdk_bitcoind_rpc FilterIter API has been redesigned with breaking changes for enhanced BIP-158 filtering capabilities. It also adds a new populate_anchor_cache method for anchor management, fixes a stale anchor hash issue on reorganizations in bdk_electrum, and includes a breaking change that boxes the changeset of StoreErrorWithDump for improved memory efficiency.
Commit
Changelog
- refactor!:
Box
the changeset ofStoreErrorWithDump
by @110CodingP in refactor!:Box
the changeset ofStoreErrorWithDump
#1998 IndexedTxGraph
: Transactions that conflict with relevant txs are also relevant. by @evanlinjin inIndexedTxGraph
: Transactions that conflict with relevant txs are also relevant. #2008- ci: pin
rayon
dependencies for msrv by @LagginTimes in ci: pinrayon
dependencies for msrv #2013 - chore: add metadata fields to issue templates for triage by @LagginTimes in chore: add metadata fields to issue templates for triage #1992
- ci: pin
socket2
for msrv by @LagginTimes in ci: pinsocket2
for msrv #2018 - Add populate_anchor_cache method to bdk by @Her-Code in Add populate_anchor_cache method to bdk #2005
- fix(electrum): fix stale anchor hash on reorg by @LagginTimes in fix(electrum): fix stale anchor hash on reorg #2011
- ci: pin
time
for msrv by @LagginTimes in ci: pintime
for msrv #2019 - docs(chain): add doctest for min confirmation balance filtering by @LagginTimes in docs(chain): add doctest for min confirmation balance filtering #2007
FilterIter
API redesign by @ValuedMammal inFilterIter
API redesign #2000- chore(release): bump
bdk-chain
to0.23.2
by @oleonardolima in chore(release): bumpbdk-chain
to0.23.2
#2023
Checklist
Release numbering must follow Semantic Versioning. These steps assume the current master
branch development version is 0.23.2.
On the day of the feature freeze
Change the master
branch to the next MINOR+1 version:
- Switch to the
master
branch. - Create a new PR branch called
bump_dev_MAJOR_MINOR+1
, eg.bump_dev_0_22
. - Bump the
bump_dev_MAJOR_MINOR+1
branch to the next development MINOR+1 version.- Change the
Cargo.toml
version value toMAJOR.MINOR+1.0
. - Update the
CHANGELOG.md
file. - The commit message should be "Bump version to MAJOR.MINOR+1.0".
- Change the
- Create PR and merge the
bump_dev_MAJOR_MINOR+1
branch tomaster
.- Title PR "Bump version to MAJOR.MINOR+1.0".
Create a new release branch and release candidate tag:
- Double check that your local
master
is up-to-date with the upstream repo. - Create a new branch called
release/MAJOR.MINOR+1
frommaster
. - Bump the
release/MAJOR.MINOR+1
branch toMAJOR.MINOR+1.0-rc.1
version.- Change the
Cargo.toml
version value toMAJOR.MINOR+1.0-rc.1
. - The commit message should be "Bump version to MAJOR.MINOR+1.0-rc.1".
- Change the
- Add a tag to the
HEAD
commit in therelease/MAJOR.MINOR+1
branch.- The tag name should be
vMAJOR.MINOR+1.0-rc.1
- Use message "Release MAJOR.MINOR+1.0 rc.1".
- Make sure the tag is signed, for extra safety use the explicit
--sign
flag.
- The tag name should be
- Push the
release/MAJOR.MINOR
branch and new tag to thebitcoindevkit/bdk
repo.- Use
git push --tags
option to push the newvMAJOR.MINOR+1.0-rc.1
tag.
- Use
If any issues need to be fixed before the MAJOR.MINOR+1.0 version is released:
- Merge fix PRs to the
master
branch. - Git cherry-pick fix commits to the
release/MAJOR.MINOR+1
branch. - Verify fixes in
release/MAJOR.MINOR+1
branch. - Bump the
release/MAJOR.MINOR+1
branch toMAJOR.MINOR+1.0-rc.x+1
version.- Change the
Cargo.toml
version value toMAJOR.MINOR+1.0-rc.x+1
. - The commit message should be "Bump version to MAJOR.MINOR+1.0-rc.x+1".
- Change the
- Add a tag to the
HEAD
commit in therelease/MAJOR.MINOR+1
branch.- The tag name should be
vMAJOR.MINOR+1.0-rc.x+1
, where x is the current release candidate number. - Use tag message "Release MAJOR.MINOR+1.0 rc.x+1".
- Make sure the tag is signed, for extra safety use the explicit
--sign
flag.
- The tag name should be
- Push the new tag to the
bitcoindevkit/bdk
repo.- Use
git push --tags
option to push the newvMAJOR.MINOR+1.0-rc.x+1
tag.
- Use
On the day of the release
Tag and publish new release:
- Bump the
release/MAJOR.MINOR+1
branch toMAJOR.MINOR+1.0
version.- Change the
Cargo.toml
version value toMAJOR.MINOR+1.0
. - The commit message should be "Bump version to MAJOR.MINOR+1.0".
- Change the
- Add a tag to the
HEAD
commit in therelease/MAJOR.MINOR+1
branch.- The tag name should be
vMAJOR.MINOR+1.0
- The first line of the tag message should be "Release 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
--sign
flag.
- The tag name should be
- Wait for the CI to finish one last time.
- Push the new tag to the
bitcoindevkit/bdk
repo. - Publish all the updated crates 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 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.0
release 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 and Mastodon.
- Celebrate 🎉
Metadata
Metadata
Assignees
Labels
Type
Projects
Status