Skip to content

Releases: bitcoindevkit/bdk-ffi

v2.3.1

26 Feb 17:36
v2.3.1

Choose a tag to compare

This is version 2.3.1 of the BDK language bindings. This release bumps the following Rust dependencies:

Dependency Version
bdk_kyoto 0.15.4

What's Changed

  • Backport Android build/publish workflow and publication plugin changes (#952)
  • Update bdk_kyoto to 0.15.4 (panic fix) (#953)
  • Set iOS deployment target in bdk-swift xcframework build scripts (#958)

Full Changelog: v2.3.0...v2.3.1

v2.3.0

12 Feb 18:54
v2.3.0
08ec19b

Choose a tag to compare

Release 2.3.0

This is version 2.3.0 of the BDK language bindings. This release uses the following Rust dependencies:

Dependency Version
bdk_wallet 2.3.0
bdk_electrum 0.23.2
bdk_esplora 0.22.1
bdk_kyoto 0.15.3
rust-bitcoin 0.32.7
uniffi 0.30.0

Added

  • Expose Wallet::apply_update_events which returns a WalletEvent type #908
  • Expose Psbt::output which returns a list of psbt Output #903
  • Other variant added to CBF RecoveryPoint to enable wallet birthdays #920
  • Implement Display trait for FeeRate #859
  • Expose FeeRate::fee_vb and FeeRate::fee_wu methods #859
  • Wallet API: expose TxBuilder::only_witness_utxo and TxBuilder::add_foreign_utxo #928
  • Esplora API: expose get_block_by_hash which returns a Block #936
  • Esplora API: expose get_tip_hash #930
  • Esplora API: expose get_header_by_hash #930
  • Esplora API: expose get_address_txs #930
  • Esplora API: expose get_tx_no_opt #930
  • Esplora API: expose get_txid_at_block_index #930
  • Esplora API: expose get_merkle_proof and get_output_status #942
  • Electrum API: expose fetch_tx #931
  • Electrum API: expose block_header #931
  • Electrum API: expose block_headers_pop #931
  • Electrum API: expose relay_fee and transaction_get_raw #938
  • DerivationPath: expose child, extend, and to_u32_vec #935

Auto-Generated Changes Log

New Contributors

Full Changelog: v2.2.0...v2.3.0

Release 2.2.0

18 Nov 16:23
v2.2.0
1ab97bf

Choose a tag to compare

This release uses the following Rust dependencies:

Dependency Version
bdk_wallet 2.2.0
bdk_electrum 0.23.2
bdk_esplora 0.22.1
bdk_kyoto 0.15.0
rust-bitcoin 0.32.7
uniffi 0.29.4

Added

  • Implement Display for Script #813
  • Expose Wallet::create_single constructor on Wallet type #825
  • Set lookahead on Wallet::load #829
  • Expose Wallet::apply_evicted_txs method #832
  • Add Wallet::create_from_two_path_descriptor constructor #847
  • next_log and LogLevel are removed from kyoto #849
  • Updates Android native libraries to use 16KB page sizes #865
  • Expose TxBuilder::exclude_unconfirmed method #870
  • Expose TxBuilder::exclude_below_confirmations method #870
  • Throw errors rather than panics on faulty Esplora sync/full_scan operations #863
  • Expose Wallet::insert_txout #884
  • Expose Wallet::nmark_used #882
  • Add Wallet::load_single #897
  • Expose DerivationPath::master , DerivationPath::is_master , DerivationPath::len , DerivationPath::is_empty #893

Auto-Generated Release Notes

New Contributors

Full Changelog: v2.0.0...v2.2.0

v2.0.0

27 Aug 16:11
v2.0.0
0256c27

Choose a tag to compare

This release brings bdk-ffi to it's 2.0.0 version!

The release uses the following Rust dependencies:

  • bdk_wallet 2.0.0
  • bdk_electrum 0.23.0
  • bdk_esplora 0.22.0
  • bdk_kyoto 0.13.1
  • uniffi 0.29.1
  • rust-bitcoin 0.32.6

Added

  • PSBT file operations: read and write PSBT files #800
  • New Psbt::from_unsigned_tx constructor #802
  • New Psbt::spend_utxo method #798
  • Arbitrary persistence for wallet #771
  • Wallet changeset primitives #756
  • Display implementation for Transaction #799
  • Descriptor::max_weight_to_satisfy method #794
  • Expose Wallet::public_descriptor #786
  • Expose Wallet::tx_details #778
  • Expose Wallet::latest_checkpoint #761
  • TxGraphChangeSet::first_seen and last_evicted fields #782
  • from_string constructors for hash types #784
  • Transaction::wtxid method #773
  • Kyoto: average feerate and connect functionality #797

Changed

  • Use Amount type in TxOut instead of u64 #781
  • Update to latest bdk_kyoto with API changes #772
  • Add lookahead as optional argument to wallet methods
    #770

Fixed

  • Export public types from Script #763
  • Change object to record for struct with fields #738

v1.2.0

01 May 15:31
v1.2.0
f7fded3

Choose a tag to compare

This release brings in a new experimental compact block filters client!

The release uses the following Rust dependencies:
- bdk_wallet 1.2.0
- bdk_electrum 0.21.0
- bdk_esplora 0.20.1
- bdk_kyoto 0.8.0
- uniffi 0.29.1
- rust-bitcoin 0.32.5

Added

- New CBF client (Kyoto) [#591], [#716]
- Add optional `proxy` parameter to Esplora client constructor [#711]
- Add optional `socks5` parameter to Electrum client constructor [#711]
- Add `ElectrumClient::ping` method [#689]
- New API docs for a lot of types
- Add `Wallet::apply_unconfirmed_txs` method [#704]
- Add `UnconfirmedTx` type [#704]

Changed

- The `Amount::from_sat` constructor renamed its `sat` argument to `satoshi` [#708]

v1.1.0

13 Mar 15:15
v1.1.0
e887d7d

Choose a tag to compare

This is our first 1.0 stable release!

Dependencies

This release uses the following Rust dependencies:

Library Version
bdk_wallet 1.1.0
bdk_electrum 0.21.0
bdk_esplora 0.20.1
rust-bitcoin 0.32.5
uniffi 0.29.0

Changelog

Added

  • Expose ElectrumClient::block_headers_subscribe method #664
  • Expose EsploraClient::get_block_hash method #665
  • Expose EsploraClient::get_tx_status method #666
  • Expose EsploraClient::get_tx_info method #666
  • Support for Testnet 4 #674
  • Add AddressData and WitnessProgram types from rust bitcoin #671
  • Expose Address::to_address_data method #671

Changed

  • More complete LocalOutput type #667

Automated Release Notes

Full Changelog: v1.0.0-beta.7...v1.1.0

Release 1.1.0-rc.1

26 Feb 18:59
v1.1.0-rc.1
bc9f706

Choose a tag to compare

Release 1.1.0-rc.1 Pre-release
Pre-release

This is our first 1.0 release candidate! Please consider helping us test it and provide feedback if you have any.

Dependencies

This release uses the following Rust dependencies:

Library Version
bdk_wallet 1.1.0
bdk_electrum 0.21.0
bdk_esplora 0.20.1
rust-bitcoin 0.32.5
uniffi 0.29.0

Changelog

Added

  • Expose ElectrumClient::block_headers_subscribe method #664
  • Expose EsploraClient::get_block_hash method #665
  • Expose EsploraClient::get_tx_status method #666
  • Expose EsploraClient::get_tx_info method #666
  • Support for Testnet 4 #674
  • Add AddressData and WitnessProgram types from rust bitcoin #671
  • Expose Address::to_address_data method #671

Changed

  • More complete LocalOutput type #667

Automated Release Notes

Full Changelog: v1.0.0-beta.7...v1.1.0-rc.1

Release 0.32.1

25 Feb 19:57
v0.32.1
bb06f08

Choose a tag to compare

Release 0.32.1 Pre-release
Pre-release

This is a patch release that bumps the Rust bdk library to 0.30.2.

See https://github.com/bitcoindevkit/bdk/releases/tag/v0.30.2 for details!

v1.0.0-beta.7

28 Jan 00:49
v1.0.0-beta.7
3a8f3e3

Choose a tag to compare

v1.0.0-beta.7 Pre-release
Pre-release

This release updates the bdk-ffi libraries to the final bdk_wallet 1.0.0 release, and related libraries (Esplora, Electrum, etc.), as well as adds new methods and types.

Added:

  • ElectrumClient::server_features #641
  • ServerFeaturesRes struct #641
  • ElectrumClient::estimate_fee #641
  • EsploraClient::get_fee_estimates #648
  • New optional argument sign_options on Wallet::sign and Wallet::finalize_psbt #650

Changed:

  • The full_scan and sync methods on the Electrum and Esplora clients now take a renamed request argument #642
  • ElectrumClient::broadcast was renamed ElectrumClient::transaction_broadcast to mirror the Rust API #642

What's Changed

Full Changelog: v1.0.0-beta.6...v1.0.0-beta.7

v1.0.0-beta.6

19 Dec 19:27
v1.0.0-beta.6
6edd43d

Choose a tag to compare

v1.0.0-beta.6 Pre-release
Pre-release

This release updates the bdk-ffi libraries to the latest bdk_wallet 1.0.0-beta.6 and related libraries (Esplora, Electrum, etc).

Added

  • DescriptorPublicKey::is_multipath #625
  • DescriptorPublicKey::master_fingerprint #625
  • Descriptor::is_multipath #625
  • Descriptor:: to_single_descriptors #625
  • EsploraClient::get_height #623
  • Psbt::finalize #630
  • TxBuilder::add_data #611
  • TxBuilder::current_height #611
  • TxBuilder::nlocktime #611
  • TxBuilder::allow_dust #611
  • TxBuilder::version #611
  • TxBuilder::policy_path #629
  • Wallet::cancel_tx #601
  • Wallet::get_utxo #601
  • Wallet::derivation_of_spk #601
  • Wallet::descriptor_checksum #603
  • Wallet:: finalize_psbt #604
  • Wallet:: policies #629

Other

  • Added documentation via docstrings

What's Changed

Full Changelog: v1.0.0-beta.5...v1.0.0-beta.6