librustzcash/Cargo.toml

123 lines
2.9 KiB
TOML

[workspace]
members = [
"components/equihash",
"components/f4jumble",
"components/zcash_address",
"components/zcash_encoding",
"components/zcash_protocol",
"zcash_client_backend",
"zcash_client_sqlite",
"zcash_extensions",
"zcash_history",
"zcash_keys",
"zcash_primitives",
"zcash_proofs",
]
[workspace.package]
edition = "2021"
rust-version = "1.65"
repository = "https://github.com/zcash/librustzcash"
license = "MIT OR Apache-2.0"
categories = ["cryptography::cryptocurrencies"]
# Common dependencies across all of our crates. Dependencies used only by a single crate
# (and that don't have cross-crate versioning needs) are specified by the crate itself.
#
# See the individual crate `Cargo.toml` files for information about which dependencies are
# part of a public API, and which can be updated without a SemVer bump.
[workspace.dependencies]
# Intra-workspace dependencies
equihash = { version = "0.2", path = "components/equihash" }
zcash_address = { version = "0.3", path = "components/zcash_address" }
zcash_client_backend = { version = "0.12", path = "zcash_client_backend" }
zcash_encoding = { version = "0.2", path = "components/zcash_encoding" }
zcash_keys = { version = "0.2", path = "zcash_keys" }
zcash_protocol = { version = "0.1", path = "components/zcash_protocol" }
zcash_note_encryption = "0.4"
zcash_primitives = { version = "0.15", path = "zcash_primitives", default-features = false }
zcash_proofs = { version = "0.15", path = "zcash_proofs", default-features = false }
# Shielded protocols
ff = "0.13"
group = "0.13"
incrementalmerkletree = "0.5.1"
shardtree = "0.3"
zcash_spec = "0.1"
# Payment protocols
# - Sapling
bitvec = "1"
blake2s_simd = "1"
bls12_381 = "0.8"
jubjub = "0.10"
sapling = { package = "sapling-crypto", version = "0.1.3" }
# - Orchard
nonempty = "0.7"
orchard = { version = "0.8.0", default-features = false }
pasta_curves = "0.5"
# - Transparent
hdwallet = "0.4"
ripemd = "0.1"
secp256k1 = "0.26"
# CSPRNG
rand = "0.8"
rand_core = "0.6"
# Digests
blake2b_simd = "1"
sha2 = "0.10"
# Documentation
document-features = "0.2"
# Encodings
base64 = "0.21"
bech32 = "0.9"
bs58 = { version = "0.5", features = ["check"] }
byteorder = "1"
hex = "0.4"
percent-encoding = "2.1.0"
# Logging and metrics
memuse = "0.2.1"
tracing = "0.1"
# Parallel processing
crossbeam-channel = "0.5"
maybe-rayon = { version = "0.1.0", default-features = false }
rayon = "1.5"
# Protobuf and gRPC
prost = "0.12"
tonic = { version = "0.10", default-features = false }
tonic-build = { version = "0.10", default-features = false }
# Secret management
secrecy = "0.8"
subtle = "2.2.3"
# Static constants
lazy_static = "1"
# Tests and benchmarks
assert_matches = "1.5"
criterion = "0.4"
proptest = "1"
rand_chacha = "0.3"
rand_xorshift = "0.3"
# ZIP 32
aes = "0.8"
fpe = "0.6"
zip32 = "0.1.1"
[profile.release]
lto = true
panic = 'abort'
codegen-units = 1