[package]
name = "reth-chainspec"
version.workspace = true
edition.workspace = true
homepage.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true

[lints]
workspace = true

[dependencies]
# reth
reth-ethereum-forks.workspace = true
reth-network-peers.workspace = true
alloy-trie = { workspace = true, features = ["ethereum"] }
reth-primitives-traits.workspace = true

# ethereum
alloy-chains = { workspace = true, features = ["serde", "rlp"] }
alloy-eips = { workspace = true, features = ["serde"] }
alloy-genesis.workspace = true
alloy-primitives = { workspace = true, features = ["rlp"] }
alloy-consensus.workspace = true

# misc
auto_impl.workspace = true
serde_json.workspace = true
derive_more.workspace = true

[dev-dependencies]
# eth
alloy-trie = { workspace = true, features = ["arbitrary"] }
alloy-eips = { workspace = true, features = ["arbitrary"] }
alloy-rlp = { workspace = true, features = ["arrayvec"] }
alloy-genesis.workspace = true

[features]
default = ["std"]
std = [
    "alloy-chains/std",
    "alloy-eips/std",
    "alloy-genesis/std",
    "alloy-primitives/std",
    "alloy-trie/std",
    "reth-primitives-traits/std",
    "alloy-consensus/std",
    "alloy-rlp/std",
    "reth-ethereum-forks/std",
    "derive_more/std",
    "reth-network-peers/std",
    "serde_json/std",
]
arbitrary = [
    "alloy-chains/arbitrary",
    "reth-ethereum-forks/arbitrary",
    "reth-primitives-traits/arbitrary",
    "alloy-consensus/arbitrary",
    "alloy-eips/arbitrary",
    "alloy-primitives/arbitrary",
    "alloy-trie/arbitrary",
]
test-utils = [
    "reth-primitives-traits/test-utils",
]
