diff --git a/.config/zepter.yaml b/.config/zepter.yaml index 62b7e768c1..dcc18676c4 100644 --- a/.config/zepter.yaml +++ b/.config/zepter.yaml @@ -12,7 +12,7 @@ workflows: # Check that `A` activates the features of `B`. "propagate-feature", # These are the features to check: - "--features=std,op,dev,asm-keccak,jemalloc,jemalloc-prof,tracy-allocator,serde-bincode-compat,serde,test-utils,arbitrary,bench,alloy-compat,min-error-logs,min-warn-logs,min-info-logs,min-debug-logs,min-trace-logs,otlp,js-tracer,portable", + "--features=std,op,dev,asm-keccak,jemalloc,jemalloc-prof,tracy-allocator,serde-bincode-compat,serde,test-utils,arbitrary,bench,alloy-compat,min-error-logs,min-warn-logs,min-info-logs,min-debug-logs,min-trace-logs,otlp,js-tracer,portable,keccak-cache-global", # Do not try to add a new section to `[features]` of `A` only because `B` exposes that feature. There are edge-cases where this is still needed, but we can add them manually. "--left-side-feature-missing=ignore", # Ignore the case that `A` it outside of the workspace. Otherwise it will report errors in external dependencies that we have no influence on. diff --git a/Cargo.lock b/Cargo.lock index ea47d79514..4ecb35a00c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -329,9 +329,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5513d5e6bd1cba6bdcf5373470f559f320c05c8c59493b6e98912fbe6733943f" +checksum = "6bfca3dbbcb7498f0f60e67aff2ad6aff57032e22eb2fd03189854be11a22c03" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -426,9 +426,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "355bf68a433e0fd7f7d33d5a9fc2583fde70bf5c530f63b80845f8da5505cf28" +checksum = "5c850e6ccbd34b8a463a1e934ffc8fc00e1efc5e5489f2ad82d7797949f3bd4e" dependencies = [ "alloy-rlp", "arbitrary", @@ -447,6 +447,7 @@ dependencies = [ "proptest", "proptest-derive 0.6.0", "rand 0.9.2", + "rapidhash", "ruint", "rustc-hash", "serde", @@ -781,9 +782,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3ce480400051b5217f19d6e9a82d9010cdde20f1ae9c00d53591e4a1afbb312" +checksum = "b2218e3aeb3ee665d117fdf188db0d5acfdc3f7b7502c827421cb78f26a2aec0" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", @@ -795,9 +796,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d792e205ed3b72f795a8044c52877d2e6b6e9b1d13f431478121d8d4eaa9028" +checksum = "b231cb8cc48e66dd1c6e11a1402f3ac86c3667cbc13a6969a0ac030ba7bb8c88" dependencies = [ "alloy-sol-macro-input", "const-hex", @@ -813,9 +814,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bd1247a8f90b465ef3f1207627547ec16940c35597875cdc09c49d58b19693c" +checksum = "49a522d79929c1bf0152b07567a38f7eaed3ab149e53e7528afa78ff11994668" dependencies = [ "const-hex", "dunce", @@ -829,9 +830,9 @@ dependencies = [ [[package]] name = "alloy-sol-type-parser" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "954d1b2533b9b2c7959652df3076954ecb1122a28cc740aa84e7b0a49f6ac0a9" +checksum = "0475c459859c8d9428af6ff3736614655a57efda8cc435a3b8b4796fa5ac1dd0" dependencies = [ "serde", "winnow", @@ -839,9 +840,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70319350969a3af119da6fb3e9bddb1bce66c9ea933600cb297c8b1850ad2a3c" +checksum = "35287d9d821d5f26011bcd8d9101340898f761c9933cf50fca689bb7ed62fdeb" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -7209,6 +7210,16 @@ dependencies = [ "rand_core 0.9.3", ] +[[package]] +name = "rapidhash" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8e65c75143ce5d47c55b510297eeb1182f3c739b6043c537670e9fc18612dae" +dependencies = [ + "rand 0.9.2", + "rustversion", +] + [[package]] name = "ratatui" version = "0.29.0" @@ -12340,9 +12351,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff790eb176cc81bb8936aed0f7b9f14fc4670069a2d371b3e3b0ecce908b2cb3" +checksum = "60ceeb7c95a4536de0c0e1649bd98d1a72a4bb9590b1f3e45a8a0bfdb7c188c0" dependencies = [ "paste", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index 9e71bdd136..9995b61338 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -489,10 +489,10 @@ alloy-dyn-abi = "1.4.1" alloy-eip2124 = { version = "0.2.0", default-features = false } alloy-eip7928 = { version = "0.1.0" } alloy-evm = { version = "0.25.1", default-features = false } -alloy-primitives = { version = "1.4.1", default-features = false, features = ["map-foldhash"] } +alloy-primitives = { version = "1.5.0", default-features = false, features = ["map-foldhash"] } alloy-rlp = { version = "0.3.10", default-features = false, features = ["core-net"] } -alloy-sol-macro = "1.4.1" -alloy-sol-types = { version = "1.4.1", default-features = false } +alloy-sol-macro = "1.5.0" +alloy-sol-types = { version = "1.5.0", default-features = false } alloy-trie = { version = "0.9.1", default-features = false } alloy-hardforks = "0.4.5" diff --git a/bin/reth/Cargo.toml b/bin/reth/Cargo.toml index 223dfe1bdb..40fafc5c6b 100644 --- a/bin/reth/Cargo.toml +++ b/bin/reth/Cargo.toml @@ -81,7 +81,7 @@ backon.workspace = true tempfile.workspace = true [features] -default = ["jemalloc", "otlp", "reth-revm/portable", "js-tracer"] +default = ["jemalloc", "otlp", "reth-revm/portable", "js-tracer", "keccak-cache-global"] otlp = [ "reth-ethereum-cli/otlp", @@ -102,7 +102,9 @@ asm-keccak = [ "reth-ethereum-cli/asm-keccak", "reth-node-ethereum/asm-keccak", ] - +keccak-cache-global = [ + "reth-node-ethereum/keccak-cache-global", +] jemalloc = [ "reth-cli-util/jemalloc", "reth-node-core/jemalloc", diff --git a/crates/ethereum/node/Cargo.toml b/crates/ethereum/node/Cargo.toml index 02d1fc4b83..7e250f1498 100644 --- a/crates/ethereum/node/Cargo.toml +++ b/crates/ethereum/node/Cargo.toml @@ -88,6 +88,9 @@ asm-keccak = [ "reth-node-core/asm-keccak", "revm/asm-keccak", ] +keccak-cache-global = [ + "alloy-primitives/keccak-cache-global", +] js-tracer = [ "reth-node-builder/js-tracer", "reth-rpc/js-tracer", diff --git a/crates/ethereum/reth/Cargo.toml b/crates/ethereum/reth/Cargo.toml index a03e847582..a74d53c8eb 100644 --- a/crates/ethereum/reth/Cargo.toml +++ b/crates/ethereum/reth/Cargo.toml @@ -79,7 +79,9 @@ arbitrary = [ "alloy-rpc-types-engine?/arbitrary", "reth-codecs?/arbitrary", ] - +keccak-cache-global = [ + "reth-node-ethereum?/keccak-cache-global", +] test-utils = [ "reth-chainspec/test-utils", "reth-consensus?/test-utils", diff --git a/crates/optimism/bin/Cargo.toml b/crates/optimism/bin/Cargo.toml index ef203df0fc..fee15d89e9 100644 --- a/crates/optimism/bin/Cargo.toml +++ b/crates/optimism/bin/Cargo.toml @@ -27,7 +27,7 @@ tracing.workspace = true workspace = true [features] -default = ["jemalloc", "otlp", "reth-optimism-evm/portable", "js-tracer"] +default = ["jemalloc", "otlp", "reth-optimism-evm/portable", "js-tracer", "keccak-cache-global"] otlp = ["reth-optimism-cli/otlp"] @@ -40,7 +40,9 @@ jemalloc-prof = ["reth-cli-util/jemalloc-prof"] tracy-allocator = ["reth-cli-util/tracy-allocator"] asm-keccak = ["reth-optimism-cli/asm-keccak", "reth-optimism-node/asm-keccak"] - +keccak-cache-global = [ + "reth-optimism-node/keccak-cache-global", +] dev = [ "reth-optimism-cli/dev", "reth-optimism-primitives/arbitrary", diff --git a/crates/optimism/node/Cargo.toml b/crates/optimism/node/Cargo.toml index 313748512b..11d617fd28 100644 --- a/crates/optimism/node/Cargo.toml +++ b/crates/optimism/node/Cargo.toml @@ -93,6 +93,10 @@ asm-keccak = [ "reth-node-core/asm-keccak", "revm/asm-keccak", ] +keccak-cache-global = [ + "alloy-primitives/keccak-cache-global", + "reth-optimism-node/keccak-cache-global", +] js-tracer = [ "reth-node-builder/js-tracer", "reth-optimism-node/js-tracer", diff --git a/crates/optimism/reth/Cargo.toml b/crates/optimism/reth/Cargo.toml index d0e30f9331..e62f396d7f 100644 --- a/crates/optimism/reth/Cargo.toml +++ b/crates/optimism/reth/Cargo.toml @@ -74,7 +74,9 @@ arbitrary = [ "reth-eth-wire?/arbitrary", "reth-codecs?/arbitrary", ] - +keccak-cache-global = [ + "reth-optimism-node?/keccak-cache-global", +] test-utils = [ "reth-chainspec/test-utils", "reth-consensus?/test-utils",