diff --git a/Cargo.lock b/Cargo.lock index 727d632b87e..d3d4dda04c1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -133,12 +133,12 @@ dependencies = [ [[package]] name = "alloy-consensus" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "arbitrary", "c-kzg", "proptest", @@ -180,11 +180,11 @@ dependencies = [ [[package]] name = "alloy-eips" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", "alloy-rlp", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "arbitrary", "c-kzg", "derive_more", @@ -212,10 +212,10 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "serde", "serde_json", ] @@ -246,7 +246,7 @@ dependencies = [ [[package]] name = "alloy-json-rpc" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", "serde", @@ -258,16 +258,17 @@ dependencies = [ [[package]] name = "alloy-network" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-json-rpc", "alloy-primitives", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-signer", "alloy-sol-types", "async-trait", + "auto_impl", "futures-utils-wasm", "thiserror", ] @@ -275,9 +276,9 @@ dependencies = [ [[package]] name = "alloy-node-bindings" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "k256", "serde_json", @@ -317,14 +318,16 @@ dependencies = [ [[package]] name = "alloy-provider" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-chains", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-json-rpc", "alloy-network", "alloy-primitives", "alloy-rpc-client", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-rpc-types-trace", "alloy-transport", "alloy-transport-http", @@ -337,6 +340,7 @@ dependencies = [ "lru", "pin-project", "reqwest 0.12.4", + "serde", "serde_json", "tokio", "tracing", @@ -368,7 +372,7 @@ dependencies = [ [[package]] name = "alloy-rpc-client" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -388,14 +392,14 @@ dependencies = [ [[package]] name = "alloy-rpc-types" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-sol-types", "arbitrary", "itertools 0.12.1", @@ -428,19 +432,19 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "serde", ] [[package]] name = "alloy-rpc-types-beacon" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "alloy-rpc-types-engine", "serde", @@ -451,14 +455,14 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "jsonrpsee-types", "jsonwebtoken 9.3.0", "rand 0.8.5", @@ -469,11 +473,11 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-serde 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "serde", "serde_json", ] @@ -481,7 +485,7 @@ dependencies = [ [[package]] name = "alloy-serde" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", "serde", @@ -501,7 +505,7 @@ dependencies = [ [[package]] name = "alloy-signer" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-primitives", "async-trait", @@ -514,9 +518,9 @@ dependencies = [ [[package]] name = "alloy-signer-wallet" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-network", "alloy-primitives", "alloy-signer", @@ -603,7 +607,7 @@ dependencies = [ [[package]] name = "alloy-transport" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -621,7 +625,7 @@ dependencies = [ [[package]] name = "alloy-transport-http" version = "0.1.0" -source = "git+https://github.com/alloy-rs/alloy?rev=64feb9b#64feb9bc51c8021ea08535694c44de84222f474e" +source = "git+https://github.com/alloy-rs/alloy?rev=bd39117#bd391179fb4ebf64fe13484e44f2e432baf9b6c2" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -2976,7 +2980,7 @@ dependencies = [ name = "exex-rollup" version = "0.0.0" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-rlp", "alloy-sol-types", "eyre", @@ -5462,6 +5466,18 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] + [[package]] name = "page_size" version = "0.6.0" @@ -5871,6 +5887,15 @@ dependencies = [ "syn 2.0.66", ] +[[package]] +name = "primeorder" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +dependencies = [ + "elliptic-curve", +] + [[package]] name = "primitive-types" version = "0.12.2" @@ -6592,9 +6617,9 @@ dependencies = [ name = "reth-codecs" version = "0.2.0-beta.7" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "arbitrary", "bytes", @@ -6820,9 +6845,9 @@ dependencies = [ name = "reth-e2e-test-utils" version = "0.2.0-beta.7" dependencies = [ - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-network", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-signer", "alloy-signer-wallet", "eyre", @@ -7043,7 +7068,7 @@ dependencies = [ name = "reth-evm-ethereum" version = "0.2.0-beta.7" dependencies = [ - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "reth-ethereum-consensus", "reth-evm", "reth-primitives", @@ -7636,12 +7661,12 @@ name = "reth-primitives" version = "0.2.0-beta.7" dependencies = [ "alloy-chains", - "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", - "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-consensus 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", + "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-trie", "arbitrary", "assert_matches", @@ -7743,7 +7768,7 @@ dependencies = [ name = "reth-revm" version = "0.2.0-beta.7" dependencies = [ - "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-eips 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "reth-consensus-common", "reth-execution-errors", "reth-primitives", @@ -7928,7 +7953,7 @@ name = "reth-rpc-types" version = "0.2.0-beta.7" dependencies = [ "alloy-primitives", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-rpc-types-anvil", "alloy-rpc-types-beacon", "alloy-rpc-types-engine", @@ -7949,7 +7974,7 @@ name = "reth-rpc-types-compat" version = "0.2.0-beta.7" dependencies = [ "alloy-rlp", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "reth-primitives", "reth-rpc-types", "serde_json", @@ -8092,7 +8117,7 @@ dependencies = [ name = "reth-testing-utils" version = "0.2.0-beta.7" dependencies = [ - "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-genesis 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "rand 0.8.5", "reth-primitives", "secp256k1 0.28.2", @@ -8212,8 +8237,7 @@ dependencies = [ [[package]] name = "revm" version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a2c336f9921588e50871c00024feb51a521eca50ce6d01494bb9c50f837c8ed" +source = "git+https://github.com/bluealloy/revm?rev=a28a543#a28a5439b9cfb7494cbd670da10cbedcfe6c5854" dependencies = [ "auto_impl", "cfg-if", @@ -8227,10 +8251,10 @@ dependencies = [ [[package]] name = "revm-inspectors" version = "0.1.0" -source = "git+https://github.com/paradigmxyz/evm-inspectors?rev=5a4fd5e#5a4fd5e394d8bdf1337ac076d0b5fde4f2dd617c" +source = "git+https://github.com/paradigmxyz/evm-inspectors?rev=ed5450e#ed5450e7169ce0237e791fed661688c55997a0ac" dependencies = [ "alloy-primitives", - "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=64feb9b)", + "alloy-rpc-types 0.1.0 (git+https://github.com/alloy-rs/alloy?rev=bd39117)", "alloy-rpc-types-trace", "alloy-sol-types", "anstyle", @@ -8245,8 +8269,7 @@ dependencies = [ [[package]] name = "revm-interpreter" version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a58182c7454179826f9dad2ca577661963092ce9d0fd0c9d682c1e9215a72e70" +source = "git+https://github.com/bluealloy/revm?rev=a28a543#a28a5439b9cfb7494cbd670da10cbedcfe6c5854" dependencies = [ "revm-primitives", "serde", @@ -8255,13 +8278,14 @@ dependencies = [ [[package]] name = "revm-precompile" version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc8af9aa737eef0509a50d9f3cc1a631557a00ef2e70a3aa8a75d9ee0ed275bb" +source = "git+https://github.com/bluealloy/revm?rev=a28a543#a28a5439b9cfb7494cbd670da10cbedcfe6c5854" dependencies = [ "aurora-engine-modexp", + "blst", "c-kzg", "k256", "once_cell", + "p256", "revm-primitives", "ripemd", "secp256k1 0.29.0", @@ -8272,8 +8296,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "4.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9bf5d465e64b697da6a111cb19e798b5b2ebb18e5faf2ad48e9e8d47c64add2" +source = "git+https://github.com/bluealloy/revm?rev=a28a543#a28a5439b9cfb7494cbd670da10cbedcfe6c5854" dependencies = [ "alloy-primitives", "auto_impl", diff --git a/Cargo.toml b/Cargo.toml index 946682343d1..a94a65c6586 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -307,11 +307,12 @@ reth-trie-parallel = { path = "crates/trie-parallel" } revm = { version = "9.0.0", features = [ "std", "secp256k1", + "blst", ], default-features = false } revm-primitives = { version = "4.0.0", features = [ "std", ], default-features = false } -revm-inspectors = { git = "https://github.com/paradigmxyz/evm-inspectors", rev = "5a4fd5e" } +revm-inspectors = { git = "https://github.com/paradigmxyz/evm-inspectors", rev = "ed5450e" } # eth alloy-chains = "0.1.15" @@ -320,21 +321,21 @@ alloy-dyn-abi = "0.7.2" alloy-sol-types = "0.7.2" alloy-rlp = "0.3.4" alloy-trie = "0.4" -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b", default-features = false, features = [ +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117", default-features = false, features = [ "reqwest", ] } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", default-features = false, rev = "64feb9b" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-signer-wallet = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "64feb9b" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", default-features = false, rev = "bd39117" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-signer-wallet = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "bd39117" } # misc auto_impl = "1" @@ -434,3 +435,9 @@ proptest-derive = "0.4" serial_test = "3" similar-asserts = "1.5.0" test-fuzz = "5" + +[patch.crates-io] +revm = { git = "https://github.com/bluealloy/revm", rev = "a28a543" } +revm-interpreter = { git = "https://github.com/bluealloy/revm", rev = "a28a543" } +revm-precompile = { git = "https://github.com/bluealloy/revm", rev = "a28a543" } +revm-primitives = { git = "https://github.com/bluealloy/revm", rev = "a28a543" } \ No newline at end of file diff --git a/crates/optimism/evm/src/l1.rs b/crates/optimism/evm/src/l1.rs index bd0313087b0..62b87678b4e 100644 --- a/crates/optimism/evm/src/l1.rs +++ b/crates/optimism/evm/src/l1.rs @@ -190,7 +190,9 @@ impl RethL1BlockInfo for L1BlockInfo { return Ok(U256::ZERO) } - let spec_id = if chain_spec.is_fork_active_at_timestamp(Hardfork::Ecotone, timestamp) { + let spec_id = if chain_spec.is_fork_active_at_timestamp(Hardfork::Fjord, timestamp) { + SpecId::FJORD + } else if chain_spec.is_fork_active_at_timestamp(Hardfork::Ecotone, timestamp) { SpecId::ECOTONE } else if chain_spec.is_fork_active_at_timestamp(Hardfork::Regolith, timestamp) { SpecId::REGOLITH @@ -211,7 +213,9 @@ impl RethL1BlockInfo for L1BlockInfo { timestamp: u64, input: &[u8], ) -> Result { - let spec_id = if chain_spec.is_fork_active_at_timestamp(Hardfork::Regolith, timestamp) { + let spec_id = if chain_spec.is_fork_active_at_timestamp(Hardfork::Fjord, timestamp) { + SpecId::FJORD + } else if chain_spec.is_fork_active_at_timestamp(Hardfork::Regolith, timestamp) { SpecId::REGOLITH } else if chain_spec.is_fork_active_at_timestamp(Hardfork::Bedrock, timestamp) { SpecId::BEDROCK diff --git a/crates/primitives/src/revm/compat.rs b/crates/primitives/src/revm/compat.rs index a153e86e9e7..705fc188065 100644 --- a/crates/primitives/src/revm/compat.rs +++ b/crates/primitives/src/revm/compat.rs @@ -36,7 +36,5 @@ pub fn calculate_intrinsic_gas_after_merge( is_shanghai: bool, ) -> u64 { let spec_id = if is_shanghai { SpecId::SHANGHAI } else { SpecId::MERGE }; - // TODO(EOF) - let initcodes = &[]; - validate_initial_tx_gas(spec_id, input, kind.is_create(), access_list, initcodes) + validate_initial_tx_gas(spec_id, input, kind.is_create(), access_list) } diff --git a/crates/primitives/src/revm/env.rs b/crates/primitives/src/revm/env.rs index 49b9f609c2b..1691e09e7d7 100644 --- a/crates/primitives/src/revm/env.rs +++ b/crates/primitives/src/revm/env.rs @@ -171,9 +171,6 @@ pub fn fill_tx_env_with_beacon_root_contract_call(env: &mut Env, parent_beacon_b // enveloped tx size. enveloped_tx: Some(Bytes::default()), }, - // TODO(EOF) - eof_initcodes: vec![], - eof_initcodes_hashed: Default::default(), }; // ensure the block gas limit is >= the tx diff --git a/crates/rpc/rpc-testing-util/src/debug.rs b/crates/rpc/rpc-testing-util/src/debug.rs index bdb549c3037..f409c3ce3d9 100644 --- a/crates/rpc/rpc-testing-util/src/debug.rs +++ b/crates/rpc/rpc-testing-util/src/debug.rs @@ -413,8 +413,8 @@ mod tests { let url = parse_env_url("RETH_RPC_TEST_NODE_URL").unwrap(); let client = HttpClientBuilder::default().build(url).unwrap(); - let opts = - GethDebugTracingOptions::default().call_config(CallConfig::default().only_top_call()); + let opts = GethDebugTracingOptions::default() + .with_call_config(CallConfig::default().only_top_call()); let mut stream = client.debug_trace_transactions_in_block(block, opts).await.unwrap(); while let Some(res) = stream.next().await { diff --git a/crates/rpc/rpc/src/debug.rs b/crates/rpc/rpc/src/debug.rs index ebc52877d84..f5c9ed2fe4d 100644 --- a/crates/rpc/rpc/src/debug.rs +++ b/crates/rpc/rpc/src/debug.rs @@ -519,7 +519,7 @@ where env: EnvWithHandlerCfg, db: &mut CacheDB>, transaction_context: Option, - ) -> EthResult<(GethTrace, revm_primitives::State)> { + ) -> EthResult<(GethTrace, revm_primitives::EvmState)> { let GethDebugTracingOptions { config, tracer, tracer_config, .. } = opts; if let Some(tracer) = tracer { diff --git a/crates/rpc/rpc/src/eth/api/transactions.rs b/crates/rpc/rpc/src/eth/api/transactions.rs index 538aa606b81..6e01ce3a2c5 100644 --- a/crates/rpc/rpc/src/eth/api/transactions.rs +++ b/crates/rpc/rpc/src/eth/api/transactions.rs @@ -39,8 +39,8 @@ use reth_transaction_pool::{TransactionOrigin, TransactionPool}; use revm::{ db::CacheDB, primitives::{ - db::DatabaseCommit, BlockEnv, CfgEnvWithHandlerCfg, EnvWithHandlerCfg, ExecutionResult, - ResultAndState, SpecId, State, + db::DatabaseCommit, BlockEnv, CfgEnvWithHandlerCfg, EnvWithHandlerCfg, EvmState, + ExecutionResult, ResultAndState, SpecId, }, GetInspector, Inspector, }; @@ -425,7 +425,7 @@ pub trait EthTransactions: Send + Sync { TransactionInfo, TracingInspector, ExecutionResult, - &'a State, + &'a EvmState, &'a StateCacheDB, ) -> EthResult + Send @@ -443,7 +443,7 @@ pub trait EthTransactions: Send + Sync { /// 2. configures the EVM evn /// 3. loops over all transactions and executes them /// 4. calls the callback with the transaction info, the execution result, the changed state - /// _after_ the transaction [State] and the database that points to the state + /// _after_ the transaction [EvmState] and the database that points to the state /// right _before_ the transaction, in other words the state the transaction was /// executed on: `changed_state = tx(cached_state)` /// @@ -462,7 +462,7 @@ pub trait EthTransactions: Send + Sync { TransactionInfo, Insp, ExecutionResult, - &'a State, + &'a EvmState, &'a StateCacheDB, ) -> EthResult + Send @@ -491,7 +491,7 @@ pub trait EthTransactions: Send + Sync { TransactionInfo, TracingInspector, ExecutionResult, - &'a State, + &'a EvmState, &'a StateCacheDB, ) -> EthResult + Send @@ -529,7 +529,7 @@ pub trait EthTransactions: Send + Sync { TransactionInfo, Insp, ExecutionResult, - &'a State, + &'a EvmState, &'a StateCacheDB, ) -> EthResult + Send @@ -1278,7 +1278,7 @@ where TransactionInfo, Insp, ExecutionResult, - &'a State, + &'a EvmState, &'a StateCacheDB, ) -> EthResult + Send diff --git a/crates/rpc/rpc/src/eth/error.rs b/crates/rpc/rpc/src/eth/error.rs index 26a4efa48f6..ff12130b19f 100644 --- a/crates/rpc/rpc/src/eth/error.rs +++ b/crates/rpc/rpc/src/eth/error.rs @@ -487,9 +487,6 @@ impl From for RpcInvalidTransactionError { OptimismInvalidTransactionError::HaltedDepositPostRegolith, ), // TODO(EOF) - InvalidTransaction::EofInitcodesNotSupported => todo!("EOF"), - InvalidTransaction::EofInitcodesNumberLimit => todo!("EOF"), - InvalidTransaction::EofInitcodesSizeLimit => todo!("EOF"), InvalidTransaction::EofCrateShouldHaveToAddress => todo!("EOF"), } } diff --git a/crates/rpc/rpc/src/eth/revm_utils.rs b/crates/rpc/rpc/src/eth/revm_utils.rs index e0cb8e14d9c..fcd132bfec1 100644 --- a/crates/rpc/rpc/src/eth/revm_utils.rs +++ b/crates/rpc/rpc/src/eth/revm_utils.rs @@ -272,9 +272,6 @@ pub(crate) fn create_txn_env( max_fee_per_blob_gas, #[cfg(feature = "optimism")] optimism: OptimismFields { enveloped_tx: Some(Bytes::new()), ..Default::default() }, - // TODO(EOF) - eof_initcodes: Default::default(), - eof_initcodes_hashed: Default::default(), }; Ok(env) @@ -540,13 +537,19 @@ where account, new_account_state .into_iter() - .map(|(slot, value)| (U256::from_be_bytes(slot.0), value)) + .map(|(slot, value)| { + (U256::from_be_bytes(slot.0), U256::from_be_bytes(value.0)) + }) .collect(), )?; } (None, Some(account_state_diff)) => { for (slot, value) in account_state_diff { - db.insert_account_storage(account, U256::from_be_bytes(slot.0), value)?; + db.insert_account_storage( + account, + U256::from_be_bytes(slot.0), + U256::from_be_bytes(value.0), + )?; } } }; diff --git a/crates/storage/provider/src/bundle_state/bundle_state_with_receipts.rs b/crates/storage/provider/src/bundle_state/bundle_state_with_receipts.rs index 37cdc9484fc..71992152ed4 100644 --- a/crates/storage/provider/src/bundle_state/bundle_state_with_receipts.rs +++ b/crates/storage/provider/src/bundle_state/bundle_state_with_receipts.rs @@ -87,7 +87,7 @@ mod tests { BundleState, EmptyDB, }, primitives::{ - Account as RevmAccount, AccountInfo as RevmAccountInfo, AccountStatus, StorageSlot, + Account as RevmAccount, AccountInfo as RevmAccountInfo, AccountStatus, EvmStorageSlot, }, DatabaseCommit, State, }; @@ -260,11 +260,11 @@ mod tests { storage: HashMap::from([ ( U256::from(0), - StorageSlot { present_value: U256::from(1), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(1), ..Default::default() }, ), ( U256::from(1), - StorageSlot { present_value: U256::from(2), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(2), ..Default::default() }, ), ]), }, @@ -277,9 +277,9 @@ mod tests { // 0x01 => 1 => 2 storage: HashMap::from([( U256::from(1), - StorageSlot { + EvmStorageSlot { present_value: U256::from(2), - previous_or_original_value: U256::from(1), + original_value: U256::from(1), }, )]), }, @@ -440,11 +440,11 @@ mod tests { storage: HashMap::from([ ( U256::ZERO, - StorageSlot { present_value: U256::from(1), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(1), ..Default::default() }, ), ( U256::from(1), - StorageSlot { present_value: U256::from(2), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(2), ..Default::default() }, ), ]), }, @@ -470,10 +470,7 @@ mod tests { // 0x00 => 1 => 2 storage: HashMap::from([( U256::ZERO, - StorageSlot { - previous_or_original_value: U256::from(1), - present_value: U256::from(2), - }, + EvmStorageSlot { original_value: U256::from(1), present_value: U256::from(2) }, )]), }, )])); @@ -513,15 +510,15 @@ mod tests { storage: HashMap::from([ ( U256::ZERO, - StorageSlot { present_value: U256::from(2), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(2), ..Default::default() }, ), ( U256::from(2), - StorageSlot { present_value: U256::from(4), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(4), ..Default::default() }, ), ( U256::from(6), - StorageSlot { present_value: U256::from(6), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(6), ..Default::default() }, ), ]), }, @@ -556,7 +553,7 @@ mod tests { // 0x00 => 0 => 2 storage: HashMap::from([( U256::ZERO, - StorageSlot { present_value: U256::from(2), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(2), ..Default::default() }, )]), }, )])); @@ -587,7 +584,7 @@ mod tests { // 0x00 => 0 => 9 storage: HashMap::from([( U256::ZERO, - StorageSlot { present_value: U256::from(9), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(9), ..Default::default() }, )]), }, )])); @@ -748,11 +745,11 @@ mod tests { storage: HashMap::from([ ( U256::ZERO, - StorageSlot { present_value: U256::from(1), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(1), ..Default::default() }, ), ( U256::from(1), - StorageSlot { present_value: U256::from(2), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(2), ..Default::default() }, ), ]), }, @@ -796,7 +793,7 @@ mod tests { // 0x01 => 0 => 5 storage: HashMap::from([( U256::from(1), - StorageSlot { present_value: U256::from(5), ..Default::default() }, + EvmStorageSlot { present_value: U256::from(5), ..Default::default() }, )]), }, )])); @@ -949,7 +946,7 @@ mod tests { info: into_revm_acc(account2.0), storage: HashMap::from_iter([( slot2, - StorageSlot::new_changed(account2_slot2_old_value, account2_slot2_new_value), + EvmStorageSlot::new_changed(account2_slot2_old_value, account2_slot2_new_value), )]), }, )])); @@ -1017,7 +1014,7 @@ mod tests { info: into_revm_acc(account1_new), storage: HashMap::from_iter([( slot20, - StorageSlot::new_changed(U256::ZERO, account1_slot20_value), + EvmStorageSlot::new_changed(U256::ZERO, account1_slot20_value), )]), }, )])); diff --git a/deny.toml b/deny.toml index 99b2c8d4f97..c6532bbf57a 100644 --- a/deny.toml +++ b/deny.toml @@ -92,6 +92,7 @@ allow-git = [ # TODO: remove, see ./Cargo.toml "https://github.com/alloy-rs/alloy", "https://github.com/foundry-rs/block-explorers", + "https://github.com/bluealloy/revm", "https://github.com/paradigmxyz/evm-inspectors", "https://github.com/sigp/discv5", ]