[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
reth-trie-common.workspace = true
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 = ["rand", "rlp"] }
alloy-trie.workspace = true

# op
op-alloy-rpc-types = { workspace = true, optional = true }


# misc
auto_impl.workspace = true
once_cell.workspace = true
serde = { workspace = true, optional = 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

# op
op-alloy-rpc-types.workspace = true

[features]
default = ["std"]
optimism = [
    "reth-ethereum-forks/optimism",
    "serde",
    "dep:op-alloy-rpc-types",
]
std = []
arbitrary = [
    "alloy-chains/arbitrary"
]


