zebra/zebra-utils/Cargo.toml

131 lines
3.9 KiB
TOML

[package]
name = "zebra-utils"
version = "1.0.0-beta.36"
authors = ["Zcash Foundation <zebra@zfnd.org>"]
description = "Developer tools for Zebra maintenance and testing"
license = "MIT OR Apache-2.0"
repository = "https://github.com/ZcashFoundation/zebra"
edition = "2021"
# zebra-utils has a separate README file
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 = ["command-line-utilities", "cryptography::cryptocurrencies"]
# Zebra is only supported on the latest stable Rust version. See the README for details.
# Any Zebra release can break compatibility with older Rust versions.
rust-version = "1.73"
[[bin]]
name = "zebra-checkpoints"
# this setting is required for Zebra's Docker build caches
path = "src/bin/zebra-checkpoints/main.rs"
required-features = ["zebra-checkpoints"]
[[bin]]
name = "search-issue-refs"
path = "src/bin/search-issue-refs/main.rs"
required-features = ["search-issue-refs"]
[[bin]]
name = "block-template-to-proposal"
# this setting is required for Zebra's Docker build caches
path = "src/bin/block-template-to-proposal/main.rs"
required-features = ["getblocktemplate-rpcs"]
[[bin]]
name = "scanning-results-reader"
path = "src/bin/scanning-results-reader/main.rs"
required-features = ["shielded-scan"]
[[bin]]
name = "openapi-generator"
path = "src/bin/openapi-generator/main.rs"
required-features = ["openapi-generator"]
[features]
default = []
# Each binary has a feature that activates the extra dependencies it needs
zebra-checkpoints = [
"itertools",
"tokio",
"zebra-chain/json-conversion",
"zebra-node-services/rpc-client"
]
search-issue-refs = [
"regex",
"reqwest",
"tokio"
]
# block-template-to-proposal uses the experimental mining RPC support feature name
getblocktemplate-rpcs = [
"zebra-rpc/getblocktemplate-rpcs",
"zebra-node-services/getblocktemplate-rpcs",
"zebra-chain/getblocktemplate-rpcs",
]
shielded-scan = [
"itertools",
"jsonrpc",
"zcash_primitives",
"zcash_client_backend",
"zebra-scan"
]
openapi-generator = [
"zebra-rpc",
"syn",
"quote",
"serde_yaml",
"serde"
]
[dependencies]
color-eyre = "0.6.3"
# This is a transitive dependency via color-eyre.
# Enable a feature that makes tinyvec compile much faster.
tinyvec = { version = "1.6.0", features = ["rustc_1_55"] }
structopt = "0.3.26"
hex = "0.4.3"
serde_json = "1.0.116"
tracing-error = "0.2.0"
tracing-subscriber = "0.3.18"
thiserror = "1.0.59"
zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.36" }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.36" }
zebra-scan = { path = "../zebra-scan", version = "0.1.0-alpha.4", optional = true }
# These crates are needed for the block-template-to-proposal binary
zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.36", optional = true }
# These crates are needed for the zebra-checkpoints binary
itertools = { version = "0.12.1", optional = true }
# These crates are needed for the search-issue-refs binary
regex = { version = "1.10.4", optional = true }
# Avoid default openssl dependency to reduce the dependency tree and security alerts.
reqwest = { version = "0.11.26", default-features = false, features = ["rustls-tls"], optional = true }
# These crates are needed for the zebra-checkpoints and search-issue-refs binaries
tokio = { version = "1.37.0", features = ["full"], optional = true }
jsonrpc = { version = "0.18.0", optional = true }
zcash_primitives = { version = "0.13.0", optional = true }
zcash_client_backend = {version = "0.10.0-rc.1", optional = true}
# For the openapi generator
syn = { version = "2.0.60", features = ["full"], optional = true }
quote = { version = "1.0.36", optional = true }
serde_yaml = { version = "0.9.34+deprecated", optional = true }
serde = { version = "1.0.198", features = ["serde_derive"], optional = true }