[package]
edition = "2021"
rust-version = "1.85.0"
name = "zebra-network"
version = "5.0.1"
authors = [
"Zcash Foundation <zebra@zfnd.org>",
"Tower Maintainers <team@tower-rs.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Networking code for Zebra"
homepage = "https://zfnd.org/zebra/"
readme = "README.md"
keywords = [
"zebra",
"zcash",
]
categories = [
"asynchronous",
"cryptography::cryptocurrencies",
"encoding",
"network-programming",
]
license = "MIT"
repository = "https://github.com/ZcashFoundation/zebra"
[features]
default = []
progress-bar = ["howudoin"]
proptest-impl = [
"proptest",
"proptest-derive",
"zebra-chain/proptest-impl",
]
[lib]
name = "zebra_network"
path = "src/lib.rs"
[[test]]
name = "acceptance"
path = "tests/acceptance.rs"
[dependencies.bitflags]
version = "2.9"
[dependencies.byteorder]
version = "1.5"
[dependencies.bytes]
version = "1.10"
[dependencies.chrono]
version = "0.4.40"
features = [
"clock",
"std",
]
default-features = false
[dependencies.dirs]
version = "6.0"
[dependencies.futures]
version = "0.3.31"
[dependencies.hex]
version = "0.4.3"
[dependencies.howudoin]
version = "0.1"
optional = true
[dependencies.humantime-serde]
version = "1.1"
[dependencies.indexmap]
version = "2.8"
features = ["serde"]
[dependencies.itertools]
version = "0.14"
[dependencies.lazy_static]
version = "1.4"
[dependencies.metrics]
version = "0.24"
[dependencies.num-integer]
version = "0.1.46"
[dependencies.ordered-map]
version = "0.4.2"
[dependencies.pin-project]
version = "1.1.10"
[dependencies.proptest]
version = "1.6"
optional = true
[dependencies.proptest-derive]
version = "0.5"
optional = true
[dependencies.rand]
version = "0.8.5"
[dependencies.rayon]
version = "1.10"
[dependencies.regex]
version = "1.11"
[dependencies.schemars]
version = "1"
[dependencies.serde]
version = "1.0.219"
features = ["serde_derive"]
[dependencies.tempfile]
version = "3.20"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.44"
features = [
"fs",
"io-util",
"net",
"time",
"tracing",
"macros",
"rt-multi-thread",
]
[dependencies.tokio-stream]
version = "0.1.17"
features = [
"sync",
"time",
]
[dependencies.tokio-util]
version = "0.7.14"
features = ["codec"]
[dependencies.tower]
version = "0.4.13"
features = [
"retry",
"discover",
"load",
"load-shed",
"timeout",
"util",
"buffer",
]
[dependencies.tracing]
version = "0.1.41"
[dependencies.tracing-error]
version = "0.2"
features = ["traced-error"]
[dependencies.tracing-futures]
version = "0.2.5"
[dependencies.zebra-chain]
version = "6.0.2"
features = ["async-error"]
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.proptest-derive]
version = "0.5"
[dev-dependencies.static_assertions]
version = "1.1"
[dev-dependencies.tokio]
version = "1.44"
features = [
"full",
"tracing",
"test-util",
]
[dev-dependencies.toml]
version = "0.9.5"
[lints.clippy]
await_holding_lock = "warn"
await_holding_refcell_ref = "warn"
cast_ptr_alignment = "warn"
checked_conversions = "warn"
dbg_macro = "warn"
fallible_impl_from = "warn"
fn_to_numeric_cast_any = "warn"
implicit_saturating_sub = "warn"
invalid_upcast_comparisons = "warn"
print_stderr = "warn"
print_stdout = "warn"
range_minus_one = "warn"
range_plus_one = "warn"
result_large_err = "allow"
todo = "warn"
try_err = "allow"
unnecessary_cast = "warn"
unwrap_in_result = "warn"
[lints.rust]
missing_docs = "warn"
non_ascii_idents = "deny"
unsafe_code = "deny"
[lints.rust.future_incompatible]
level = "warn"
priority = -1
[lints.rust.nonstandard_style]
level = "warn"
priority = -1
[lints.rust.rust_2021_compatibility]
level = "warn"
priority = -1
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(tokio_unstable)",
'cfg(zcash_unstable, values("zfuture", "nu6.1", "nu7", "zip235"))',
]