87 lines
2.8 KiB
TOML
87 lines
2.8 KiB
TOML
[package]
|
|
name = "bdk"
|
|
version = "0.1.0"
|
|
edition = "2018"
|
|
authors = ["Alekos Filini <alekos.filini@gmail.com>", "Riccardo Casatta <riccardo@casatta.it>"]
|
|
|
|
[dependencies]
|
|
bdk-macros = { version = "0.1.0-beta.1", path = "./macros" }
|
|
log = "^0.4"
|
|
bitcoin = { version = "0.25", features = ["use-serde"] }
|
|
miniscript = { git = "https://github.com/rust-bitcoin/rust-miniscript.git", rev = "ca60da2" }
|
|
serde = { version = "^1.0", features = ["derive"] }
|
|
serde_json = { version = "^1.0" }
|
|
rand = "^0.7"
|
|
|
|
# Optional dependencies
|
|
sled = { version = "0.34", optional = true }
|
|
electrum-client = { version = "0.3.0-beta.1", optional = true }
|
|
reqwest = { version = "0.10", optional = true, features = ["json"] }
|
|
futures = { version = "0.3", optional = true }
|
|
clap = { version = "2.33", optional = true }
|
|
base64 = { version = "^0.11", optional = true }
|
|
async-trait = { version = "0.1", optional = true }
|
|
rocksdb = { version = "0.14", optional = true }
|
|
socks = { version = "0.3", optional = true }
|
|
lazy_static = { version = "1.4", optional = true }
|
|
tiny-bip39 = { version = "^0.7", optional = true }
|
|
|
|
# Platform-specific dependencies
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
tokio = { version = "0.2", features = ["rt-core"] }
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
|
async-trait = "0.1"
|
|
js-sys = "0.3"
|
|
rand = { version = "^0.7", features = ["wasm-bindgen"] }
|
|
|
|
[features]
|
|
minimal = []
|
|
compiler = ["clap", "miniscript/compiler"]
|
|
default = ["key-value-db", "electrum"]
|
|
electrum = ["electrum-client"]
|
|
esplora = ["reqwest", "futures"]
|
|
compact_filters = ["rocksdb", "socks", "lazy_static"]
|
|
key-value-db = ["sled"]
|
|
cli-utils = ["clap", "base64"]
|
|
async-interface = ["async-trait"]
|
|
all-keys = ["keys-bip39"]
|
|
keys-bip39 = ["tiny-bip39"]
|
|
|
|
# Debug/Test features
|
|
debug-proc-macros = ["bdk-macros/debug", "bdk-testutils-macros/debug"]
|
|
test-electrum = ["electrum"]
|
|
test-md-docs = ["base64", "electrum"]
|
|
|
|
[dev-dependencies]
|
|
bdk-testutils = { version = "0.1.0-beta.1", path = "./testutils" }
|
|
bdk-testutils-macros = { version = "0.1.0-beta.1", path = "./testutils-macros" }
|
|
serial_test = "0.4"
|
|
lazy_static = "1.4"
|
|
rustyline = "6.0"
|
|
dirs = "2.0"
|
|
env_logger = "0.7"
|
|
|
|
[[example]]
|
|
name = "repl"
|
|
required-features = ["cli-utils", "esplora"]
|
|
[[example]]
|
|
name = "parse_descriptor"
|
|
[[example]]
|
|
name = "address_validator"
|
|
|
|
[[example]]
|
|
name = "miniscriptc"
|
|
path = "examples/compiler.rs"
|
|
required-features = ["compiler"]
|
|
|
|
[workspace]
|
|
members = ["macros", "testutils", "testutils-macros"]
|
|
|
|
# Generate docs with nightly to add the "features required" badge
|
|
# https://stackoverflow.com/questions/61417452/how-to-get-a-feature-requirement-tag-in-the-documentation-generated-by-cargo-do
|
|
[package.metadata.docs.rs]
|
|
features = ["compiler", "electrum", "esplora", "compact_filters", "key-value-db", "all-keys"]
|
|
# defines the configuration attribute `docsrs`
|
|
rustdoc-args = ["--cfg", "docsrs"]
|