[package] name = "bitcoin" version = "0.27.0" authors = ["Andrew Poelstra "] license = "CC0-1.0" homepage = "https://github.com/rust-bitcoin/rust-bitcoin/" repository = "https://github.com/rust-bitcoin/rust-bitcoin/" documentation = "https://docs.rs/bitcoin/" description = "General purpose library for using and interoperating with Bitcoin and other cryptocurrencies." keywords = [ "crypto", "bitcoin" ] readme = "README.md" [features] default = [ "std", "secp-recovery" ] base64 = [ "base64-compat" ] unstable = [] rand = ["secp256k1/rand-std"] use-serde = ["serde", "bitcoin_hashes/serde", "secp256k1/serde"] secp-lowmemory = ["secp256k1/lowmemory"] secp-recovery = ["secp256k1/recovery"] # At least one of std, no-std must be enabled. # # The no-std feature doesn't disable std - you need to turn off the std feature for that by disabling default. # Instead no-std enables additional features required for this crate to be usable without std. # As a result, both can be enabled without conflict. std = ["secp256k1/std", "bitcoin_hashes/std", "bech32/std"] no-std = ["hashbrown", "core2/alloc", "bitcoin_hashes/alloc"] [dependencies] bech32 = { version = "0.8.1", default-features = false } bitcoin_hashes = { version = "0.10.0", default-features = false } secp256k1 = { version = "0.20.2", default-features = false } core2 = { version = "0.3.0", optional = true, default-features = false } base64-compat = { version = "1.0.0", optional = true } bitcoinconsensus = { version = "0.19.0-3", optional = true } serde = { version = "1", features = [ "derive" ], optional = true } hashbrown = { version = "0.8", optional = true } [dev-dependencies] serde_json = "<1.0.45" serde_test = "1" secp256k1 = { version = "0.20.0", features = [ "recovery", "rand-std" ] } bincode = "1.3.1" # We need to pin ryu (transitive dep from serde_json) to stay compatible with Rust 1.22.0 ryu = "<1.0.5" [[example]] name = "bip32" [[example]] name = "handshake" required-features = ["std"]