[package] name = "reth-primitives" version.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true description = "Commonly used types in reth." [lints] workspace = true [dependencies] # reth reth-ethereum-primitives.workspace = true reth-primitives-traits = { workspace = true, features = ["serde"] } reth-ethereum-forks.workspace = true reth-static-file-types.workspace = true # ethereum alloy-consensus.workspace = true # for eip-4844 c-kzg = { workspace = true, features = ["serde"], optional = true } # misc once_cell.workspace = true # arbitrary utils arbitrary = { workspace = true, features = ["derive"], optional = true } [dev-dependencies] # eth reth-primitives-traits = { workspace = true, features = ["arbitrary", "test-utils"] } alloy-primitives.workspace = true alloy-rlp.workspace = true alloy-eips = { workspace = true, features = ["arbitrary"] } alloy-genesis.workspace = true arbitrary = { workspace = true, features = ["derive"] } proptest-arbitrary-interop.workspace = true proptest.workspace = true serde_json.workspace = true reth-codecs.workspace = true criterion.workspace = true pprof = { workspace = true, features = ["flamegraph", "frame-pointer", "criterion"] } [features] default = ["c-kzg", "alloy-compat", "std", "reth-codec", "secp256k1"] std = [ "reth-primitives-traits/std", "alloy-consensus/std", "alloy-eips/std", "alloy-genesis/std", "once_cell/std", "reth-ethereum-forks/std", "serde_json/std", "reth-ethereum-primitives/std", "alloy-rlp/std", "alloy-primitives/std", "reth-static-file-types/std", ] reth-codec = [ "std", "reth-primitives-traits/reth-codec", "reth-ethereum-primitives/reth-codec", ] asm-keccak = [ "alloy-primitives/asm-keccak", ] arbitrary = [ "dep:arbitrary", "alloy-eips/arbitrary", "reth-codec", "reth-ethereum-forks/arbitrary", "reth-primitives-traits/arbitrary", "alloy-consensus/arbitrary", "reth-ethereum-primitives/arbitrary", "reth-codecs/arbitrary", "alloy-primitives/arbitrary", ] secp256k1 = [ "reth-primitives-traits/secp256k1", ] c-kzg = [ "dep:c-kzg", "alloy-consensus/kzg", "alloy-eips/kzg", ] alloy-compat = [ "reth-ethereum-primitives/alloy-compat", ] test-utils = [ "reth-primitives-traits/test-utils", "arbitrary", "reth-codecs/test-utils", "reth-ethereum-primitives/test-utils", ] serde-bincode-compat = [ "alloy-eips/serde-bincode-compat", "alloy-consensus/serde-bincode-compat", "reth-primitives-traits/serde-bincode-compat", "reth-ethereum-primitives/serde-bincode-compat", ] [[bench]] name = "recover_ecdsa_crit" harness = false [[bench]] name = "validate_blob_tx" required-features = ["arbitrary", "c-kzg"] harness = false