From: Alekos Filini Date: Thu, 4 Aug 2022 08:22:50 +0000 (+0200) Subject: Merge bitcoindevkit/bdk#683: Fix wallet sync for `RpcBlockchain` X-Git-Tag: v0.21.0~5 X-Git-Url: http://internal-gitweb-vhost/script/%22https:/enum.FileStoreError.html?a=commitdiff_plain;h=dc7adb716170979fe7d915219fe294cdfadd4295;p=bdk Merge bitcoindevkit/bdk#683: Fix wallet sync for `RpcBlockchain` 5eeba6cced9a6fa0ad8ee4f64d04e1948620eac8 Various `RpcBlockchain` improvements (志宇) 5eb74af41494b7ec4894d7da3015da2981639228 Rpc: Manually add immature coinbase utxos (志宇) ac19c19f21fce43a99ecf0c4f95ae818b620558c New `RpcBlockchain` implementation with various fixes (志宇) Pull request description: Fixes #677 ### Description Unfortunately to fix all the problems, I had to do a complete re-implementation of `RpcBlockchain`. **The new implementation fixes the following:** * We can track more than 100 scriptPubKeys * We can obtain more than 1000 transactions per sync * Transaction "metadata" for already-syned transactions are updated when we introduce new scriptPubKeys **`RpcConfig` changes:** * Introduce `RpcSyncParams`. * Remove `RpcConfig::skip_blocks` (this is replaced by `RpcSyncParams::start_time`). ### Notes to the reviewers * The `RpcConfig` structure is changed. It will be good to confirm whether this is an okay change. ### 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 * [x] I've updated `CHANGELOG.md` #### Bugfixes: * [x] 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: afilini: ACK 5eeba6cced9a6fa0ad8ee4f64d04e1948620eac8 Tree-SHA512: 7e0c9cfc4ef10fb07e4ac7f6fbf30cf28ca6395495c0237fa5bfa9a2fcbbd4d8ff980ffcf71ddd10bc052e4c07bc2c27f093dd3cd1c69cb29141455c693f2386 --- dc7adb716170979fe7d915219fe294cdfadd4295