[package] name = "reth-network" version = "0.1.0" edition = "2021" license = "MIT OR Apache-2.0" repository = "https://github.com/paradigmxyz/reth" readme = "README.md" description = """ Ethereum network support """ [package.metadata.cargo-udeps.ignore] normal = [ # Used for diagrams in docs "aquamarine" ] [dependencies] # reth reth-interfaces = { path = "../../interfaces" } reth-primitives = { path = "../../primitives" } reth-net-common = { path = "../common" } reth-network-api = { path = "../network-api" } reth-discv4 = { path = "../discv4" } reth-dns-discovery = { path = "../dns" } reth-eth-wire = { path = "../eth-wire" } reth-ecies = { path = "../ecies" } reth-rlp = { path = "../../rlp" } reth-rlp-derive = { path = "../../rlp/rlp-derive" } reth-tasks = { path = "../../tasks" } reth-transaction-pool = { path = "../../transaction-pool" } reth-provider = { path = "../../storage/provider"} reth-metrics-common = { path = "../../metrics/common" } reth-rpc-types = { path = "../../rpc/rpc-types" } # async/futures futures = "0.3" pin-project = "1.0" tokio = { version = "1", features = ["io-util", "net", "macros", "rt-multi-thread", "time"] } tokio-stream = "0.1" tokio-util = { version = "0.7", features = ["codec"] } # io serde = { version = "1.0", optional = true } humantime-serde = { version = "1.1", optional = true } serde_json = { version = "1.0", optional = true } # metrics metrics = "0.20.1" reth-metrics-derive = { path = "../../metrics/metrics-derive" } # misc auto_impl = "1" aquamarine = "0.3.0" tracing = "0.1" fnv = "1.0" thiserror = "1.0" parking_lot = "0.12" async-trait = "0.1" linked_hash_set = "0.1" linked-hash-map = "0.5.6" rand = "0.8" secp256k1 = { version = "0.26.0", features = [ "global-context", "rand-std", "recovery", ] } enr = { version = "0.8.0", features = ["rust-secp256k1"], optional = true } ethers-core = { git = "https://github.com/gakonst/ethers-rs", default-features = false, optional = true } tempfile = { version = "3.3", optional = true } [dev-dependencies] # reth reth-discv4 = { path = "../discv4", features = ["test-utils"] } reth-interfaces = { path = "../../interfaces", features = ["test-utils"] } # we need to enable the test-utils feature in our own crate to use utils in # integration tests reth-network = { path = ".", features = ["test-utils"] } reth-provider = { path = "../../storage/provider", features = ["test-utils"] } reth-tracing = { path = "../../tracing" } reth-transaction-pool = { path = "../../transaction-pool", features = ["test-utils"] } ethers-core = { git = "https://github.com/gakonst/ethers-rs", default-features = false } ethers-providers = { git = "https://github.com/gakonst/ethers-rs", default-features = false } ethers-signers = { git = "https://github.com/gakonst/ethers-rs", default-features = false } ethers-middleware = { git = "https://github.com/gakonst/ethers-rs", default-features = false } enr = { version = "0.8.0", features = ["serde", "rust-secp256k1"] } # misc hex = "0.4" tempfile = "3.3" serial_test = "0.10" [features] default = ["serde"] serde = ["dep:serde", "dep:humantime-serde", "secp256k1/serde", "enr?/serde", "dep:serde_json"] test-utils = ["reth-provider/test-utils", "dep:enr", "dep:ethers-core", "dep:tempfile"] geth-tests = []