Cargo Features

[dependencies]
bitcoin = { version = "0.32.0", default-features = false, features = ["std", "rand-std", "rand", "serde", "secp-lowmemory", "secp-recovery", "bitcoinconsensus-std", "base64", "ordered"] }
default = secp-recovery, std

These default features are set whenever bitcoin is added without default-features = false somewhere in the dependency tree.

std default bitcoinconsensus-std? rand-std?

Enables std of base58ck, bech32, bitcoin_hashes, hex-conservative, bitcoin-internals, bitcoin-io, secp256k1, and bitcoin-units

Affects p2p::address, p2p::message, p2p::message_blockdata, p2p::message_bloom, p2p::message_compact_blocks, p2p::message_filter, p2p::message_network

rand-std = std

Enables rand-std of secp256k1

rand

Enables rand of secp256k1

serde = actual-serde

Enables serde of bitcoin_hashes, bitcoin-internals, secp256k1, and bitcoin-units

Affects consensus::serde, network::as_core_arg

secp-lowmemory

Enables lowmemory of secp256k1

secp-recovery default

Enables recovery of secp256k1

bitcoinconsensus-std = std

Enables std of bitcoinconsensus ^0.105.0

Only use this feature for no-std builds, otherwise use bitcoinconsensus-std.

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

base64 implicit feature

Enables base64 ^0.21.3

base64:

encodes and decodes base64 as bytes or utf8

ordered implicit feature

Enables ordered

ordered:

A wrapper for adding arbitrary partial/total order to a type

bitcoinconsensus bitcoinconsensus-std?

Enables bitcoinconsensus ^0.105.0

Affects consensus::validation

actual-serde serde?

Enables serde

Do NOT use this as a feature! Use the serde feature instead.