diff --git a/.github/workflows/check-lint-test.yaml b/.github/workflows/check-lint-test.yaml index e4c0603..5a29a47 100644 --- a/.github/workflows/check-lint-test.yaml +++ b/.github/workflows/check-lint-test.yaml @@ -21,7 +21,7 @@ jobs: - name: Checkout sources uses: actions/checkout@v3 - name: Install toolchain - uses: dtolnay/rust-toolchain@nightly + uses: dtolnay/rust-toolchain@stable with: components: rustfmt, clippy - uses: Swatinem/rust-cache@v2 @@ -29,16 +29,16 @@ jobs: cache-on-failure: true - name: cargo check - run: cargo +nightly check --all --all-features --benches --tests + run: cargo check --all --all-features --benches --tests - name: cargo fmt - run: cargo +nightly fmt --all --check + run: cargo fmt --all --check - name: cargo clippy - run: cargo +nightly clippy --all --all-features --benches --tests + run: cargo clippy --all --all-features --benches --tests - name: cargo test - run: cargo +nightly test + run: cargo test - name: Set up QEMU uses: docker/setup-qemu-action@v3 diff --git a/Cargo.lock b/Cargo.lock index 684e39d..3703890 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1146,8 +1146,8 @@ checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" [[package]] name = "codecs-derive" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "convert_case 0.6.0", "parity-scale-codec", @@ -4552,8 +4552,8 @@ dependencies = [ [[package]] name = "reth" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-chains", "alloy-rlp", @@ -4606,7 +4606,7 @@ dependencies = [ "reth-node-api", "reth-node-builder", "reth-payload-builder", - "reth-payload-validator 0.1.0-alpha.14", + "reth-payload-validator 0.1.0-alpha.15", "reth-primitives", "reth-provider", "reth-prune", @@ -4639,8 +4639,8 @@ dependencies = [ [[package]] name = "reth-auto-seal-consensus" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "futures-util", "reth-beacon-consensus", @@ -4658,8 +4658,8 @@ dependencies = [ [[package]] name = "reth-basic-payload-builder" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "futures-core", @@ -4681,8 +4681,8 @@ dependencies = [ [[package]] name = "reth-beacon-consensus" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "cfg-if", "futures", @@ -4693,7 +4693,7 @@ dependencies = [ "reth-metrics", "reth-node-api", "reth-payload-builder", - "reth-payload-validator 0.1.0-alpha.14", + "reth-payload-validator 0.1.0-alpha.15", "reth-primitives", "reth-provider", "reth-prune", @@ -4711,8 +4711,8 @@ dependencies = [ [[package]] name = "reth-beacon-consensus-core" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-consensus-common", "reth-interfaces", @@ -4721,8 +4721,8 @@ dependencies = [ [[package]] name = "reth-blockchain-tree" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "aquamarine", "linked_hash_set", @@ -4742,8 +4742,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-primitives", "bytes", @@ -4752,8 +4752,8 @@ dependencies = [ [[package]] name = "reth-config" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-discv4", "reth-net-nat", @@ -4767,8 +4767,8 @@ dependencies = [ [[package]] name = "reth-consensus-common" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-chains", "cfg-if", @@ -4779,8 +4779,8 @@ dependencies = [ [[package]] name = "reth-db" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "arbitrary", "bytes", @@ -4817,8 +4817,8 @@ dependencies = [ [[package]] name = "reth-discv4" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "discv5", @@ -4839,8 +4839,8 @@ dependencies = [ [[package]] name = "reth-dns-discovery" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-chains", "alloy-rlp", @@ -4864,8 +4864,8 @@ dependencies = [ [[package]] name = "reth-downloaders" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "futures", @@ -4889,8 +4889,8 @@ dependencies = [ [[package]] name = "reth-ecies" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "aes 0.8.3", "alloy-rlp", @@ -4920,8 +4920,8 @@ dependencies = [ [[package]] name = "reth-eth-wire" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-chains", "alloy-rlp", @@ -4947,8 +4947,8 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-chains", "alloy-primitives", @@ -4957,15 +4957,14 @@ dependencies = [ "crc", "proptest", "proptest-derive", - "reth-codecs", "serde", "thiserror", ] [[package]] name = "reth-ethereum-payload-builder" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-basic-payload-builder", "reth-payload-builder", @@ -4979,8 +4978,8 @@ dependencies = [ [[package]] name = "reth-interfaces" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "auto_impl", "clap", @@ -4997,8 +4996,8 @@ dependencies = [ [[package]] name = "reth-ipc" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "async-trait", "bytes", @@ -5017,8 +5016,8 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "bitflags 2.4.1", "byteorder", @@ -5033,8 +5032,8 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "bindgen 0.68.1", "cc", @@ -5043,8 +5042,8 @@ dependencies = [ [[package]] name = "reth-metrics" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "futures", "metrics", @@ -5055,8 +5054,8 @@ dependencies = [ [[package]] name = "reth-metrics-derive" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "once_cell", "proc-macro2", @@ -5067,8 +5066,8 @@ dependencies = [ [[package]] name = "reth-net-common" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "pin-project", "reth-primitives", @@ -5077,8 +5076,8 @@ dependencies = [ [[package]] name = "reth-net-nat" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "igd", "pin-project-lite", @@ -5091,13 +5090,14 @@ dependencies = [ [[package]] name = "reth-network" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "aquamarine", "async-trait", "auto_impl", + "derive_more", "enr", "fnv", "futures", @@ -5122,6 +5122,7 @@ dependencies = [ "reth-tasks", "reth-tokio-util", "reth-transaction-pool", + "schnellru", "secp256k1 0.27.0", "serde", "serde_json", @@ -5134,8 +5135,8 @@ dependencies = [ [[package]] name = "reth-network-api" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-chains", "async-trait", @@ -5150,8 +5151,8 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "anyhow", "bincode", @@ -5169,8 +5170,8 @@ dependencies = [ [[package]] name = "reth-node-api" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-primitives", "reth-rpc-types", @@ -5180,8 +5181,8 @@ dependencies = [ [[package]] name = "reth-node-builder" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-node-api", "reth-payload-builder", @@ -5192,8 +5193,8 @@ dependencies = [ [[package]] name = "reth-payload-builder" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "async-trait", @@ -5219,8 +5220,8 @@ dependencies = [ [[package]] name = "reth-payload-validator" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-primitives", "reth-rpc-types", @@ -5250,8 +5251,8 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "ahash", "alloy-chains", @@ -5292,8 +5293,8 @@ dependencies = [ [[package]] name = "reth-provider" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "ahash", "alloy-rlp", @@ -5319,8 +5320,8 @@ dependencies = [ [[package]] name = "reth-prune" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "itertools 0.12.0", "metrics", @@ -5341,8 +5342,8 @@ dependencies = [ [[package]] name = "reth-revm" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "reth-consensus-common", "reth-interfaces", @@ -5355,8 +5356,8 @@ dependencies = [ [[package]] name = "reth-rpc" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-dyn-abi", "alloy-primitives", @@ -5406,8 +5407,8 @@ dependencies = [ [[package]] name = "reth-rpc-api" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "jsonrpsee", "reth-node-api", @@ -5419,8 +5420,8 @@ dependencies = [ [[package]] name = "reth-rpc-builder" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "hyper", "jsonrpsee", @@ -5449,8 +5450,8 @@ dependencies = [ [[package]] name = "reth-rpc-engine-api" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "async-trait", "jsonrpsee-core", @@ -5475,8 +5476,8 @@ dependencies = [ [[package]] name = "reth-rpc-types" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -5498,8 +5499,8 @@ dependencies = [ [[package]] name = "reth-rpc-types-compat" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "alloy-rpc-types", @@ -5510,8 +5511,8 @@ dependencies = [ [[package]] name = "reth-snapshot" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "clap", "reth-db", @@ -5526,8 +5527,8 @@ dependencies = [ [[package]] name = "reth-stages" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "aquamarine", "async-trait", @@ -5556,8 +5557,8 @@ dependencies = [ [[package]] name = "reth-tasks" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "dyn-clone", "futures-util", @@ -5571,8 +5572,8 @@ dependencies = [ [[package]] name = "reth-tokio-util" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "tokio", "tokio-stream", @@ -5580,8 +5581,8 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "clap", "eyre", @@ -5595,8 +5596,8 @@ dependencies = [ [[package]] name = "reth-transaction-pool" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "alloy-rlp", "aquamarine", @@ -5625,8 +5626,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "0.1.0-alpha.14" -source = "git+https://github.com/paradigmxyz/reth?rev=5127d40f48b0afb608d4fce550cf5daf9237d80e#5127d40f48b0afb608d4fce550cf5daf9237d80e" +version = "0.1.0-alpha.15" +source = "git+https://github.com/paradigmxyz/reth?rev=5a623a9c1285d986fc46f1091d58d7a388323457#5a623a9c1285d986fc46f1091d58d7a388323457" dependencies = [ "ahash", "alloy-chains", @@ -5636,8 +5637,8 @@ dependencies = [ "reth-db", "reth-interfaces", "reth-primitives", + "revm", "thiserror", - "tokio", "tracing", ] diff --git a/Cargo.toml b/Cargo.toml index 762e904..08f0108 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,9 +23,9 @@ derivative = "2.2.0" eyre = "0.6.8" hex = "0.4.3" jsonrpsee = "0.20.1" -reth = { git = "https://github.com/paradigmxyz/reth", rev = "5127d40f48b0afb608d4fce550cf5daf9237d80e" } -reth-db = { features = ["test-utils"], git = "https://github.com/paradigmxyz/reth", rev = "5127d40f48b0afb608d4fce550cf5daf9237d80e"} -reth-tracing = { git = "https://github.com/paradigmxyz/reth", rev = "5127d40f48b0afb608d4fce550cf5daf9237d80e"} +reth = { git = "https://github.com/paradigmxyz/reth", rev = "5a623a9c1285d986fc46f1091d58d7a388323457" } +reth-db = { features = ["test-utils"], git = "https://github.com/paradigmxyz/reth", rev = "5a623a9c1285d986fc46f1091d58d7a388323457"} +reth-tracing = { git = "https://github.com/paradigmxyz/reth", rev = "5a623a9c1285d986fc46f1091d58d7a388323457"} secp256k1 = { version = "0.28.0", features = ["rand-std"] } serde = "1.0.188" serde_json = "1.0.107" diff --git a/Dockerfile b/Dockerfile index f0dd819..b50b98d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,16 +8,15 @@ WORKDIR /app RUN apt-get update && apt-get -y upgrade && apt-get install -y libclang-dev pkg-config COPY Cargo.toml Cargo.lock ./ -RUN rustup install nightly RUN mkdir src/ RUN echo "fn main() {}" > dummy.rs RUN sed -i 's#src/main.rs#dummy.rs#' Cargo.toml -RUN cargo +nightly build --release +RUN cargo build --release # Build executable. RUN sed -i 's#dummy.rs#src/main.rs#' Cargo.toml COPY src ./src -RUN cargo +nightly build --release +RUN cargo build --release # Build runtime image. FROM gcr.io/distroless/cc-debian12 AS runtime diff --git a/src/rpc/api.rs b/src/rpc/api.rs index 6a760be..18fa971 100644 --- a/src/rpc/api.rs +++ b/src/rpc/api.rs @@ -8,8 +8,8 @@ use jsonrpsee::proc_macros::rpc; #[rpc(client, server, namespace = "flashbots")] pub trait ValidationApi { /// Validates a block submitted to the relay - #[method(name = "validateBuilderSubmissionV2")] - async fn validate_builder_submission_v2( + #[method(name = "validateBuilderSubmissionV3")] + async fn validate_builder_submission_v3( &self, request_body: ValidationRequestBody, ) -> RpcResult<()>; diff --git a/src/rpc/mod.rs b/src/rpc/mod.rs index 213b7ed..128e8d8 100644 --- a/src/rpc/mod.rs +++ b/src/rpc/mod.rs @@ -57,7 +57,7 @@ where + 'static, { /// Validates a block submitted to the relay - async fn validate_builder_submission_v2( + async fn validate_builder_submission_v3( &self, request_body: ValidationRequestBody, ) -> RpcResult<()> { diff --git a/src/rpc/types.rs b/src/rpc/types.rs index 6e1de2b..556d53c 100644 --- a/src/rpc/types.rs +++ b/src/rpc/types.rs @@ -1,6 +1,8 @@ use derivative::Derivative; use reth::primitives::{Address, Bloom, Bytes, B256, U256}; -use reth::rpc::types::{ExecutionPayload, ExecutionPayloadV1, ExecutionPayloadV2, Withdrawal}; +use reth::rpc::types::{ + ExecutionPayload, ExecutionPayloadV1, ExecutionPayloadV2, ExecutionPayloadV3, Withdrawal, +}; use serde::{Deserialize, Serialize}; use serde_with::{serde_as, DisplayFromStr}; @@ -13,6 +15,8 @@ pub struct ValidationRequestBody { pub signature: Bytes, #[serde_as(as = "DisplayFromStr")] pub registered_gas_limit: u64, + #[serde(default)] + pub parent_beacon_block_root: Option, } #[serde_as] @@ -62,6 +66,10 @@ pub struct ExecutionPayloadValidation { #[derivative(Debug = "ignore")] pub transactions: Vec, pub withdrawals: Vec, + #[serde_as(as = "DisplayFromStr")] + pub blob_gas_used: u64, + #[serde_as(as = "DisplayFromStr")] + pub excess_blob_gas: u64, } /// Withdrawal object with numbers deserialized as decimals @@ -83,24 +91,28 @@ pub struct WithdrawalValidation { impl From for ExecutionPayload { fn from(val: ExecutionPayloadValidation) -> Self { - ExecutionPayload::V2(ExecutionPayloadV2 { - payload_inner: ExecutionPayloadV1 { - parent_hash: val.parent_hash, - fee_recipient: val.fee_recipient, - state_root: val.state_root, - receipts_root: val.receipts_root, - logs_bloom: val.logs_bloom, - prev_randao: val.prev_randao, - block_number: val.block_number, - gas_limit: val.gas_limit, - gas_used: val.gas_used, - timestamp: val.timestamp, - extra_data: val.extra_data, - base_fee_per_gas: val.base_fee_per_gas, - block_hash: val.block_hash, - transactions: val.transactions, + ExecutionPayload::V3(ExecutionPayloadV3 { + payload_inner: ExecutionPayloadV2 { + payload_inner: ExecutionPayloadV1 { + parent_hash: val.parent_hash, + fee_recipient: val.fee_recipient, + state_root: val.state_root, + receipts_root: val.receipts_root, + logs_bloom: val.logs_bloom, + prev_randao: val.prev_randao, + block_number: val.block_number, + gas_limit: val.gas_limit, + gas_used: val.gas_used, + timestamp: val.timestamp, + extra_data: val.extra_data, + base_fee_per_gas: val.base_fee_per_gas, + block_hash: val.block_hash, + transactions: val.transactions, + }, + withdrawals: val.withdrawals.into_iter().map(|w| w.into()).collect(), }, - withdrawals: val.withdrawals.into_iter().map(|w| w.into()).collect(), + blob_gas_used: val.blob_gas_used, + excess_blob_gas: val.excess_blob_gas, }) } } diff --git a/src/rpc/validation.rs b/src/rpc/validation.rs index b1f5034..41cb64a 100644 --- a/src/rpc/validation.rs +++ b/src/rpc/validation.rs @@ -139,8 +139,11 @@ where } fn parse_block(&self) -> RpcResult { - try_into_sealed_block(self.request_body.execution_payload.clone().into(), None) - .to_rpc_result() + try_into_sealed_block( + self.request_body.execution_payload.clone().into(), + self.request_body.parent_beacon_block_root, + ) + .to_rpc_result() } fn validate_header(&self, block: &SealedBlock) -> RpcResult<()> { @@ -164,7 +167,6 @@ where ))?; // Note: Setting total difficulty to U256::MAX makes this incompatible with pre merge POW // blocks - // TODO: Check what exactly the "senders" argument is and if we can set it to None here executor .execute_and_verify_receipt(&unsealed_block, U256::MAX) .map_err(|e| internal_rpc_err(format!("Error executing transactions: {:}", e)))?; diff --git a/tests/data/single_payload.json b/tests/data/single_payload.json index 87b8228..abcae67 100644 --- a/tests/data/single_payload.json +++ b/tests/data/single_payload.json @@ -20,6 +20,8 @@ "block_number": "17585076", "gas_limit": "30000000", "gas_used": "10241365", + "blob_gas_used": "10241365", + "excess_blob_gas": "10241365", "timestamp": "1688043143", "extra_data": "0x497427732046726565205265616c20457374617465", "base_fee_per_gas": "26097588307", diff --git a/tests/integration/http.rs b/tests/integration/http.rs index ed0ccad..deace8b 100644 --- a/tests/integration/http.rs +++ b/tests/integration/http.rs @@ -8,7 +8,7 @@ use reth::primitives::{ keccak256, sign_message, stage::{StageCheckpoint, StageId}, AccessList, Account, Address, Block, Bytes, Header, ReceiptWithBloom, Transaction, - TransactionKind, TransactionSigned, TxEip1559, B256, MAINNET, U256, + TransactionKind, TransactionSigned, TxEip1559, B256, GOERLI, U256, }; use reth::providers::{ providers::BlockchainProvider, BlockExecutor, ProviderFactory, StateRootProvider, @@ -35,7 +35,7 @@ async fn test_valid_block() { generate_valid_request(&provider_factory, None); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -52,7 +52,7 @@ async fn test_registered_gas_limit_too_low_block() { validation_request_body.registered_gas_limit = 10_000; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -71,7 +71,7 @@ async fn test_invalid_state_root() { validation_request_body.execution_payload.state_root = B256::default(); validation_request_body = seal_request_body(validation_request_body); - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -88,7 +88,7 @@ async fn test_block_number_too_high() { validation_request_body = seal_request_body(validation_request_body); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -109,7 +109,7 @@ async fn test_block_number_already_known() { generate_valid_request(&provider_factory, None); let block = try_into_block( validation_request_body.execution_payload.clone().into(), - None, + Some(B256::with_last_byte(0x69)), ) .expect("failed to create block"); add_block_with_hash(&provider_factory, B256::random(), block); @@ -120,7 +120,7 @@ async fn test_block_number_already_known() { // .is_some()); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -136,7 +136,7 @@ async fn test_block_hash_already_known() { generate_valid_request(&provider_factory, None); let block = try_into_block( validation_request_body.execution_payload.clone().into(), - None, + Some(B256::with_last_byte(0x69)), ) .expect("failed to create block"); add_block_with_hash( @@ -146,7 +146,7 @@ async fn test_block_hash_already_known() { ); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -172,7 +172,7 @@ async fn test_incorrect_parent() { validation_request_body = seal_request_body(validation_request_body); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -203,7 +203,7 @@ async fn test_tx_nonce_too_low() { let other_transaction = sign_transaction( &sender_secret_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, // Invalid Tx because nonce is too low gas_limit: 21000, to: TransactionKind::Call(receiver_address), @@ -234,7 +234,7 @@ async fn test_tx_nonce_too_low() { ); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -265,7 +265,7 @@ async fn test_proposer_payment_validation_via_balance_change() { let other_transaction = sign_transaction( &sender_secret_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, gas_limit: 21000, to: TransactionKind::Call(receiver_address), @@ -285,7 +285,7 @@ async fn test_proposer_payment_validation_via_balance_change() { &provider_factory, )); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -327,7 +327,7 @@ async fn test_proposer_spent_in_same_block() { let spend_proposer_payment_tx = sign_transaction( &recipient_private_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, gas_limit: 21000, to: TransactionKind::Call(receiver_address), @@ -342,7 +342,7 @@ async fn test_proposer_spent_in_same_block() { let other_transaction = sign_transaction( &sender_secret_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, gas_limit: 21000, to: TransactionKind::Call(receiver_address), @@ -361,7 +361,7 @@ async fn test_proposer_spent_in_same_block() { )); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -405,7 +405,7 @@ async fn test_proposer_spent_in_same_block_but_payment_tx_last() { let spend_proposer_payment_tx = sign_transaction( &recipient_private_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, gas_limit: 21000, to: TransactionKind::Call(receiver_address), @@ -420,7 +420,7 @@ async fn test_proposer_spent_in_same_block_but_payment_tx_last() { let other_transaction = sign_transaction( &sender_secret_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, gas_limit: 21000, to: TransactionKind::Call(receiver_address), @@ -446,7 +446,7 @@ async fn test_proposer_spent_in_same_block_but_payment_tx_last() { validation_request_body = seal_request_body(validation_request_body); let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -466,7 +466,7 @@ async fn test_insufficient_proposer_payment() { let client = get_client(provider_factory).await; - let result = ValidationApiClient::validate_builder_submission_v2( + let result = ValidationApiClient::validate_builder_submission_v3( &client, validation_request_body.clone(), ) @@ -489,7 +489,7 @@ async fn test_wrong_hash() { let client = get_client(provider_factory).await; let result = - ValidationApiClient::validate_builder_submission_v2(&client, validation_request_body).await; + ValidationApiClient::validate_builder_submission_v3(&client, validation_request_body).await; let error_message = get_call_error_message(result.unwrap_err()).unwrap(); assert!(error_message.contains("block hash mismatch")); } @@ -563,7 +563,7 @@ fn generate_valid_request( let proposer_payment_transaction = sign_transaction( &sender_secret_key, Transaction::Eip1559(TxEip1559 { - chain_id: 1, + chain_id: 5, nonce: 0, gas_limit: 21000, to: TransactionKind::Call(fee_recipient), @@ -590,10 +590,11 @@ fn generate_block(gas_limit: u64, base_fee_per_gas: u64) -> Block { let payload = reth_payload_validator::rpc::ExecutionPayloadValidation { gas_limit, base_fee_per_gas: U256::from(base_fee_per_gas), - block_number: 18469910, + block_number: 19447300, ..Default::default() }; - try_into_block(payload.clone().into(), None).expect("failed to create block") + try_into_block(payload.clone().into(), Some(B256::with_last_byte(0x69))) + .expect("failed to create block") } fn generate_validation_request_body( @@ -617,6 +618,7 @@ fn generate_validation_request_body( validation_request_body.message.value = U256::from(proposer_fee); validation_request_body.message.proposer_fee_recipient = fee_recipient; validation_request_body.registered_gas_limit = 1_000_000; + validation_request_body.parent_beacon_block_root = Some(B256::with_last_byte(0x69)); seal_request_body(add_transactions( validation_request_body, @@ -641,7 +643,7 @@ fn add_transactions( .append(&mut encoded_transactions); let block = try_into_block( validation_request_body.execution_payload.clone().into(), - None, + Some(B256::with_last_byte(0x69)), ) .expect("failed to create block"); let (receipts_root, cumulative_gas_used, state_root) = @@ -656,7 +658,7 @@ fn add_transactions( fn seal_request_body(mut validation_request_body: ValidationRequestBody) -> ValidationRequestBody { let block = try_into_block( validation_request_body.execution_payload.clone().into(), - None, + Some(B256::with_last_byte(0x69)), ) .expect("failed to create block"); let sealed_block = block.seal_slow(); @@ -668,7 +670,7 @@ fn calculate_receipts_root( block: &Block, provider_factory: &TestProviderFactory, ) -> (B256, u64, B256) { - let chain_spec = MAINNET.clone(); + let chain_spec = GOERLI.clone(); let state_provider_db = StateProviderDatabase::new(provider_factory.latest().unwrap()); let mut executor = EVMProcessor::new_with_db(chain_spec.clone(), state_provider_db); @@ -728,7 +730,7 @@ fn sign_transaction(secret_key: &SecretKey, transaction: Transaction) -> Transac fn get_provider_factory() -> TestProviderFactory { let db = create_test_rw_db(); - ProviderFactory::new(db, MAINNET.clone()) + ProviderFactory::new(db, GOERLI.clone()) } fn add_account(provider_factory: &TestProviderFactory, address: Address, account: Account) {