- The KeychainTxOutIndex's internal SpkIterator now uses DescriptorId instead of K. The DescriptorId -> K translation is made at the KeychainTxOutIndex level. - The keychain::Changeset is now a struct, which includes a map for last revealed indexes, and one for newly added keychains and their descriptor. API changes in bdk: - Wallet::keychains returns a `impl Iterator` instead of `BTreeMap` - Wallet::load doesn't take descriptors anymore, since they're stored in the db - Wallet::new_or_load checks if the loaded descriptor from db is the same as the provided one API changes in bdk_chain: - `ChangeSet` is now a struct, which includes a map for last revealed indexes, and one for keychains and descriptors. - `KeychainTxOutIndex::inner` returns a `SpkIterator<(DescriptorId, u32)>` - `KeychainTxOutIndex::outpoints` returns a `impl Iterator` instead of `&BTreeSet` - `KeychainTxOutIndex::keychains` returns a `impl Iterator` instead of `&BTreeMap` - `KeychainTxOutIndex::txouts` doesn't return a ExactSizeIterator anymore - `KeychainTxOutIndex::unbounded_spk_iter` returns an `Option` - `KeychainTxOutIndex::next_index` returns an `Option` - `KeychainTxOutIndex::last_revealed_indices` returns a `BTreeMap` instead of `&BTreeMap` - `KeychainTxOutIndex::reveal_to_target` returns an `Option` - `KeychainTxOutIndex::reveal_next_spk` returns an `Option` - `KeychainTxOutIndex::next_unused_spk` returns an `Option` - `KeychainTxOutIndex::add_keychain` has been renamed to `KeychainTxOutIndex::insert_descriptor`, and now it returns a ChangeSet
32 lines
1.1 KiB
TOML
32 lines
1.1 KiB
TOML
[package]
|
|
name = "bdk_chain"
|
|
version = "0.13.0"
|
|
edition = "2021"
|
|
rust-version = "1.63"
|
|
homepage = "https://bitcoindevkit.org"
|
|
repository = "https://github.com/bitcoindevkit/bdk"
|
|
documentation = "https://docs.rs/bdk_chain"
|
|
description = "Collection of core structures for Bitcoin Dev Kit."
|
|
license = "MIT OR Apache-2.0"
|
|
readme = "README.md"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
# For no-std, remember to enable the bitcoin/no-std feature
|
|
bitcoin = { version = "0.31.0", default-features = false }
|
|
serde_crate = { package = "serde", version = "1", optional = true, features = ["derive", "rc"] }
|
|
|
|
# Use hashbrown as a feature flag to have HashSet and HashMap from it.
|
|
hashbrown = { version = "0.9.1", optional = true, features = ["serde"] }
|
|
miniscript = { version = "11.0.0", optional = true, default-features = false }
|
|
|
|
[dev-dependencies]
|
|
rand = "0.8"
|
|
proptest = "1.2.0"
|
|
|
|
[features]
|
|
default = ["std"]
|
|
std = ["bitcoin/std", "miniscript?/std"]
|
|
serde = ["serde_crate", "bitcoin/serde", "miniscript?/serde"]
|