[package] authors = ["Dragan Rakita "] description = "revm primitives" edition = "2021" keywords = ["no_std", "ethereum", "evm", "revm", "types"] license = "MIT" name = "revm-primitives" repository = "https://github.com/bluealloy/revm" version = "14.0.0" readme = "../../README.md" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [lints.rust] unreachable_pub = "warn" unused_must_use = "deny" rust_2018_idioms = "deny" [lints.rustdoc] all = "warn" [dependencies] # alloy alloy-eip2930 = { version = "0.1", default-features = false } alloy-eip7702 = { version = "0.4", default-features = false, features = [ "k256", ] } alloy-primitives = { version = "0.8.8", default-features = false, features = [ "rlp", "map", ] } # mics auto_impl = "1.2" bitvec = { version = "1", default-features = false, features = ["alloc"] } bitflags = { version = "2.6.0", default-features = false } # For setting the CfgEnv KZGSettings. Enabled by c-kzg flag. c-kzg = { version = "1.0.3", default-features = false, optional = true, features = [ "ethereum_kzg_settings", ] } # Optionally use `kzg-rs` for a pure Rust implementation of KZG. kzg-rs = { version = "0.2.3", default-features = false, optional = true } # utility enumn = "0.1" cfg-if = "1" dyn-clone = "1.0" # optional serde = { version = "1.0", default-features = false, features = [ "derive", "rc", ], optional = true } [build-dependencies] hex = { version = "0.4", default-features = false } [features] default = ["std", "c-kzg", "portable"] std = [ "serde?/std", "alloy-primitives/std", "hex/std", "bitvec/std", "bitflags/std", "alloy-eip7702/std", "alloy-eip2930/std", ] hashbrown = ["alloy-primitives/map-hashbrown"] serde = [ "dep:serde", "alloy-primitives/serde", "hex/serde", "bitvec/serde", "bitflags/serde", "c-kzg?/serde", "alloy-eip7702/serde", "alloy-eip2930/serde", ] arbitrary = [ "std", "alloy-primitives/arbitrary", "bitflags/arbitrary", "alloy-eip7702/arbitrary", "alloy-eip2930/arbitrary", ] asm-keccak = ["alloy-primitives/asm-keccak"] portable = ["c-kzg?/portable"] optimism = [] # Optimism default handler enabled Optimism handler register by default in EvmBuilder. optimism-default-handler = ["optimism"] negate-optimism-default-handler = [] dev = [ "memory_limit", "optional_balance_check", "optional_block_gas_limit", "optional_eip3607", "optional_gas_refund", "optional_no_base_fee", "optional_beneficiary_reward", ] memory_limit = [] optional_balance_check = [] optional_block_gas_limit = [] optional_eip3607 = [] optional_gas_refund = [] optional_no_base_fee = [] optional_beneficiary_reward = [] rand = ["alloy-primitives/rand"] # See comments in `revm-precompile` c-kzg = ["dep:c-kzg"] # `kzg-rs` is not audited but useful for `no_std` environment. # use it with causing and default to `c-kzg` if possible! kzg-rs = ["dep:kzg-rs"]