Wei
Wei
### Description `TestEnv` is extracted into its own crate with `electrsd` support added so that `TestEnv` can also serve `esplora` and `electrum`. The tests in the `esplora` crate have also...
Fixes #1265 Possibly fixes #1419 ### Context Previous changes such as * Universal structures for full-scan/sync (PR #1413) * Making `CheckPoint` linked list query-able (PR #1369) * Making `Transaction`s cheaply-clonable...
However, we should consider changing the behavior of `TxGraph::walk_conflicts` to walk ancestors to a given depth and check conflicts on those ancestors. This can be a separate issue. _Originally posted...
Fixes #980. ### Description This PR is the first step in reworking `bdk_electrum` to use merkle proofs. When we fetch a transaction, we now also obtain the merkle proof and...
Implements bitcoindevkit/bdk#1937. ### Description This PR is a step towards header checkpointing for `bdk_electrum`. The goal is to be able to store whole headers in `CheckPoint` so they do not...
Resolves bitcoindevkit/bdk_wallet#90. ### Description The `Anchor` trait has been removed and anchors are now unique to (`Txid`, `BlockId`). ### Notes to the reviewers Documentation have been mostly untouched and need...
This PR introduces the `blockchain.transaction.id_from_pos` feature from Electrum. This functionality is essential for an ongoing implementation in `bdk_electrum`, which requires retrieving the coinbase transaction from a block at a specified...
Partially resolves https://github.com/bitcoindevkit/bdk_wallet/issues/30. ### Description This PR eliminates all `unwrap()` and `expect()` calls from `bdk_electrum_client`, replacing them with proper error handling. Given that all public methods already return `Result`, we...
Replaces #1908, originally authored by @Keerthi421. Fixes #1891. ### Description This PR optimizes `sync`/`full_scan` performance by batching and caching key RPC calls to slash network round-trips and eliminate redundant work....
Currently, the `CheckPoint`, `LocalChain`, and `spk_client` components are not designed to handle generic types, which limits their flexibility. To support caching of Merkle proofs (#1699) and median time passed calculations,...