zebra/zebra-consensus/Cargo.toml

100 lines
3.4 KiB
TOML

[package]
name = "zebra-consensus"
version = "1.0.0-beta.43"
authors = ["Zcash Foundation <zebra@zfnd.org>"]
description = "Implementation of Zcash consensus checks"
license = "MIT OR Apache-2.0"
repository = "https://github.com/ZcashFoundation/zebra"
edition = "2021"
readme = "../README.md"
homepage = "https://zfnd.org/zebra/"
# crates.io is limited to 5 keywords and categories
keywords = ["zebra", "zcash"]
# Must be one of <https://crates.io/category_slugs>
categories = ["asynchronous", "cryptography::cryptocurrencies"]
[features]
default = []
# Production features that activate extra dependencies, or extra features in dependencies
progress-bar = [
"howudoin",
"zebra-state/progress-bar",
]
# Mining RPC support
getblocktemplate-rpcs = [
"zebra-state/getblocktemplate-rpcs",
"zebra-node-services/getblocktemplate-rpcs",
"zebra-chain/getblocktemplate-rpcs",
]
# Test-only features
proptest-impl = ["proptest", "proptest-derive", "zebra-chain/proptest-impl", "zebra-state/proptest-impl"]
[dependencies]
blake2b_simd = { workspace = true }
bellman = { workspace = true }
bls12_381 = { workspace = true }
halo2 = { package = "halo2_proofs", version = "0.3.0" }
jubjub = { workspace = true }
rand = { workspace = true }
rayon = { workspace = true }
chrono = { workspace = true, features = ["clock", "std"] }
lazy_static = { workspace = true }
once_cell = { workspace = true }
serde = { workspace = true, features = ["serde_derive"] }
futures = { workspace = true }
futures-util = { workspace = true }
metrics = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["time", "sync", "tracing", "rt-multi-thread"] }
tower = { workspace = true, features = ["timeout", "util", "buffer"] }
tracing = { workspace = true }
tracing-futures = { workspace = true }
sapling-crypto.workspace = true
orchard.workspace = true
zcash_proofs = { workspace = true, features = ["multicore" ] }
wagyu-zcash-parameters = { workspace = true }
tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.19" }
tower-batch-control = { path = "../tower-batch-control/", version = "0.2.41-beta.19" }
zebra-script = { path = "../zebra-script", version = "1.0.0-beta.43" }
zebra-state = { path = "../zebra-state", version = "1.0.0-beta.43" }
zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.43" }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.43" }
# prod feature progress-bar
howudoin = { workspace = true, optional = true }
# Test-only dependencies
proptest = { workspace = true, optional = true }
proptest-derive = { workspace = true, optional = true }
[dev-dependencies]
color-eyre = { workspace = true }
# This is a transitive dependency via color-eyre.
# Enable a feature that makes tinyvec compile much faster.
tinyvec = { workspace = true, features = ["rustc_1_55"] }
hex = { workspace = true }
num-integer = { workspace = true }
proptest = { workspace = true }
proptest-derive = { workspace = true }
spandoc = { workspace = true }
tokio = { workspace = true, features = ["full", "tracing", "test-util"] }
tracing-error = { workspace = true }
tracing-subscriber = { workspace = true }
zebra-state = { path = "../zebra-state", version = "1.0.0-beta.43", features = ["proptest-impl"] }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.43", features = ["proptest-impl"] }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.43" }