librustzcash/zcash_primitives/Cargo.toml

131 lines
3.1 KiB
TOML

[package]
name = "zcash_primitives"
description = "Rust implementations of the Zcash primitives"
version = "0.13.0"
authors = [
"Jack Grigg <jack@z.cash>",
"Kris Nuttycombe <kris@electriccoin.co>"
]
homepage = "https://github.com/zcash/librustzcash"
repository.workspace = true
readme = "README.md"
license.workspace = true
edition.workspace = true
rust-version.workspace = true
categories.workspace = true
[package.metadata.docs.rs]
all-features = true
[dependencies]
equihash.workspace = true
zcash_address.workspace = true
zcash_encoding.workspace = true
zip32.workspace = true
# Dependencies exposed in a public API:
# (Breaking upgrades to these require a breaking upgrade to this crate.)
# - CSPRNG
rand.workspace = true
rand_core.workspace = true
# - Digests (output types exposed)
blake2b_simd.workspace = true
sha2.workspace = true
# - Logging and metrics
memuse.workspace = true
tracing.workspace = true
# - Secret management
subtle.workspace = true
# - Shielded protocols
bellman = { version = "0.14", default-features = false, features = ["groth16"] }
bls12_381.workspace = true
ff.workspace = true
group = { workspace = true, features = ["wnaf-memuse"] }
jubjub.workspace = true
nonempty.workspace = true
orchard.workspace = true
# - Note Commitment Trees
incrementalmerkletree = { workspace = true, features = ["legacy-api"] }
# - Static constants
lazy_static.workspace = true
# - Test dependencies
proptest = { workspace = true, optional = true }
# - Transparent inputs
# - `Error` type exposed
hdwallet = { workspace = true, optional = true }
# - `SecretKey` and `PublicKey` types exposed
secp256k1 = { workspace = true, optional = true }
# - ZIP 339
bip0039 = { version = "0.10", features = ["std", "all-languages"] }
# Dependencies used internally:
# (Breaking upgrades to these are usually backwards-compatible, but check MSRVs.)
# - Encodings
byteorder.workspace = true
hex.workspace = true
# - Shielded protocols
bitvec.workspace = true
blake2s_simd.workspace = true
redjubjub = "0.7"
# - Transparent inputs
ripemd = { workspace = true, optional = true }
# - ZIP 32
aes.workspace = true
fpe.workspace = true
[dependencies.zcash_note_encryption]
workspace = true
features = ["pre-zip-212"]
[dev-dependencies]
chacha20poly1305 = "0.10"
criterion.workspace = true
incrementalmerkletree = { workspace = true, features = ["legacy-api", "test-dependencies"] }
proptest.workspace = true
assert_matches.workspace = true
rand_xorshift.workspace = true
orchard = { workspace = true, features = ["test-dependencies"] }
[target.'cfg(unix)'.dev-dependencies]
pprof = { version = "0.11", features = ["criterion", "flamegraph"] } # MSRV 1.56
[features]
default = ["multicore"]
multicore = ["bellman/multicore", "orchard/multicore"]
transparent-inputs = ["hdwallet", "ripemd", "secp256k1"]
temporary-zcashd = []
test-dependencies = ["proptest", "orchard/test-dependencies"]
unstable-nu6 = []
zfuture = []
[lib]
bench = false
[[bench]]
name = "note_decryption"
harness = false
[[bench]]
name = "pedersen_hash"
harness = false
[[bench]]
name = "sapling_circuit"
harness = false
required-features = ["local-prover"]
[badges]
maintenance = { status = "actively-developed" }