Releases: bitcoindevkit/bdk-cli
Release list
Release 4.0.0
Summary
This release introduces experimental support for creating silent payment transactions and adds support for BIP-353 DNS payment instructions. It also adds UTXO locking through new wallet commands. Async payjoin sessions are now persisted to SQLite, so interrupted payjoin sessions can be resumed. The release also includes internal refactoring that improves readability and makes adding new commands easier and less prone to errors. It also updates the Wallet API to v3.1.0 amongst other improvements.
Changelog
- Add payjoin persistence by @Mshehu5 in #242
- Add experimental silent payment transaction creation support by @nymius in #220
- Add BIP353 DNS payment instruction support by @sdmg15 in #236
- Add wallet lock_utxo, unlock_utxo, locked_utxos commands by @tvpeter in #293
- Refactor project structure by @tvpeter in Refactor bdk-cli structure #278
- Add generic message signing by @aagbotemi in #179
- Add randomization of the unspendable internal key for taproot descriptors by @va-an in #225
- Add WalletEvent to sync and full_scan for all backends by @tvpeter in #248
- Add integration tests by @tvpeter in test: Implement integration tests #289
- Update features list in README.md by @Musab1258 in #300
- Rename bip322 feature to message_signer by @aagbotemi
- Enforce single recipient for send_all by @1estart in #291
- Update bdk_wallet to v3.1.0, bdk_redb to v0.2.0, bdk_kyoto to v0.17.0` by @tvpeter in #294
- Update bdk_bitcoind_rpc to v0.22.0, bdk_electrum to v0.24.0 by @tvpeter in #248
- Dropped wallet verbose flag by @tvpeter in test: Implement integration tests #289
- Fix saving and reusing proxy_opts in wallet config by @tvpeter in test: Implement integration tests #289
- Limit test-threads for running tests in parallel to 2 by @tvpeter in test: Implement integration tests #289
- Replace Network enum with NetworkKind by @tvpeter in #294
- Replace broadcast_random with submit_package for broadcasting transactions in KyotoClient by @tvpeter in #294
- Dropped include_output_redeem_witness_script and added add_global_xpubs to TxBuilder in create_tx command by @tvpeter in #294
- Dropped pretty flag by @tvpeter in Refactor bdk-cli structure #278
New Contributors
- @aagbotemi made their first contribution in #179
- @1estart made their first contribution in #291
- @sdmg15 made their first contribution in #236
- @Musab1258 made their first contribution in #300
Full Changelog: v3.0.0...v4.0.0
v3.0.0
Summary
This release introduces saving and reusing wallet configuration, adds support for non-persisted async payjoin, automatic descriptor generator, and shell completions, amongst other improvements.
What's Changed
- Update
bdk_kyototo0.15.1by @rustaceanrob in #222 - fix(pretty-format): use
--prettyin any position by @va-an in #224 - Adding descriptor generator by @AmosOO7 in #180
- feat: add non-persisted Async Payjoin support by @mehmetefeumit in #200
- Fix duplicate wallet creation in non-persistent path by @Mshehu5 in #233
- Add saving wallet config with
bdk-cli wallet configby @tvpeter in #203 - Refactor sync_kyoto_client by @Mshehu5 in #230
- CI: Update
continous_integrationandauditworkflows by @tvpeter in #235 - doc: add installation prerequisite to Readme by @tvpeter in #246
- CI: Replace Coveralls with Codecov for coverage reporting by @tvpeter in #247
- Add additional slash to show ReceivePayjoin cli docs by @nymius in #253
- Enforce use of
1.0.0-rc.1payjoin version by @nymius in #252 - chore: remove remainig MSRV mentions by @va-an in #241
- fix(test): Enable using any client in config test by @tvpeter in #256
- feat: add completions subcommand by @va-an in #237
- Deps: Update transitive dependencies
quinn-protoandaws-lc-sysby @tvpeter in #251 - Bump version to 3.0.0 by @tvpeter in #265
New Contributors
- @AmosOO7 made their first contribution in #180
- @mehmetefeumit made their first contribution in #200
- @Mshehu5 made their first contribution in #233
- @nymius made their first contribution in #253
Full Changelog: v2.0.0...v3.0.0
Release 2.0.0
Summary
This release updates bdk_wallet to 2.1.0, adds Taproot descriptor support, and introduces --pretty output formatting. It also adds redb as an alternative database option, improves bdk_kyoto transaction handling, and includes new tooling and examples for easier regtest workflows.
What's Changed
- chore: update README rust version badge to 1.75.0 by @notmandatory in #190
- Fix exit code by @va-an in #173
- Add Justfile command runner by @tvpeter in #198
- Update bdk_wallet dependency to 2.0.0 plus related by @notmandatory in #197
- Docs: add
justexample for using bdk-cli with bitcoind regtest node by @tvpeter in #201 - Kyoto: Remove connection requirement to send tx by @rustaceanrob in #202
- chore(ci): remove MSRV for bdk-cli by @tvpeter in #211
- feat: add redb as an alternative to sqlite by @110CodingP in #206
- feat(pretty-format): add pretty flag to format outputs in a tabular form by @tvpeter in #212
- deps: update bdk_wallet 2.1.0 and related deps by @tvpeter in #214
- Update
compilecommand to support creating taproot descriptors by @va-an in #208 - deps: bump tracing-subscriber to 0.3.20 by @tvpeter in #217
- Bump version to 2.0.0 by @tvpeter in #219
New Contributors
- @va-an made their first contribution in #173
- @110CodingP made their first contribution in #206
Full Changelog: v1.0.0...v2.0.0
Release 1.0.0
Summary
This release of bdk-cli 1.0.0 uses bdk_wallet 1.0.0 and integrates Kyoto, which uses the Kyoto protocol for compact block filters. It sets SQLite as the default database and drops support for sled.
What's Changed
- Update changelog file by @rajarshimaitra in #150
- ci: fix MSRV jobs with cargo update by @notmandatory in #159
- ci: pin tokio to 1.29.1 to build with MSRV 1.57.0 by @notmandatory in #160
- feature: update
bdk-clito usebdk_walletv1 by @tvpeter in #174 - feat(cbf): add
cbffeature usingbdk_kyotoby @tvpeter in #181 - chore(cbf): set kyoto client data dir by @tvpeter in #183
- Implement transaction broadcasting for Kyoto by @rustaceanrob in #182
- ci: fix code coverage workflow by @notmandatory in #186
- docs: update readme by @tvpeter in #187
- Chore/make release by @tvpeter in #188
- chore: update audit workflow to ubuntu-latest by @tvpeter in #189
New Contributors
- @tvpeter made their first contribution in #174
- @rustaceanrob made their first contribution in #182
Full Changelog: v0.27.1...v1.0.0
v0.27.1
Summary
This Release contains development updates and one extra new feature.
- The Stable rustc version is updated to 1.65.
electrsddependency updated to version 0.22.- Adding support for Hardware Wallet Signer.
Changelog
- Added hardware signers through the use of HWI
- Bumped rustc stable to 1.65.
- Bumped electrsd version to v0.22.*.
What's Changed
- nit fix in release steps. by @rajarshimaitra in #138
- update electrsd to v0.22.* by @rajarshimaitra in #139
- bump stable rustc version to 1.65 by @rajarshimaitra in #140
- Bump bdk to
v0.27.0by @rajarshimaitra in #143 - Update bdk from 0.27 to 0.27.1 by @notmandatory in #144
- adding hardware signers by @ulrichard in #135
- Bump version to 0.27.1 by @rajarshimaitra in #147
Full Changelog: v0.26.0...v0.27.1
Release 0.26.0
Summary
This release adds some internal changes around WASM, CBF, cli-app framework and one
usage enhancement.
Changelog
Fixed
- Check that a
PSBTis signed before broadcast, else throw a useful error message to user.
Added
- Miniscript Translation capability to an
AliasMapin wasm, to enhance the paly ground interface.
Changed
- cli-app framework from
structoptoclap. - Temporarily disable
compact_filtersuntilbdk v1.0.0launch.
What's Changed
- Update bdk version to 0.23.0 by @rajarshimaitra in #123
- Bump bdk version to 0.24.0 by @notmandatory in #129
- Migrate from structopt to clap. by @rajarshimaitra in #124
- Remove cbf by @rajarshimaitra in #125
- Remove mention of compact_filters from README until it can be re-enabled by @notmandatory in #136
- Check if psbt is final, before broadcasting by @rajarshimaitra in #128
- Update to bdk v0.26.0 by @rajarshimaitra in #133
- Update the release cycle by @rajarshimaitra in #137
New Contributors
Full Changelog: v0.6.0...v0.26.0
v0.6.0
This is a big release that introduces new node subcommands, WASM support, sqlite DB support, and better documentation. See below for all the enhancement and fixes.
- Add distinct
key-value-dbandsqlite-dbfeatures, keep default askey-value-db - Reorganize existing codes in separate modules. Change crate type from lib to bin.
- Rewrite relevant doc comments as
structopthelp document. - Update
bdkandbdk-reservesto v0.22.0. - Change default database to
sqlite. - Change the
esplora-reqwestfeature to always use async mode - Change rpc
--skip-blocksoption to--start-timewhich specifies time initial sync will start scanning from. - Add new
bdk-cli node <command> [<args>]to control the backend node deployed byregtest-*features. - Add an integration testing framework in
src/tests/integration.rs. This framework uses theregtest-*feature to run automated testing with bdk-cli. - Add possible values for
networkoption to improve help message, and fix typo in doc. - Add a module
wasmcontaining objects to use bdk-cli from web assembly
What's Changed
- Remove some of the reserves and regtest features by @rajarshimaitra in #100
- The Great Reset by @rajarshimaitra in #99
- Fix compilation error when using memory database by @danielabrozzoni in #114
- Use async with esplora-reqwest by @danielabrozzoni in #115
- Update bdk dependency to 0.22 by @notmandatory in #118
- Satoshi's Calculator. by @rajarshimaitra in #102
- Update crate documentation by @rajarshimaitra in #104
- Add add_data enables op_return for bdk-cli by @waterst0ne in #105
- Create wallet dir only when necessary by @danielabrozzoni in #116
- Update bdk cli for wasm by @danielabrozzoni in #117
New Contributors
- @danielabrozzoni made their first contribution in #114
- @waterst0ne made their first contribution in #105
Full Changelog: v0.5.0...v0.6.0
v0.5.0
This release primarily includes the latest dependency versions bumps for bdk and corresponding bdk-reserves to version 0.18. Also included are initial commits for future new features, in particular support for a build-in regtest node and using a SQLite database instead of the default key-value database. Also check out the new "Resources" section in the README when you want to get started with bdk-cli.
What's Changed
- Bump version to 0.4.0 and add tag v0.4.0 for release by @notmandatory in #74
- Add resources section to readme by @thunderbiscuit in #72
- Re-licensing to dual MIT and Apache 2.0 and update project name by @notmandatory in #80
- [bug fix] Add
maybe_descriptor_wallet_name()in repl mode by @rajarshimaitra in #82 - Update to bdk 0.17.0 by @notmandatory in #73
- Auto deploy regtest nodes in background by @rajarshimaitra in #65
- Fetch address index in verbose mode for get_new_address by @rajarshimaitra in #77
- Update miniscript version to 6.1.0 by @notmandatory in #86
- updating bdk and bdk-reserves to v0.18 by @ulrichard in #89
- Add key-value-db and sqlite-db features, separate wallet directories by @notmandatory in #71
- Disable regex tests when repl feature not enabled by @notmandatory in #90
- Release 0.5.0 by @notmandatory in #94
Full Changelog: v0.4.0...v0.5.0
v0.4.0
The first release of bdk-cli for 2022 is finally out! A notable new reserve feature enables proof of reserves commands provided by bdk-reserves. Other changes include replacing the wallet bump_fee command --send_all with the new --shrink option, automatically deriving the wallet name from the descriptor (if no name is provided), and a new cookie authentication option for the rpc blochchain backend.
What's Changed
- Bump version to 0.3.0 by @notmandatory in #49
- update to codecov v2 by @rajarshimaitra in #52
- Replace
wallet bump_feecommand--send_allwith new--shrinkoption by @notmandatory in #45 - Update bdk and bdk-macro dependency by @rajarshimaitra in #54
- Update MSRV to current stable, 1.56.1 by @notmandatory in #59
- Update BDK dependency to v0.14.0 by @ulrichard in #60
- adding the commands for proof-of-reserves using the separate repository by @ulrichard in #48
- Update codecov to grcov from Tarpauline by @rajarshimaitra in #58
- [bug] Fix RPC tests by @rajarshimaitra in #56
- Improve error handlings. by @rajarshimaitra in #61
- Un-pin fd-lock version by @notmandatory in #64
- if no wallet name was provided, use one derived from the descriptor by @ulrichard in #57
- Fix repl and wallet help docs by @notmandatory in #69
- Add cookie authentication option for rpc by @rajarshimaitra in #68
Full Changelog: v0.3.0...v0.4.0
v0.3.0
The v0.3.0 release adds the RPC blockchain client and new CompactBlockFilter blockchain client options, changes the default features to not include the electrum blockchain client, adds a new compile command to compile a miniscript policy to an output descriptor, adds a new verbose output flag to display PSBT details in JSON format, and fixes the cargo install instructions. For all the release details please see the CHANGELOG.
A big thanks to new contributors!
What's Changed
- Tag and release
v0.2.0by @notmandatory in #19 - Add 'compile' sub-command, minor cleanup by @notmandatory in #21
- Make repl and electrum default features by @RCasatta in #22
- Remove unwraps in bdk_cli and more detailed message for ChecksumMismatch by @RCasatta in #23
- Bump 'bdk' and 'bdk-macros' versions, fix docs.rs build features by @notmandatory in #24
- extended bdk-cli key derive to output xprv by @i5hi in #25
- Compact filter by @rajarshimaitra in #26
- adapt to the changed signing interface in bdk 0.7 by @ulrichard in #28
- Add install instructions for crates.io by @thunderbiscuit in #31
- Wallet Verbosity for PSBT details by @sandipndev in #33
- Ci/rust toolchain by @DarthBenro008 in #34
- Show tx details in case verbose is enabled by @sandipndev in #35
- Allow enabling at most one blockchain client feature by @notmandatory in #38
- Update BDK version to 0.12.0 by @rajarshimaitra in #41
- Small explora fixes by @notmandatory in #44
- Use directly FromStr types in StructOpt by @RCasatta in #43
- RPC backend implementation by @rajarshimaitra in #36
New Contributors
- @RCasatta made their first contribution in #22
- @i5hi made their first contribution in #25
- @rajarshimaitra made their first contribution in #26
- @ulrichard made their first contribution in #28
- @thunderbiscuit made their first contribution in #31
- @sandipndev made their first contribution in #33
- @DarthBenro008 made their first contribution in #34
Full Changelog: v0.2.0...v0.3.0