Skip to content

Releases: bitcoindevkit/bdk-ffi

Release 1.0.0-beta.2

04 Sep 19:36
v1.0.0-beta.2
983feec
Compare
Choose a tag to compare
Release 1.0.0-beta.2 Pre-release
Pre-release

This release updates the bdk-ffi libraries to the latest bdk_wallet 1.0.0-beta.2 and related libraries (Esplora, Electrum, etc.), as well as uses the latest uniffi-rs library version 0.28.0. The releases now depend on bitcoin-ffi for the types that are exposed from the rust-bitcoin org. It also bumps the minimum supported Android API level to 24 (Android Nougat).

Changelog

Added

  • SQLite persistence through bdk_sqlite #544
  • The Address, DescriptorSecretKey, DescriptorPublicKey, Mnemonic, and Descriptor types now have the toString() method implemented on them by default #551
  • Address.from_script() #554
  • New FromScriptError #561
  • New type ChangeSet #561
  • Wallet constructors do not take a persistence path anymore #561
  • Wallet.get_balance() method renamed to balance() #561
  • Add add_global_xpubs() method on TxBuilder #574
  • Add wallet.derivation_index method on Wallet type #579
  • Add wallet.persist method on Wallet type #582
  • Add Connection type #582

Changed

  • AddressError is replaced by AddressParseError #561
  • New variants in CalculateFeeError #561
  • New variants in CreateTxError #561
  • New variants in ParseAmountError #561
  • New variants in SignerError #561
  • New variants in WalletCreationError #561
  • Wallet.calculate_fee() returns an Amount #561
  • Renamed Transaction.txid() to Transaction.compute_txid() #561

Removed

  • flat file persistence #544

What's Changed

New Contributors

Full Changelog: v1.0.0-alpha.11...v1.0.0-beta.2

Release 1.0.0-alpha.11

29 May 18:25
v1.0.0-alpha.11
d5cf483
Compare
Choose a tag to compare
Pre-release

Summary

This release brings the latest alpha 11 release of the Rust bdk_wallet library, as well as the new Electrum client, the new memory wallet, and a whole lot of new types and APIs across the library. Also of note are the much simpler-to-use full_scan and sync workflows for syncing wallets.

Changelog

Added:

  • Amount type #533
  • TxIn type #536
  • Transaction.input() method #536
  • Transaction.output() method #536
  • Transaction.lock_time() method #536
  • Electrum client #535
  • Memory wallet #528

Full Changelog: v1.0.0-alpha.9...v1.0.0-alpha.11

Release 1.0.0-alpha.9

22 Apr 12:45
v1.0.0-alpha.9
38ff60a
Compare
Choose a tag to compare
Release 1.0.0-alpha.9 Pre-release
Pre-release

Summary

This release brings the latest alpha 9 release of the Rust bdk library, as well as new error types, support for Python 3.11 and 3.12, the new CannonicalTx type, better build workflows, and a number of new APIs for the Wallet, Transaction, and other types.

What's Changed

Full Changelog: v1.0.0-alpha.7...v1.0.0-alpha.9

v1.0.0-alpha.7

27 Mar 14:59
v1.0.0-alpha.7
189a9c0
Compare
Choose a tag to compare
v1.0.0-alpha.7 Pre-release
Pre-release

Release 1.0.0-alpha.7

Summary

This release brings back into the 1.0 API a number of APIs from the 0.31 release, and adds the new flat file persistence feature, as well as more fine-grain errors.

What's Changed

Full Changelog: v1.0.0-alpha.2a...v1.0.0-alpha.7

v0.31.0

18 Jan 20:13
v0.31.0
8d1ecd1
Compare
Choose a tag to compare
v0.31.0 Pre-release
Pre-release

Summary

This release updates the bindings libraries to bdk version 0.29.0, updating rust-bitcoin to version 0.30.2.

Changelog

  • APIs Changed:
    • BumpFeeTxBuilder.allow_shrinking() now takes a Script as its argument #443
    • The Address constructor now takes a Network argument #443
    • The Payload::PubkeyHash and Payload::ScriptHash now have string arguments instead of byte arrays #443
  • APIs Added:
    • The Address type now has the is_valid_for_network() method #443

v1.0.0-alpha.2a

21 Nov 20:21
v1.0.0-alpha.2a
dc58ddc
Compare
Choose a tag to compare
v1.0.0-alpha.2a Pre-release
Pre-release

Summary

This release is the first alpha release of the 1.0 API for the bindings libraries. 🎉

Changelog

  • Create and recover wallets using descriptors, including the four descriptor templates
  • Sync a wallet using a blocking Esplora client
  • Query the wallet for balance and addresses
  • Create and sign transactions using the transaction builder
  • Broadcast transactions

What's Changed

Full Changelog: v0.30.0...v1.0.0-alpha.2a

v0.30.0

12 Sep 19:33
v0.30.0
599bd8f
Compare
Choose a tag to compare
v0.30.0 Pre-release
Pre-release

Summary

This release has a new API and a few internal optimizations and refactorings.

Changelog

  • APIs Added
    • Add BIP-86 descriptor templates #388

What's Changed

Full Changelog: v0.29.0...v0.30.0

v0.29.0

19 Jun 18:08
v0.29.0
8b66ac9
Compare
Choose a tag to compare
v0.29.0 Pre-release
Pre-release

Summary

This release has a number of new APIs.

Changelog

  • Drop support of pypy releases of Python libraries #351
  • Drop support for very old Linux versions that do not support the manylinux_2_17_x86_64 platform tag #351
  • Add support for Windows in bdk-jvm #336
  • Add support for older version of Linux distros in bdk-jvm #345
  • APIs added
    • Add is_mine method to Wallet type #355
    • Expose Script.to_bytes() method #369

What's Changed

New Contributors

Full Changelog: v0.28.0...v0.29.0

v0.28.0

24 Apr 20:15
v0.28.0
ffd5a96
Compare
Choose a tag to compare
v0.28.0 Pre-release
Pre-release

Summary

This release updates BDK to 0.28.0 and has a number of new APIs.

Changelog

  • Update BDK to version 0.28.0 [#341]
  • Remove support for Python 3.6 and 3.7 [#345]
  • APIs changed:
    • Expose Address payload and network properties. [#325]
    • Add SignOptions to Wallet.sign() params. [#326]
    • address field on AddressInfo type is now of type Address [#333]
    • new PartiallySignedTransaction.json_serialize() function to get JSON serialized value of all PSBT fields. [#334]
    • Add from_script constructor to Address type [#337]

What's Changed

New Contributors

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

Release 0.27.1

21 Feb 20:52
v0.27.1
016bba9
Compare
Choose a tag to compare
Release 0.27.1 Pre-release
Pre-release

Summary

This release updates BDK to 0.27.1 and has a number of new APIs.

Changelog

  • Update BDK to latest version 0.27.1 #312
  • APIs changed
    • PartiallySignedTransaction.extract_tx() returns a Transaction instead of a the transaction bytes. #296
    • Blockchain.broadcast() takes a Transaction instead of a PartiallySignedTransaction. #296
  • APIs added
    • New Transaction structure that can be created from or serialized to consensus encoded bytes. #296
    • Add Wallet.get_internal_address() API #304
    • Add AddressIndex::Peek(index) and AddressIndex::Reset(index) APIs #305

What's Changed

New Contributors

Full Changelog: v0.26.0...v0.27.1