Cargo Features

[dependencies]
monacoin = { version = "0.27.1-pre", default-features = false, features = ["base64", "unstable", "rand", "use-serde", "secp-lowmemory", "secp-recovery", "fuzztarget", "std", "no-std", "bitcoinconsensus"] }
default = secp-recovery, std

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

base64 = base64-compat
unstable
rand

Enables rand-std of secp256k1 ^0.20.2

use-serde = serde

Enables serde of bitcoin_hashes ^0.10.0 and secp256k1 ^0.20.2

secp-lowmemory

Enables lowmemory of secp256k1 ^0.20.2

secp-recovery default

Enables recovery of secp256k1 ^0.20.2

fuzztarget
std default

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.

Enables std of bech32 ^0.8.1, bitcoin_hashes ^0.10.0, and secp256k1 ^0.20.2

Affects network::address, network::message, network::message_blockdata, network::message_network, network::message_filter, network::stream_reader

no-std = hashbrown

Enables alloc of bitcoin_hashes ^0.10.0 and core2 ^0.3.0

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.

core2 no-std?

Enables core2 ^0.3.0

base64-compat base64?
bitcoinconsensus implicit feature

Enables bitcoinconsensus ^0.19.0-3

bitcoinconsensus:

Bitcoin's libbitcoinconsensus with Rust binding

serde use-serde?

Affects amount::serde

hashbrown no-std?

Enables hashbrown ^0.8