]> Untitled Git - bdk-cli/log
bdk-cli
3 months agoMerge bitcoindevkit/bdk-cli#214: deps: update bdk_wallet 2.1.0 and related deps
merge-script [Fri, 29 Aug 2025 13:13:59 +0000 (14:13 +0100)]
Merge bitcoindevkit/bdk-cli#214: deps: update bdk_wallet 2.1.0 and related deps

7625422df01410ec2a6336210e8a8ca439014991 deps: update bdk_wallet 2.1.0 and related deps (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Update the following dependencies:

  - bdk_wallet to 2.1.0
  - bdk_bitcoind_rpc to 0.21.0
  - bdk_esplora to 0.22.1
  - bdk_kyoto to 0.13.1

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers

  Fixes #213
  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ## Changelog notice
  - Updated `bdk_wallet ` to  `2.1.0`,  `bdk_bitcoind_rpc` to `0.21.0`, `bdk_esplora` to `0.22.1`, `bdk_kyoto` to `0.13.1`

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature
  * [x] I've updated `CHANGELOG.md`

Top commit has no ACKs.

Tree-SHA512: f85e90940b1ecb1fb81f7dadedeef8565d47712d584bf7b3db3c80278f999321f1e14ffe046a0425666400f375bb070d5ad2368848ba2ca5736635f0810562ac

3 months agodeps: update bdk_wallet 2.1.0 and related deps
Vihiga Tyonum [Mon, 25 Aug 2025 16:51:29 +0000 (17:51 +0100)]
deps: update bdk_wallet 2.1.0 and related deps

- bdk_wallet to 2.1.0
- bdk_bitcoind_rpc to 0.21.0
- bdk_esplora to 0.22.1
- bdk_kyoto to 0.13.1
- update CHANGELOG

3 months agoMerge bitcoindevkit/bdk-cli#212: feat(pretty-format): add pretty flag to format outpu...
merge-script [Tue, 26 Aug 2025 18:09:38 +0000 (19:09 +0100)]
Merge bitcoindevkit/bdk-cli#212: feat(pretty-format): add pretty flag to format outputs in a tabular form

94012c65bd130fc6c5330ff368219b3bef81fddd feat(pretty-fmt): update README for `pretty` flag (Vihiga Tyonum)
1cadf63a2d6058f5e496860116dc2a4ff1f10e8f feat(pretty-fmt): add cli-table to format output (Vihiga Tyonum)

Pull request description:

  Fixes #193

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  This PR adds a top level flag `--pretty` to format output in a tabular form to enhance readability for users.

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ## Changelog notice
  - Add `--pretty` top level flag for formatting commands output in a tabular format

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [x] I've added docs for the new feature
  * [x] I've updated `CHANGELOG.md`

Top commit has no ACKs.

Tree-SHA512: 61dee251b2f3615ae013c31bcd484db7315ddab103a1668f8ca20d34337042bcc8ad48c5014029db5fecb6b5573c2c3ac9a2521e31678d851191841733bceafc

3 months agofeat(pretty-fmt): update README for `pretty` flag
Vihiga Tyonum [Thu, 21 Aug 2025 09:19:18 +0000 (10:19 +0100)]
feat(pretty-fmt): update README for `pretty` flag

- update README for `--pretty` flag
- update CHANGELOG

3 months agofeat(pretty-fmt): add cli-table to format output
Vihiga Tyonum [Mon, 18 Aug 2025 13:16:42 +0000 (14:16 +0100)]
feat(pretty-fmt): add cli-table to format output

- add cli-table and `--pretty` flag to format
output of commands in a tabular form for:
    - offline wallet commands
    - repl
    - compile commands
    - keys commands

3 months agoMerge bitcoindevkit/bdk-cli#206: feat: add redb as an alternative to sqlite
merge-script [Tue, 26 Aug 2025 07:57:54 +0000 (08:57 +0100)]
Merge bitcoindevkit/bdk-cli#206: feat: add redb as an alternative to sqlite

83e6dd6e9ccd9c9cb5414f02da505a4e4810b41d refactor: add docs,version and change visibility (codingp110)
7bcbcf05d38f95f8a2b047fdd57eb320a065339e feat: add redb as an alternative to sqlite (codingp110)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description
  We currently only support `sqlite` persistence. This PR adds an alternative `redb` persistence by leveraging Summer Of Bitcoin work on [`bdk_redb`](https://github.com/110CodingP/bdk_redb).
  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers
  The CI does not pass since `bdk_redb` has a MSRV of 1.85.0 which is in turn due to `redb`. Also `bdk_redb` is yet to published as a crate so currently we use the GitHub version of the same.

  The following script tests a simple scenario of creating a wallet with bitcoind-rpc as chain source , sending funds to an address controlled by the wallet and creating a transaction using the wallet:
  ```
  rm -rf ~/.bitcoin/regtest
  rm -rf ~/.bdk-bitcoin

  bitcoin-cli -rpcuser=alice -rpcpassword=password createwallet alice

  export NETWORK=regtest

  export EXT_DESCRIPTOR=$(bitcoin-cli -rpcwallet=alice -rpcuser=alice -rpcpassword=password listdescriptors true | jq -r '.descriptors | .[0] | .desc')

  export INT_DESCRIPTOR=$(bitcoin-cli -rpcwallet=alice -rpcuser=alice -rpcpassword=password listdescriptors true | jq -r '.descriptors | .[1] | .desc')

  export DATABASE_TYPE=redb
  export CLIENT_TYPE=rpc
  export SERVER_URL=127.0.0.1:18443

  addr=$(bdk-cli wallet -w alice -a alice:password new_address | jq -r '.address')

  bitcoin-cli -rpcuser=alice -rpcpassword=password -rpcwallet=alice generatetoaddress 102 $addr

  bdk-cli wallet -w alice -a alice:password full_scan
  bdk-cli wallet -w alice -a alice:password balance

  recipient=$(bitcoin-cli  -rpcwallet=alice getrawchangeaddress)
  psbt=$(bdk-cli wallet -w alice -a alice:password create_tx --to "$recipient:5000" | jq -r '.psbt')

  signed_psbt=$(bdk-cli wallet -w alice -a alice:password sign $psbt | jq -r '.psbt')
  bdk-cli wallet -w alice -a alice:password broadcast --psbt $signed_psbt

  unset $addr

  addr=$(bdk-cli wallet -w alice -a alice:password new_address | jq -r '.address')
  bitcoin-cli -rpcuser=alice -rpcpassword=password -rpcwallet=alice generatetoaddress 1 $addr

  bdk-cli wallet -w alice -a alice:password sync
  bdk-cli wallet -w alice -a alice:password balance
  ```

  the conf is as follows:
  ```
  regtest=1

  [regtest]
  server=1
  rpcuser=alice
  rpcpassword=password
  ```

  ~~Also removed `sqlite` from default features since we now have an alternative.~~

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ## Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

   * [x] I've added tests for the new feature (test is in the PR description)
   * [x] I've added docs for the new feature
   * [x] I've updated `CHANGELOG.md`

ACKs for top commit:
  notmandatory:
    utACK 83e6dd6e9ccd9c9cb5414f02da505a4e4810b41d

Tree-SHA512: 50481b0cc293437145c5b1c3671e21b4a2bed32733e86a05a3404e13b70c77bd04754c53411656c7e84a4fc6efcf92659949f2c02f2135fabb0612b010ef4861

3 months agorefactor: add docs,version and change visibility
codingp110 [Tue, 15 Jul 2025 07:21:18 +0000 (12:51 +0530)]
refactor: add docs,version and change visibility

Since the user does not need to know about how commands are being
handled.

3 months agofeat: add redb as an alternative to sqlite
codingp110 [Mon, 14 Jul 2025 17:24:11 +0000 (22:54 +0530)]
feat: add redb as an alternative to sqlite

3 months agoMerge bitcoindevkit/bdk-cli#211: chore(ci): remove MSRV for bdk-cli
merge-script [Mon, 25 Aug 2025 17:43:27 +0000 (18:43 +0100)]
Merge bitcoindevkit/bdk-cli#211: chore(ci): remove MSRV for bdk-cli

126d98b6baec9a4bab7356ef84a4c39b200522fe ci(remove-msrv): remove msrv for the crate (Vihiga Tyonum)

Pull request description:

  This PR fixes #210

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  - Updates Rust Edition to 2024
  - Removes MSRV for the project
  - fixes clippy warnings

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

  ### New Features:

  * [ ] I've added tests for the new feature
  * [x] I've added docs for the new feature
  * [x] I've updated `CHANGELOG.md`

ACKs for top commit:
  notmandatory:
    ACK 126d98b6baec9a4bab7356ef84a4c39b200522fe

Tree-SHA512: cc8109103dac6a669b8cef63939c4fd7bf52ac24985f96b6e7bcae138113dcbf902d12bf46cca3c1b83f1fce28cf9ac8b782a1b07ddd32ed8b7d9447325b0b99

3 months agoci(remove-msrv): remove msrv for the crate
Vihiga Tyonum [Mon, 11 Aug 2025 15:22:56 +0000 (16:22 +0100)]
ci(remove-msrv): remove msrv for the crate

- remove msrv
- remove pin-msrv.sh
- update cont_integration workflow
- fix clippy warnings
- update README
- update CHANGELOG

6 months agoMerge bitcoindevkit/bdk-cli#202: Kyoto: Remove connection requirement to send tx
merge-script [Wed, 18 Jun 2025 11:28:25 +0000 (12:28 +0100)]
Merge bitcoindevkit/bdk-cli#202: Kyoto: Remove connection requirement to send tx

3b60b7b2321c7a9827f693e50431c87dd3992cae fix(kyoto): remove conn requirement to send tx (rustaceanrob)

Pull request description:

  Kyoto now holds on to a transaction internally until it is successfully broadcast, so we can broadcast the transaction immediately once the node starts up, and wait for a confirmation or 30 second timeout

  Successful test on Signet. Note that `Testnet4` still has the difficulty adjustment bug when loading block headers from storage.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature
  * [ ] I've updated `CHANGELOG.md`

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [ ] I'm linking the issue being fixed by this PR

Top commit has no ACKs.

Tree-SHA512: e1ad420440bad12b42847f09cc564e9fcc292c5acf12ac173560652c85a3fcf802052d20206bef7a8615d6beb93519c83c519dc086d8604656f088e78ef424b4

6 months agofix(kyoto): remove conn requirement to send tx
rustaceanrob [Tue, 17 Jun 2025 12:36:59 +0000 (13:36 +0100)]
fix(kyoto): remove conn requirement to send tx

Kyoto now holds on to a transaction internally until it is successfully
broadcast, so we can broadcast the transaction immediately once the node
starts up, and wait for a confirmation or 30 second timeout

6 months agoMerge bitcoindevkit/bdk-cli#201: Docs: add `just` example for using bdk-cli with...
merge-script [Fri, 13 Jun 2025 02:00:36 +0000 (03:00 +0100)]
Merge bitcoindevkit/bdk-cli#201: Docs: add `just` example for using bdk-cli with bitcoind regtest node

2524da3a128a0adf9d441b945c727c7a4c247ec2 docs: reformat and simplify README steps for just & bitcoind (Steve Myers)
b289a61bcd97de4a8004d17d71bd29771af46d90 fix clippy warnings (Vihiga Tyonum)
c2573fcf33f6a6d7b121f438e6794eaa15f96059 docs: update README steps for `just` & `bitcoind` (Vihiga Tyonum)

Pull request description:

  ### Description

  Fixes #199

  Update README to show how to use `just` command runner to start, connect and fund your bdk-cli wallet with local bitcoind regtest node.  Also, fixed clippy warnings.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 2524da3a128a0adf9d441b945c727c7a4c247ec2
  tvpeter:
    ACK 2524da3a128a0adf9d441b945c727c7a4c247ec2

Tree-SHA512: bf177a651cf97b18b183d56f3d6a7b439a95fbcfd0343b6b9bd422fdc828183555d8afcb057531a2ebca67892a0cbebba32de62e00e343d78082a3f92c95e74e

6 months agodocs: reformat and simplify README steps for just & bitcoind
Steve Myers [Fri, 13 Jun 2025 01:06:42 +0000 (20:06 -0500)]
docs: reformat and simplify README steps for just & bitcoind

6 months agofix clippy warnings
Vihiga Tyonum [Thu, 5 Jun 2025 13:42:55 +0000 (14:42 +0100)]
fix clippy warnings

6 months agodocs: update README steps for `just` & `bitcoind`
Vihiga Tyonum [Thu, 5 Jun 2025 12:32:13 +0000 (13:32 +0100)]
docs: update README steps for `just` & `bitcoind`

Update README to show how to use `just` to spine
up bitcoind in regtest mode, connect your bdk-cli
wallet and fund your bdk-cli wallet.

[issue: #199]

6 months agoMerge bitcoindevkit/bdk-cli#197: Update bdk_wallet dependency to 2.0.0 plus related
merge-script [Sat, 7 Jun 2025 15:00:01 +0000 (16:00 +0100)]
Merge bitcoindevkit/bdk-cli#197: Update bdk_wallet dependency to 2.0.0 plus related

bd526bdf91be3c44704b76ea43e29ef01f6b81a6 deps: update to bdk_wallet 2.0.0 plus related (Steve Myers)

Pull request description:

  ### Description

  * Updated dependencies:
    * bdk_wallet to 2.0.0
    * bdk_bitcoind_rpc to 0.20.0
    * bdk_electrum to 0.23.0
    * bdk_esplora to 0.22.0
    * bdk_kyoto to 0.11.0

  * Renamed `BuilderError` to `KyotoBuilderError`
  * Added `KyotoUpdateError`

  ### Notes to the reviewers

  There are still some unrelated warnings in the test code that should be fixed in a followup PR.

  ## Changelog notice

  * Updated project to use `bdk_wallet` 2.0 and related supporting chain client versions.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  tvpeter:
    tACK bd526bdf91be3c44704b76ea43e29ef01f6b81a6

Tree-SHA512: 38533ae063bfef181fe566ae0d8597de42434d96cdb9fc5164858a9fb6d9edf0ce1535b00c4a0d1268ee4fe9934ed4f2800efff2dfd49e469130141c2231abfc

6 months agodeps: update to bdk_wallet 2.0.0 plus related
Steve Myers [Thu, 29 May 2025 01:16:54 +0000 (20:16 -0500)]
deps: update to bdk_wallet 2.0.0 plus related

bdk_bitcoind_rpc to 0.20.0
bdk_electrum to 0.23.0
bdk_esplora to 0.22.0
bdk_kyoto to 0.11.0

Renamed BuilderError to KyotoBuilderError
Added KyotoUpdateError

6 months agoMerge bitcoindevkit/bdk-cli#198: Add Justfile command runner
merge-script [Tue, 3 Jun 2025 15:55:56 +0000 (16:55 +0100)]
Merge bitcoindevkit/bdk-cli#198: Add Justfile command runner

98bef7ec55f421f7ae172fcfccd25725ad87486f chore(add-justfile): update README (Vihiga Tyonum)
ef84b928698d8ade83cc866e3ea78fffbd154307 chore: add Justfile for `just` command runner (Vihiga Tyonum)

Pull request description:

  ### Description

  This PR adds Justfile config file for the just command runner.

  ### Notes to the reviewers

  The default values for `datadir`, `rpcuser` and `rpcpassword` set in the Justfile are those used in the project.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [x] I've added docs for the new feature
  * [ ] I've updated `CHANGELOG.md`

ACKs for top commit:
  notmandatory:
    ACK 98bef7ec55f421f7ae172fcfccd25725ad87486f

Tree-SHA512: 3b515b19a79e545596fbc7fa458bb2a3c382557bdc17d6794299e2364524ede9509810807c2e0c7fe79879314e361ff9bd6cbc42ed5cbd812e30e77a82ad98e1

6 months agoMerge bitcoindevkit/bdk-cli#173: Fix exit code
merge-script [Tue, 3 Jun 2025 15:41:49 +0000 (16:41 +0100)]
Merge bitcoindevkit/bdk-cli#173: Fix exit code

304729b173a00a908d7c0854fbe1fd6dd541d29e fix: use exit code 1 in case of error (Vadim Anufriev)

Pull request description:

  Fix for https://github.com/bitcoindevkit/bdk-cli/issues/170.

  I think this is the simplest way to do it.
  It's also possible to change the main signature to return `Result`, which should provide similar behavior, but this option isn't compatible with the `#[maybe_async]` macro, so I decided not to complicate things.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [x] I'm linking the issue being fixed by this PR

Top commit has no ACKs.

Tree-SHA512: 52ce4292c3a8347bdb6ec975bb33a728c8eb2a1cdc90647a2834fc3428106a4aef1c3cf6b526905e5a36ea2734759338b5dfd4d3a55778507fc59893f585cf7d

6 months agofix: use exit code 1 in case of error
Vadim Anufriev [Mon, 19 May 2025 18:55:00 +0000 (22:55 +0400)]
fix: use exit code 1 in case of error

6 months agochore(add-justfile): update README
Vihiga Tyonum [Fri, 30 May 2025 20:52:39 +0000 (21:52 +0100)]
chore(add-justfile): update README

- update readme to include just command runner

6 months agochore: add Justfile for `just` command runner
Vihiga Tyonum [Fri, 30 May 2025 19:50:39 +0000 (20:50 +0100)]
chore: add Justfile for `just` command runner

- add project recipes
- add bitcoind recipes for rpc feature

[Issue: #196]

7 months agoMerge bitcoindevkit/bdk-cli#190: chore: update README rust version badge to 1.75.0
Steve Myers [Tue, 20 May 2025 02:12:28 +0000 (21:12 -0500)]
Merge bitcoindevkit/bdk-cli#190: chore: update README rust version badge to 1.75.0

0103e4be1705804e1a74d68bb5c57aafa200f0c4 chore: update README rust version badge to 1.75.0 (Steve Myers)

Pull request description:

  ### Description

  Update README rust version badge to 1.75.0.

  ### Notes to the reviewers

  I forgot to do this on the last release.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  tvpeter:
    ACK 0103e4be1705804e1a74d68bb5c57aafa200f0c4

Tree-SHA512: cf6707e837cdeceb1c15ffd8170106b627f38e41bf0044ae196c99d4ebd529f27d3b17f8413e574ed361ae29d8906e20a8cadfd07fce6129942b1fd6eb0c389b

7 months agochore: update README rust version badge to 1.75.0
Steve Myers [Mon, 19 May 2025 15:49:25 +0000 (10:49 -0500)]
chore: update README rust version badge to 1.75.0

7 months agoMerge bitcoindevkit/bdk-cli#189: chore: update audit workflow to ubuntu-latest v1.0.0
Steve Myers [Mon, 19 May 2025 15:27:44 +0000 (10:27 -0500)]
Merge bitcoindevkit/bdk-cli#189: chore: update audit workflow to ubuntu-latest

7f6e2cfd2ca2527ec779ea7a8a997b5a925b2130 chore: update audit workflow to ubuntu-latest (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  - update aud.yml workflow to use the latest ubuntu

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 7f6e2cfd2ca2527ec779ea7a8a997b5a925b2130

Tree-SHA512: 12c0704a14beb663bcc82677eec4bcc35b173bfdc2cd8d2f612c6eaab92540fad082062cec031ed628722ee7b84017da67d3ee802d893a4c3edeb9f77ad000a1

7 months agochore: update audit workflow to ubuntu-latest
Vihiga Tyonum [Mon, 19 May 2025 15:22:55 +0000 (16:22 +0100)]
chore: update audit workflow to ubuntu-latest

- update aud.yml workflow to use the latest ubuntu

7 months agoMerge bitcoindevkit/bdk-cli#188: Chore/make release
Steve Myers [Mon, 19 May 2025 15:12:54 +0000 (10:12 -0500)]
Merge bitcoindevkit/bdk-cli#188: Chore/make release

e5d48df5548a3a22f500a1bf4082a1d7456a489b chore: update rust edition 2021, package v1.0.0 (Vihiga Tyonum)
b660286d617c9baa653723fad7138bbe4a4a782a chore: release version 1.0.0 (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  update `bdk-cli` version to `1.0.0` and bumped the rust edition to 2021.

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK e5d48df5548a3a22f500a1bf4082a1d7456a489b

Tree-SHA512: b730e6dd256dab0c5f7270c510f3e50f6138978eceb7d1b9eba7150eb4cc4f181e771d899c73815c3b36b8b671b008624e796aef77d15c753ebb52c5b5ca095b

7 months agochore: update rust edition 2021, package v1.0.0
Vihiga Tyonum [Mon, 19 May 2025 14:52:03 +0000 (15:52 +0100)]
chore: update rust edition 2021, package v1.0.0

- update rust edition to 2021
- update the package version to 1.0.0
- fix clippy warning

7 months agochore: release version 1.0.0
Vihiga Tyonum [Mon, 19 May 2025 14:45:32 +0000 (15:45 +0100)]
chore: release version 1.0.0

-update chanelog for v1.0.0 release

7 months agoMerge bitcoindevkit/bdk-cli#187: docs: update readme
Steve Myers [Mon, 19 May 2025 14:21:35 +0000 (09:21 -0500)]
Merge bitcoindevkit/bdk-cli#187: docs: update readme

96335ca801a76728751e2651dad715720ca2f8e8 docs: update readme (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Update readme document

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 96335ca801a76728751e2651dad715720ca2f8e8

Tree-SHA512: 9e13d2c322a3538406d07c752aa4a9391cd57670372b9f7ff9c16450629ee28edbf6a7380e61b9d539d2b384ebb4a4886b60deda3c48fe6fe074672fd64eba20

7 months agodocs: update readme
Vihiga Tyonum [Mon, 19 May 2025 01:12:01 +0000 (02:12 +0100)]
docs: update readme

- update readme document

7 months agoMerge bitcoindevkit/bdk-cli#186: ci: fix code coverage workflow
Steve Myers [Sat, 17 May 2025 01:24:27 +0000 (20:24 -0500)]
Merge bitcoindevkit/bdk-cli#186: ci: fix code coverage workflow

48fa1f64a94052cc493b49b2ede4604a579dcc50 ci: fix code coverage workflow (Steve Myers)

Pull request description:

  ### Description

  The code coverage workflow broke and this change fixes it.

  ### Notes to the reviewers

  This is copy/pasted from the bdk repo job of the same name.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    Self ACK 48fa1f64a94052cc493b49b2ede4604a579dcc50

Tree-SHA512: 0b5e42ad867044d26d3e38ed5c0229ab3228381e0ee9ccb3c2cdcd16908275562bc0ca64dcb37607c94ecbb410d409afb37c1c7296efd99fc39a778029752274

7 months agoci: fix code coverage workflow
Steve Myers [Fri, 16 May 2025 21:54:09 +0000 (16:54 -0500)]
ci: fix code coverage workflow

7 months agoMerge bitcoindevkit/bdk-cli#182: Implement transaction broadcasting for Kyoto
Steve Myers [Fri, 16 May 2025 16:40:46 +0000 (11:40 -0500)]
Merge bitcoindevkit/bdk-cli#182: Implement transaction broadcasting for Kyoto

811f614515b6fb1ae5689bf02ec830bdc7ff62ac fix(cbf): typo and cbf dir config when sqlite feature disabled (Steve Myers)
b04fed2e8a58dd6b4e001c64d03d85ad46cf7d3c feat(cbf): implement transaction broadcasting (rustaceanrob)

Pull request description:

  The actual implementation comes down to listening for an info message that reports the transaction was sent to a peer. For simplicity I am ignoring any wallet updates, but if the user calls the `Sync` command they can catch them. Follows up #181

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature
  * [ ] I've updated `CHANGELOG.md`

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [ ] I've added tests to reproduce the issue which are now passing
  * [ ] I'm linking the issue being fixed by this PR

ACKs for top commit:
  notmandatory:
    ACK 811f614515b6fb1ae5689bf02ec830bdc7ff62ac

Tree-SHA512: 6a1ae4cee58170be5ac444598ea8362e8bd7c77137e2f010e8120869d7491c0ad37798508cea04da6a755d4a1a85b283454daf11624a3bb485e61003ae194007

7 months agofix(cbf): typo and cbf dir config when sqlite feature disabled
Steve Myers [Fri, 16 May 2025 16:15:49 +0000 (11:15 -0500)]
fix(cbf): typo and cbf dir config when sqlite feature disabled

7 months agofeat(cbf): implement transaction broadcasting
rustaceanrob [Thu, 8 May 2025 19:30:07 +0000 (20:30 +0100)]
feat(cbf): implement transaction broadcasting

For the highest reliability, we wait for the connection requirement to
be met by the node. Once met, we can broadcast and wait for
confirmation. The function will either timeout after 15 seconds or
successfully finish with gossip confirmation.

7 months agoMerge bitcoindevkit/bdk-cli#183: chore(cbf): set kyoto client data dir
Steve Myers [Thu, 15 May 2025 02:14:27 +0000 (21:14 -0500)]
Merge bitcoindevkit/bdk-cli#183: chore(cbf): set kyoto client data dir

afc2f9d97f5729f7cbd6abcba5576ce8ed06e4e8 chore(cbf): mv kyoto data to existing datadir (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  This PR set the data directory for the Kyoto client. See [comment](https://github.com/bitcoindevkit/bdk-cli/pull/181#issuecomment-2863853425)

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  This PR ensures that the `light_client_data` directory created by the Kyoto client is in the wallet's data directory.

  ## Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature
  * [ ] I've updated `CHANGELOG.md`

ACKs for top commit:
  notmandatory:
    tACK afc2f9d97f5729f7cbd6abcba5576ce8ed06e4e8

Tree-SHA512: 899e060313fc3a4263d52a242e785ae30e4e15c6172fcfc1b5242f1038c1670f568f1e09d8080944c9a2912a04ca2971ba1eda21eb0ef53bbff01d037dc02bdf

7 months agochore(cbf): mv kyoto data to existing datadir
Vihiga Tyonum [Sat, 10 May 2025 03:19:01 +0000 (04:19 +0100)]
chore(cbf): mv kyoto data to existing datadir

move light_client_data to existing data dir for
the wallet

7 months agoMerge bitcoindevkit/bdk-cli#181: feat(cbf): add `cbf` feature using `bdk_kyoto`
Steve Myers [Thu, 8 May 2025 18:40:34 +0000 (11:40 -0700)]
Merge bitcoindevkit/bdk-cli#181: feat(cbf): add `cbf` feature using `bdk_kyoto`

6debc68afaf545f497cdd17f0e79172313d40463 feat(cbf): add cbf feature using bdk_kyoto (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

   This PR re-enables the Compact Block Filters (cbf) feature using `bdk_kyoto` and it is part of updating the library
  to use the latest `bdk` crates.

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  ### Notes to the reviewers

  This is part of issue  #172

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Checklists

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  rustaceanrob:
    ACK 6debc68afaf545f497cdd17f0e79172313d40463
  notmandatory:
    ACK 6debc68afaf545f497cdd17f0e79172313d40463

Tree-SHA512: d78d9d2840b377bcb8876421b6133fdaecd3d5c2bdf60438769b09e71282b662bdf5c8e7aa53edb121efff5d1b17637c498a363cc279a3ba8ad6121dae849864

7 months agofeat(cbf): add cbf feature using bdk_kyoto
Vihiga Tyonum [Sat, 3 May 2025 14:59:53 +0000 (15:59 +0100)]
feat(cbf): add cbf feature using bdk_kyoto

- enable full_scan and sync operations

[issue: #172]

feat(cbf): update broadcasting tx

- add wait time for node to connect to peers
before broadcasting tx
- add sync chain starting from 10 blocks below
the wallet tip to ensure tx is propagated
- update code_coverage workflow to cover cbf
feature

feat(cbf): update bdk-kyoto to 0.9.0

- refactor syncing into a fn
- made `skip-blocks` optional and removed default
value to use bdk-kyoto Sync scan type

feat(cbf): remove looping for kyoto sync

- remove looping for kyoto client sync operations
- fix compiler warnings

8 months agoMerge bitcoindevkit/bdk-cli#174: feature: update `bdk-cli` to use `bdk_wallet` v1
Steve Myers [Sun, 13 Apr 2025 02:55:49 +0000 (21:55 -0500)]
Merge bitcoindevkit/bdk-cli#174: feature: update `bdk-cli` to use `bdk_wallet` v1

e0bd1471c88cbadc12558328b236ba6923f86cc9 fix: clippy errors (Steve Myers)
524562cd10b39b0b1cb3ef63f21ba985268bff03 fix: signing / finalizing `psbt` (Vihiga Tyonum)
fb7232f36bd1ffd44ffefa5e4b105329cecf7a05 rpc: print status during full_scan and sync (Steve Myers)
4a66557828a64734130ed2050a05827874161d3e ci: remove WASM job, fix more clippy errors (Steve Myers)
eb947fc30d26c4dcc4f0ba5082223e42c768a4cf ci: with msrv 1.75 pin minreq to 2.13.2 (Steve Myers)
efc5fc5a15650e804215a516cdf9e624d19bb5c3 ci: fix clippy errors (Steve Myers)
92cabb119f7aa16a5f018be518659499ee7228b7 ci: update actions checkout and cache to v4, simplify matrix features (Steve Myers)
cb108738f8d795d431b910146685386bb8d41094 refactor: fix error handling (Vihiga Tyonum)
8307db08776d7b53dbadcf776a4b786a925291f2 feat: re-enable `rpc` feature (Vihiga Tyonum)
8ac25291e955a87f8a97348f6577a91d716a8af0 ci: update the CI workflow (Vihiga Tyonum)
a2ad6b3b72b2377036c3ba761befc0cc7418b23b feat: add ci test for features (Vihiga Tyonum)
50a6a60f35d251687bd464b379012d961bdf5a7d refactor: remove rpc, cbf, cleanup features (Steve Myers)
0be8453c54fc747c3c4e06b665c100bc0ee7bea6 refactor: update onlinewalletsubcommands (Vihiga Tyonum)
440bd3687bb8e91b71c72bc0a3d8219e25051044 refactor: update creating_backend fn (Vihiga Tyonum)
58f07a1c0bdaddb354111b709243a8c08904e147 refactor: update nodes.rs file (Vihiga Tyonum)
cb4450b9112dba4fecb8be2b0c739778b3bfc57b refactor: update imports and reserves feature (Vihiga Tyonum)
50233dd3fd1b752f209df74813b2dc028105cf6f refactor: replace bdk::error with custom error (Vihiga Tyonum)
b8d235731e9c4b8375d7967d1295e474db8e5259 feat: add custom error enum (Vihiga Tyonum)
6f263bf4f6b80a3b94614b5b336194eeb613498f feat!: replace bdk with bdk_wallet & update deps (Vihiga Tyonum)
b56c0235af1239f59dbfbc1ae17b2e7b497f0fd4 refactor: update imports from bdk to bd_wallet (Vihiga Tyonum)
91f5918d71095041574f83375ff7d5740025ca29 refactor: update imports from bdk to bdk_wallet (Vihiga Tyonum)
ddce50d568ee3aa28a58a89a3ba9c0a87ec9beaf refactor: update imports from bdk to bdk_wallet (Vihiga Tyonum)
4c89cbf968938e3253fa683a18badcadd1ad082b refactor:update imports from bdk to use bdk_wallet (Vihiga Tyonum)
890cb45bc70d1d1cc3851a39871426479ba9d7b3 refactor: add bdk_wallet (Vihiga Tyonum)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  <!-- Describe the purpose of this PR, what's being adding and/or fixed -->

  This PR update `bdk-cli` to use `bdk_wallet` v1

  Issue: https://github.com/bitcoindevkit/bdk-cli/issues/172#issue-2780523794

  ### Notes to the reviewers
  - replaced `list_transactions` with `transactions`
  - set `enable_rbf` to be `true` by default
  - update creating and serializing Psbts
  - update `new_wallet` to return `PersistedWallet<Connection>`
  - default fee_rate to use FeeRate::BROADCAST_MIN
  - update `zeroize` to version `1.8.1` from `<1.4.0`
  - update `bdk-reserves` from `0.27.1` to `0.29.0`
  - replace `bdk/electrum` with `bdk_electrum` for the `electrum` feature
  - add `bdk_esplora` for the `bdk/use-esplora-ureq` and `bdk/use-esplora-reqwest` features
  - add `bdk_bitcoind_rpc` lib to replace `bdk/rpc` feature
  - add `hwi` library to replace `bdk/hardware-signer` feature

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ## Changelog notice
  - set `enable_rbf` to be `true` by default
  - update using `PartiallySignedTransaction` to `Psbt`
  - default fee_rate to use FeeRate::BROADCAST_MIN
  - update `zeroize` to version `1.8.1` from `<1.4.0`
  - update `bdk-reserves` from `0.27.1` to `0.29.0`
  - replace `bdk/electrum` with `bdk_electrum` for the `electrum` feature
  - replace `bdk/use-esplora-ureq` and `bdk/use-esplora-reqwest`  with `bdk_esplora` lib
  - replace `bdk/rpc` with `bdk_bitcoind_rpc` lib
  - replace  `bdk/hardware-signer` with `hwi` lib

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### Bugfixes:

  * [x] This pull request breaks the existing API
  * [x] I'm linking the issue being fixed by this PR

ACKs for top commit:
  notmandatory:
    ACK e0bd1471c88cbadc12558328b236ba6923f86cc9

Tree-SHA512: cd548805327b55a66be26aa0402ef7a4512a0a75ffdcefa243c86d838d82215a5e4605989436903c135c31902e84cebf8d88197db18df9193d1fc0cb9e0f567f

8 months agofix: clippy errors
Steve Myers [Sun, 13 Apr 2025 02:36:19 +0000 (21:36 -0500)]
fix: clippy errors

9 months agofix: signing / finalizing `psbt`
Vihiga Tyonum [Fri, 14 Mar 2025 03:19:28 +0000 (04:19 +0100)]
fix: signing / finalizing `psbt`

- fix the returned data after signing or
finalizing `psbt`

[Ticket: X]

9 months agorpc: print status during full_scan and sync
Steve Myers [Wed, 12 Mar 2025 23:04:21 +0000 (18:04 -0500)]
rpc: print status during full_scan and sync

Also when doing an rpc sync, re-sync the prior 200 blocks to
handle any possible reorg scenarios.

9 months agoci: remove WASM job, fix more clippy errors
Steve Myers [Wed, 12 Mar 2025 17:40:21 +0000 (12:40 -0500)]
ci: remove WASM job, fix more clippy errors

9 months agoci: with msrv 1.75 pin minreq to 2.13.2
Steve Myers [Wed, 12 Mar 2025 17:30:34 +0000 (12:30 -0500)]
ci: with msrv 1.75 pin minreq to 2.13.2

9 months agoci: fix clippy errors
Steve Myers [Wed, 12 Mar 2025 17:10:21 +0000 (12:10 -0500)]
ci: fix clippy errors

9 months agoci: update actions checkout and cache to v4, simplify matrix features
Steve Myers [Wed, 12 Mar 2025 16:19:28 +0000 (11:19 -0500)]
ci: update actions checkout and cache to v4, simplify matrix features

9 months agorefactor: fix error handling
Vihiga Tyonum [Sat, 8 Mar 2025 03:46:22 +0000 (04:46 +0100)]
refactor: fix error handling

-add more error types to error enum
- update the handlers file to replace Generic
error arm

[Ticket: X]

9 months agofeat: re-enable `rpc` feature
Vihiga Tyonum [Wed, 5 Mar 2025 08:57:32 +0000 (09:57 +0100)]
feat: re-enable `rpc` feature

- re-enable `rpc` feature

9 months agoci: update the CI workflow
Vihiga Tyonum [Fri, 21 Feb 2025 12:42:43 +0000 (13:42 +0100)]
ci: update the CI workflow

- remove unavailable features in code_coverage workflow
- add more features for the cont_integration workflow
- update local compilation test script

[Ticket: X]

9 months agofeat: add ci test for features
Vihiga Tyonum [Fri, 21 Feb 2025 03:16:26 +0000 (04:16 +0100)]
feat: add ci test for features

- add ci test for features
- add "compiler" feature to bdk_wallet dependency
- remove duplicate fn in utils.rs
- replace "possible_values" with "value_parser"
as it is deprecated in clap 4.5

[Ticket: X]

9 months agorefactor: remove rpc, cbf, cleanup features
Steve Myers [Thu, 13 Feb 2025 05:26:54 +0000 (23:26 -0600)]
refactor: remove rpc, cbf, cleanup features

- fix repl

9 months agorefactor: update onlinewalletsubcommands
Vihiga Tyonum [Tue, 18 Feb 2025 20:49:36 +0000 (21:49 +0100)]
refactor: update onlinewalletsubcommands

-update all online wallet subcommands

[Ticket: X]

10 months agorefactor: update creating_backend fn
Vihiga Tyonum [Wed, 12 Feb 2025 22:12:29 +0000 (23:12 +0100)]
refactor: update creating_backend fn

-update error enum
- update creating a new_backend

[Ticket: X]

10 months agorefactor: update nodes.rs file
Vihiga Tyonum [Tue, 11 Feb 2025 23:50:19 +0000 (00:50 +0100)]
refactor: update nodes.rs file

- replace `bitcoincore_rpc` client with
`electrsd::Node` client
- update rpc commands
- update `electrsd` to v0.31.0

[Ticket: X]

10 months agorefactor: update imports and reserves feature
Vihiga Tyonum [Sat, 8 Feb 2025 14:06:55 +0000 (15:06 +0100)]
refactor: update imports and reserves feature

- update deps imports
- refactor reserves feature

[Ticket: X]

10 months agorefactor: replace bdk::error with custom error
Vihiga Tyonum [Thu, 6 Feb 2025 12:14:32 +0000 (13:14 +0100)]
refactor: replace bdk::error with custom error

- replace bdk::error with custom error enum
- update imports and handling of errors

[Ticket: X]

10 months agofeat: add custom error enum
Vihiga Tyonum [Thu, 6 Feb 2025 12:13:31 +0000 (13:13 +0100)]
feat: add custom error enum

-add error enum for handling errors

[Ticket: X]

10 months agofeat!: replace bdk with bdk_wallet & update deps
Vihiga Tyonum [Thu, 6 Feb 2025 11:50:44 +0000 (12:50 +0100)]
feat!: replace bdk with bdk_wallet & update deps

- Replace `bdk` with `bdk_wallet` v1 in Cargo.toml
- replace removed features in bdk features/mods
with crates

[Ticket: X]

10 months agorefactor: update imports from bdk to bd_wallet
Vihiga Tyonum [Mon, 3 Feb 2025 12:12:46 +0000 (13:12 +0100)]
refactor: update imports from bdk to bd_wallet

- add `parse_address` method
- remove `key-value-db` feature as it uses `sled`
- update `open_database` fn to return
rusqlite::Connection
- update `new_wallet` fn to return
`PersistedWallet<Connection>`

[Ticket: X]

10 months agorefactor: update imports from bdk to bdk_wallet
Vihiga Tyonum [Mon, 3 Feb 2025 12:08:27 +0000 (13:08 +0100)]
refactor: update imports from bdk to bdk_wallet

- update imports from bdk to bdk_wallet
- fix compilation warnings

[Ticket: X]

10 months agorefactor: update imports from bdk to bdk_wallet
Vihiga Tyonum [Mon, 3 Feb 2025 12:01:10 +0000 (13:01 +0100)]
refactor: update imports from bdk to bdk_wallet

- replace `list_transactions` method  with
`transactions`
- format `recipients` to be a vec of `ScriptBuf`
and `Amount`
- update creating and serializing `Psbt`s
- update `fee_rate` method and default to
`FeeRate::BROADCAST_MIN`
- replace `allow_shrinking` method with `drain_to`
method
- update `handle_offline_wallet_subcommands` to
use `PersistedWallet<D>` instead of `Wallet<D>`
[Ticket: X]

10 months agorefactor:update imports from bdk to use bdk_wallet
Vihiga Tyonum [Mon, 3 Feb 2025 11:48:06 +0000 (12:48 +0100)]
refactor:update imports from bdk to use bdk_wallet

-update imports from bdk to use bdk_wallet
- set `enable_rbf` command option to be `true` by
default
- add `parse_address` fn to parse address from
string
- replace `ExtendedPrivateKey` with `Xpriv` from
bdk_wallet
- update derving address from string to use
`assumed_check`

[Ticket: X]

10 months agorefactor: add bdk_wallet
Vihiga Tyonum [Mon, 3 Feb 2025 11:37:11 +0000 (12:37 +0100)]
refactor: add bdk_wallet

add bdk_wallet to Cargo.toml

* the bdk crate is still in using because of the
error enum, which will be removed after feedback
[Ticket: X]

2 years agoci: pin tokio to 1.29.1 to build with MSRV 1.57.0
Steve Myers [Thu, 17 Aug 2023 16:57:50 +0000 (11:57 -0500)]
ci: pin tokio to 1.29.1 to build with MSRV 1.57.0

also:
- pin any version of tempfile to 3.6.0
- pin cc to 1.0.81
- pin flate2 to 1.0.26

2 years agoci: fix MSRV jobs with cargo update
Steve Myers [Thu, 20 Jul 2023 23:26:50 +0000 (18:26 -0500)]
ci: fix MSRV jobs with cargo update

2 years agoUpdate changelog file
rajarshimaitra [Wed, 15 Mar 2023 06:49:22 +0000 (12:19 +0530)]
Update changelog file

2 years agoBump version to 0.27.1 github/release/0.27.1 v0.27.1
rajarshimaitra [Wed, 8 Mar 2023 06:04:15 +0000 (11:34 +0530)]
Bump version to 0.27.1

2 years agoMerge bitcoindevkit/bdk-cli#135: adding hardware signers
rajarshimaitra [Wed, 8 Mar 2023 05:39:11 +0000 (11:09 +0530)]
Merge bitcoindevkit/bdk-cli#135: adding hardware signers

100ea8d7e8ae789e3c328706591ec20ba427496b adding hardware signers (Richard Ulrich)

Pull request description:

  ### Description

  Adding hardware signers, so that hardware wallets can be used to sign transactions.

  ### Notes to the reviewers

  ~~It doesn't work 100% yet for me.
  I am using the following wallet:
  https://github.com/RCasatta/electrum2descriptors/blob/main/tests/wallets2descriptors.rs#L89
  https://github.com/RCasatta/electrum2descriptors/blob/main/tests/wallets/multisig_hw_segwit
  I can create and sign a transaction with this version of bdk-cli. It displays the details on the Trezor and everything looks good so far. But in the CLI output of bdk-cli it says  "is_finalized= false" and when I open the supposedly signed tx in Electrum, it aslo says "Status: Unsigned".
  So, something must still be missing.~~

  Initially I had some dependency problems, so I deleted Cargo.lock. That solved the dependency problems, but that's the reason for the large diff on that file.

  ## Changelog notice

  Added hardware signers through the use of HWI

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

  #### New Features:

  * [ ] I've added tests for the new feature
  * [ ] I've added docs for the new feature
  * [x] I've updated `CHANGELOG.md`

ACKs for top commit:
  notmandatory:
    utACK 100ea8d7e8ae789e3c328706591ec20ba427496b
  rajarshimaitra:
    ACK 100ea8d7e8ae789e3c328706591ec20ba427496b

Tree-SHA512: 672c72f7d23aa80db638562cd48ab377712d3600f360ee4dbfa34537b7f15c91c647f38493d82300acf9c04398f3a104f2ab3951aff2dac6dbc94a284ac16934

2 years agoMerge bitcoindevkit/bdk-cli#144: Update bdk from 0.27 to 0.27.1
rajarshimaitra [Sun, 26 Feb 2023 17:04:30 +0000 (22:34 +0530)]
Merge bitcoindevkit/bdk-cli#144: Update bdk from 0.27 to 0.27.1

26cdc208a3d4d5589746c6d2b272020414633b16 Update bdk from 0.27 to 0.27.1 (Steve Myers)

Pull request description:

  ### Description

  Update `bdk` from 0.27 to 0.27.1 to fix bitcoindevkit/bdk#866.

  ### Notes to the reviewers

  Once we get this verified for `bdk-cli` and `bdk-ffi` I'll publish the new bdk release and update this PR to use the new version.

  ## Changelog notice

  Changed
  - Update bdk from 0.27 to 0.27.1 to fix bitcoindevkit/bdk#866.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  rajarshimaitra:
    tACK 26cdc208a3d4d5589746c6d2b272020414633b16

Tree-SHA512: 7bc463872475804266ddef0bfe28a921395a526f3f9862152c3d48a6cdbfba45e9be9a99f919c27a872d76c21e119a54197a1c17bef45362e32eeb948258740f

2 years agoUpdate bdk from 0.27 to 0.27.1
Steve Myers [Thu, 16 Feb 2023 20:49:03 +0000 (14:49 -0600)]
Update bdk from 0.27 to 0.27.1

2 years agoadding hardware signers
Richard Ulrich [Fri, 6 Jan 2023 11:37:07 +0000 (12:37 +0100)]
adding hardware signers

2 years agoMerge bitcoindevkit/bdk-cli#143: Bump bdk to `v0.27.0`
Steve Myers [Tue, 14 Feb 2023 22:55:52 +0000 (16:55 -0600)]
Merge bitcoindevkit/bdk-cli#143: Bump bdk to `v0.27.0`

1bc4a763a3c84cadb9a7ad850d9940da9b0b253f Bump bdk and bdk-reserves to `v0.27.0` (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Upgrades to bdk `v0.27.0-rc.1`. Pins dependency `zip` to `v0.6`, as latest version of `zip` moved up their MSRV to `1.59`.

  ### Notes to the reviewers

  of the PR were done in a specific way -->

  ## Changelog notice

  <!-- Notice the release manager should include in the release tag message changelog -->
  <!-- See https://keepachangelog.com/en/1.0.0/ for examples -->
   - BDK version bumped to `0.27`.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 1bc4a763a3c84cadb9a7ad850d9940da9b0b253f

Tree-SHA512: 65c34d55ce1f4afc69cd7d2466715791516ab3dca9f64e96428219f60b2c7449f26a0bce62eb672435be947619d1db48793f46334eece376882f6b4ac556269f

2 years agoBump bdk and bdk-reserves to `v0.27.0`
rajarshimaitra [Wed, 8 Feb 2023 13:02:37 +0000 (18:32 +0530)]
Bump bdk and bdk-reserves to `v0.27.0`

2 years agoMerge bitcoindevkit/bdk-cli#140: bump stable rustc version to 1.65
Steve Myers [Tue, 14 Feb 2023 22:25:13 +0000 (16:25 -0600)]
Merge bitcoindevkit/bdk-cli#140: bump stable rustc version to 1.65

e10366410303bc1aff7308e6a944dcb01e16e23a Derive Eq on enums and struts where possible (rajarshimaitra)
0f3aca208044eef829769722afabb0dd002e1a86 bump stable rustc version to 1.65 (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  As BDK bumped its stable to 1.65, it is safe for us to move it up also.

  ### Notes to the reviewers

  `1.65` cause clippy warning that `Eq` isn't derived while `PartialEq` is derived for the commands. We can't derive `Eq` for commands, as there is a `fee_rate` which is `f32` which isn't `Eq`, and this effect cascades to all structures. We also need `PartialEq` for the tests.

  A few options were:
   - allow the clippy warning conditionally for `1.65`, `1.57` doesn't have that lint. The way to do that is by creating custom features for different versions and making a build script that activates specific features for specific versions. Feature gate the clippy lint. or use https://github.com/dtolnay/rustversion which is an extra dep.

    - Remove `PartialEq` and create a method on `CliOpts` to translate it into `Vec<String>`, and then perform the tests.

    - Make `fee_rate` `u32` and derive `Eq` for all.

  I went for the last option as it seemed less complex, and not too bad(?). For bdk_cli as majorly a testing tool, it might not need floating point granularity and users can still test out with `u32` fee_rates. Internally it converts it back to `f32`.

  Suggestions welcome.

  ## Changelog notice

   - Bumped rustc `stable` to 1.65.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

Top commit has no ACKs.

Tree-SHA512: d471d56dc6e50cc892a889bbe1f0283ce22feb9c34b6bdebfcfb71117069df166086d1e00c9a8e22979d2be24fad797335066d6c6a58a8ca5ec5f1d2b8d9575e

2 years agoDerive Eq on enums and struts where possible
rajarshimaitra [Wed, 18 Jan 2023 05:32:17 +0000 (11:02 +0530)]
Derive Eq on enums and struts where possible

2 years agoMerge bitcoindevkit/bdk-cli#139: update electrsd to v0.22.*
rajarshimaitra [Tue, 24 Jan 2023 14:51:44 +0000 (20:21 +0530)]
Merge bitcoindevkit/bdk-cli#139: update electrsd to v0.22.*

a25ad6a04099d75df51e98346f252e0fe56322ec fix cargo lock (rajarshimaitra)
c76c62e2acc50e23fa451a6cc29a60451c5b4e71 update electrsd to v0.22.* (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  As we are already at msrv 1.57.0, so we can bump electrsd to v0.22.

  Which fixes #85 and potentially #131  too..

  ### Notes to the reviewers

  ## Changelog notice

  Bump `electrsd` version to `v0.22.*`.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK a25ad6a04099d75df51e98346f252e0fe56322ec

Tree-SHA512: be9c43eac78b435a289b7b7b606143fb9554629994ad2b6249eb904df310beba2ad43c33521e1fee1f8c5cb3d9ec71ae2832ad6434e165634aaca96f19c0cd88

2 years agobump stable rustc version to 1.65
rajarshimaitra [Wed, 18 Jan 2023 04:46:05 +0000 (10:16 +0530)]
bump stable rustc version to 1.65

2 years agofix cargo lock
rajarshimaitra [Wed, 18 Jan 2023 04:41:27 +0000 (10:11 +0530)]
fix cargo lock

2 years agoupdate electrsd to v0.22.*
rajarshimaitra [Thu, 12 Jan 2023 07:16:04 +0000 (12:46 +0530)]
update electrsd to v0.22.*

2 years agoWe don't need this as we skip the `rc` steps.
rajarshimaitra [Thu, 12 Jan 2023 06:55:19 +0000 (12:25 +0530)]
We don't need this as we skip the `rc` steps.

2 years agoMerge bitcoindevkit/bdk-cli#137: Update the release cycle v0.26.0
Steve Myers [Thu, 12 Jan 2023 03:58:12 +0000 (19:58 -0800)]
Merge bitcoindevkit/bdk-cli#137: Update the release cycle

4bb535e79d647ce9bce6e65763361a206942fa4e Update the release cycle (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Follow the bdk main release process, expect making intermediate release candidate.
  Add other issue templates.
  Add Development_cycle notes.
  Update PR template to include changelog section.
  Update changelog to include instruction of new change log format.

  ### Notes to the reviewers
  Please re-check the `minor_release.md` file where I updated the release process without `rc` creation.
  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 4bb535e79d647ce9bce6e65763361a206942fa4e

Tree-SHA512: 5532680364b2e102c4c615c6a08cbb09806c95fcfcf4b2063a855054e39bc4f1859d0601f439a567f51b6ad80102f9275e525c9545df1648570bf099cda10ecf

2 years agoUpdate the release cycle
rajarshimaitra [Wed, 11 Jan 2023 17:01:42 +0000 (22:31 +0530)]
Update the release cycle

Follow the bdk main release process, expect making intermediate release
candidate.
Add other issue templates.
Add Development_cycle notes.
Update PR template to include changelog section.
Update changelog to include instruction of new changelog format.

2 years agoMerge bitcoindevkit/bdk-cli#133: Update to bdk v0.26.0
Steve Myers [Tue, 10 Jan 2023 17:16:17 +0000 (11:16 -0600)]
Merge bitcoindevkit/bdk-cli#133: Update to bdk v0.26.0

52dd87efa78d312092faa625fd5756a1dc9c596f Update to bdk v0.26.0 (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Upgrade to bdk v0.26.0

  ### Notes to the reviewers

  <!-- In this section you can include notes directed to the reviewers, like explaining why some parts
  of the PR were done in a specific way -->

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 52dd87efa78d312092faa625fd5756a1dc9c596f

Tree-SHA512: 57e157463d5eb3b3138722000b29a2f532893a18371918eaf8149fdda3f23800907f363ac2b968084bbf94df2b0ad6c88feb71a10427267c2f400ff1c5ccb915

2 years agoUpdate to bdk v0.26.0
rajarshimaitra [Thu, 29 Dec 2022 06:38:39 +0000 (12:08 +0530)]
Update to bdk v0.26.0

2 years agoMerge bitcoindevkit/bdk-cli#128: Check if psbt is final, before broadcasting
Steve Myers [Tue, 10 Jan 2023 14:59:35 +0000 (08:59 -0600)]
Merge bitcoindevkit/bdk-cli#128: Check if psbt is final, before broadcasting

110be3fcfe0a562038791c7faf30a6684db6bc87 check if psbt is final, before broadcasting (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Fixes #97

  Add a finalizer check before broadcasting psbts.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    tACK 110be3fcfe0a562038791c7faf30a6684db6bc87

Tree-SHA512: 898908062bbfbe90ed296afbd83179066bfc2cb42538b3ff1c91a6da6c174ec4dbb0cd013dd766ec12ea944b7f0673ad36552aa0a423d2afbc94edcf43084d5c

2 years agocheck if psbt is final, before broadcasting
rajarshimaitra [Sun, 30 Oct 2022 16:16:17 +0000 (21:46 +0530)]
check if psbt is final, before broadcasting

2 years agoMerge bitcoindevkit/bdk-cli#136: Remove mention of compact_filters from README until...
rajarshimaitra [Tue, 10 Jan 2023 05:45:28 +0000 (11:15 +0530)]
Merge bitcoindevkit/bdk-cli#136: Remove mention of compact_filters from README until it can be re-enabled

c6f6a078ab3064eed74d964c52edd4eadff8e9df Remove mention of compact_filters from README until it can be re-enabled (Steve Myers)

Pull request description:

  ### Description

  Remove mention of compact_filters from README until it can be re-enabled

  ### Notes to the reviewers

  I didn't notice this before I merged #125.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  rajarshimaitra:
    ACK c6f6a078ab3064eed74d964c52edd4eadff8e9df

Tree-SHA512: 218e98d98af55f99ae77c88a75d74868b6503d8894ec8bcd508b3eec457d8a6bfe446d7fee637225ce2667bfdef472cbfd5a0fe54730d49ae1d84a0d560ad9f4

2 years agoRemove mention of compact_filters from README until it can be re-enabled
Steve Myers [Tue, 10 Jan 2023 01:06:27 +0000 (19:06 -0600)]
Remove mention of compact_filters from README until it can be re-enabled

2 years agoMerge bitcoindevkit/bdk-cli#125: Remove cbf
Steve Myers [Mon, 9 Jan 2023 15:40:38 +0000 (09:40 -0600)]
Merge bitcoindevkit/bdk-cli#125: Remove cbf

162aa9edf9a853a6d3261de30559b21a633622f3 Update cargo lock (rajarshimaitra)
9bbe7681903c1c457beff47a6a276db65ef9ac38 disable also in CI (rajarshimaitra)
11750618c706c158e82a6658b728b0b3a0b7198e Temporarily Disable CBF (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Fixes #112

  Removes compact block filters temporarily.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK 162aa9edf9a853a6d3261de30559b21a633622f3

Tree-SHA512: 9a7b88a32c2e7fffd18eea477cfb49f05b5af523ed7811ab1f22d597736fee23b8baa30b0ec0fb0ddb54f6aa6fd7c5d5666e101b4fa4d0efecbb432cfa80b44b

2 years agoUpdate cargo lock
rajarshimaitra [Sun, 2 Oct 2022 14:47:08 +0000 (20:17 +0530)]
Update cargo lock

2 years agodisable also in CI
rajarshimaitra [Fri, 6 Jan 2023 07:13:20 +0000 (12:43 +0530)]
disable also in CI

2 years agoTemporarily Disable CBF
rajarshimaitra [Sun, 2 Oct 2022 13:50:23 +0000 (19:20 +0530)]
Temporarily Disable CBF

3 years agoMerge bitcoindevkit/bdk-cli#124: Migrate from structopt to clap.
Steve Myers [Tue, 29 Nov 2022 04:23:51 +0000 (20:23 -0800)]
Merge bitcoindevkit/bdk-cli#124: Migrate from structopt to clap.

b20a140a60166650766b6100deee85d051dee538 Fix some clippies.. (rajarshimaitra)
1e21cc74f0fae16f6da1cf29983a8c91ba3010c9 Fix wasm (rajarshimaitra)
ba1c165f0fa847b02bca1f3bde335bafb3132c7d Update cargo lock. (rajarshimaitra)
02e71b06dbd670ddec4dd6d3ad3639dacf35787d Reverse the recipient parsing string (rajarshimaitra)
95719b0ad1628f6737efb6a568c872ab7b8cbbe2 Remove vector of string from compact_filters options. (rajarshimaitra)
9fb651a9e97052a4f65c3d20f44d264a30715ce1 Update wasm build to 1.57 in CI (rajarshimaitra)
7e87a65fea874033c48cca589d628bf3c07c1289 update MSRV to 1.57 (rajarshimaitra)
3dcc269f65d0f681945e1b1a45e2961d87ad7017 Update Cargo lock (rajarshimaitra)
f8c0f2e0206bc53c1577f758eb7926ce87d3e035 Update recipient parsing in handlers. (rajarshimaitra)
5bbc45ab2a3405fcae6eaad2c177e6d48fc9bf2e Move from structopt to clap (rajarshimaitra)

Pull request description:

  <!-- You can erase any parts of this template not applicable to your Pull Request. -->

  ### Description

  Fixes #113.

  This is an attempt to migrate from `structopt` to `clap v0.3` which provides very similar kind of derives as `structopt`. Changes are straight forward. But this comes with few more problems.

   - with clap `v3.2.22` the MSRV pushes up to `1.57.0`.. The last clap of MSRV `1.56.0` was `clap 3.2.5`.. But even that doesn't seem to be working at MSRV `1.56.0` anymore, as bunch of underlying lib has upgraded.

   - `clap v3.0` doesn't seem to support custom vector parsing well, reported here https://github.com/clap-rs/clap/issues/1704. This is required for `recipient` parsing which is a `Vec<(Script, u32)>`.  Workaround for that is to use vecs of strings and parse them at runtime in `create_tx` handler. Included in the PR.

  ### Notes to the reviewers

  `structopt` is currently freezed at `clap 2.0` and doesn't seem to intend on updating and currently its has unmaintained vulnerability. And `clap v3.0` onward seems to replacing everything that `structopt` did before.  So this means we should also look for ways to migrate from `strcutopt` to `clap`.. But `clap` seemed to have moved ahead than our MSRV `1.56.0`.. So we need to take up a call on that.. Opened this PR to facilitate that discussion..

  This is draft until we figure what to do..

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

ACKs for top commit:
  notmandatory:
    ACK b20a140a60166650766b6100deee85d051dee538

Tree-SHA512: de3511c1531185064e3c328f0c966c3e87294b7c6d07a89ba9f64e49f7c8b8ccaef0915f49fc6721b738f91a0128b30eeb61147a2da174ccac9abab094ab6798

3 years agoFix some clippies..
rajarshimaitra [Wed, 23 Nov 2022 06:00:44 +0000 (11:30 +0530)]
Fix some clippies..

3 years agoFix wasm
rajarshimaitra [Sun, 20 Nov 2022 13:35:47 +0000 (19:05 +0530)]
Fix wasm

3 years agoUpdate cargo lock.
rajarshimaitra [Sun, 30 Oct 2022 12:34:36 +0000 (18:04 +0530)]
Update cargo lock.

3 years agoReverse the recipient parsing string
rajarshimaitra [Sun, 30 Oct 2022 12:33:48 +0000 (18:03 +0530)]
Reverse the recipient parsing string

Vector parsing is possible with multiple flags.