Skip to content

Releases: bitcoindevkit/bdk

Release 0.28.1

04 Aug 02:18
v0.28.1
7231039
Compare
Choose a tag to compare
Release 0.28.1 Pre-release
Pre-release

Summary

This patch release backports (from the BDK 1.0 dev branch) a fix for a bug in the policy condition calculation and adds a new taproot single key descriptor template (BIP-86). The policy condition calculation bug can cause issues when a policy subtree fails due to missing info even if it's not selected when creating a new transaction, errors on unused policy paths are now ignored.

Changelog

Fixed

  • Backported #932 fix for policy condition calculation #1008

Added

  • Backported #840 taproot descriptor template (BIP-86) #1033

What's Changed

New Contributors

Full Changelog: v0.28.0...v0.28.1

Release 1.0.0-alpha.1

19 Jul 01:54
v1.0.0-alpha.1
f4d2a76
Compare
Choose a tag to compare
Release 1.0.0-alpha.1 Pre-release
Pre-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.

Changelog

Fixed

  • Fixed a bug in the policy condition calculation. #932
  • Pin base64 to 0.21.0 #990
  • Fix docsrs publishing for bdk crate. #1011

Changed

  • Refactor bdk_chain to use new ChainOracle structure. #926 #963 #965 #975 #976
  • Better no std support. #894
    • Set default-features = false for rust-bitcoin and rust-miniscript.
    • Introduce std default feature for bdk, bdk_chain and bdk_esplora.

Added

  • Add a simple conversion tool for going to kilo weight units. #953
  • Add Custom spk iterator. #927
  • Add taproot descriptor template (BIP-86). #840

What's Changed

New Contributors

Full Changelog: v1.0.0-alpha.0...v1.0.0-alpha.1

Release 0.28.0

17 Apr 17:33
v0.28.0
78529b6
Compare
Choose a tag to compare
Release 0.28.0 Pre-release
Pre-release

Summary

This is a maintenance release and includes changes from yanked version 0.27.2 including to disable default-features for rust-bitcoin and rust-miniscript dependencies, and for rust-esplora-client optional dependency. New default std feature must now be enabled unless building for wasm.

Changelog

  • Bump bip39 crate to v2.0.0 #875
  • Set default-features = false for rust-bitcoin and rust-miniscript #882
  • Update esplora client dependency to version 0.4 #884
  • Added new std feature as part of default features #930

What's Changed

Full Changelog: v0.27.1...v0.28.0

Release 1.0.0-alpha.0

20 Mar 18:07
v1.0.0-alpha.0
30c1190
Compare
Choose a tag to compare
Release 1.0.0-alpha.0 Pre-release
Pre-release

Summary

The first "alpha" release of the new BDK 1.0 refactoring work. This is still a WIP and only meant to be used for testing and experimentation with downstream projects.

Also bumping below workspace crate versions:

bdk_chain to 0.4.0
bdk_electrum to 0.2.0
bdk_esplora to 0.2.0
bdk_file_store to 0.1.0

Changelog

Not updating the CHANGELOG file for alpha releases, just putting here for the record.

  • bdk v1.0.0-alpha.0 #793
  • Nit fixes on documentation #888
  • Add docs for EsploraAsyncExt and make doctests runnable #889
  • Simplify reveal_to_target logic #890

Release 0.27.2

15 Mar 19:57
v0.27.2
de46a51
Compare
Choose a tag to compare
Release 0.27.2 Pre-release
Pre-release

RELEASE YANKED FROM CRATES.IO

See: #897

Summary

Disable default-features for rust-bitcoin and rust-miniscript dependencies, and for rust-esplora-client optional dependency.

Changelog

Changed

  • Set default-features = false for rust-bitcoin and rust-miniscript #882
  • Update esplora client dependency to version 0.4 #884

What's Changed

Full Changelog: v0.27.1...v0.27.2

Release 0.27.1

17 Feb 15:03
v0.27.1
7a8e660
Compare
Choose a tag to compare
Release 0.27.1 Pre-release
Pre-release

Summary

Fixes RUSTSEC-2022-0090, this issue is only applicable if you are using the optional sqlite database feature.

