We prepare the BDK repo for a major restructuring.
- database modules removed
- blockchain module removed
- minimal API changes.
- Many macros removed.
- no longer applicable examples removed.
- Much conditional compilation removed. Can compile with --all-features.
- delete verify module
a1a70a50119fc4f02962cfffe29233e6d8fc116b Check results in the DB tests (Silvestrs Timofejevs)
Pull request description:
### Description
Checksum test was giving a false positive due to ignoring the return value.
Other tests were giving assertion fail later in the test, rather than an error on failed method call, thus making it more challenging to debug the issue.
These have been discovered, when implementing PostgreSQL backend in a downstream fork.
### 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
* [x] I ran all `sqlite` and `key-value-db` tests successfully
ACKs for top commit:
danielabrozzoni:
ACK a1a70a50119fc4f02962cfffe29233e6d8fc116b
Tree-SHA512: d3542cdd9f5f76f8318910261dbeb9cdcc9d4f26e9852e7aad7419c4abdf269d030b72bb21ee34a9dd314d2fa8433f1a6a9f1338a62699e5d8b6764c03067904
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
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
Checksum test was giving a false positive due to ignoring the return
value.
Other tests were giving assertion fail later in the test, rather than
an error on failed method call, thus making it more challenging to
debug the issue.
These have been discovered, when implementing PostgreSQL backend in
a downstream fork.
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
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
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
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
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
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
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 ff72078095
notmandatory:
ACK ff720780950e010cb13af7def1d2226841ca3f97
Tree-SHA512: e0dd52a0af663b88d3fe0a20cb2909b9ba00bcf4f224b4f87cfd53fee0a199a01679dc5cd74aeb440326dfc52d45fa887534138d25df6fa1c8a38678be23204e
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
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
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