All notable changes to this project prior to release 0.26.0 are documented in this file. Future
changelog information can be found in each release's git tag and can be viewed with git tag -ln100 "v*"
.
Changelog info is also documented on the GitHub releases
page. See DEVELOPMENT_CYCLE.md for more details.
- Add distinct
key-value-db
andsqlite-db
features, keep default askey-value-db
- Reorganize existing codes in separate modules. Change crate type from lib to bin.
- Rewrite relevant doc comments as
structopt
help document. - Update
bdk
andbdk-reserves
to v0.22.0. - Change default database to
sqlite
. - Change the
esplora-reqwest
feature to always use async mode - Change rpc
--skip-blocks
option to--start-time
which 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
network
option to improve help message, and fix typo in doc. - Add a module
wasm
containing objects to use bdk-cli from web assembly
- Re-license to dual MIT and Apache 2.0 and update project name to "Bitcoin Dev Kit"
- Update to bdk and bdk-reserves to
0.18.0
- Add 'verify' feature flag which enables transaction verification against consensus rules during sync.
- Add experimental
regtest-*
features to automatically deploy local regtest nodes (bitcoind, and electrs) while running cli commands. - Put cached wallet data in separate directories: ~/.bdk-bitcoin/<wallet_name>
- New MSRV set to
1.56
- Replace
wallet bump_fee
command--send_all
with new--shrink
option - Add 'reserve' feature to enable proof of reserve
- If no wallet name is provided, derive one from the descriptor instead of using "main"
- Add optional cookie authentication for rpc backend
- Add RPC backend support, after bdk v0.12.0 release
- Update default feature to not include electrum
- Upgrade to
bdk
v0.12.x - Add top level command "Compile" which compiles a miniscript policy to an output descriptor
- Add
CompactFilterOpts
toWalletOpts
to enable compact-filter blockchain configuration - Add
verbose
option toWalletOpts
to display PSBTs and transaction details also in JSON format - Require at most one blockchain client feature be enabled at a time
- Change default esplora server URL to https://blockstream.info/testnet/api/ to match default testnet network
- Add support for
wasm
- Upgrade
bdk
to0.4.0
andbdk-macros
to0.3.0
- A wallet without a
Blockchain
is used when handling offline wallet sub-commands - Add top level commands "wallet", "key", and "repl"
- Add "key" sub-commands to "generate" and "restore" a master private key
- Add "key" sub-command to "derive" an extended public key from a master private key
- "repl" command now has an "exit" sub-command
- "wallet" sub-commands and options must be proceeded by "wallet" command
- "repl" command loop now includes both "wallet" and "key" sub-commands
- Add CONTRIBUTING.md
- Add CI and code coverage Discord badges to the README
- Add CI and code coverage github actions workflows
- Add scheduled audit check in CI
- Add CHANGELOG.md
- If an invalid network name return an error instead of defaulting to
testnet