10 breaking releases
new 0.11.0 | Apr 15, 2024 |
---|---|
0.10.0 | Mar 27, 2024 |
0.9.0 | Mar 5, 2024 |
0.4.0 | Oct 12, 2023 |
0.2.0 | Mar 20, 2023 |
#2483 in Magic Beans
7,800 downloads per month
Used in 2 crates
(via mutiny-core)
230KB
3.5K
SLoC
BDK Esplora
BDK Esplora extends esplora-client
to update bdk_chain
structures
from an Esplora server.
Usage
There are two versions of the extension trait (blocking and async).
For blocking-only:
bdk_esplora = { version = "0.3", features = ["blocking"] }
For async-only:
bdk_esplora = { version = "0.3", features = ["async"] }
For async-only (with https):
bdk_esplora = { version = "0.3", features = ["async-https"] }
To use the extension traits:
// for blocking
use bdk_esplora::EsploraExt;
// for async
// use bdk_esplora::EsploraAsyncExt;
For full examples, refer to example-crates/wallet_esplora_blocking
and example-crates/wallet_esplora_async
.
lib.rs
:
This crate is used for updating structures of bdk_chain
with data from an Esplora server.
The two primary methods are EsploraExt::sync
and EsploraExt::full_scan
. In most cases
EsploraExt::sync
is used to sync the transaction histories of scripts that the application
cares about, for example the scripts for all the receive addresses of a Wallet's keychain that it
has shown a user. EsploraExt::full_scan
is meant to be used when importing or restoring a
keychain where the range of possibly used scripts is not known. In this case it is necessary to
scan all keychain scripts until a number (the "stop gap") of unused scripts is discovered. For a
sync or full scan the user receives relevant blockchain data and output updates for bdk_chain
via a new TxGraph
to be appended to any existing TxGraph
data.
Refer to example_esplora
for a complete example.
Dependencies
~7–24MB
~303K SLoC