[package] name = "reth-node-core" version.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true [lints] workspace = true [dependencies] # reth reth-primitives.workspace = true reth-db = { workspace = true, features = ["mdbx"] } reth-interfaces = { workspace = true, features = ["clap"] } reth-provider.workspace = true reth-network = { workspace = true, features = ["serde"] } reth-rpc-engine-api.workspace = true reth-rpc-builder.workspace = true reth-rpc.workspace = true reth-rpc-types.workspace = true reth-rpc-types-compat.workspace = true reth-rpc-api = { workspace = true, features = ["client"] } reth-transaction-pool.workspace = true reth-tracing.workspace = true reth-config.workspace = true reth-discv4.workspace = true reth-net-nat.workspace = true reth-network-api.workspace = true reth-node-api.workspace = true reth-tasks.workspace = true reth-payload-builder.workspace = true reth-basic-payload-builder.workspace = true reth-consensus-common.workspace = true reth-auto-seal-consensus.workspace = true reth-beacon-consensus.workspace = true reth-downloaders.workspace = true reth-revm.workspace = true reth-stages.workspace = true reth-prune.workspace = true reth-blockchain-tree.workspace = true revm-inspectors.workspace = true reth-snapshot.workspace = true reth-optimism-payload-builder = { workspace = true, optional = true } # async tokio.workspace = true # metrics metrics-exporter-prometheus = "0.12.1" once_cell.workspace = true metrics-util = "0.15.0" metrics-process = "=1.0.14" metrics.workspace = true reth-metrics.workspace = true # misc eyre.workspace = true clap = { workspace = true, features = ["derive"] } humantime = "2.1.0" thiserror.workspace = true const-str = "0.5.6" rand.workspace = true pin-project.workspace = true # io dirs-next = "2.0.0" shellexpand = "3.0.0" serde.workspace = true serde_json.workspace = true # http/rpc hyper = "0.14.25" # tracing tracing.workspace = true # crypto alloy-rlp.workspace = true alloy-chains.workspace = true secp256k1 = { workspace = true, features = [ "global-context", "rand-std", "recovery", ] } # async futures.workspace = true [target.'cfg(not(windows))'.dependencies] jemalloc-ctl = { version = "0.5.0", optional = true } [target.'cfg(target_os = "linux")'.dependencies] procfs = { version = "0.16.0" } [dev-dependencies] # test vectors generation proptest.workspace = true tempfile.workspace = true jsonrpsee.workspace = true assert_matches.version = "1.5.0" [features] optimism = [ "reth-primitives/optimism", "reth-interfaces/optimism", "reth-rpc/optimism", "reth-rpc-engine-api/optimism", "reth-transaction-pool/optimism", "reth-provider/optimism", "reth-network/optimism", "reth-network-api/optimism", "reth-payload-builder/optimism", "reth-rpc-types/optimism", "reth-rpc-types-compat/optimism", "reth-auto-seal-consensus/optimism", "reth-consensus-common/optimism", "reth-blockchain-tree/optimism", "reth-beacon-consensus/optimism", "reth-optimism-payload-builder/optimism", ] jemalloc = ["dep:jemalloc-ctl"] [build-dependencies] vergen = { version = "8.0.0", features = ["build", "cargo", "git", "gitcl"] }