As mentioned by @LLFourn:
1. We have a "sparse chain" from which there is a subset of txids M that are missing from graph.
2. There is also another subset C that are in the graph but their positions have changed.
3. We used the Cow to avoid copying/duplicating in memory transactions in subset C and M
Instead in inflate_update we could remove transactions in subset M and just clone data in subset C (which is usually tiny).
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