-
Notifications
You must be signed in to change notification settings - Fork 412
Closed
Description
Create a new alpha release
Summary
The BDK 1.0.0-alpha release should be used for experimentation only, APIs are still unstable and the code is not fully tested. This alpha.1 release introduces the new ChainOracle struct for more efficient chain syncing. A new std default feature was added for bdk, bdk_chain and bdk_esplora crates; when disabled these crates can be used in no-std projects. BDK 1.0.0-alpha.x docs are now published to docs.rs.
Commit
Changelog
Fixed
- Fixed a bug in the policy condition calculation. Fix policy condition calculation #932
- Pin base64 to 0.21.0 Pin base64 to 0.21.0 to keep the MSRV to 1.57.0 #990
- Fix docsrs publishing for bdk crate. [ci] fix docsrs error for bdk crate #1011
Changed
- Refactor
bdk_chainto use newChainOraclestructure. Introduce redesignedbdk_chainstructures #926 Various tweaks to redesigned structures #963 Implement persistence with the new structures #965 Improvetxoutlisting and balance APIs for redesigned structures #975 ReimplementWallet,ElectrumExtandEsplora{Async}Extwith redesigned structures. #976 - Better no std support. Better no-std support #894
- Set
default-features = falseforrust-bitcoinandrust-miniscript. - Introduce
stddefault feature forbdk,bdk_chainandbdk_esplora.
- Set
Added
- Add a simple conversion tool for going to kilo weight units. Add sat_per_kwu to FeeRate #953
- Add Custom spk iterator. Custom spk iterator #927
- Add taproot descriptor template (BIP-86). create taproot descriptor template #840
Checklist
Release numbering must follow Semantic Versioning. These steps assume the current master
branch development version is MAJOR.MINOR.0.
Before publishing the release
Change the master branch to the next MINOR+1 version:
- Switch to the
masterbranch. - Create a new PR branch called
bump_dev_1.0.0-alpha.1. - Bump the
cratesversions and README files-
bdkto1.0.0-alpha.1. -
bdk_chainto0.5.0 -
bdk_electrumto0.3.0 -
bdk_esplorato0.3.0 -
bdk_file_storeto0.2.0
-
- Bump the
example-cratesversions and README files-
example_clito0.2.0 -
example_electrumto0.2.0 -
wallet_electrum_exampleto0.2.0 -
wallet_esplorato0.2.0 -
wallet_esplora_asyncto0.2.0
-
- Commit the changes with message "Bump version to 1.0.0-alpha.1".
- Create PR and merge the
bump_dev_1.0.0-alpha.1branch tomaster.- Title PR "Bump version to 1.0.0-alpha.1".
On the day of the release
Tag and publish new release:
- Add a tag to the
HEADcommit in themasterbranch.- The tag name should be
v1.0.0-alpha.1 - The first line of the tag message should be "Release 1.0.0-alpha.1".
- 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.1. - 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 Nostr. - Celebrate 🎉
Metadata
Metadata
Assignees
Labels
releaseRelease related issue or PRRelease related issue or PR
Type
Projects
Status
Done