]> Untitled Git - bdk/log
bdk
2 years agoMerge bitcoindevkit/bdk#869: Bump version to 0.27.1
Steve Myers [Thu, 16 Feb 2023 17:49:37 +0000 (11:49 -0600)]
Merge bitcoindevkit/bdk#869: Bump version to 0.27.1

231a1fba61c56c7d43c3a7d8d41af1f3b8aa4c3f Bump version to 0.27.1 (Steve Myers)

Pull request description:

  ### Description

  Bump dev version to 0.27.1.

  ### Notes to the reviewers

  This is in preparation for making a patch release and will be cherry picked to the release/0.27 branch. See #868.

  ### Changelog notice

  ### Checklists

  #### All Submissions:

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

Top commit has no ACKs.

Tree-SHA512: 7c791d221d95fb800c19b85c110a47f462b1c9ea7991dc1cf9bc5bb17d12b2dea9d1823d7f928ba06f09aaac36b1140610a29454857257f918124e0e0893fc4e

2 years agoBump version to 0.27.1
Steve Myers [Wed, 15 Feb 2023 22:42:20 +0000 (16:42 -0600)]
Bump version to 0.27.1

2 years agoMerge bitcoindevkit/bdk#867: Update rusqlite from 0.27.0 to 0.28.0
Steve Myers [Wed, 15 Feb 2023 20:42:26 +0000 (14:42 -0600)]
Merge bitcoindevkit/bdk#867: Update rusqlite from 0.27.0 to 0.28.0

8b2943c49b6747fd32c65cb73114e631042f6d4a Update rusqlite from 0.27.0 to 0.28.0 (Steve Myers)

Pull request description:

  ### Description

  Fix #866 by updating `rusqlite` dependency version from `0.27.0` to `0.28.0` to fix [RUSTSEC-2022-0090](https://rustsec.org/advisories/RUSTSEC-2022-0090).

  ### Notes to the reviewers

  This will also need to be cherry-picked to the `release/0.27` branch to create a new `0.27.1` release.

  ### Changelog notice

  Changed

  * Update rusqlite version from 0.27.0 to 0.28.0 to fix [RUSTSEC-2022-0090](https://rustsec.org/advisories/RUSTSEC-2022-0090).

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  rajarshimaitra:
    tACK 8b2943c49b6747fd32c65cb73114e631042f6d4a

Tree-SHA512: 0633e0523805895efb0e4c21671e6018d440b93f0b8119e8d553a2fac1f089b36addb2bf82fdf370674887e1b3efc09dc4c461d85043c469aeb41077488384a5

2 years agoUpdate rusqlite from 0.27.0 to 0.28.0
Steve Myers [Wed, 15 Feb 2023 01:05:06 +0000 (19:05 -0600)]
Update rusqlite from 0.27.0 to 0.28.0

2 years agoMerge bitcoindevkit/bdk#863: Fix ci Dockerfile.ledger
Daniela Brozzoni [Mon, 13 Feb 2023 22:21:40 +0000 (23:21 +0100)]
Merge bitcoindevkit/bdk#863: Fix ci Dockerfile.ledger

5b9e0e392a246b7cafa3fa6836be7603b039bad7 Fix ci Dockerfile.ledger (Steve Myers)

Pull request description:

  ### Description

  Ledger emulator used to default to `-model nanos` but in latest release we need to add it to the command line. This change fixes `test_hardware_wallet` CI tests.

  ### Notes to the reviewers

  I originally made this fix in the `release/0.27` branch, this PR cherry-picks the change back to the `master` branch. I should have done a `master` branch PR first but it's only a CI change and I wanted to get the `0.27.0` release out.

  ### Changelog notice

  None.

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  danielabrozzoni:
    tACK 5b9e0e392a246b7cafa3fa6836be7603b039bad7

Tree-SHA512: 552586dc614d11c4084b73ad865078c9e28a1bdd3eda9addc8055df6408bba5f110f8aa7b3da730949f41cfd48f87b12cda0ba2df2b98e40e1590aa99b54a7ee

2 years agoFix ci Dockerfile.ledger
Steve Myers [Sat, 11 Feb 2023 04:26:46 +0000 (22:26 -0600)]
Fix ci Dockerfile.ledger

2 years agoMerge bitcoindevkit/bdk#852: Bump version to 0.27.0
Steve Myers [Fri, 3 Feb 2023 22:00:43 +0000 (16:00 -0600)]
Merge bitcoindevkit/bdk#852: Bump version to 0.27.0

0c2570ae07e7e90b66b2161121718ffac38dc3aa Pin dev-dependency zip to 0.6.3 (Steve Myers)
e83bb7c4dccd94d5876dc4361bd64c8405cf9f93 Bump version to 0.27.0 (Steve Myers)

Pull request description:

  ### Description

  Bump version to 0.27.0.

  ### Notes to the reviewers

  Updating changelog file again.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)

ACKs for top commit:
  danielabrozzoni:
    ACK 0c2570ae07e7e90b66b2161121718ffac38dc3aa

Tree-SHA512: 334e0a6933be18152f266e3622b877ccf67dafadd3a641eaf9ffa4e671babafbedcdaef431e2195aa7e11945f164b8da44bd8a208c8e7287ce87684fb2459787

2 years agoPin dev-dependency zip to 0.6.3
Steve Myers [Fri, 3 Feb 2023 18:13:20 +0000 (12:13 -0600)]
Pin dev-dependency zip to 0.6.3

2 years agoBump version to 0.27.0
Steve Myers [Thu, 2 Feb 2023 18:31:59 +0000 (12:31 -0600)]
Bump version to 0.27.0

2 years agoMerge bitcoindevkit/bdk#847: Update electrsd to version 0.22
Steve Myers [Thu, 2 Feb 2023 17:32:36 +0000 (11:32 -0600)]
Merge bitcoindevkit/bdk#847: Update electrsd to version 0.22

147a4ed141accc83aa2781b2468d3d950674f8e7 Update electrsd to version 0.22 (Steve Myers)

Pull request description:

  ### Description

  Update `electrsd` dev-dependency to version `0.22`.

  ### Notes to the reviewers

  We're able to do this now that esplora was updated in #830 and our MSRV was bumped to `1.57.0` in #842.

  ### Changelog

  None.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)

ACKs for top commit:
  rajarshimaitra:
    ACK 147a4ed141accc83aa2781b2468d3d950674f8e7

Tree-SHA512: 20e0aebb02d786a4d426a2d2e66b78225a803eee2c2f6092b0cf8f18e6fe91e37ef7a74e109e3ad4d734af8de4dc71598f7e80f50d40187442dad323000c6090

2 years agoMerge bitcoindevkit/bdk#844: Update rust-miniscript to 9.0
Steve Myers [Thu, 2 Feb 2023 16:43:55 +0000 (10:43 -0600)]
Merge bitcoindevkit/bdk#844: Update rust-miniscript to 9.0

cf8cd2f2b4a975afbea18309a5dae0158acd8805 Update rust-miniscript to version 9.0, hwi to version 0.5 (Steve Myers)