Changelog

Changed

  • Update optional sqlite dependency from 0.27.0 to 0.28.0. #867

Full Changelog: v0.27.0...v0.27.1

Release 0.27.0

11 Feb 23:36
v0.27.0
553df31
Compare
Choose a tag to compare
Release 0.27.0 Pre-release
Pre-release

Summary

A maintenance release with a bump in project MSRV to 1.57.0, updated dependence and a few developer oriented improvements. Improvements include better error formatting, don't default to async/await for wasm32 and adding derived PartialEq and Eq on SyncTime.

Changelog

Changed

  • Improve display error formatting #814
  • Don't default to use async/await on wasm32 #831
  • Project MSRV changed from 1.56.1 to 1.57.0 #842
  • Update rust-miniscript dependency to latest bug fix release 9.0 #844

Added

  • Derive PartialEq, Eq on SyncTime #837

What's Changed

New Contributors

Full Changelog: v0.26.0...v0.27.0

Release 0.26.0

04 Jan 18:28
v0.26.0
cd64d12
Compare
Choose a tag to compare
Release 0.26.0 Pre-release
Pre-release

Summary

This release improves Fulcrum electrum server compatibility and fixes public descriptor template key origin paths. We also snuck in small enhancements to configure the electrum client to validate the domain using SSL and sort TransactionDetails by block height and timestamp.

Changelog

Fixed

  • Make electrum blockchain client save_tx function order independent to work with Fulcrum servers. #808
  • Fix wrong testnet key origin path in public descriptor templates. #818
  • Make README.md code examples compile without errors. #820

Added

  • For electrum blockchain client, allow user to configure whether to validate the domain using SSL. #805
  • Implement ordering for TransactionDetails. #812

Changed

  • Bump hwi dependency to 0.4.0. #825
  • Bump esplora-client dependency to 0.3 #830

What's Changed

New Contributors

Full Changelog: v0.25.0...v0.26.0

Release 0.25.0

05 Dec 21:04
v0.25.0
d288cbb
Compare
Choose a tag to compare
Release 0.25.0 Pre-release
Pre-release

Summary

This release fixes slow sync time and big script_pubkeys table with SQLite, the wallet rescan height for the FullyNodedExport and setting the network for keys in the KeyMap when using descriptor templates. Also added are new blockchain and mnemonic examples.

Changelog

Fixed

  • Slow sync time and big script_pubkeys table with SQLite.
  • Wallet rescan height for the FullyNodedExport.
  • Setting the network for keys in the KeyMap when using descriptor templates.

Added

  • Examples for connecting to Esplora, Electrum Server, Neutrino and Bitcoin Core.
  • Example for using a mnemonic in a descriptors.

What's Changed

Full Changelog: v0.24.0...v0.25.0

Release 0.24.0

05 Nov 21:00
v0.24.0
2275b5f
Compare
Choose a tag to compare
Release 0.24.0 Pre-release
Pre-release

Summary

This release contains important dependency updates for rust-bitcoin to 0.29 and rust-miniscript to 8.0, plus related crates that also depend on the latest version of rust-bitcoin. The release also includes a breaking change to the BDK signer which now produces low-R signatures by default, saving one byte. A bug was found in the get_checksum and get_checksum_bytes functions, which are now deprecated in favor of fixed versions called calc_checksum and calc_checksum_bytes. And finally a new hardware-signer features was added that re-exports the hwi crate, along with a new hardware_signers.rs example file.

Changelog

Changed

  • Updated dependency versions for rust-bitcoin to 0.29 and rust-miniscript to 8.0, plus all related crates. @afilini #770
  • BDK Signer now produces low-R signatures by default, saving one byte. If you want to preserve the original behavior, set allow_grinding in the SignOptions to false. @vladimirfomene #779
  • Deprecated get_checksumand get_checksum_bytes due to bug where they calculates the checksum of a descriptor that already has a checksum. Use calc_checksum and calc_checksum_bytes instead. @evanlinjin #765
  • Remove deprecated "address validators". @afilini #770

Added

What's Changed

Full Changelog: v0.23.0...v0.24.0