Crate lightning_block_syncsource ·
A lightweight client for keeping in sync with chain activity.
SpvClient utility for polling one or more block sources for the best chain tip.
It is used to notify listeners of blocks connected or disconnected since the last poll. Useful
for keeping a Lightning node in sync with the chain.
BlockSource trait, which is an asynchronous interface for retrieving block headers
rpc-client allows configuring the client to fetch blocks
using Bitcoin Core’s REST or RPC interface, respectively.
Both features support either blocking I/O using
std::net::TcpStream or, with feature
non-blocking I/O using
tokio::net::TcpStream from inside a Tokio runtime.
rpc-clientSimple HTTP implementation which supports both async and traditional execution environments with minimal dependencies. This is used as the basis for REST and RPC clients.
- Utilities to assist in the initial sync required to initialize or reload Rust-Lightning objects from disk.
- Adapters that make one or more
BlockSources simpler to poll for new chain tip transitions.
rest-clientSimple REST client implementation which implements
BlockSourceagainst a Bitcoin Core REST endpoint.
rpc-clientSimple RPC client implementation which implements
BlockSourceagainst a Bitcoin Core RPC endpoint.
- A block header and some associated data. This information should be available from most block sources (and, notably, is available in Bitcoin Core’s RPC and REST interfaces).
- Error type for
- Notifies listeners of blocks that have been connected or disconnected from the chain.
- A lightweight client for keeping a listener in sync with the chain, allowing for Simplified Payment Verification (SPV).
- A block including either all its transactions or only the block header.
- The kind of
BlockSourceError, either persistent or transient.
- Abstract type for retrieving block headers and data.
Cachetrait defines behavior for managing a block header cache, where block headers are keyed by block hash.
- Result type for asynchronous
- Result type for
- Unbounded cache of block headers keyed by block hash.