owned this note changed a year ago
Published Linked with GitHub

Q4 Spiral Update (for Q3 Work)

Paragraph Style

Keep an eye out for the bdk 1.0.0-alpha.2 release with all the improvments added in Q3. Noteble changes include @evanlinjin's innovative new bitcoind RPC based blockchain client module that updates the chain and wallet state block by block. This enables quick syncing to bitcoind, even for wallets tracking many addresses. @evanlinjin also merged a major change to Implement linked-list LocalChain. This change enables more efficent and thread safe block data storage. @vladimirfomene did some required refactoring to the chain update structures to improve usability. @danielabrozzoni performed our long overdue upgrade to the latest rust-bitcoin 0.30 version which is a big win for interoperating with other rust-bitcoin base projects. @notmandatory removed the TransactionDetails type from the Wallet API and replaced it with new functions to provide the same info. @evanlinjin added a new cli example for the esplora blockchain client showing off new chain syncing features. And @LagginTimes and @danielabrozzoni implemented a new and improved set of tests to prevent conflicting transactions in the TxGraph struture.

In related news, @danielabrozzoni's rust-miniscript planning module PR was merged

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →
. This work lays the foundation for future improvements to the bdk transaction builder.

A new BDK Case Studies page was released on the bitcoindevkit website showcasing a growing list of projects that use the bitcoin development kit. a new maintenance bdk version 0.29.0 was released which fixes a small bug in the wallet and updates the rust-bitcoin dependency to the latest 0.30 version.

The language bindings for BDK have a new release (0.30.0) of bdk-android, BitcoinDevKit (Swift library), bdkpython, bdk-rn, and bdk-flutter with support for new BIP-86 (Taproot) descriptor templates. The language bindings are also working to make their build tools and system well documented and produce templates so that other Rust-based bitcoin projects can leverage their process. Check out the uniffi examples website and Rust language bindings template for more information. Three successfull Summer of Bitcoin projects were completed, including a new Swift iOS Demo Wallet for which @reez and @notmandatory mentored @Ytemiloluwa, adding Payjoin support to bdk-cli for which @DanGould and @notmandatory mentored @willowenss, and a now ready-for-showtime Padawan Wallet, where @thunderbiscuit mentored @Prakhar.

The summer also saw some of the crew active in the community and at conferences. @evanlinjin was on the 億聰哲史 podcast, helped start a new BitDevs in Taipei, and gave a talk and workshop at the first Bitcoin Thailand conference. @danielabrozzoni taught a few lessons on Bitcoin and BDK for the cubo+ mentoring program, gave a talk at hack.bs.it on Rust, and was on the "Il priorato del Bitcoin" podcast for an episode on Bitcoin technical news (BIP324, covenants, drivechains, Ark, etc). @notmandatory gave a workshop at TABConf2023 on how to use the new BDK 1.0 syncing mechanisms.



Bullet Points Style

  • Check out the new BDK case studies page with a growing list of projects that use the bitcoin development kit.

BDK 1.0

  • Keep an eye out for the bdk 1.0.0-alpha.2 release with all the improvments below.
  • @evanlinjin implemented an innovative new bitcoind RPC based blockchain client module that updates the chain and wallet state block by block. This enables quick syncing to bitcoind, even for wallets tracking many addresses.
  • @evanlinjin merged a major change to Implement linked-list LocalChain. This change enables more efficent and thread safe block data storage.
  • @vladimirfomene did some required refactoring to the chain update structures to improve usability.
  • @danielabrozzoni performed our long overdue upgrade to the latest rust-bitcoin 0.30 version which is a big win for interoperating with other rust-bitcoin base projects.
  • @danielabrozzoni's rust-miniscript planning module PR was merged
    Image Not Showing Possible Reasons
    • The image file may be corrupted
    • The server hosting the image is unavailable
    • The image path is incorrect
    • The image format is not supported
    Learn More →
    . This work lays the foundation for future improvements to the bdk transaction builder.
  • @notmandatory removed the TransactionDetails type from the Wallet API and replaced it with new functions to provide the same info via new functions.
  • @evanlinjin added a new cli example for the esplora blockchain client showing off new chain syncing features.
  • @LagginTimes and @danielabrozzoni implemented a new and improved set of tests to prevent conflicting transactions in the TxGraph struture.

BDK Maintenance

  • bdk version 0.29.0 was released which fixes a bug in the wallet balance if the wallet receives more than one coinbase transaction and updates the rust-bitcoin dependency to the latest 0.30 version.

BDK Language Bindings

Summer of Bitcoin

We wrapped up three SoB projects to:

BDK Talks and Workshops

Select a repo