-
Notifications
You must be signed in to change notification settings - Fork 412
Closed
Description
Create a new minor release
Summary
Notable changes include a new bitcoind RPC based blockchain client module for quick syncing to bitcoind, a new linked-list LocalChain, and an upgrade to rust-bitcoin 0.30.
Commit
Changelog
Fixed
- wallet_esplora: missing_heights uses the graph update fix(wallet_esplora): missing_heights uses the graph update #1152
- bump electrum version to 0.18 fix: bump electrum version to 0.18 #1132
- Correct the coin type in the derivation path for wallet examples fix: Correct the coin type in the derivation path for wallet examples #1089
Added
- Add bitcoind_rpc chain-source module. Add
bitcoind_rpcchain source module. #1041 - Add example_bitcoind_rpc example module. Add
bitcoind_rpcchain source module. #1041 - Add AnchorFromBlockPosition trait which are for anchors that can be constructed from a given block, height and position in block. Add
bitcoind_rpcchain source module. #1041 - Add helper methods to IndexedTxGraph and TxGraph for batch operations and applying blocks directly. Add
bitcoind_rpcchain source module. #1041 - Add helper methods to CheckPoint for easier construction from a block Header. Add
bitcoind_rpcchain source module. #1041 - Add cli-example for esplora. Add cli esplora example #1040
- Introduced tx_template module. Better tests for transaction conflict handling #1064
- Introduced TxGraph::TxAncestors iterator. Better tests for transaction conflict handling #1064
- Added walk_ancestors to TxGraph. Better tests for transaction conflict handling #1064
- Implement Anchor for BlockId. Implement Anchor for BlockId #1069
Changed
- Move WalletUpdate to the wallet module. Enhance bdk chain structures #1084
- Remove ForEachTxout trait completely. Enhance bdk chain structures #1084
- Refactor ElectrumExt to not use WalletUpdate. Enhance bdk chain structures #1084
- Rename indexed_tx_graph::IndexedAdditions to indexed_tx_graph::ChangeSet. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename indexed_tx_graph::IndexedAdditions::graph_additions to indexed_tx_graph::ChangeSet::graph. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename indexed_tx_graph::IndexedAdditions::index_additions to indexed_tx_graph::ChangeSet::indexer. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename tx_graph::Additions to tx_graph::ChangeSet. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename keychain::DerivationAdditions to keychain::ChangeSet. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename CanonicalTx::node to CanonicalTx::tx_node. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename CanonicalTx::observed_as to CanonicalTx::chain_position. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename LocalChangeSet to WalletChangeSet. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename LocalChangeSet::chain_changeset to WalletChangeSet::chain. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename LocalChangeSet::indexed_additions to WalletChangeSet::indexed_tx_graph. refactor!(chain): Unify ChangeSet nomenclature #1065
- Rename LocalUpdate to WalletUpdate. refactor!(chain): Unify ChangeSet nomenclature #1065
- Make TxGraph::determine_changeset pub(crate). refactor!(chain): Unify ChangeSet nomenclature #1065
- Add TxGraph::initial_changeset. refactor!(chain): Unify ChangeSet nomenclature #1065
- Add IndexedTxGraph::initial_changeset. refactor!(chain): Unify ChangeSet nomenclature #1065
- Remove TxGraph::insert_txout_preview. refactor!(chain): Unify ChangeSet nomenclature #1065
- Remove TxGraph::insert_tx_preview. refactor!(chain): Unify ChangeSet nomenclature #1065
- Remove insert_anchor_preview. refactor!(chain): Unify ChangeSet nomenclature #1065
- Remove insert_seen_at_preview. refactor!(chain): Unify ChangeSet nomenclature #1065
- Refactored TxGraph::walk_conflicts to use TxGraph::TxAncestors. Better tests for transaction conflict handling #1064
- Update to rust-bitcoin 0.30.0 and miniscript 10.0.0. Update rust bitcoin #1023
- Use apply_update instead of determine_changeset + apply_changeset around the code. Use
apply_updateinstead ofdetermine_changeset+apply_changesetaround the code #1092 - Rename TxGraph::direct_conflicts_of_tx to TxGraph::direct_conflicts. ref(chain): Rename direct_conflicts_of_tx to direct_conflitcs #1164
- Rename methods of esplora ext. Rename methods of esplora ext #1070
Checklist
Release numbering must follow Semantic Versioning. These steps assume the current master branch development version is 1.0.0-alpha.1.
On the day of the release
Update the master branch with to version 1.0.0-alpha.2:
- Switch to the
masterbranch. - Create a new PR branch called
bump_dev_1_0_alpha_2. - Bump the
bump_dev_1_0_alpha_2branch to the next development MINOR+1 version.- Change the bdk
Cargo.tomlversion value to1.0.0-alpha.2. - Change the bdk_chain
Cargo.tomlversion to0.6.0. - Change the bdk_electrum
Cargo.tomlversion to0.4.0. - Change the bdk_esplora
Cargo.tomlversion to0.4.0. - Update the
CHANGELOG.mdfile. - The commit message should be:
Bump bdk version to 1.0.0-alpha.2 Bump bdk_chain to 0.6.0 Bump bdk_electrum to 0.4.0 Bump bdk_esplora to 0.4.0
- Change the bdk
- Create PR and merge the
bump_dev_1_0_alpha_2branch tomaster.- Title PR "Bump version to 1.0.0-alpha.2".
Tag and publish new release:
- Add a tag to the
HEADcommit in themasterbranch.- The tag name should be
v1.0.0-alpha.2 - The first line of the tag message should be "Release 1.0.0-alpha.2".
- 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.
- Push the new tag to the
bitcoindevkit/bdkrepo. - 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 1.0.0-alpha.2. - 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 and Mastodon.
- Celebrate 🎉
thunderbiscuit, danielabrozzoni, nondiremanuel and LLFourn
Metadata
Metadata
Assignees
Labels
releaseRelease related issue or PRRelease related issue or PR
Type
Projects
Status
Done