[package]
name = "op-alloy-protocol"
description = "Optimism protocol-specific types"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
authors.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
exclude.workspace = true
[lints]
workspace = true
[dependencies]
op-alloy-genesis.workspace = true
op-alloy-consensus.workspace = true
alloy-primitives = { workspace = true, features = ["map"] }
alloy-rlp.workspace = true
alloy-eips.workspace = true
alloy-consensus.workspace = true
tracing.workspace = true
derive_more.workspace = true
async-trait.workspace = true
unsigned-varint.workspace = true
arbitrary = { workspace = true, features = ["derive"], optional = true }
serde = { workspace = true, optional = true }
alloy-serde = { workspace = true, optional = true }
spin = { workspace = true, optional = true }
tracing-subscriber = { workspace = true, features = ["fmt"], optional = true }
[dev-dependencies]
revm.workspace = true
spin.workspace = true
rand.workspace = true
rstest.workspace = true
proptest.workspace = true
serde_json.workspace = true
alloy-sol-types.workspace = true
tokio = { workspace = true, features = ["full"] }
arbitrary = { workspace = true, features = ["derive"] }
tracing-subscriber = { workspace = true, features = ["fmt"] }
[features]
default = ["serde", "std"]
test-utils = [
"dep:spin",
"dep:tracing-subscriber",
]
arbitrary = ["std", "dep:arbitrary", "alloy-consensus/arbitrary", "alloy-eips/arbitrary", "alloy-primitives/rand"]
std = ["op-alloy-consensus/std", "op-alloy-genesis/std"]
serde = ["dep:serde", "dep:alloy-serde", "op-alloy-consensus/serde", "op-alloy-genesis/serde"]