Pull request description:

  ### Description

  A new [`rust-miniscript` release 9.0](https://github.com/rust-bitcoin/rust-miniscript/blob/master/CHANGELOG.md#900---november-5-2022) came out on Nov 14, updating to it to pickup the bug fixes. Also updating dependency`hwi` to new `0.5` version which used the `9.0` version of `rust-miniscript`.

  ### Notes to the reviewers

  This new version of `rust-miniscript` uses the same version of `rust-bitcoin` we are on, 0.29.1.

  ### Changelog notice

  Update rust-miniscript dependency to latest bug fix release 9.0.

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  rajarshimaitra:
    ACK cf8cd2f2b4a975afbea18309a5dae0158acd8805

Tree-SHA512: 12473f67d2a4388e3d93b91988233e067328c344bb993981b014e1f7469db82f12d8f68eb1bf093feb25c4428d10451d8f361497c71c4f696d19939d4be9d858

2 years agoMerge bitcoindevkit/bdk#838: Add small clarification to docs
Steve Myers [Thu, 2 Feb 2023 02:05:46 +0000 (20:05 -0600)]
Merge bitcoindevkit/bdk#838: Add small clarification to docs

f0cec015b59ab484e81ca675d1170af5eb553911 Add small clarification to docs (thunderbiscuit)

Pull request description:

  ### Description
  Very small fixes to documentation:
  1. I got a DM last week from a user who thought we had a bug with our timestamps. It turns out he was using the milliseconds version of the Unix timestamp in his project and didn't realize we were giving out a standard Unix timestamp. The docs now mention this explicitly.
  2. I noticed some small inconsistencies in the documentation on the public templates while porting them over to Kotlin. This PR also fixes that so that all templates use a common documentation wording.

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

ACKs for top commit:
  notmandatory:
    Re-ACK f0cec015b59ab484e81ca675d1170af5eb553911

Tree-SHA512: ad42278126a0613fb1ba15f4e0ca92e05038389ac2e6b1015ea045f30ee8e92a40d6c089c35d0492bba0dc6d71e44b29879bd37a8bc491ff6367a89cab958db2

2 years agoMerge bitcoindevkit/bdk#846: Update CHANGELOG and release process
Steve Myers [Wed, 1 Feb 2023 17:20:54 +0000 (11:20 -0600)]
Merge bitcoindevkit/bdk#846: Update CHANGELOG and release process

4ada11f3581a172ec2d5980378267f578e998740 Update CHANGELOG and release process (Steve Myers)

Pull request description:

  ### Description

  Per discussion on discord with @danielabrozzoni this PR updates our release process to go back to updating our CHANGELOG.md file for each release.

  ### Notes to the reviewers

  This adds one more step the person making releases has to do but it isn't much.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)

ACKs for top commit:
  danielabrozzoni:
    ACK 4ada11f3581a172ec2d5980378267f578e998740

Tree-SHA512: 80c116c90b4a5c5d4091678dd7714c9eee881c0f181dd220e878011001ad458db2bb81dea7dc13f2d768b9169c3644191d7969c533b784a5e26f5aa6c9e66fc2

2 years agoUpdate CHANGELOG and release process
Steve Myers [Mon, 30 Jan 2023 23:26:57 +0000 (17:26 -0600)]
Update CHANGELOG and release process

2 years agoUpdate rust-miniscript to version 9.0, hwi to version 0.5
Steve Myers [Thu, 26 Jan 2023 21:13:37 +0000 (15:13 -0600)]
Update rust-miniscript to version 9.0, hwi to version 0.5

2 years agoUpdate electrsd to version 0.22
Steve Myers [Tue, 31 Jan 2023 18:03:30 +0000 (12:03 -0600)]
Update electrsd to version 0.22

2 years agoMerge bitcoindevkit/bdk#834: Document return type of `sign` method.
Steve Myers [Tue, 31 Jan 2023 17:50:25 +0000 (11:50 -0600)]
Merge bitcoindevkit/bdk#834: Document return type of `sign` method.

ff720780950e010cb13af7def1d2226841ca3f97 Document return type of `sign` method. (Thibaut Le Guilly)

Pull request description:

  Small thing but I had to look up the code to see what the returned boolean was about, thought it might be good to have in the docs.

  ### Description

  Documents the meaning of the returned value on the wallet `sign` method.

  I've just edited from github so skipped all the checks if that's not ok maybe someone else can update it properly.

ACKs for top commit:
  w0xlt:
    ACK https://github.com/bitcoindevkit/bdk/pull/834/commits/ff720780950e010cb13af7def1d2226841ca3f97
  notmandatory:
    ACK ff720780950e010cb13af7def1d2226841ca3f97

Tree-SHA512: e0dd52a0af663b88d3fe0a20cb2909b9ba00bcf4f224b4f87cfd53fee0a199a01679dc5cd74aeb440326dfc52d45fa887534138d25df6fa1c8a38678be23204e

2 years agoAdd small clarification to docs
thunderbiscuit [Thu, 19 Jan 2023 20:03:37 +0000 (15:03 -0500)]
Add small clarification to docs

2 years agoDocument return type of `sign` method.
Thibaut Le Guilly [Fri, 13 Jan 2023 11:55:38 +0000 (20:55 +0900)]
Document return type of `sign` method.

Small thing but I had to look up the code to see what the returned boolean was about, thought it might be good to have in the docs.

2 years agoMerge bitcoindevkit/bdk#837: Derive `PartialEq`, `Eq` on `SyncTime`
Steve Myers [Mon, 30 Jan 2023 19:11:45 +0000 (13:11 -0600)]
Merge bitcoindevkit/bdk#837: Derive `PartialEq`, `Eq` on `SyncTime`

45d41416ede5d2e26a8ef4c2cac6f44d0346fb23 Derive `PartialEq`, `Eq` on `SyncTime` (Max Fang)

Pull request description:

  ### Description

  This enables e.g. `assert_eq!` comparisons of `SyncTime` in tests (we use this)

  ### Changelog notice

  Derived `PartialEq`, `Eq` on `SyncTime`

  #### All Submissions:

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

ACKs for top commit:
  rajarshimaitra:
    ACK 45d41416ede5d2e26a8ef4c2cac6f44d0346fb23
  evanlinjin:
    ACK 45d41416ede5d2e26a8ef4c2cac6f44d0346fb23

Tree-SHA512: eb2dc87762c33874a3a521c2f020250e83401c0f0e784911de6139bc8bf8c56f40c93ad2aa93cf20058ba796efd050979bddc5414acdd6856003e7a9f88c75c6

2 years agoMerge bitcoindevkit/bdk#831: Don't default to use `async`/`await` on `wasm32`
Steve Myers [Mon, 30 Jan 2023 19:09:46 +0000 (13:09 -0600)]
Merge bitcoindevkit/bdk#831: Don't default to use `async`/`await` on `wasm32`

32912eaa05fd3bb4fa1577ca413dcedf909544d9 Don't default to use `async`/`await` on `wasm32` (Elias Rohrer)

Pull request description:

  ### Description

  We don't automatically want to make the interface `async` based on the used architecture, but now require the user to explicitly set the `async-interface` feature.

  #### All Submissions:

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

ACKs for top commit:
  notmandatory:
    ACK 32912eaa05fd3bb4fa1577ca413dcedf909544d9

Tree-SHA512: 41a8f3ab29508a359a8c0d96994e4fa97e52c15e8b8003c1988bcfe036cafa81d6210d446ed825672ce52aff684ebb328dc61b8ae3d25cda6f51a3cae838de58

2 years agoMerge bitcoindevkit/bdk#814: Improve display error formatting
Steve Myers [Mon, 30 Jan 2023 19:08:07 +0000 (13:08 -0600)]
Merge bitcoindevkit/bdk#814: Improve display error formatting

9019793bd4090d704b17876c57bf255a75507ed2 Improve display error formatting (Yuki Kishimoto)

Pull request description:

  ### Description

  Closes #555

  ### Checklists

  #### All Submissions:

  * [X] I've signed all my commits
  * [X] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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

ACKs for top commit:
  notmandatory:
    ACK 9019793bd4090d704b17876c57bf255a75507ed2

Tree-SHA512: 44f0c7e0374e255bf99cbbfb01f2af76746e52afe67ace1595d2830bd60be99f3c8726e6ad9744878978257796a79b3933e7ef21c30a5e4b99a16aaf9ac7ff64

2 years agoDerive `PartialEq`, `Eq` on `SyncTime`
Max Fang [Thu, 15 Dec 2022 06:18:59 +0000 (22:18 -0800)]
Derive `PartialEq`, `Eq` on `SyncTime`

This enables e.g. `assert_eq!` comparisons of `SyncTime` in tests.

2 years agoImprove display error formatting
Yuki Kishimoto [Wed, 7 Dec 2022 18:22:45 +0000 (19:22 +0100)]
Improve display error formatting

2 years agoDon't default to use `async`/`await` on `wasm32`
Elias Rohrer [Tue, 10 Jan 2023 14:05:55 +0000 (15:05 +0100)]
Don't default to use `async`/`await` on `wasm32`

We don't automatically want to make the interface `async` based on the
used architecture, but now require the user to explicitly set the
`async-interface` feature.

2 years agoMerge bitcoindevkit/bdk#842: Bump project MSRV to 1.57.0
Steve Myers [Fri, 27 Jan 2023 17:00:15 +0000 (11:00 -0600)]
Merge bitcoindevkit/bdk#842: Bump project MSRV to 1.57.0

b02bfb347d1faa0ce0a7ad6f67d0b92458510239 Bump project MSRV to 1.57.0, update stable for all jobs to 1.65.0 (Steve Myers)

Pull request description:

  ### Description

  Bump project MSRV from 1.56.1 to 1.57.0.

  Also bumped the `check-wasm` and `test_hardware_wallet` jobs rust STABLE version to 1.65.0 to match other jobs.

  ### Notes to the reviewers

  The `rustls` crate changed their MSRV to 1.57 on 2023-01-12 with a patch release from 0.20.7 to 0.20.8, rustls/rustls#1152. This breaks our CI builds that use `explora-client` 0.3 because it depends on a version of `ureq` that uses the latest `rustls`.

  ```
  rustls v0.20.8
  └── ureq v2.6.2
      └── esplora-client v0.3.0
          └── bdk v0.26.0 (/Users/steve/git/notmandatory/bdk)
      [build-dependencies]
      └── electrsd v0.21.1
          [dev-dependencies]
          └── bdk v0.26.0 (/Users/steve/git/notmandatory/bdk)
  ```

  https://github.com/rustls/rustls/blob/main/README.md

  ### Changelog notice

  Project MSRV changed from 1.56.1 to 1.57.0.

  ### Checklists

  #### All Submissions:

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

Top commit has no ACKs.

Tree-SHA512: 86b3ec2a7412a5ca1d1f620a3a16ccf315ce6afc363fdaa096187054de2edca09e4ce394df86174bfe45640b8226ed919bd4dc2d6e2149842355cb66e5c834be

2 years agoBump project MSRV to 1.57.0, update stable for all jobs to 1.65.0
Steve Myers [Tue, 24 Jan 2023 19:28:42 +0000 (13:28 -0600)]
Bump project MSRV to 1.57.0, update stable for all jobs to 1.65.0

2 years agoMerge bitcoindevkit/bdk#815: Bump CI Rust stable version to 1.65.0
Steve Myers [Tue, 24 Jan 2023 18:06:05 +0000 (12:06 -0600)]
Merge bitcoindevkit/bdk#815: Bump CI Rust stable version to 1.65.0

fb76c9ed9a0764a1e82d5c12a5e8104e26ef0ee5 ci: bump rust stable version to 1.65.0 (Yuki Kishimoto)
3a782b3b0da3ffbb2ec2480feb39c3b9e09149fe Fix Clippy Rust 1.65 (Yuki Kishimoto)

Pull request description:

  ### Description

  * Fix clippy for Rust 1.65.0
  * Bump CI Rust stable version to 1.65.0

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  rajarshimaitra:
    ReACK fb76c9ed9a0764a1e82d5c12a5e8104e26ef0ee5

Tree-SHA512: 2f27915895cb203842831e525cc9efe0503269df07b7e58ab2a587e2991decf2990cb48abe8209c89cec5706a1d9c72387da532b70979ec100b5eed469051136

2 years agoci: bump rust stable version to 1.65.0
Yuki Kishimoto [Thu, 8 Dec 2022 14:30:27 +0000 (15:30 +0100)]
ci: bump rust stable version to 1.65.0

2 years agoFix Clippy Rust 1.65
Yuki Kishimoto [Thu, 8 Dec 2022 12:40:50 +0000 (13:40 +0100)]
Fix Clippy Rust 1.65

3 years agoMerge bitcoindevkit/bdk#830: Update esplora-client
Steve Myers [Tue, 3 Jan 2023 02:22:31 +0000 (20:22 -0600)]
Merge bitcoindevkit/bdk#830: Update esplora-client

6e5873ebba27d7dcef2695053a423bbe2d646a25 Update esplora-client (rajarshimaitra)

Pull request description:

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

  ### Description

  Update esplora-client and electrsd.

  Update: `electrsd v0.22` requires msrv at 1.57.. So removed from the PR for now..

  ### 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

  <!-- 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/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

Top commit has no ACKs.

Tree-SHA512: 7c126822f7a45a6d3053c81d78e20340d64b159e7433ea333dc4bf5611316938718e16a65fcb37c59ec5e7e5d74d514bc312e49eeb49167a22b0eb2269203488

3 years agoUpdate esplora-client
rajarshimaitra [Fri, 30 Dec 2022 03:54:20 +0000 (09:24 +0530)]
Update esplora-client

3 years agoBump version to 0.26.0
Steve Myers [Mon, 26 Dec 2022 21:55:48 +0000 (13:55 -0800)]
Bump version to 0.26.0

3 years agoMerge bitcoindevkit/bdk#821: [#344] Add assert_matches
Steve Myers [Mon, 26 Dec 2022 21:38:11 +0000 (13:38 -0800)]
Merge bitcoindevkit/bdk#821: [#344] Add assert_matches

14bc9c0e356ac1c864e7c37aaadfe4696e999693 [#344] Add assert_matches Replace assert!(matches! with assert_matches! everywhere Convert assert! to assert_eq! in 2 places (Jeremy Mawson)

Pull request description:

  [#344] Add assert_matches

ACKs for top commit:
  notmandatory:
    ACK 14bc9c0e356ac1c864e7c37aaadfe4696e999693
  danielabrozzoni:
    utACK 14bc9c0e356ac1c864e7c37aaadfe4696e999693

Tree-SHA512: 730fed9c8c22b0725b1337140636def1a059ac78e4ae16f1abd4c7f379628d9329ccd3ed28e4cbab58e9ace5f349333cb5fa83ec43d507d7a7609601efebc9e1

3 years agoMerge bitcoindevkit/bdk#825: Bump hwi to 0.4.0
Steve Myers [Mon, 26 Dec 2022 21:36:24 +0000 (13:36 -0800)]
Merge bitcoindevkit/bdk#825: Bump hwi to 0.4.0

4cad18bbcaa8199b82c10291aa38941f06823568 Bump hwi to 0.4.0 (Daniela Brozzoni)

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 -->

  ### 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

  - Bump hwi to 0.4.0

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  notmandatory:
    ACK 4cad18bbcaa8199b82c10291aa38941f06823568

Tree-SHA512: 6c73c091da743734ed87e4792f3c2a838ac7aa252388309ad46e017cc7e9b338bfdb7ed70925c8041a7d22a4d12e2a984e902619b1b7735c645e6c1b6855aeb3

3 years agoMerge bitcoindevkit/bdk#805: electrum: add validate_domain to ElectrumBlockchainConfig
Steve Myers [Sat, 24 Dec 2022 00:27:45 +0000 (16:27 -0800)]
Merge bitcoindevkit/bdk#805: electrum: add validate_domain to ElectrumBlockchainConfig

2451c00268a8b518212c59132c263bc186d1b0f9 electrum: add validate_domain to ElectrumBlockchainConfig (Igor Cota)

Pull request description:

  ### Description

  The purpose of the PR is to be able to configure both `stop_gap` **and** `validate_domain`. Perhaps there are nicer ways.

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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

  Issue in https://github.com/bitcoindevkit/bdk/issues/804

ACKs for top commit:
  notmandatory:
    ACK 2451c00268a8b518212c59132c263bc186d1b0f9

Tree-SHA512: e10e3a027c202c8e680e5181f2a98c9ca30fa7773660cc47bef93f557cdc94c09e46b154b0edee65e498a49bc997cc9172eb3782dc4310d5775c0763d8c2ca4a

3 years ago[#344] Add assert_matches
Jeremy Mawson [Mon, 12 Dec 2022 21:55:32 +0000 (07:55 +1000)]
[#344] Add assert_matches
Replace assert!(matches! with assert_matches! everywhere
Convert assert! to assert_eq! in 2 places

3 years agoelectrum: add validate_domain to ElectrumBlockchainConfig
Igor Cota [Fri, 25 Nov 2022 09:32:13 +0000 (10:32 +0100)]
electrum: add validate_domain to ElectrumBlockchainConfig

3 years agoBump hwi to 0.4.0
Daniela Brozzoni [Mon, 19 Dec 2022 09:50:59 +0000 (10:50 +0100)]
Bump hwi to 0.4.0

3 years agoMerge bitcoindevkit/bdk#812: Implement ordering for TransactionDetails
Daniela Brozzoni [Mon, 19 Dec 2022 08:42:55 +0000 (09:42 +0100)]
Merge bitcoindevkit/bdk#812: Implement ordering for TransactionDetails

d3d07564f28b68723630fcb03becdc9d5b8d72ae Implement ordering for TransactionDetails (benthecarman)

Pull request description:

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

  ### Description

  Pulled from https://github.com/BitcoinDevShop/mutiny-web-poc/pull/189

  Wallets should be able to sort the transactions easily, this makes it so you can just all `sort` on a list of tx details instead of needing to implement the sort_by yourself

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  danielabrozzoni:
    utACK d3d07564f28b68723630fcb03becdc9d5b8d72ae

Tree-SHA512: d2b53dc959897b71d71794f3c919f86f8b7886e6ea5f6ac511cfaca0c19b2f78784a23491b3010380cf41da7ef69fd9ca1be75437c53eca1c60bd6651d1fec41

3 years agoImplement ordering for TransactionDetails
benthecarman [Tue, 6 Dec 2022 07:37:20 +0000 (01:37 -0600)]
Implement ordering for TransactionDetails

3 years agoMerge bitcoindevkit/bdk#818: Fix wrong key origin path in public descriptor templates
Steve Myers [Fri, 16 Dec 2022 21:39:58 +0000 (15:39 -0600)]
Merge bitcoindevkit/bdk#818: Fix wrong key origin path in public descriptor templates

d6e730f18ad25706323a3f3bc8e8646c002d1e1c Fix wrong key origin path in public descriptor templates (Yuki Kishimoto)

Pull request description:

  ### Description

  Fixes #817

  ### Checklists

  #### All Submissions:

  * [X] I've signed all my commits
  * [X] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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: df08007b27d44a889cf94fe3e2c608cb92f963737c937ca952288d0468636308b09124f04b5dbd793de81d6cb06cf076c89358356abfe8417775ab1ab5650698

3 years agoMerge bitcoindevkit/bdk#808: fix: make save_tx order independent
Steve Myers [Fri, 16 Dec 2022 21:36:54 +0000 (15:36 -0600)]
Merge bitcoindevkit/bdk#808: fix: make save_tx order independent

d72aa7ebc071cb418ce53efa8da7447bac8161f7 chore: make TxCache.save_txs can order independent (bodymindarts)

Pull request description:

  fulcrum doesn't return txs in the order they are requested in. This PR makes the `TxCache` insensitive to this behaviour.

Top commit has no ACKs.

Tree-SHA512: fe17345ba26dd047ee18d23eb7341849a80ada71a72826dc653616014ca1371b07bddcdc4983e842d4cbfd951b192de21849a5f00662d40fdc8033f13ac2bb75

3 years agochore: make TxCache.save_txs can order independent
bodymindarts [Wed, 30 Nov 2022 14:17:49 +0000 (15:17 +0100)]
chore: make TxCache.save_txs can order independent

3 years agoMerge bitcoindevkit/bdk#820: Make README.md code examples compile without errors
Daniela Brozzoni [Thu, 15 Dec 2022 08:00:27 +0000 (09:00 +0100)]
Merge bitcoindevkit/bdk#820: Make README.md code examples compile without errors

d1e5b87bfc1d37c5cd6631427ab521a59fa4e67a Make README.md code examples compile without errors (Peter Todd)

Pull request description:

ACKs for top commit:
  danielabrozzoni:
    ACK d1e5b87bfc1d37c5cd6631427ab521a59fa4e67a

Tree-SHA512: 343c62acfcfe9e2ea9af8a89d5a1653f9076c50a6fe2efcb23bc838d10d388395872080f2d98f21dd98fdd18a1b79457eb68dae3d73f02aa817f1b9045f19a25

3 years agoFix wrong key origin path in public descriptor templates
Yuki Kishimoto [Fri, 9 Dec 2022 09:27:34 +0000 (10:27 +0100)]
Fix wrong key origin path in public descriptor templates

3 years agoMake README.md code examples compile without errors
Peter Todd [Sun, 11 Dec 2022 18:54:33 +0000 (13:54 -0500)]
Make README.md code examples compile without errors

3 years agoMerge bitcoindevkit/bdk#822: Update ci nightly-docs workflow to use nightly-2022...
Daniela Brozzoni [Wed, 14 Dec 2022 19:15:38 +0000 (20:15 +0100)]
Merge bitcoindevkit/bdk#822: Update ci nightly-docs workflow to use nightly-2022-12-14

9ddd5025382341a5e941630473563edc593645f4 Update ci nightly-docs workflow to use nightly-2022-12-14 (Steve Myers)

Pull request description:

  ### Description

  The current nightly version we were using for the nightly-docs workflow is failing so I updated it to tonight's (2022-12-14)
  version.

  ### Notes to the reviewers

  I decided to select another hard-coded date nightly version so we don't run the risk of some random nightly release breaking this workflow.

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  danielabrozzoni:
    utACK 9ddd5025382341a5e941630473563edc593645f4

Tree-SHA512: 650fc4880c1de37f3cd581ba1e2f416ac732d06e03b1dea2878b5051bf38ff809dd965baa0987c7ce47e5aa5e30932cedad3dce17fca6b787e6ace72d604c591

3 years agoUpdate ci nightly-docs workflow to use nightly-2022-12-14
Steve Myers [Wed, 14 Dec 2022 17:53:54 +0000 (11:53 -0600)]
Update ci nightly-docs workflow to use nightly-2022-12-14

3 years agoMerge bitcoindevkit/bdk#811: Downgrade ubuntu to 20.04 for test_hardware_wallet CI job
Daniela Brozzoni [Tue, 6 Dec 2022 07:17:13 +0000 (08:17 +0100)]
Merge bitcoindevkit/bdk#811: Downgrade ubuntu to 20.04 for test_hardware_wallet CI job

11dcc14374e13c526972cd57a9ad726d183fc015 Downgrade ubuntu to 20.04 for test_hardware_wallet CI job (Steve Myers)

Pull request description:

  ### Description

  As suggested by bitcoindevkit/rust-hwi#61, downgrade ubuntu version to 20.04 (instead of using latest), to fix `test_hardware_wallet` CI job.

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  danielabrozzoni:
    ACK 11dcc14374e13c526972cd57a9ad726d183fc015

Tree-SHA512: 26de7bb0e562065a9d1071fb292f8532894f921c3557c418e95b05dfff529d8e5bf1751d8b5136618d3b768f10d8af714882f7c453c91a08a9c5e9aafef976b5

3 years agoDowngrade ubuntu to 20.04 for test_hardware_wallet CI job
Steve Myers [Mon, 5 Dec 2022 17:20:08 +0000 (11:20 -0600)]
Downgrade ubuntu to 20.04 for test_hardware_wallet CI job

3 years agoMerge bitcoindevkit/bdk#806: Ensure there are no duplicated script_pubkeys in sqlite
Steve Myers [Wed, 30 Nov 2022 17:05:25 +0000 (09:05 -0800)]
Merge bitcoindevkit/bdk#806: Ensure there are no duplicated script_pubkeys in sqlite

b5fcddcf1ab795b96481f3e46da9356e4f9c8b41 Add sqlite migration to drop duplicated script_pubkeys rows (Steve Myers)
21c96c9c811337ba04a0f85b48a7dec58ba8b416 Add test for issue #801 (Alekos Filini)
c51d544932a666851c39f79a517e2e0a1e783b05 [wip] Ensure there are no duplicated script_pubkeys in sqlite (Alekos Filini)

Pull request description:

  ### Description

  Add a `UNIQUE` constraint on the script_pubkeys table so that it doesn't grow constantly when caching new addresses.

  Fixes #801

  ### Notes to the reviewers

  Adding it to the 0.25 milestone since it's just a bugfix.

  Still in draft because I need to add extra migration queries to clean up existing dbs.

  ### Checklists

  #### All Submissions:

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

  #### Bugfixes:

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

ACKs for top commit:
  notmandatory:
    ACK b5fcddcf1ab795b96481f3e46da9356e4f9c8b41

Tree-SHA512: 7b10e453bb38af5c4f80f77692a56e37259680e50f9c2c9e554a0e5f04fb9cab897da6476c6c9930f1c501b455472984a1c92c4f137cff49acdc390d2e705107

3 years agoAdd sqlite migration to drop duplicated script_pubkeys rows
Steve Myers [Tue, 29 Nov 2022 15:20:49 +0000 (07:20 -0800)]
Add sqlite migration to drop duplicated script_pubkeys rows

3 years agoMerge bitcoindevkit/bdk#803: Bump version to 0.25.0
Alekos Filini [Mon, 28 Nov 2022 09:55:06 +0000 (10:55 +0100)]
Merge bitcoindevkit/bdk#803: Bump version to 0.25.0

5e56c3b3c15e093b20beee669609d40424a04481 Bump version to 0.25.0 (Steve Myers)

Pull request description:

  ### Description

  Bump version to 0.25.0

ACKs for top commit:
  afilini:
    ACK 5e56c3b3c15e093b20beee669609d40424a04481

Tree-SHA512: b1fc49caed9676d4e3db2a625b6209fffa19694ada2e2ff4d3e5d5cbbd6816ff03924387d66bf3a8b8ec4a3b44bf5d00d95cc450427e5b669e88af60400b02c9

3 years agoAdd test for issue #801
Alekos Filini [Sat, 26 Nov 2022 14:11:09 +0000 (15:11 +0100)]
Add test for issue #801

3 years ago[wip] Ensure there are no duplicated script_pubkeys in sqlite
Alekos Filini [Sat, 26 Nov 2022 13:52:49 +0000 (14:52 +0100)]
[wip] Ensure there are no duplicated script_pubkeys in sqlite

Add a `UNIQUE` constraint on the script_pubkeys table so that it doesn't
grow constantly when caching new addresses.

Fixes #801

3 years agoBump version to 0.25.0
Steve Myers [Fri, 25 Nov 2022 06:01:01 +0000 (22:01 -0800)]
Bump version to 0.25.0

3 years agoMerge bitcoindevkit/bdk#746: Add mnemonic_to_descriptors example
Steve Myers [Thu, 24 Nov 2022 20:52:06 +0000 (12:52 -0800)]
Merge bitcoindevkit/bdk#746: Add mnemonic_to_descriptors example

df905a8d5ef8e275188389486ac685b29f0d8c9f Add mnemonic to descriptors example. (Vladimir Fomene)

Pull request description:

  ### Description

  Using *bdk-cli* it is simple for a new user to generate a mnemonic phrase and descriptors. This might
  not be clear for new users when using *bdk* itself.

  ### Notes to the reviewers

  This was initially requested by one user but might be relevant for other users as well.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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

  #### 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 df905a8d5ef8e275188389486ac685b29f0d8c9f

Tree-SHA512: ccaab775d664d1d5ad6f4cd4fb11f9552c4662fbac747ad0487a016fd4a0fa6f13fcb4dffdc6f0d2f14ee432fcb2a72a8b8837b0a977ded649ec7d3d84e1c0ed

3 years agoAdd mnemonic to descriptors example.
Vladimir Fomene [Thu, 8 Sep 2022 11:18:13 +0000 (14:18 +0300)]
Add mnemonic to descriptors example.

This was initially requested by one user but might be
relevant for other users as well.

3 years agoMerge bitcoindevkit/bdk#800: fix: ensure the key network is updated in the KeyMap...
Steve Myers [Thu, 24 Nov 2022 17:22:32 +0000 (09:22 -0800)]
Merge bitcoindevkit/bdk#800: fix: ensure the key network is updated in the KeyMap as well

150f4d6f41427d5d8a6608e7da4f30dfe3d0801a fix: ensure the key network is updated in the KeyMap as well (Alekos Filini)

Pull request description:

  ### Description

  Otherwise we may have inconsistencies with keys in the descriptor that have a network and keys in the keymap that are different.

  ### Notes to the reviewers

  Adding it to the `0.25` milestone since it's just a quick fix

  ### Checklists

  #### All Submissions:

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

  #### Bugfixes:

  * [ ] This pull request breaks the existing API
  * [x] 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 150f4d6f41427d5d8a6608e7da4f30dfe3d0801a

Tree-SHA512: df87323cc29cf74f54a0867bfbe9fe24543de69dc6443656bd920458c9055d4b05614430c89bb470a8a6f7d10da023a0fb107b1cfb0fcc38e50f0579b6411a33

3 years agofix: ensure the key network is updated in the KeyMap as well
Alekos Filini [Wed, 23 Nov 2022 10:22:03 +0000 (11:22 +0100)]
fix: ensure the key network is updated in the KeyMap as well

Otherwise we may have inconsistencies with keys in the descriptor that
have a network and keys in the keymap that are different.

3 years agoMerge bitcoindevkit/bdk#526: Add code example for each supported backend
Steve Myers [Tue, 22 Nov 2022 16:12:05 +0000 (08:12 -0800)]
Merge bitcoindevkit/bdk#526: Add code example for each supported backend

f99a6b9f434e86a78695da72e9d28e6937c7e5db add `esplora_backend` example. (w0xlt)
aedbc8c97d6bf87347c3fd3796d1f0dfe6a8701c add `electrum_backend` example. (w0xlt)

Pull request description:

  This PR adds code example for connecting to Esplora, Electrum Server, Neutrino and Bitcoin Core.
  Also shows how to retrieve balance, sign and broadcast transactions.

  To test:
  ```
  cd examples/backend/
  cargo run electrum
  cargo run esplora
  cargo run neutrino
  cargo run rpc_core
  ```

ACKs for top commit:
  rajarshimaitra:
    tACK f99a6b9f434e86a78695da72e9d28e6937c7e5db

Tree-SHA512: 1d99129f14d83d9a833cee1587fe0eb3e5da4c83ae9008fb3e510be96a874dc86f800f203f68f5da70648a911709107cf0f286c2623808dc97dd63b7addef16b

3 years agoMerge bitcoindevkit/bdk#785: Fix wallet export rescan height
Steve Myers [Tue, 22 Nov 2022 14:28:47 +0000 (06:28 -0800)]
Merge bitcoindevkit/bdk#785: Fix wallet export rescan height

e9bbb8724f92ada33228bbfc22acdaefbd79c44e Fix wallet export rescan height (LLFourn)

Pull request description:

  It would return the latest transaction height rather than the earliest as the height to rescan from.

  Found by @evanlinjin  and I while implementing `bdk_core` stuff into bdk's wallet.

  ### Changelog notice

  - Fix wallet export transaction height

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] This pull request breaks the existing API
  * [x] I've added tests to reproduce the issue which are now passing

ACKs for top commit:
  rajarshimaitra:
    tACK e9bbb8724f92ada33228bbfc22acdaefbd79c44e
  notmandatory:
    ACK e9bbb8724f92ada33228bbfc22acdaefbd79c44e

Tree-SHA512: 9b29ef0df39d26806f48b38fa5c3643bad32f58b993ffdcfc7811aca64a025bd8f163967321f874aa2ef3d29c3e7bc6e2f44d348306a37111f4def036d4c095e

3 years agoadd `esplora_backend` example.
w0xlt [Wed, 3 Aug 2022 16:12:25 +0000 (13:12 -0300)]
add `esplora_backend` example.

3 years agoadd `electrum_backend` example.
w0xlt [Wed, 3 Aug 2022 16:11:46 +0000 (13:11 -0300)]
add `electrum_backend` example.

3 years agoBump version to 0.24.0 github/release/1.0
Steve Myers [Thu, 27 Oct 2022 04:27:30 +0000 (23:27 -0500)]
Bump version to 0.24.0

3 years agoMerge bitcoindevkit/bdk#765: Fix how descriptor checksums are calculated
Steve Myers [Thu, 27 Oct 2022 03:39:17 +0000 (22:39 -0500)]
Merge bitcoindevkit/bdk#765: Fix how descriptor checksums are calculated

648282e60283f579ba1644fe506ae1370786da96 Update docs and tests based on review comments (Steve Myers)
60057a7bf78f01bfb1149251f384de6432f94d59 Deprecate backward compatible get_checksum_bytes, get_checksum functions (Steve Myers)
e2a4a5884b444a6ef3f137ef2cc21a816c386acf Ensure backward compatibility of the  "checksum inception" bug (志宇)
fd34956c2980295e1f0cc32340fb2b99a6b245ea `get_checksum_bytes` now checks input data for checksum (志宇)

Pull request description:

  ### Description

  Previously, the methods `get_checksum_bytes` and `get_checksum` do not check input data to see whether the input data already has a checksum.

  This PR does the following:

  * Introduce a `exclude_hash: bool` flag for `get_checksum_bytes`, that excludes the checksum portion of the original data when calculating the checksum. In addition to this, if the calculated checksum does not match the original checksum, an error is returned for extra safety.
  * Ensure `Wallet` is still backwards compatible with databases created with the "checksum inception" bug.

  ### Notes to the reviewers

  Thank you.

  ### Changelog notice

  Fix the "checksum inception" bug, where we may accidentally calculate the checksum of a descriptor that already has a checksum.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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'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: 7ea2721dcd56459b6996e56a3ddfc3559a0c64869a08f5312a8f0f4fcb5dbef7ac7461a4ab017acde4a62fed02d8a620c402dd384323aba85736610514fcb7e1

3 years agoMerge branch 'master' into fix_wallet_checksum
Steve Myers [Thu, 27 Oct 2022 03:01:07 +0000 (22:01 -0500)]
Merge branch 'master' into fix_wallet_checksum

3 years agoMerge bitcoindevkit/bdk#770: Upgrade to rust-bitcoin 0.29
Steve Myers [Thu, 27 Oct 2022 02:45:59 +0000 (21:45 -0500)]
Merge bitcoindevkit/bdk#770: Upgrade to rust-bitcoin 0.29

c7a43d941fd0f457f615f2fe43e71586a253e46a Remove unused code (Alekos Filini)
1ffd59d469ff28f673d854eaf15c992c15541bfe Upgrade to rust-bitcoin 0.29 (Alekos Filini)
ae4f4e541671e85be04fdddc97cb7f65af1eeea1 Upgrade `rand` to `0.8` (Alekos Filini)
9854fd34eaa688e5acd601119b8f448a2d77fbd9 Remove deprecated address validators (Alekos Filini)

Pull request description:

  ### Description

  Upgrade BDK to rust-bitcoin 0.29

  Missing pieces:

  - [x] rust-miniscript `update_output_with_descriptor` - rust-bitcoin/rust-miniscript#465
  - [x] rust-miniscript 8.0.0 release - rust-bitcoin/rust-miniscript#462
  - [x] Upgrade rust-hwi to bitcoin 0.29 bitcoindevkit/rust-hwi#50
  - [x] Upgrade esplora-client to bitcoin 0.29 https://github.com/bitcoindevkit/rust-esplora-client/pull/20
  - [x] Upgrade rand to 0.8 like secp256k1 did

  ### Notes to the reviewers

  The commits still need to be reordered and cleaned up

  ### Changelog notice

  - Upgrade rust-bitcoin to 0.29
  - Remove deprecated "address validators"

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  notmandatory:
    ACK c7a43d941fd0f457f615f2fe43e71586a253e46a

Tree-SHA512: 718a1baf3613b31ec1de39fe63467ebee38617963a4ce0670a617e20fe4f46a57c5786933cdde6cfad9fc76ce0af08843f58844fb4a89f5948cb42c697f802ef

3 years agoFix wallet export rescan height
LLFourn [Wed, 26 Oct 2022 04:35:21 +0000 (12:35 +0800)]
Fix wallet export rescan height

It would return the latest transaction height rather than the earliest :S

3 years agoUpdate docs and tests based on review comments
Steve Myers [Tue, 25 Oct 2022 16:20:22 +0000 (11:20 -0500)]
Update docs and tests based on review comments

3 years agoRemove unused code
Alekos Filini [Tue, 25 Oct 2022 10:14:36 +0000 (12:14 +0200)]
Remove unused code

3 years agoUpgrade to rust-bitcoin 0.29
Alekos Filini [Tue, 25 Oct 2022 09:15:43 +0000 (11:15 +0200)]
Upgrade to rust-bitcoin 0.29

3 years agoUpgrade `rand` to `0.8`
Alekos Filini [Mon, 24 Oct 2022 10:01:56 +0000 (12:01 +0200)]
Upgrade `rand` to `0.8`

3 years agoRemove deprecated address validators
Alekos Filini [Fri, 30 Sep 2022 11:46:32 +0000 (13:46 +0200)]
Remove deprecated address validators

3 years agoDeprecate backward compatible get_checksum_bytes, get_checksum functions
Steve Myers [Mon, 24 Oct 2022 17:05:49 +0000 (12:05 -0500)]
Deprecate backward compatible get_checksum_bytes, get_checksum functions

Rename replacement functions calc_checksum_bytes and calc_checksum

3 years agoMerge bitcoindevkit/bdk#758: Add HWI example in docs
Alekos Filini [Mon, 24 Oct 2022 08:53:29 +0000 (10:53 +0200)]
Merge bitcoindevkit/bdk#758: Add HWI example in docs

1437e1ecfe663b819156d98c5e1975fb357a763f Add the hardware_signer example (Daniela Brozzoni)
1a71eb1f4736651ad82e0abd64792b6cc7b16c20 Update the hardwaresigner module documentation (Daniela Brozzoni)
0695e9fb3e41727e5732561a993411147487afd3 Bump HWI to 0.2.3 (Daniela Brozzoni)
a4a43ea86060fa0a62b47dedc7de820459b3a472 Re-export HWI if the hardware-signer feature is set (Daniela Brozzoni)

Pull request description:

  ### Description

  ### Notes to the reviewers

  ### Changelog notice

  - bdk re-exports the `hwi` create when the feature `hardware-signer` is on
  - Add `examples/hardware_signer.rs`

  ### Checklists

  #### All Submissions:

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

ACKs for top commit:
  afilini:
    ACK 1437e1ecfe663b819156d98c5e1975fb357a763f

Tree-SHA512: 181f4d14dce11e19497fbf30e0af8de21c2c210d37129d7d879ed5670ed09a25be1c8d371389c431e18df9e76870cf5e4afe7b29a6c05fe59b3e1816bc8cf673

3 years agoMerge bitcoindevkit/bdk#782: Make psbt mod public and add required docs
Steve Myers [Fri, 21 Oct 2022 22:58:21 +0000 (17:58 -0500)]
Merge bitcoindevkit/bdk#782: Make psbt mod public and add required docs

34987d58ec9933af455e44d20c8d889bc896f869 Make psbt mod public and add required docs (Steve Myers)

Pull request description:

  ### Description

  Make psbt mod public and add required docs. The module needs to be public so `bdk-ffi` can expose the new PSBT `fee_amount()` and `fee_rate()` functions.

  ### Notes to the reviewers

  I should have done this as part of #728.

  ### Changelog notice

  Make psbt module public to expose PsbtUtils trait to downstream projects.

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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

ACKs for top commit:
  rajarshimaitra:
    Concept + tACK 34987d58ec9933af455e44d20c8d889bc896f869

Tree-SHA512: 99e91e948bccb7593a3da3ac5468232103d4ba90ad4e5888ef6aebb0d16511ad3a3286951779789c05587b4bb996bc359baa28b0f4c3c55e29b24bfc12a10073

3 years agoMake psbt mod public and add required docs
Steve Myers [Tue, 18 Oct 2022 20:25:38 +0000 (15:25 -0500)]
Make psbt mod public and add required docs

3 years agoMerge bitcoindevkit/bdk#779: Add signature grinding for ECDSA signatures
Daniela Brozzoni [Mon, 17 Oct 2022 10:47:57 +0000 (11:47 +0100)]
Merge bitcoindevkit/bdk#779: Add signature grinding for ECDSA signatures

68dd6d20311b28f5c8e8c9657dce8cddae4f7aa3 Add signature grinding for ECDSA signatures (Vladimir Fomene)

Pull request description:

  ### Description

  This PR adds a new field called `allow_grinding`
  in the Signer's `SignOptions` struct that is used
  to determine whether or not to grind an ECDSA signature during the signing process.

  ### Changelog notice

  Breaking change: the BDK Signer now produces low-R signatures by default, saving one byte. If you want to preserve the original behavior, set `allow_grinding` in the `SignOptions` to `false`.

  ### Notes to the reviewers

  This PR resolves issue #695

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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

  #### 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

ACKs for top commit:
  danielabrozzoni:
    ACK 68dd6d20311b28f5c8e8c9657dce8cddae4f7aa3
  rajarshimaitra:
    ACK 68dd6d20311b28f5c8e8c9657dce8cddae4f7aa3

Tree-SHA512: 6472338c611b4b32986cf66fcd313ef84f17f5b0ae9e7991ea7da47142641ab812f8b325d4d18314e1a58abe462683101160e62e2363a048fdab3f18aee4d699

3 years agoAdd signature grinding for ECDSA signatures
Vladimir Fomene [Thu, 6 Oct 2022 10:30:43 +0000 (13:30 +0300)]
Add signature grinding for ECDSA signatures

This PR adds a new field called `allow_grinding`
in the Signer's `SignOptions` struct that is used
to determine whether or not to grind an ECDSA signature
during the signing process.

3 years agoAdd the hardware_signer example
Daniela Brozzoni [Wed, 12 Oct 2022 13:31:17 +0000 (14:31 +0100)]
Add the hardware_signer example

3 years agoUpdate the hardwaresigner module documentation
Daniela Brozzoni [Wed, 12 Oct 2022 13:24:29 +0000 (14:24 +0100)]
Update the hardwaresigner module documentation

Add a little example on how to use the HWISigner, slightly improve
the module description

3 years agoBump HWI to 0.2.3
Daniela Brozzoni [Wed, 12 Oct 2022 13:24:09 +0000 (14:24 +0100)]
Bump HWI to 0.2.3

3 years agoRe-export HWI if the hardware-signer feature is set
Daniela Brozzoni [Wed, 12 Oct 2022 13:23:42 +0000 (14:23 +0100)]
Re-export HWI if the hardware-signer feature is set

3 years agoMerge bitcoindevkit/bdk#780: Update psbt_signer example to use descriptor! macro
Daniela Brozzoni [Wed, 12 Oct 2022 10:05:22 +0000 (11:05 +0100)]
Merge bitcoindevkit/bdk#780: Update psbt_signer example to use descriptor! macro

1331193800911bb8168e5d1c2689676af3c1fe86 Update psbt_signer example to use descriptor! macro (Steve Myers)

Pull request description:

  ### Description

  This is a small fix to the psbt_signer example to also use the `descriptor!` macro.

  ### Notes to the reviewers

  I also added more docs to at the beginning of the example.

  ### Changelog notice

  None

  ### Checklists

  #### All Submissions:

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

  #### New Example:

  * [x] I've added docs for the new example

ACKs for top commit:
  danielabrozzoni:
    ACK 1331193800911bb8168e5d1c2689676af3c1fe86

Tree-SHA512: 602fa317313dea77bc4804abce500db33d5834625704019c6590ae6b80cf339cbaddffef667eaef2696e8e769756a2c2405c84109409ef33816db60d3df4d53d

3 years agoUpdate psbt_signer example to use descriptor! macro
Steve Myers [Mon, 10 Oct 2022 02:36:53 +0000 (21:36 -0500)]
Update psbt_signer example to use descriptor! macro

3 years agoAdd enhancement request github issue template
Steve Myers [Sat, 1 Oct 2022 15:06:34 +0000 (10:06 -0500)]
Add enhancement request github issue template

3 years agoBump version to 0.23.0
Alekos Filini [Thu, 29 Sep 2022 18:57:36 +0000 (20:57 +0200)]
Bump version to 0.23.0

3 years agoMerge bitcoindevkit/bdk#764: Use the esplora client crate
Steve Myers [Thu, 29 Sep 2022 16:42:48 +0000 (11:42 -0500)]
Merge bitcoindevkit/bdk#764: Use the esplora client crate

d7bfe68e2df270ab799d36ebf3563e178ae50c6e Fix broken nightly docs (Alekos Filini)
b11c86d074a8f56f99bd5f3af77d3b056af71de4 Rename internal esplora modules, fix docs (Alekos Filini)
b5b92248c76aeb42ac747931efd45bc2e7af5ebd Rename esplora features to -async and -blocking (Alekos Filini)
cf2bc388f22b069fc25fba482e59da6305207864 Re-export `esplora_client` (Elias Rohrer)
5baf46f84d41fb714f200a7b26170c9b77823dc1 Use the external esplora client library (Alekos Filini)

Pull request description:

  ### Description

  Use the external esplora client crate now that it's published

  ### Changelog notice

  - Start using the external esplora client crate
  - Deprecate the `use-esplora-reqwest` and `use-esplora-ureq` features in favor of `use-esplora-async` and `use-esplora-blocking`

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/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

  #### 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 d7bfe68e2df270ab799d36ebf3563e178ae50c6e

Tree-SHA512: 23bd47536fe6f723602cbcc51d909eb9aed28376430f4453eea832e30a587be3d312cdca993d114391132bfb39c48637030f974ab1a742f7defe44f40a82ef8b

3 years agoFix broken nightly docs
Alekos Filini [Wed, 28 Sep 2022 18:38:31 +0000 (20:38 +0200)]
Fix broken nightly docs

3 years agoRename internal esplora modules, fix docs
Alekos Filini [Thu, 29 Sep 2022 09:59:21 +0000 (11:59 +0200)]
Rename internal esplora modules, fix docs

3 years agoEnsure backward compatibility of the "checksum inception" bug
志宇 [Thu, 29 Sep 2022 06:24:28 +0000 (14:24 +0800)]
Ensure backward compatibility of the  "checksum inception" bug

`Wallet` stores the descriptors' checksum in the database for safety.
Previously, the checksum used was a checksum of a descriptor that
already had a checksum.

This PR allows for backward-compatibility of databases created with this
bug.

3 years ago`get_checksum_bytes` now checks input data for checksum
志宇 [Thu, 29 Sep 2022 05:06:03 +0000 (13:06 +0800)]
`get_checksum_bytes` now checks input data for checksum

If `exclude_hash` is set, we split the input data, and if a checksum
already existed within the original data, we check the calculated
checksum against the original checksum.

Additionally, the implementation of `IntoWalletDescriptor` for `&str`
has been refactored for clarity.

3 years agoRename esplora features to -async and -blocking
Alekos Filini [Wed, 28 Sep 2022 17:33:22 +0000 (19:33 +0200)]
Rename esplora features to -async and -blocking

3 years agoRe-export `esplora_client`
Elias Rohrer [Wed, 10 Aug 2022 14:13:05 +0000 (16:13 +0200)]
Re-export `esplora_client`

3 years agoUse the external esplora client library
Alekos Filini [Tue, 9 Aug 2022 10:43:01 +0000 (12:43 +0200)]
Use the external esplora client library

3 years agoMerge bitcoindevkit/bdk#763: Fix `Wallet::descriptor_checksum` to actually return...
Daniela Brozzoni [Wed, 28 Sep 2022 13:20:46 +0000 (15:20 +0200)]
Merge bitcoindevkit/bdk#763: Fix `Wallet::descriptor_checksum` to actually return the checksum

af0b3698c691cd08ece9ae201cc9699f0d57acc8 Fix `Wallet::descriptor_checksum` to actually return the checksum (志宇)

Pull request description:

  ### Description

  `Wallet::descriptor_checksum` should return the checksum, not the descriptor without the checksum.

  ### Notes to the reviewers

  Please merge.

  ### Changelog notice

  Fix `Wallet::descriptor_checksum` to actually return the descriptor checksum.

  ### Checklists

  #### All Submissions:

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

  #### Bugfixes:

  ~* [ ] This pull request breaks the existing API~
  * [x] 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:
  danielabrozzoni:
    ACK af0b3698c691cd08ece9ae201cc9699f0d57acc8 - I run the test you added with the old code, and verified that the bug was there. I then run the test (with a few more dbg!() expressions) and manually verified that the problem is fixed.
  notmandatory:
    ACK af0b3698c691cd08ece9ae201cc9699f0d57acc8

Tree-SHA512: 64a5b1f4708db6f6dcff2f6ef5e0a4c7d206e764d7602ea803c8cc002410326eb59eee770d9c91694dfbf07193ee3ff6bfe163bcbb3506cd7b2a6b59814a3e5c

3 years agoFix `Wallet::descriptor_checksum` to actually return the checksum
志宇 [Tue, 27 Sep 2022 13:56:25 +0000 (21:56 +0800)]
Fix `Wallet::descriptor_checksum` to actually return the checksum

3 years agoAdd vscode filter to gitignore
志宇 [Tue, 27 Sep 2022 12:39:23 +0000 (20:39 +0800)]
Add vscode filter to gitignore