From 290202b4f4cabe96f7913da98a403133c60f6a83 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 11 Sep 2025 07:45:51 +0800 Subject: [PATCH 01/25] feat: add CLAUDE.md file --- CLAUDE.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 212 insertions(+) create mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 00000000..934a0eb6 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,212 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## Project Architecture + +This is a Rust workspace for the Scroll rollup node, built on the Reth framework. The architecture follows an event-driven, actor-based pattern with clear separation of concerns and extensive use of async channels for communication. + +### Core Components & Data Flow + +The system follows this critical data flow pattern: + +1. **L1 Watcher** (`crates/watcher/`) monitors Ethereum L1 for events + - Watches for batch commits, finalizations, and L1 messages + - Handles chain reorganizations and maintains unfinalized block buffer + - Emits `L1Notification` events to other components + +2. **Chain Orchestrator** (`crates/chain-orchestrator/`) orchestrates L2 chain state + - Receives L1 notifications and manages chain progression + - Maintains in-memory chain buffer + - Coordinates between L1 events and L2 block production + +3. **Derivation Pipeline** (`crates/derivation-pipeline/`) transforms L1 data to L2 payloads + - Decodes batch data using scroll-codec + - Streams `ScrollPayloadAttributesWithBatchInfo` to engine + +4. **Engine Driver** (`crates/engine/`) manages block execution + - Interfaces with Reth execution engine via Engine API + - Handles forkchoice updates and payload building + - Manages consolidation of L1-derived blocks + +5. **Sequencer** (`crates/sequencer/`) creates new blocks + - Builds payload attributes from L1 messages and txpool + - Supports different L1 message inclusion strategies + - Configurable block time and gas limits + +6. **Network Layer** (`crates/scroll-wire/`) handles P2P communication + - Custom wire protocol for Scroll-specific block propagation + - Manages peer discovery and block gossiping + - Built on top of Reth networking infrastructure + +### Supporting Components + +- **Manager** (`crates/manager/`) - Top-level orchestration and command handling +- **Signer** (`crates/signer/`) - Block signing with AWS KMS or private key support +- **Database** (`crates/database/`) - SeaORM-based data persistence layer +- **Providers** (`crates/providers/`) - Abstractions for L1, beacon, and block data +- **Primitives** (`crates/primitives/`) - Shared types and data structures +- **Codec** (`crates/codec/`) - Encoding/decoding for rollup data formats + +## Development Commands + +### Build and Run +```bash +# Build main binary +cargo build --bin rollup-node + +# Run sequencer with test signer (bypasses signing requirements) +cargo run --bin rollup-node -- node --chain dev -d --sequencer.enabled --test --http --http.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev + +# Production build +cargo build --release --bin rollup-node + +# Check node help and available options +cargo run --bin rollup-node -- node --help +``` + +### Testing Strategy +```bash +# Run all tests (excluding docker tests) +make test + +# Test specific crate +cargo test -p + +# Run E2E tests only +cargo test -p rollup-node --test e2e + +# Run specific E2E test +cargo test -p rollup-node --test e2e test_custom_genesis_block_production_and_propagation + +# Run docker-based integration tests (excluded by default) +cargo test --package tests --test block_propagation_multi_clients + +# Run with debug logs +RUST_LOG=debug cargo test +``` + +### Linting and Code Quality +```bash +# Complete lint suite +make lint + +# Individual components +cargo +nightly fmt # Format code +cargo +nightly clippy --workspace # Clippy lints +dprint fmt # Format TOML files +codespell --skip "*.json" # Spell check +zepter run check # Feature uniformity check +cargo +nightly udeps # Unused dependencies check +``` + +### Pre-commit Workflow +```bash +# Complete pre-commit checks +make pr # Runs lint + test + docs +``` + +## Critical Implementation Details + +### Database Configuration +- **Default**: SQLite with path `{datadir}/scroll.db?mode=rwc` +- **Schema**: SeaORM migrations in `crates/database/migration/` +- **Key Tables**: batch_commit, block_data, l1_message, l2_block, metadata + +### Sequencer Configuration +- **Signer Required**: Unless `--test` flag bypasses requirement + +## Testing Patterns & Utilities + +### E2E Test Setup +```rust +use rollup_node::test_utils::{ + setup_engine, + default_test_scroll_rollup_node_config, + default_sequencer_test_scroll_rollup_node_config +}; + +// Standard E2E test pattern +let (nodes, _tasks, _wallet) = setup_engine( + node_config, + node_count, + chain_spec, + enable_discovery, + enable_sequencer +).await?; +``` + +### Test Configuration Patterns +```rust +// Test with memory database +DatabaseArgs { path: Some(PathBuf::from("sqlite::memory:")) } + +// Test with mock blob source +BeaconProviderArgs { blob_source: BlobSource::Mock, ..Default::default() } + +// Bypass signer in tests +test: true // in ScrollRollupNodeConfig +``` + +### Mock Providers +- **MockL1Provider**: For testing L1 interactions +- **MockL2Provider**: For testing L2 block data +- **DatabaseL1MessageProvider**: For L1 message testing + +## Critical Gotchas & Non-Obvious Behavior + +### 1. L1 Message Processing +- **Sequential Processing**: L1 messages must be processed in queue order +- **Cursor Management**: Provider maintains cursor state for message iteration +- **Gas Limit Enforcement**: Messages rejected if they exceed block gas limit + +### 2. Consensus Modes +- **Noop**: No consensus validation (test mode) +- **SystemContract**: Validates against authorized signer from L1 contract + - **PoA**: with `consensus.authorized-signer` the signer is not read from L1 and stays constant + +## Debugging & Troubleshooting + +### Important Log Targets +```bash +RUST_LOG=scroll::watcher=debug # L1 watcher events +RUST_LOG=rollup_node::sequencer=debug # Sequencer operations +RUST_LOG=scroll::engine=debug # Engine driver events +RUST_LOG=scroll::derivation=debug # Derivation pipeline +RUST_LOG=scroll::network=debug # P2P networking +``` + +### Channel Communication Debugging +- Components communicate via `tokio::sync::mpsc` channels +- Use `tracing::trace!` to debug message flow +- Channel capacity limits defined per component + +## Code Navigation Guide + +### Key Entry Points +- **Main Binary**: `crates/node/src/main.rs` +- **Node Implementation**: `crates/node/src/node.rs` +- **Configuration**: `crates/node/src/args.rs` +- **Add-ons**: `crates/node/src/add_ons/` + +### Finding Specific Logic +- **Batch Processing**: `crates/derivation-pipeline/src/lib.rs:252` (`derive` function) +- **L1 Message Handling**: `crates/watcher/src/lib.rs:378` (`handle_l1_messages`) +- **Block Building**: `crates/sequencer/src/lib.rs:213` (`build_payload_attributes`) +- **Engine API**: `crates/engine/src/api.rs` +- **Network Protocol**: `crates/scroll-wire/src/` + +## Dependencies & Framework Integration + +### Core Dependencies +- **Reth Framework**: scroll-tech fork with Scroll-specific modifications +- **Alloy**: Ethereum primitives and RPC types +- **SeaORM**: Database operations with automated migrations +- **Tokio**: Async runtime with extensive use of channels and streams +- **scroll-alloy**: Custom consensus and RPC types for Scroll + +### Contributing Guidelines +- Follow existing error handling patterns using `thiserror` and `eyre` +- Use `tracing` for structured logging with appropriate targets +- Implement comprehensive tests with appropriate mock objects +- Document public APIs with examples where possible From d6a3109932c8e1bd5d072a7c0357bdd8912c86ae Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 11 Sep 2025 13:57:06 +0800 Subject: [PATCH 02/25] fix: use correct function to recover signer --- crates/node/src/builder/network.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index af86bad8..ef706bc5 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -289,8 +289,7 @@ fn recover_and_verify_signer( authorized_signer: Option
, ) -> Result { // Recover signer from signature - let signer = signature - .recover_address_from_prehash(&hash) + let signer = reth_primitives_traits::crypto::secp256k1::recover_signer(signature, hash) .map_err(|_| HeaderTransformError::RecoveryFailed)?; // Verify signer is authorized From 30d30792252a6fa666ce9a0910d78214050c0602 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 11 Sep 2025 16:47:30 +0800 Subject: [PATCH 03/25] enable gossip to all on l2geth nodes and make gaslimit the same as RN sequencer --- tests/launch_l2geth_follower.bash | 1 + tests/launch_l2geth_sequencer.bash | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/launch_l2geth_follower.bash b/tests/launch_l2geth_follower.bash index 0e4b06d3..41814b7a 100644 --- a/tests/launch_l2geth_follower.bash +++ b/tests/launch_l2geth_follower.bash @@ -16,4 +16,5 @@ exec geth --datadir=/l2geth \ --pprof --pprof.addr 0.0.0.0 --pprof.port 6060 --metrics --verbosity 5 --log.debug \ --l1.endpoint "http://l1-node:8545" --l1.confirmations finalized --l1.sync.startblock 0 \ --gcmode archive --cache.noprefetch --cache.snapshot=0 --snapshot=false \ + --gossip.enablebroadcasttoall \ --nat extip:0.0.0.0 diff --git a/tests/launch_l2geth_sequencer.bash b/tests/launch_l2geth_sequencer.bash index bb6572da..49a1f4dc 100644 --- a/tests/launch_l2geth_sequencer.bash +++ b/tests/launch_l2geth_sequencer.bash @@ -22,5 +22,6 @@ exec geth --datadir=/l2geth \ --l1.endpoint "http://l1-node:8545" --l1.confirmations finalized --l1.sync.startblock 0 \ --gcmode archive --cache.noprefetch --cache.snapshot=0 --snapshot=false \ --nat extip:0.0.0.0 \ + --gossip.enablebroadcasttoall \ --unlock "0xb674ff99cca262c99d3eab5b32796a99188543da" --password "/l2geth/keystore/password.txt" --allow-insecure-unlock \ - --miner.allowempty + --miner.allowempty --miner.gaslimit 30000000 From eef09ed758ddbc1ad01c0f0371daeebef8a3b8b0 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 11 Sep 2025 16:51:02 +0800 Subject: [PATCH 04/25] do not statically connect peers, disable discovery and make block time 500ms for both sequencers --- tests/l2geth-genesis-e2e.json | 1 + tests/launch_l2geth_follower.bash | 9 ++------- tests/launch_l2geth_sequencer.bash | 4 ++-- tests/launch_rollup_node_follower.bash | 7 ++++--- tests/launch_rollup_node_sequencer.bash | 11 ++++++----- 5 files changed, 15 insertions(+), 17 deletions(-) diff --git a/tests/l2geth-genesis-e2e.json b/tests/l2geth-genesis-e2e.json index a63be7b0..fcf67d33 100644 --- a/tests/l2geth-genesis-e2e.json +++ b/tests/l2geth-genesis-e2e.json @@ -23,6 +23,7 @@ "feynmanTime": 0, "systemContract": { "period": 1, + "blocks_per_second": 2, "system_contract_address": "0x55B150d210356452e4E79cCb6B778b4e1B167091", "system_contract_slot": "0x0000000000000000000000000000000000000000000000000000000000000067" }, diff --git a/tests/launch_l2geth_follower.bash b/tests/launch_l2geth_follower.bash index 41814b7a..51ff1de4 100644 --- a/tests/launch_l2geth_follower.bash +++ b/tests/launch_l2geth_follower.bash @@ -3,16 +3,11 @@ set -e geth init --datadir=/l2geth /l2geth-genesis-e2e.json -# Create config.toml with static nodes instead of bootnodes -echo '[Node.P2P]' > /l2geth/config.toml -echo 'StaticNodes = ["enode://8fc4f6dfd0a2ebf56560d0b0ef5e60ad7bcb01e13f929eae53a4c77086d9c1e74eb8b8c8945035d25c6287afdd871f0d41b3fd7e189697decd0f13538d1ac620@l2geth-sequencer:30303","enode://e7f7e271f62bd2b697add14e6987419758c97e83b0478bd948f5f2d271495728e7edef5bd78ad65258ac910f28e86928ead0c42ee51f2a0168d8ca23ba939766@rollup-node-sequencer:30303"]' >> /l2geth/config.toml - echo "Starting l2geth as follower..." exec geth --datadir=/l2geth \ - --config /l2geth/config.toml \ --port 30303 --syncmode full --networkid 938471 --nodiscover \ - --http --http.addr 0.0.0.0 --http.port 8545 --http.vhosts "*" --http.corsdomain "*" --http.api "eth,scroll,net,web3,debug" \ - --ws --ws.addr 0.0.0.0 --ws.port 8546 --ws.api "eth,scroll,net,web3,debug" \ + --http --http.addr 0.0.0.0 --http.port 8545 --http.vhosts "*" --http.corsdomain "*" --http.api "admin,eth,scroll,net,web3,debug" \ + --ws --ws.addr 0.0.0.0 --ws.port 8546 --ws.api "admin,eth,scroll,net,web3,debug" \ --pprof --pprof.addr 0.0.0.0 --pprof.port 6060 --metrics --verbosity 5 --log.debug \ --l1.endpoint "http://l1-node:8545" --l1.confirmations finalized --l1.sync.startblock 0 \ --gcmode archive --cache.noprefetch --cache.snapshot=0 --snapshot=false \ diff --git a/tests/launch_l2geth_sequencer.bash b/tests/launch_l2geth_sequencer.bash index 49a1f4dc..6cd7207c 100644 --- a/tests/launch_l2geth_sequencer.bash +++ b/tests/launch_l2geth_sequencer.bash @@ -16,8 +16,8 @@ echo "test" > /l2geth/keystore/password.txt echo "Starting l2geth as sequencer..." exec geth --datadir=/l2geth \ --port 30303 --syncmode full --networkid 938471 --nodiscover \ - --http --http.addr 0.0.0.0 --http.port 8545 --http.vhosts "*" --http.corsdomain "*" --http.api "eth,scroll,net,web3,debug,miner" \ - --ws --ws.addr 0.0.0.0 --ws.port 8546 --ws.api "eth,scroll,net,web3,debug,miner" \ + --http --http.addr 0.0.0.0 --http.port 8545 --http.vhosts "*" --http.corsdomain "*" --http.api "admin,eth,scroll,net,web3,debug,miner" \ + --ws --ws.addr 0.0.0.0 --ws.port 8546 --ws.api "admin,eth,scroll,net,web3,debug,miner" \ --pprof --pprof.addr 0.0.0.0 --pprof.port 6060 --metrics --verbosity 5 --log.debug \ --l1.endpoint "http://l1-node:8545" --l1.confirmations finalized --l1.sync.startblock 0 \ --gcmode archive --cache.noprefetch --cache.snapshot=0 --snapshot=false \ diff --git a/tests/launch_rollup_node_follower.bash b/tests/launch_rollup_node_follower.bash index eb3bca81..0fd15405 100644 --- a/tests/launch_rollup_node_follower.bash +++ b/tests/launch_rollup_node_follower.bash @@ -1,15 +1,16 @@ #!/usr/bin/env bash set -e -export RUST_LOG=sqlx=off,scroll=trace,reth=trace,rollup=trace,info +export RUST_LOG=sqlx=off,scroll=trace,reth=trace,rollup=trace,trace -exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --metrics=0.0.0.0:6060 --network.scroll-wire --network.bridge \ +exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --metrics=0.0.0.0:6060 \ + --network.scroll-wire --network.bridge --disable-discovery \ + --network.valid_signer "0xb674ff99cca262c99d3eab5b32796a99188543da" \ --http --http.addr=0.0.0.0 --http.port=8545 --http.corsdomain "*" --http.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ --ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ --log.stdout.format log-fmt -vvv \ --txpool.pending-max-count=1000 \ --builder.gaslimit=30000000 \ --rpc.max-connections=5000 \ - --trusted-peers enode://8fc4f6dfd0a2ebf56560d0b0ef5e60ad7bcb01e13f929eae53a4c77086d9c1e74eb8b8c8945035d25c6287afdd871f0d41b3fd7e189697decd0f13538d1ac620@l2geth-sequencer:30303,enode://e7f7e271f62bd2b697add14e6987419758c97e83b0478bd948f5f2d271495728e7edef5bd78ad65258ac910f28e86928ead0c42ee51f2a0168d8ca23ba939766@rollup-node-sequencer:30303 \ --engine.sync-at-startup false \ --l1.url http://l1-node:8545 diff --git a/tests/launch_rollup_node_sequencer.bash b/tests/launch_rollup_node_sequencer.bash index 5e9d021b..d6d09280 100644 --- a/tests/launch_rollup_node_sequencer.bash +++ b/tests/launch_rollup_node_sequencer.bash @@ -8,22 +8,23 @@ echo -n "0xd510c4b7c61a604f800c4f06803b1ee14b9a63de345e53426ae50425f2dbb058" > / echo -n "01c0d9156e199d89814d4b18e9eb64e25de3927f3f6d27b778177f3ff6b610ad" > /l2reth/nodekey # -> enode://e7f7e271f62bd2b697add14e6987419758c97e83b0478bd948f5f2d271495728e7edef5bd78ad65258ac910f28e86928ead0c42ee51f2a0168d8ca23ba939766@rollup-node-sequencer:30303 -export RUST_LOG=sqlx=off,scroll=trace,reth=trace,rollup=trace,info +export RUST_LOG=sqlx=off,scroll=trace,reth=trace,rollup=trace,trace -exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --metrics=0.0.0.0:6060 --network.scroll-wire --network.bridge \ +exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --metrics=0.0.0.0:6060 \ + --network.scroll-wire --network.bridge --disable-discovery \ + --network.valid_signer "0xb674ff99cca262c99d3eab5b32796a99188543da" \ --http --http.addr=0.0.0.0 --http.port=8545 --http.corsdomain "*" --http.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ --ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ --log.stdout.format log-fmt -vvv \ --sequencer.enabled \ --sequencer.allow-empty-blocks \ --signer.key-file /l2reth/sequencer-key \ - --sequencer.block-time 1000 \ - --sequencer.payload-building-duration 800 \ + --sequencer.block-time 500 \ + --sequencer.payload-building-duration 300 \ --txpool.pending-max-count=1000 \ --builder.gaslimit=30000000 \ --rpc.max-connections=5000 \ --p2p-secret-key /l2reth/nodekey \ - --trusted-peers enode://8fc4f6dfd0a2ebf56560d0b0ef5e60ad7bcb01e13f929eae53a4c77086d9c1e74eb8b8c8945035d25c6287afdd871f0d41b3fd7e189697decd0f13538d1ac620@l2geth-sequencer:30303 \ --engine.sync-at-startup false \ --l1.url http://l1-node:8545 From feaee36d397f04532631b906560fbfaa08f2add4 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 11 Sep 2025 16:52:17 +0800 Subject: [PATCH 05/25] dump logs before cleanup and provide convenience functions for nodes to connect to each other via RPC --- tests/src/docker_compose.rs | 160 +++++++++++++++++++++++++++++++++--- tests/src/lib.rs | 3 +- tests/src/utils.rs | 75 +++++++++++++++-- 3 files changed, 219 insertions(+), 19 deletions(-) diff --git a/tests/src/docker_compose.rs b/tests/src/docker_compose.rs index f5775b3b..4f27e6d6 100644 --- a/tests/src/docker_compose.rs +++ b/tests/src/docker_compose.rs @@ -1,10 +1,7 @@ use alloy_provider::{Provider, ProviderBuilder}; use eyre::Result; use scroll_alloy_network::Scroll; -use std::{ - process::Command, - time::{Duration, SystemTime, UNIX_EPOCH}, -}; +use std::{fs, process::Command, time::Duration}; /// A wrapper that combines a provider with its human-readable name for testing pub struct NamedProvider { @@ -29,6 +26,9 @@ const L2GETH_SEQUENCER_RPC_URL: &str = "http://localhost:8547"; const L2GETH_FOLLOWER_RPC_URL: &str = "http://localhost:8548"; +const RN_SEQUENCER_ENODE: &str= "enode://e7f7e271f62bd2b697add14e6987419758c97e83b0478bd948f5f2d271495728e7edef5bd78ad65258ac910f28e86928ead0c42ee51f2a0168d8ca23ba939766@{IP}:30303"; +const L2GETH_SEQEUNCER_ENODE: &str = "enode://8fc4f6dfd0a2ebf56560d0b0ef5e60ad7bcb01e13f929eae53a4c77086d9c1e74eb8b8c8945035d25c6287afdd871f0d41b3fd7e189697decd0f13538d1ac620@{IP}:30303"; + pub struct DockerComposeEnv { project_name: String, compose_file: String, @@ -39,19 +39,16 @@ impl DockerComposeEnv { /// Create a new DockerComposeEnv and wait for all services to be ready pub async fn new(test_name: &str) -> Result { - let start = SystemTime::now(); - let since_the_epoch = start.duration_since(UNIX_EPOCH).expect("Time went backwards"); - let timestamp = since_the_epoch.as_secs(); - let project_name = format!("test-{test_name}-{timestamp}"); - let compose_file = "docker-compose.test.yml".to_string(); + let project_name = format!("test-{test_name}"); + let compose_file = "docker-compose.test.yml"; tracing::info!("๐Ÿš€ Starting test environment: {project_name}"); // Pre-cleanup existing containers to avoid conflicts - Self::cleanup(&compose_file, &project_name); + Self::cleanup(&compose_file, &project_name, false); // Start the environment - let env = Self::start_environment(&compose_file, &project_name)?; + let env = Self::start_environment(compose_file, &project_name)?; // Wait for all services to be ready tracing::info!("โณ Waiting for services to be ready..."); @@ -107,9 +104,14 @@ impl DockerComposeEnv { } /// Cleanup the environment - fn cleanup(compose_file: &str, project_name: &str) { + fn cleanup(compose_file: &str, project_name: &str, dump_logs: bool) { tracing::info!("๐Ÿงน Cleaning up environment: {project_name}"); + if dump_logs { + // Dump logs for all containers before cleanup + Self::dump_container_logs_to_files(compose_file, project_name); + } + let _result = Command::new("docker") .args([ "compose", @@ -185,6 +187,8 @@ impl DockerComposeEnv { .await { Ok(provider) => match provider.get_chain_id().await { + // TODO: assert chain ID and genesis hash matches expected values (hardcoded + // constants) Ok(chain_id) => { tracing::info!("โœ… L2 node ready - Chain ID: {chain_id}"); return Ok(()); @@ -208,6 +212,46 @@ impl DockerComposeEnv { ); } + /// Get the IP address of a container within the project network + fn get_container_ip(&self, container_name: &str) -> Result { + let output = Command::new("docker") + .args([ + "inspect", + "-f", + "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}", + container_name, + ]) + .output() + .map_err(|e| eyre::eyre!("Failed to run docker inspect: {}", e))?; + + if !output.status.success() { + return Err(eyre::eyre!( + "Failed to get container IP for {}: {}", + container_name, + String::from_utf8_lossy(&output.stderr) + )); + } + + let ip = String::from_utf8_lossy(&output.stdout).trim().to_string(); + if ip.is_empty() { + return Err(eyre::eyre!("No IP address found for container {}", container_name)); + } + + Ok(ip) + } + + /// Get the rollup node sequencer enode URL with resolved IP address + pub fn rn_sequencer_enode(&self) -> Result { + let ip = self.get_container_ip("rollup-node-sequencer")?; + Ok(RN_SEQUENCER_ENODE.replace("{IP}", &ip)) + } + + /// Get the l2geth sequencer enode URL with resolved IP address + pub fn l2geth_sequencer_enode(&self) -> Result { + let ip = self.get_container_ip("l2geth-sequencer")?; + Ok(L2GETH_SEQEUNCER_ENODE.replace("{IP}", &ip)) + } + /// Show logs for all containers fn show_all_container_logs(compose_file: &str, project_name: &str) { tracing::info!("๐Ÿ” Getting all container logs..."); @@ -227,10 +271,100 @@ impl DockerComposeEnv { } } } + + /// Dump logs for all containers to individual files + fn dump_container_logs_to_files(compose_file: &str, project_name: &str) { + tracing::debug!("๐Ÿ“ Dumping container logs to files for project: {project_name}"); + + // Create logs directory + let logs_dir = format!("target/test-logs/{project_name}"); + if let Err(e) = fs::create_dir_all(&logs_dir) { + tracing::error!("Failed to create logs directory {logs_dir}: {e}"); + return; + } + + // Get list of all containers for this project + let containers_output = Command::new("docker") + .args([ + "compose", + "-f", + compose_file, + "-p", + project_name, + "ps", + "--format", + "{{.Name}}", + ]) + .output(); + + let container_names = match containers_output { + Ok(output) => { + if output.status.success() { + String::from_utf8_lossy(&output.stdout) + .lines() + .map(|s| s.trim().to_string()) + .filter(|s| !s.is_empty()) + .collect::>() + } else { + tracing::error!( + "Failed to get container list: {}", + String::from_utf8_lossy(&output.stderr) + ); + return; + } + } + Err(e) => { + tracing::error!("Failed to run docker compose ps: {e}"); + return; + } + }; + + // Dump logs for each container + for container_name in container_names { + let log_file_path = format!("{logs_dir}/{container_name}.log"); + + tracing::debug!("๐Ÿ“‹ Dumping logs for container '{container_name}' to {log_file_path}"); + + let logs_output = Command::new("docker").args(["logs", &container_name]).output(); + + match logs_output { + Ok(logs) => { + let mut content = String::new(); + + // Combine stdout and stderr + let stdout = String::from_utf8_lossy(&logs.stdout); + let stderr = String::from_utf8_lossy(&logs.stderr); + + if !stdout.trim().is_empty() { + content.push_str("=== STDOUT ===\n"); + content.push_str(&stdout); + content.push('\n'); + } + + if !stderr.trim().is_empty() { + content.push_str("=== STDERR ===\n"); + content.push_str(&stderr); + content.push('\n'); + } + + if let Err(e) = fs::write(&log_file_path, content) { + tracing::error!("Failed to write logs to {log_file_path}: {e}"); + } else { + tracing::debug!("โœ… Saved logs for '{container_name}' to {log_file_path}"); + } + } + Err(e) => { + tracing::error!("Failed to get logs for container '{container_name}': {e}"); + } + } + } + + tracing::info!("๐Ÿ“ All container logs dumped to: {logs_dir}"); + } } impl Drop for DockerComposeEnv { fn drop(&mut self) { - Self::cleanup(&self.compose_file, &self.project_name); + Self::cleanup(&self.compose_file, &self.project_name, true); } } diff --git a/tests/src/lib.rs b/tests/src/lib.rs index 70beba2f..8c0e8e8c 100644 --- a/tests/src/lib.rs +++ b/tests/src/lib.rs @@ -1,3 +1,4 @@ pub mod docker_compose; pub mod utils; -pub use docker_compose::{DockerComposeEnv, NamedProvider}; +pub use docker_compose::*; +pub use utils::*; diff --git a/tests/src/utils.rs b/tests/src/utils.rs index 5e2a5b10..e57f9850 100644 --- a/tests/src/utils.rs +++ b/tests/src/utils.rs @@ -52,7 +52,7 @@ pub async fn miner_stop(provider: &NamedProvider) -> Result<()> { /// * `Ok(())` if all nodes reach the target block within the timeout /// * `Err` if timeout is reached or any provider call fails pub async fn wait_for_block(nodes: &[&NamedProvider], target_block: u64) -> Result<()> { - let timeout_duration = Duration::from_secs(60); + let timeout_duration = Duration::from_secs(30); let timeout_secs = timeout_duration.as_secs(); tracing::info!( @@ -62,7 +62,7 @@ pub async fn wait_for_block(nodes: &[&NamedProvider], target_block: u64) -> Resu timeout_secs ); - for i in 0..timeout_secs { + for i in 0..timeout_secs * 2 { let mut all_synced = true; let mut node_statuses = Vec::new(); @@ -84,8 +84,8 @@ pub async fn wait_for_block(nodes: &[&NamedProvider], target_block: u64) -> Resu } // Log progress every 5 seconds - if i % 5 == 0 { - tracing::info!("Progress check ({}s elapsed):", i); + if i % 10 == 0 { + tracing::info!("Progress check ({}s elapsed):", i / 2); for (name, block) in node_statuses { tracing::info!( " - {}: block {} / {} {}", @@ -97,7 +97,7 @@ pub async fn wait_for_block(nodes: &[&NamedProvider], target_block: u64) -> Resu } } - tokio::time::sleep(Duration::from_secs(1)).await; + tokio::time::sleep(Duration::from_millis(500)).await; } eyre::bail!( @@ -158,3 +158,68 @@ pub async fn assert_blocks_match(nodes: &[&NamedProvider], block_number: u64) -> Ok(()) } + +pub async fn assert_latest_block(nodes: &[&NamedProvider], expected_block: u64) -> Result { + if nodes.is_empty() { + return Ok(0); + } + + // Verify all nodes have the expected latest block + for node in nodes { + let block_number = node.provider.get_block_number().await?; + assert_eq!( + block_number, expected_block, + "{} is at block {}, expected {}", + node.name, block_number, expected_block + ); + } + + assert_blocks_match(nodes, expected_block).await?; + + tracing::info!( + "โœ… All {} nodes are at the expected latest block and hashes match", + nodes.len() + ); + + Ok(expected_block) +} + +/// Add a peer to the node's peer set via admin API +pub async fn admin_add_peer(provider: &NamedProvider, enode: &str) -> Result { + provider + .provider + .client() + .request("admin_addPeer", (enode,)) + .await + .map_err(|e| eyre::eyre!("Failed to add peer {}: {}", enode, e)) +} + +/// Remove a peer from the node's peer set via admin API +pub async fn admin_remove_peer(provider: &NamedProvider, enode: &str) -> Result { + provider + .provider + .client() + .request("admin_removePeer", (enode,)) + .await + .map_err(|e| eyre::eyre!("Failed to remove peer {}: {}", enode, e)) +} + +/// Add a trusted peer to the node's trusted peer set via admin API +pub async fn admin_add_trusted_peer(provider: &NamedProvider, enode: &str) -> Result { + provider + .provider + .client() + .request("admin_addTrustedPeer", (enode,)) + .await + .map_err(|e| eyre::eyre!("Failed to add trusted peer {}: {}", enode, e)) +} + +/// Remove a trusted peer from the node's trusted peer set via admin API +pub async fn admin_remove_trusted_peer(provider: &NamedProvider, enode: &str) -> Result { + provider + .provider + .client() + .request("admin_removeTrustedPeer", (enode,)) + .await + .map_err(|e| eyre::eyre!("Failed to remove trusted peer {}: {}", enode, e)) +} From 8bbc5e283b9a656ea210010d8c3c3302eaebbd37 Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 11 Sep 2025 17:12:58 +0800 Subject: [PATCH 06/25] fix: use sig_encode_hash to calculate block hash --- crates/node/src/builder/network.rs | 25 +++++---- crates/node/tests/e2e.rs | 10 ++-- crates/primitives/src/signature.rs | 84 ++++++++++++++++++------------ crates/sequencer/tests/e2e.rs | 4 +- crates/signer/src/future.rs | 2 +- crates/signer/src/lib.rs | 2 +- 6 files changed, 74 insertions(+), 53 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index ef706bc5..8c6a3059 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -14,6 +14,7 @@ use reth_primitives_traits::BlockHeader; use reth_scroll_chainspec::ScrollChainSpec; use reth_scroll_primitives::ScrollPrimitives; use reth_transaction_pool::{PoolTransaction, TransactionPool}; +use rollup_node_primitives::sig_encode_hash; use rollup_node_signer::SignatureAsBytes; use scroll_alloy_hardforks::ScrollHardforks; use scroll_db::{Database, DatabaseOperations}; @@ -187,8 +188,9 @@ impl ScrollHeaderTransform Result<(), HeaderTransformError> { let signature_bytes = std::mem::take(header.extra_data_mut()); let signature = parse_65b_signature(&signature_bytes)?; + let hash = sig_encode_hash(header); // Recover and verify signer - recover_and_verify_signer(&signature, header.hash_slow(), authorized_signer)?; + recover_and_verify_signer(&signature, hash, authorized_signer)?; // Store signature in database - persist_signature(self.db.clone(), header.hash_slow(), signature); + persist_signature(self.db.clone(), hash, signature); Ok(()) } @@ -247,15 +250,16 @@ impl eyre::Result<()> { assert_eq!(block0.hash_slow(), block_with_peer.block.hash_slow()); // Verify the signature is from the authorized signer - let hash = sig_encode_hash(&block_with_peer.block); + let hash = sig_encode_hash(&block_with_peer.block.header); let recovered = block_with_peer.signature.recover_address_from_prehash(&hash).unwrap(); assert_eq!(recovered, authorized_address, "Block should be signed by authorized signer"); } else { @@ -408,7 +408,7 @@ async fn can_penalize_peer_for_invalid_signature() -> eyre::Result<()> { block1.header.timestamp += 1; // Sign the block with the unauthorized signer - let block_hash = sig_encode_hash(&block1); + let block_hash = sig_encode_hash(&block1.header); let unauthorized_signature = unauthorized_signer.sign_hash(&block_hash).await.unwrap(); // Send the block with invalid signature from node0 to node1 @@ -420,7 +420,7 @@ async fn can_penalize_peer_for_invalid_signature() -> eyre::Result<()> { assert_eq!(block1.hash_slow(), block_with_peer.block.hash_slow()); // Verify the signature is from the unauthorized signer - let hash = sig_encode_hash(&block_with_peer.block); + let hash = sig_encode_hash(&block_with_peer.block.header); let recovered = block_with_peer.signature.recover_address_from_prehash(&hash).unwrap(); return recovered == unauthorized_signer.address(); } @@ -1712,7 +1712,7 @@ async fn signer_rotation() -> eyre::Result<()> { |event| { if let RollupManagerEvent::NewBlockReceived(block) = event { let signature = block.signature; - let hash = sig_encode_hash(&block.block); + let hash = sig_encode_hash(&block.block.header); // Verify that the block is signed by the first sequencer. let recovered_address = signature.recover_address_from_prehash(&hash).unwrap(); recovered_address == signer_1_address @@ -1760,7 +1760,7 @@ async fn signer_rotation() -> eyre::Result<()> { |event| { if let RollupManagerEvent::NewBlockReceived(block) = event { let signature = block.signature; - let hash = sig_encode_hash(&block.block); + let hash = sig_encode_hash(&block.block.header); let recovered_address = signature.recover_address_from_prehash(&hash).unwrap(); // Verify that the block is signed by the second sequencer. recovered_address == signer_2_address diff --git a/crates/primitives/src/signature.rs b/crates/primitives/src/signature.rs index 855a6fe6..411847c9 100644 --- a/crates/primitives/src/signature.rs +++ b/crates/primitives/src/signature.rs @@ -1,59 +1,75 @@ -use alloy_consensus::Header; use alloy_primitives::{ keccak256, private::{alloy_rlp, alloy_rlp::Encodable}, B256, U256, }; +use reth_primitives_traits::BlockHeader; use std::vec::Vec; /// Encode and hash the header for signature. The function is similar to `Header::encode` but skips /// the `extra_data` field. -pub fn sig_encode_hash(header: &Header) -> B256 { +pub fn sig_encode_hash(header: &H) -> B256 { let out = &mut Vec::new(); let list_header = alloy_rlp::Header { list: true, payload_length: sig_header_payload_length(header) }; list_header.encode(out); - header.parent_hash.encode(out); - header.ommers_hash.encode(out); - header.beneficiary.encode(out); - header.state_root.encode(out); - header.transactions_root.encode(out); - header.receipts_root.encode(out); - header.logs_bloom.encode(out); - header.difficulty.encode(out); - U256::from(header.number).encode(out); - U256::from(header.gas_limit).encode(out); - U256::from(header.gas_used).encode(out); - header.timestamp.encode(out); - header.mix_hash.encode(out); - header.nonce.encode(out); + header.parent_hash().encode(out); + header.ommers_hash().encode(out); + header.beneficiary().encode(out); + header.state_root().encode(out); + header.transactions_root().encode(out); + header.receipts_root().encode(out); + header.logs_bloom().encode(out); + header.difficulty().encode(out); + U256::from(header.number()).encode(out); + U256::from(header.gas_limit()).encode(out); + U256::from(header.gas_used()).encode(out); + header.timestamp().encode(out); + if let Some(mix_hash) = header.mix_hash() { + mix_hash.encode(out); + } else { + alloy_primitives::B256::ZERO.encode(out); + } + if let Some(nonce) = header.nonce() { + nonce.encode(out); + } else { + 0u64.encode(out); + } // Encode all the fork specific fields - if let Some(ref base_fee) = header.base_fee_per_gas { - U256::from(*base_fee).encode(out); + if let Some(base_fee) = header.base_fee_per_gas() { + U256::from(base_fee).encode(out); } keccak256(&out) } /// Returns the header payload length for signature. -fn sig_header_payload_length(header: &Header) -> usize { +fn sig_header_payload_length(header: &H) -> usize { let mut length = 0; - length += header.parent_hash.length(); - length += header.ommers_hash.length(); - length += header.beneficiary.length(); - length += header.state_root.length(); - length += header.transactions_root.length(); - length += header.receipts_root.length(); - length += header.logs_bloom.length(); - length += header.difficulty.length(); - length += U256::from(header.number).length(); - length += U256::from(header.gas_limit).length(); - length += U256::from(header.gas_used).length(); - length += header.timestamp.length(); - length += header.mix_hash.length(); - length += header.nonce.length(); + length += header.parent_hash().length(); + length += header.ommers_hash().length(); + length += header.beneficiary().length(); + length += header.state_root().length(); + length += header.transactions_root().length(); + length += header.receipts_root().length(); + length += header.logs_bloom().length(); + length += header.difficulty().length(); + length += U256::from(header.number()).length(); + length += U256::from(header.gas_limit()).length(); + length += U256::from(header.gas_used()).length(); + length += header.timestamp().length(); + if let Some(mix_hash) = header.mix_hash() { + length += mix_hash.length(); + } else { + length += alloy_primitives::B256::ZERO.length(); + } + if let Some(nonce) = header.nonce() { + length += nonce.length(); + } else { + length += 0u64.length(); + } - if let Some(base_fee) = header.base_fee_per_gas { + if let Some(base_fee) = header.base_fee_per_gas() { // Adding base fee length if it exists. length += U256::from(base_fee).length(); } diff --git a/crates/sequencer/tests/e2e.rs b/crates/sequencer/tests/e2e.rs index 87cbbe78..92887f58 100644 --- a/crates/sequencer/tests/e2e.rs +++ b/crates/sequencer/tests/e2e.rs @@ -558,7 +558,7 @@ async fn can_sequence_blocks_with_private_key_file() -> eyre::Result<()> { signature, })) = sequencer_events.next().await { - let hash = sig_encode_hash(&signed_block); + let hash = sig_encode_hash(&signed_block.header); let recovered_address = signature.recover_address_from_prehash(&hash)?; assert_eq!(recovered_address, expected_address); } else { @@ -652,7 +652,7 @@ async fn can_sequence_blocks_with_hex_key_file_without_prefix() -> eyre::Result< signature, }) = event { - let hash = sig_encode_hash(&signed_block); + let hash = sig_encode_hash(&signed_block.header); let recovered_address = signature.recover_address_from_prehash(&hash)?; assert_eq!(recovered_address, expected_address); break; diff --git a/crates/signer/src/future.rs b/crates/signer/src/future.rs index 9858b7a7..98b5419f 100644 --- a/crates/signer/src/future.rs +++ b/crates/signer/src/future.rs @@ -15,7 +15,7 @@ pub fn sign_block( Box::pin(async move { // TODO: Are we happy to sign the hash directly or do we want to use EIP-191 // (`signer.sign_message`)? - let hash = sig_encode_hash(&block); + let hash = sig_encode_hash(&block.header); let signature = signer.sign_hash(&hash).await?; Ok(SignerEvent::SignedBlock { block, signature }) }) diff --git a/crates/signer/src/lib.rs b/crates/signer/src/lib.rs index 7682a5bd..9c1f8056 100644 --- a/crates/signer/src/lib.rs +++ b/crates/signer/src/lib.rs @@ -152,7 +152,7 @@ mod tests { let (event_block, signature) = match event { SignerEvent::SignedBlock { block, signature } => (block, signature), }; - let hash = sig_encode_hash(&event_block); + let hash = sig_encode_hash(&event_block.header); let recovered_address = signature.recover_address_from_prehash(&hash).unwrap(); assert_eq!(event_block, block); From 2df374547cfe3635a652da79d58f5a9c15510a2d Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 11 Sep 2025 17:17:27 +0800 Subject: [PATCH 07/25] Revert "fix: use sig_encode_hash to calculate block hash" This reverts commit 8bbc5e283b9a656ea210010d8c3c3302eaebbd37. --- crates/node/src/builder/network.rs | 25 ++++----- crates/node/tests/e2e.rs | 10 ++-- crates/primitives/src/signature.rs | 84 ++++++++++++------------------ crates/sequencer/tests/e2e.rs | 4 +- crates/signer/src/future.rs | 2 +- crates/signer/src/lib.rs | 2 +- 6 files changed, 53 insertions(+), 74 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index 8c6a3059..ef706bc5 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -14,7 +14,6 @@ use reth_primitives_traits::BlockHeader; use reth_scroll_chainspec::ScrollChainSpec; use reth_scroll_primitives::ScrollPrimitives; use reth_transaction_pool::{PoolTransaction, TransactionPool}; -use rollup_node_primitives::sig_encode_hash; use rollup_node_signer::SignatureAsBytes; use scroll_alloy_hardforks::ScrollHardforks; use scroll_db::{Database, DatabaseOperations}; @@ -188,9 +187,8 @@ impl ScrollHeaderTransform Result<(), HeaderTransformError> { let signature_bytes = std::mem::take(header.extra_data_mut()); let signature = parse_65b_signature(&signature_bytes)?; - let hash = sig_encode_hash(header); // Recover and verify signer - recover_and_verify_signer(&signature, hash, authorized_signer)?; + recover_and_verify_signer(&signature, header.hash_slow(), authorized_signer)?; // Store signature in database - persist_signature(self.db.clone(), hash, signature); + persist_signature(self.db.clone(), header.hash_slow(), signature); Ok(()) } @@ -250,16 +247,15 @@ impl eyre::Result<()> { assert_eq!(block0.hash_slow(), block_with_peer.block.hash_slow()); // Verify the signature is from the authorized signer - let hash = sig_encode_hash(&block_with_peer.block.header); + let hash = sig_encode_hash(&block_with_peer.block); let recovered = block_with_peer.signature.recover_address_from_prehash(&hash).unwrap(); assert_eq!(recovered, authorized_address, "Block should be signed by authorized signer"); } else { @@ -408,7 +408,7 @@ async fn can_penalize_peer_for_invalid_signature() -> eyre::Result<()> { block1.header.timestamp += 1; // Sign the block with the unauthorized signer - let block_hash = sig_encode_hash(&block1.header); + let block_hash = sig_encode_hash(&block1); let unauthorized_signature = unauthorized_signer.sign_hash(&block_hash).await.unwrap(); // Send the block with invalid signature from node0 to node1 @@ -420,7 +420,7 @@ async fn can_penalize_peer_for_invalid_signature() -> eyre::Result<()> { assert_eq!(block1.hash_slow(), block_with_peer.block.hash_slow()); // Verify the signature is from the unauthorized signer - let hash = sig_encode_hash(&block_with_peer.block.header); + let hash = sig_encode_hash(&block_with_peer.block); let recovered = block_with_peer.signature.recover_address_from_prehash(&hash).unwrap(); return recovered == unauthorized_signer.address(); } @@ -1712,7 +1712,7 @@ async fn signer_rotation() -> eyre::Result<()> { |event| { if let RollupManagerEvent::NewBlockReceived(block) = event { let signature = block.signature; - let hash = sig_encode_hash(&block.block.header); + let hash = sig_encode_hash(&block.block); // Verify that the block is signed by the first sequencer. let recovered_address = signature.recover_address_from_prehash(&hash).unwrap(); recovered_address == signer_1_address @@ -1760,7 +1760,7 @@ async fn signer_rotation() -> eyre::Result<()> { |event| { if let RollupManagerEvent::NewBlockReceived(block) = event { let signature = block.signature; - let hash = sig_encode_hash(&block.block.header); + let hash = sig_encode_hash(&block.block); let recovered_address = signature.recover_address_from_prehash(&hash).unwrap(); // Verify that the block is signed by the second sequencer. recovered_address == signer_2_address diff --git a/crates/primitives/src/signature.rs b/crates/primitives/src/signature.rs index 411847c9..855a6fe6 100644 --- a/crates/primitives/src/signature.rs +++ b/crates/primitives/src/signature.rs @@ -1,75 +1,59 @@ +use alloy_consensus::Header; use alloy_primitives::{ keccak256, private::{alloy_rlp, alloy_rlp::Encodable}, B256, U256, }; -use reth_primitives_traits::BlockHeader; use std::vec::Vec; /// Encode and hash the header for signature. The function is similar to `Header::encode` but skips /// the `extra_data` field. -pub fn sig_encode_hash(header: &H) -> B256 { +pub fn sig_encode_hash(header: &Header) -> B256 { let out = &mut Vec::new(); let list_header = alloy_rlp::Header { list: true, payload_length: sig_header_payload_length(header) }; list_header.encode(out); - header.parent_hash().encode(out); - header.ommers_hash().encode(out); - header.beneficiary().encode(out); - header.state_root().encode(out); - header.transactions_root().encode(out); - header.receipts_root().encode(out); - header.logs_bloom().encode(out); - header.difficulty().encode(out); - U256::from(header.number()).encode(out); - U256::from(header.gas_limit()).encode(out); - U256::from(header.gas_used()).encode(out); - header.timestamp().encode(out); - if let Some(mix_hash) = header.mix_hash() { - mix_hash.encode(out); - } else { - alloy_primitives::B256::ZERO.encode(out); - } - if let Some(nonce) = header.nonce() { - nonce.encode(out); - } else { - 0u64.encode(out); - } + header.parent_hash.encode(out); + header.ommers_hash.encode(out); + header.beneficiary.encode(out); + header.state_root.encode(out); + header.transactions_root.encode(out); + header.receipts_root.encode(out); + header.logs_bloom.encode(out); + header.difficulty.encode(out); + U256::from(header.number).encode(out); + U256::from(header.gas_limit).encode(out); + U256::from(header.gas_used).encode(out); + header.timestamp.encode(out); + header.mix_hash.encode(out); + header.nonce.encode(out); // Encode all the fork specific fields - if let Some(base_fee) = header.base_fee_per_gas() { - U256::from(base_fee).encode(out); + if let Some(ref base_fee) = header.base_fee_per_gas { + U256::from(*base_fee).encode(out); } keccak256(&out) } /// Returns the header payload length for signature. -fn sig_header_payload_length(header: &H) -> usize { +fn sig_header_payload_length(header: &Header) -> usize { let mut length = 0; - length += header.parent_hash().length(); - length += header.ommers_hash().length(); - length += header.beneficiary().length(); - length += header.state_root().length(); - length += header.transactions_root().length(); - length += header.receipts_root().length(); - length += header.logs_bloom().length(); - length += header.difficulty().length(); - length += U256::from(header.number()).length(); - length += U256::from(header.gas_limit()).length(); - length += U256::from(header.gas_used()).length(); - length += header.timestamp().length(); - if let Some(mix_hash) = header.mix_hash() { - length += mix_hash.length(); - } else { - length += alloy_primitives::B256::ZERO.length(); - } - if let Some(nonce) = header.nonce() { - length += nonce.length(); - } else { - length += 0u64.length(); - } + length += header.parent_hash.length(); + length += header.ommers_hash.length(); + length += header.beneficiary.length(); + length += header.state_root.length(); + length += header.transactions_root.length(); + length += header.receipts_root.length(); + length += header.logs_bloom.length(); + length += header.difficulty.length(); + length += U256::from(header.number).length(); + length += U256::from(header.gas_limit).length(); + length += U256::from(header.gas_used).length(); + length += header.timestamp.length(); + length += header.mix_hash.length(); + length += header.nonce.length(); - if let Some(base_fee) = header.base_fee_per_gas() { + if let Some(base_fee) = header.base_fee_per_gas { // Adding base fee length if it exists. length += U256::from(base_fee).length(); } diff --git a/crates/sequencer/tests/e2e.rs b/crates/sequencer/tests/e2e.rs index 92887f58..87cbbe78 100644 --- a/crates/sequencer/tests/e2e.rs +++ b/crates/sequencer/tests/e2e.rs @@ -558,7 +558,7 @@ async fn can_sequence_blocks_with_private_key_file() -> eyre::Result<()> { signature, })) = sequencer_events.next().await { - let hash = sig_encode_hash(&signed_block.header); + let hash = sig_encode_hash(&signed_block); let recovered_address = signature.recover_address_from_prehash(&hash)?; assert_eq!(recovered_address, expected_address); } else { @@ -652,7 +652,7 @@ async fn can_sequence_blocks_with_hex_key_file_without_prefix() -> eyre::Result< signature, }) = event { - let hash = sig_encode_hash(&signed_block.header); + let hash = sig_encode_hash(&signed_block); let recovered_address = signature.recover_address_from_prehash(&hash)?; assert_eq!(recovered_address, expected_address); break; diff --git a/crates/signer/src/future.rs b/crates/signer/src/future.rs index 98b5419f..9858b7a7 100644 --- a/crates/signer/src/future.rs +++ b/crates/signer/src/future.rs @@ -15,7 +15,7 @@ pub fn sign_block( Box::pin(async move { // TODO: Are we happy to sign the hash directly or do we want to use EIP-191 // (`signer.sign_message`)? - let hash = sig_encode_hash(&block.header); + let hash = sig_encode_hash(&block); let signature = signer.sign_hash(&hash).await?; Ok(SignerEvent::SignedBlock { block, signature }) }) diff --git a/crates/signer/src/lib.rs b/crates/signer/src/lib.rs index 9c1f8056..7682a5bd 100644 --- a/crates/signer/src/lib.rs +++ b/crates/signer/src/lib.rs @@ -152,7 +152,7 @@ mod tests { let (event_block, signature) = match event { SignerEvent::SignedBlock { block, signature } => (block, signature), }; - let hash = sig_encode_hash(&event_block.header); + let hash = sig_encode_hash(&event_block); let recovered_address = signature.recover_address_from_prehash(&hash).unwrap(); assert_eq!(event_block, block); From 31fbefbf85c38065587666926b2711adefd1c09a Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 11 Sep 2025 17:56:20 +0800 Subject: [PATCH 08/25] fix: use sig_encode_hash to calculate block hash --- crates/node/src/builder/network.rs | 54 ++++++++++++++++++++++++------ 1 file changed, 44 insertions(+), 10 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index ef706bc5..585f4840 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -14,7 +14,9 @@ use reth_primitives_traits::BlockHeader; use reth_scroll_chainspec::ScrollChainSpec; use reth_scroll_primitives::ScrollPrimitives; use reth_transaction_pool::{PoolTransaction, TransactionPool}; +use rollup_node_primitives::sig_encode_hash; use rollup_node_signer::SignatureAsBytes; +use reth_primitives_traits::Header; use scroll_alloy_hardforks::ScrollHardforks; use scroll_db::{Database, DatabaseOperations}; use std::{fmt, fmt::Debug, path::PathBuf, sync::Arc}; @@ -187,8 +189,9 @@ impl ScrollHeaderTransform Result<(), HeaderTransformError> { let signature_bytes = std::mem::take(header.extra_data_mut()); let signature = parse_65b_signature(&signature_bytes)?; + let hash = sig_encode_hash(&header_to_alloy(header)); // Recover and verify signer - recover_and_verify_signer(&signature, header.hash_slow(), authorized_signer)?; + recover_and_verify_signer(&signature, hash, authorized_signer)?; // Store signature in database - persist_signature(self.db.clone(), header.hash_slow(), signature); + persist_signature(self.db.clone(), hash, signature); Ok(()) } @@ -247,15 +251,17 @@ impl, hash: B256, signature: Signature) { } }); } + +/// Convert a generic `BlockHeader` to `alloy_consensus::Header` +fn header_to_alloy(header: &H) -> Header { + Header { + parent_hash: header.parent_hash(), + ommers_hash: header.ommers_hash(), + beneficiary: header.beneficiary(), + state_root: header.state_root(), + transactions_root: header.transactions_root(), + receipts_root: header.receipts_root(), + logs_bloom: header.logs_bloom(), + difficulty: header.difficulty(), + number: header.number(), + gas_limit: header.gas_limit(), + gas_used: header.gas_used(), + timestamp: header.timestamp(), + extra_data: header.extra_data().clone(), + mix_hash: header.mix_hash().unwrap_or_default(), + nonce: header.nonce().unwrap_or_default(), + base_fee_per_gas: header.base_fee_per_gas(), + withdrawals_root: header.withdrawals_root(), + blob_gas_used: header.blob_gas_used(), + excess_blob_gas: header.excess_blob_gas(), + parent_beacon_block_root: header.parent_beacon_block_root(), + requests_hash: header.requests_hash(), + } +} From 20a00d13689969f5ce3f286bd5b1d8c2d3135d35 Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 11 Sep 2025 18:32:16 +0800 Subject: [PATCH 09/25] fix: ci --- crates/node/src/builder/network.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index 585f4840..327c2d4c 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -10,13 +10,12 @@ use reth_network::{ use reth_node_api::TxTy; use reth_node_builder::{components::NetworkBuilder, BuilderContext, FullNodeTypes}; use reth_node_types::NodeTypes; -use reth_primitives_traits::BlockHeader; +use reth_primitives_traits::{BlockHeader, Header}; use reth_scroll_chainspec::ScrollChainSpec; use reth_scroll_primitives::ScrollPrimitives; use reth_transaction_pool::{PoolTransaction, TransactionPool}; use rollup_node_primitives::sig_encode_hash; use rollup_node_signer::SignatureAsBytes; -use reth_primitives_traits::Header; use scroll_alloy_hardforks::ScrollHardforks; use scroll_db::{Database, DatabaseOperations}; use std::{fmt, fmt::Debug, path::PathBuf, sync::Arc}; From a15e0dd4122e96e018a4d6b1fc276a332ac6a728 Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 11 Sep 2025 18:34:25 +0800 Subject: [PATCH 10/25] rename value --- crates/node/src/builder/network.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index 327c2d4c..c7d6d24d 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -250,17 +250,17 @@ impl Date: Fri, 12 Sep 2025 09:07:18 +0800 Subject: [PATCH 11/25] fix using wrong hash when computing signature and loading signature from database in header transform --- crates/node/src/builder/network.rs | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs index c7d6d24d..e47c3445 100644 --- a/crates/node/src/builder/network.rs +++ b/crates/node/src/builder/network.rs @@ -206,13 +206,12 @@ impl ScrollHeaderTransform Result<(), HeaderTransformError> { let signature_bytes = std::mem::take(header.extra_data_mut()); let signature = parse_65b_signature(&signature_bytes)?; - let hash = sig_encode_hash(&header_to_alloy(header)); // Recover and verify signer - recover_and_verify_signer(&signature, hash, authorized_signer)?; + recover_and_verify_signer(&signature, header, authorized_signer)?; // Store signature in database - persist_signature(self.db.clone(), hash, signature); + persist_signature(self.db.clone(), header.hash_slow(), signature); Ok(()) } @@ -250,7 +249,7 @@ impl( signature: &Signature, - hash: B256, + header: &H, authorized_signer: Option
, ) -> Result { + let hash = sig_encode_hash(&header_to_alloy(header)); + // Recover signer from signature let signer = reth_primitives_traits::crypto::secp256k1::recover_signer(signature, hash) .map_err(|_| HeaderTransformError::RecoveryFailed)?; From 31b23cbaadb5d09c523a91e9f5c84411ff5cabd8 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Fri, 12 Sep 2025 09:11:58 +0800 Subject: [PATCH 12/25] add caching to Dockerfile.test to speed up consecutive builds --- Dockerfile.test | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Dockerfile.test b/Dockerfile.test index 40fa48e2..10ce2a9f 100644 --- a/Dockerfile.test +++ b/Dockerfile.test @@ -4,7 +4,8 @@ ARG CARGO_FEATURES="" # Install basic packages RUN apt-get update && apt-get -y upgrade && apt-get install -y libclang-dev pkg-config -RUN cargo install cargo-chef --locked --version 0.1.71 +RUN cargo install cargo-chef sccache --locked +ENV RUSTC_WRAPPER=sccache SCCACHE_DIR=/sccache FROM chef AS planner WORKDIR /app @@ -23,17 +24,20 @@ RUN mkdir -p tests/src && \ echo 'name = "tests"' >> tests/Cargo.toml && \ echo 'path = "src/lib.rs"' >> tests/Cargo.toml && \ echo 'pub fn dummy() {}' > tests/src/lib.rs -RUN --mount=type=cache,target=/usr/local/cargo/registry \ - cargo chef prepare --recipe-path /recipe.json +RUN cargo chef prepare --recipe-path /recipe.json FROM chef AS builder WORKDIR /app COPY --from=planner /recipe.json recipe.json RUN --mount=type=cache,target=/usr/local/cargo/registry \ + --mount=type=cache,target=/usr/local/cargo/git \ + --mount=type=cache,target=$SCCACHE_DIR,sharing=locked \ cargo chef cook --release --recipe-path recipe.json COPY . . RUN --mount=type=cache,target=/usr/local/cargo/registry \ + --mount=type=cache,target=/usr/local/cargo/git \ + --mount=type=cache,target=$SCCACHE_DIR,sharing=locked \ cargo build ${CARGO_FEATURES:+--features $CARGO_FEATURES} --release --target-dir=/app-target # Release From d141c22f821a3a08a5754ed2d9c9e78c13e87022 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Fri, 12 Sep 2025 12:42:52 +0800 Subject: [PATCH 13/25] add test_heterogeneous_client_sync_and_sequencer_handoff --- .../tests/block_propagation_multi_clients.rs | 30 --- ...neous_client_sync_and_sequencer_handoff.rs | 178 ++++++++++++++++++ 2 files changed, 178 insertions(+), 30 deletions(-) delete mode 100644 tests/tests/block_propagation_multi_clients.rs create mode 100644 tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs diff --git a/tests/tests/block_propagation_multi_clients.rs b/tests/tests/block_propagation_multi_clients.rs deleted file mode 100644 index c6f41f60..00000000 --- a/tests/tests/block_propagation_multi_clients.rs +++ /dev/null @@ -1,30 +0,0 @@ -//! Tests for block propagation to both geth and reth follower nodes. - -use eyre::Result; -use tests::*; - -#[tokio::test] -async fn test_docker_block_propagation_to_both_clients() -> Result<()> { - reth_tracing::init_test_tracing(); - - tracing::info!("=== STARTING test_docker_block_propagation_to_both_clients ==="); - let env = DockerComposeEnv::new("multi-client-propagation").await?; - - let rn_sequencer = env.get_rn_sequencer_provider().await?; - let rn_follower = env.get_rn_follower_provider().await?; - let l2geth_sequencer = env.get_l2geth_sequencer_provider().await?; - let l2geth_follower = env.get_l2geth_follower_provider().await?; - - let nodes = [&rn_sequencer, &rn_follower, &l2geth_sequencer, &l2geth_follower]; - - // Enable block production on l2geth sequencer - utils::miner_start(&l2geth_sequencer).await?; - - // Wait for all nodes to be at block 10 - let target_block = 10; - utils::wait_for_block(&nodes, target_block).await?; - // Verify blocks match across all clients - utils::assert_blocks_match(&nodes, target_block).await?; - - Ok(()) -} diff --git a/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs b/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs new file mode 100644 index 00000000..601009ca --- /dev/null +++ b/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs @@ -0,0 +1,178 @@ +use eyre::Result; +use tests::*; + +/// Tests cross-client block propagation and synchronization between heterogeneous nodes. +/// +/// This integration test validates that blocks can be successfully propagated between +/// different Ethereum client implementations (l2geth and rollup-node) in various +/// network topologies. The test exercises: +/// +/// 1. **Isolated Network Segments**: Initially runs l2geth nodes in isolation, verifying they can +/// produce and sync blocks independently +/// - Topology: `l2geth_follower -> l2geth_sequencer` +/// - l2geth_sequencer produces blocks, l2geth_follower syncs +/// - Rollup nodes remain disconnected at block 0 +/// +/// 2. **Cross-Client Synchronization**: Connects rollup nodes to the l2geth network, ensuring they +/// can catch up to the current chain state +/// - Topology: `[rn_follower, rn_sequencer, l2geth_follower] -> l2geth_sequencer` +/// - All nodes connect to l2geth_sequencer as the single source of truth +/// - Rollup nodes sync from block 0 to current height +/// +/// 3. **Sequencer Handoff**: Transitions block production from l2geth to rollup-node, testing that +/// all nodes stay synchronized during the transition +/// - Topology remains: `[rn_follower, rn_sequencer, l2geth_follower] -> l2geth_sequencer` +/// - Block production switches from l2geth_sequencer to rn_sequencer +/// - All nodes receive new blocks from rn_sequencer via l2geth_sequencer relay +/// +/// 4. **Network Partition Recovery**: Disconnects l2geth nodes, continues production on rollup +/// nodes, then reconnects to verify successful resynchronization +/// - Initial partition: `rn_follower -> rn_sequencer` (isolated rollup network) +/// - l2geth nodes disconnected, fall behind in block height +/// - Reconnection topology: `[l2geth_follower, l2geth_sequencer] -> rn_sequencer` +/// - l2geth nodes catch up by syncing from rn_sequencer +/// +/// 5. **Bidirectional Compatibility**: Returns block production to l2geth after rollup nodes have +/// extended the chain, ensuring backward compatibility +/// - Final topology: `[rn_follower, l2geth_follower, l2geth_sequencer] -> rn_sequencer` +/// - Block production returns to l2geth_sequencer +/// - Validates that l2geth can continue the chain after rollup node blocks +/// +/// The test validates that both client implementations maintain consensus despite +/// network topology changes, sequencer transitions, and temporary network partitions. +/// Each topology change tests different aspects of peer discovery, block gossip, +/// and chain synchronization across heterogeneous client implementations. +#[tokio::test] +async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { + reth_tracing::init_test_tracing(); + + tracing::info!("=== STARTING test_heterogeneous_client_sync_and_sequencer_handoff ==="); + let env = DockerComposeEnv::new("multi-client-propagation").await?; + + let rn_sequencer = env.get_rn_sequencer_provider().await?; + let rn_follower = env.get_rn_follower_provider().await?; + let l2geth_sequencer = env.get_l2geth_sequencer_provider().await?; + let l2geth_follower = env.get_l2geth_follower_provider().await?; + + let rn_nodes = [&rn_sequencer, &rn_follower]; + let l2geth_nodes = [&l2geth_sequencer, &l2geth_follower]; + let nodes = [&rn_sequencer, &rn_follower, &l2geth_sequencer, &l2geth_follower]; + + // Connect only l2geth nodes first + // l2geth_follower -> l2geth_sequencer + utils::admin_add_peer(&l2geth_follower, &env.l2geth_sequencer_enode()?).await?; + tracing::info!("โœ… Connected l2geth follower to l2geth sequencer"); + + // Enable block production on l2geth sequencer + utils::miner_start(&l2geth_sequencer).await?; + + // Wait for at least 10 blocks to be produced + let target_block = 10; + utils::wait_for_block(&[&l2geth_sequencer], target_block).await?; + utils::miner_stop(&l2geth_sequencer).await?; + + let latest_block = l2geth_sequencer.provider.get_block_number().await?; + + // Wait for all l2geth nodes to reach the latest block + utils::wait_for_block(&l2geth_nodes, latest_block).await?; + utils::assert_blocks_match(&l2geth_nodes, latest_block).await?; + tracing::info!("โœ… All l2geth nodes reached block {}", latest_block); + + // Assert rollup nodes are still at block 0 + utils::assert_latest_block(&rn_nodes, 0).await?; + + // Connect rollup nodes to l2geth sequencer + // topology: + // l2geth_follower -> l2geth_sequencer + // rn_follower -> l2geth_sequencer + // rn_sequencer -> l2geth_sequencer + utils::admin_add_peer(&rn_follower, &env.l2geth_sequencer_enode()?).await?; + utils::admin_add_peer(&rn_sequencer, &env.l2geth_sequencer_enode()?).await?; + tracing::info!("โœ… Connected rollup nodes to l2geth sequencer"); + + // Continue block production on l2geth sequencer + utils::miner_start(&l2geth_sequencer).await?; + + // Wait for all nodes to reach target block + let target_block = latest_block + 10; + utils::wait_for_block(&nodes, target_block).await?; + + utils::miner_stop(&l2geth_sequencer).await?; + let latest_block = l2geth_sequencer.provider.get_block_number().await?; + utils::wait_for_block(&nodes, latest_block).await?; + utils::assert_blocks_match(&nodes, latest_block).await?; + tracing::info!("โœ… All nodes reached block {}", latest_block); + + // Enable sequencing on RN sequencer + tracing::info!("Enabling sequencing on RN sequencer"); + utils::enable_automatic_sequencing(&rn_sequencer).await?; + let target_block = latest_block + 10; + utils::wait_for_block(&nodes, target_block).await?; + + utils::disable_automatic_sequencing(&rn_sequencer).await?; + let latest_block = rn_sequencer.provider.get_block_number().await?; + utils::wait_for_block(&nodes, latest_block).await?; + utils::assert_blocks_match(&nodes, latest_block).await?; + tracing::info!("โœ… All nodes reached block {}", latest_block); + + // Disconnect l2geth follower from l2geth sequencer + // topology: + // rn_follower -> rn_sequencer + utils::admin_remove_peer(&rn_follower, &env.l2geth_sequencer_enode()?).await?; + utils::admin_remove_peer(&rn_sequencer, &env.l2geth_sequencer_enode()?).await?; + utils::admin_remove_peer(&l2geth_follower, &env.l2geth_sequencer_enode()?).await?; + utils::admin_add_peer(&rn_follower, &env.rn_sequencer_enode()?).await?; + + // Continue sequencing on RN sequencer for at least 10 blocks + utils::enable_automatic_sequencing(&rn_sequencer).await?; + let target_block = latest_block + 10; + utils::wait_for_block(&rn_nodes, target_block).await?; + + // Make sure l2geth nodes are still at the old block -> they need to sync once reconnected + assert!( + l2geth_sequencer.provider.get_block_number().await? <= target_block + 1, + "l2geth sequencer should be at most at block {}, but is at {}", + target_block + 1, + l2geth_sequencer.provider.get_block_number().await? + ); + assert!( + l2geth_follower.provider.get_block_number().await? <= target_block + 1, + "l2geth follower should be at most at block {}, but is at {}", + target_block + 1, + l2geth_follower.provider.get_block_number().await? + ); + + // Reconnect l2geth follower to l2geth sequencer and let them sync + // topology: + // rn_follower -> rn_sequencer + // l2geth_follower -> rn_sequencer + // l2geth_sequencer -> rn_sequencer + utils::admin_add_peer(&l2geth_follower, &env.rn_sequencer_enode()?).await?; + utils::admin_add_peer(&l2geth_sequencer, &env.rn_sequencer_enode()?).await?; + // TODO: only temporarily until eth-wire broadcast of RN is fixed. Until then we need to connect + // l2geth follower to l2geth sequencer to get the blocks + utils::admin_add_peer(&l2geth_follower, &env.l2geth_sequencer_enode()?).await?; + + // Wait for all nodes to reach the same block again + let target_block = target_block + 10; + utils::wait_for_block(&nodes, target_block).await?; + tracing::info!("โœ… l2geth nodes synced to block {}", target_block); + + // Disable sequencing on RN sequencer + utils::disable_automatic_sequencing(&rn_sequencer).await?; + let latest_block = rn_sequencer.provider.get_block_number().await?; + tracing::info!("Switched RN sequencing off at block {}", latest_block); + utils::wait_for_block(&nodes, latest_block).await?; + utils::assert_blocks_match(&nodes, latest_block).await?; + + utils::admin_remove_peer(&l2geth_follower, &env.l2geth_sequencer_enode()?).await?; // TODO: only temporarily until eth-wire broadcast of RN is fixed + + // start sequencing on l2geth sequencer again and make sure all nodes reach the same block in + // the end + utils::miner_start(&l2geth_sequencer).await?; + let target_block = latest_block + 10; + utils::wait_for_block(&nodes, target_block).await?; + assert_blocks_match(&nodes, target_block).await?; + + Ok(()) +} From 5ab32863930909a5fde2c6850f0d802eb88740d0 Mon Sep 17 00:00:00 2001 From: Morty Date: Mon, 15 Sep 2025 04:26:05 +0800 Subject: [PATCH 14/25] fix: correctly encode signature when handling block import --- Cargo.lock | 1 + crates/engine/Cargo.toml | 1 + crates/engine/src/future/mod.rs | 4 +++- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Cargo.lock b/Cargo.lock index 97c16531..cb4dedeb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11627,6 +11627,7 @@ dependencies = [ "reth-testing-utils", "rollup-node-primitives", "rollup-node-providers", + "rollup-node-signer", "scroll-alloy-consensus", "scroll-alloy-hardforks", "scroll-alloy-network", diff --git a/crates/engine/Cargo.toml b/crates/engine/Cargo.toml index 80a15df6..318b885c 100644 --- a/crates/engine/Cargo.toml +++ b/crates/engine/Cargo.toml @@ -37,6 +37,7 @@ reth-scroll-engine-primitives = { git = "https://github.com/scroll-tech/reth.git # rollup-node rollup-node-primitives.workspace = true rollup-node-providers.workspace = true +rollup-node-signer.workspace = true # scroll scroll-network.workspace = true diff --git a/crates/engine/src/future/mod.rs b/crates/engine/src/future/mod.rs index c3825b29..699da685 100644 --- a/crates/engine/src/future/mod.rs +++ b/crates/engine/src/future/mod.rs @@ -6,6 +6,7 @@ use alloy_rpc_types_engine::{ ExecutionData, ExecutionPayloadV1, ForkchoiceState as AlloyForkchoiceState, ForkchoiceUpdated, PayloadStatusEnum, }; +use alloy_primitives::bytes::Bytes; use eyre::Result; use reth_scroll_engine_primitives::try_into_block; use reth_scroll_primitives::ScrollBlock; @@ -13,6 +14,7 @@ use rollup_node_primitives::{ BatchInfo, BlockInfo, ChainImport, L2BlockInfoWithL1Messages, MeteredFuture, ScrollPayloadAttributesWithBatchInfo, WithBlockNumber, }; +use rollup_node_signer::SignatureAsBytes; use scroll_alloy_hardforks::ScrollHardforks; use scroll_alloy_network::Scroll; use scroll_alloy_provider::ScrollEngineApi; @@ -236,7 +238,7 @@ where Some(BlockImportOutcome::valid_block( peer_id, head, - Into::>::into(signature).into(), + Bytes::copy_from_slice(&signature.sig_as_bytes()), )), PayloadStatusEnum::Valid, )), From f32a54976b88d6a08752b94ef2688a7b00666ee7 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Mon, 15 Sep 2025 08:50:49 +0800 Subject: [PATCH 15/25] move all reth dependencies to workspace Cargo.toml and reference fix branch in reth --- Cargo.lock | 252 +++++++++++++-------------- Cargo.toml | 125 +++++-------- crates/chain-orchestrator/Cargo.toml | 2 +- crates/engine/Cargo.toml | 4 +- crates/network/Cargo.toml | 4 +- crates/node/Cargo.toml | 32 ++-- crates/scroll-wire/Cargo.toml | 2 +- crates/sequencer/Cargo.toml | 2 +- 8 files changed, 197 insertions(+), 226 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cb4dedeb..0d1e7e70 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7529,7 +7529,7 @@ checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" [[package]] name = "reth-basic-payload-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7553,7 +7553,7 @@ dependencies = [ [[package]] name = "reth-chain-state" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7584,7 +7584,7 @@ dependencies = [ [[package]] name = "reth-chainspec" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-chains", "alloy-consensus 1.0.30", @@ -7604,7 +7604,7 @@ dependencies = [ [[package]] name = "reth-cli" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-genesis", "clap", @@ -7618,7 +7618,7 @@ dependencies = [ [[package]] name = "reth-cli-commands" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "ahash 0.8.12", "alloy-chains", @@ -7691,7 +7691,7 @@ dependencies = [ [[package]] name = "reth-cli-runner" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "reth-tasks", "tokio", @@ -7701,7 +7701,7 @@ dependencies = [ [[package]] name = "reth-cli-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -7718,7 +7718,7 @@ dependencies = [ [[package]] name = "reth-codecs" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7738,7 +7738,7 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "convert_case", "proc-macro2", @@ -7749,7 +7749,7 @@ dependencies = [ [[package]] name = "reth-config" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "eyre", "humantime-serde", @@ -7764,7 +7764,7 @@ dependencies = [ [[package]] name = "reth-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -7777,7 +7777,7 @@ dependencies = [ [[package]] name = "reth-consensus-common" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7789,7 +7789,7 @@ dependencies = [ [[package]] name = "reth-consensus-debug-client" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7814,7 +7814,7 @@ dependencies = [ [[package]] name = "reth-db" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "derive_more", @@ -7840,7 +7840,7 @@ dependencies = [ [[package]] name = "reth-db-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-genesis", @@ -7869,7 +7869,7 @@ dependencies = [ [[package]] name = "reth-db-common" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-genesis", @@ -7899,7 +7899,7 @@ dependencies = [ [[package]] name = "reth-db-models" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -7914,7 +7914,7 @@ dependencies = [ [[package]] name = "reth-discv4" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7940,7 +7940,7 @@ dependencies = [ [[package]] name = "reth-discv5" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7964,7 +7964,7 @@ dependencies = [ [[package]] name = "reth-dns-discovery" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "data-encoding", @@ -7988,7 +7988,7 @@ dependencies = [ [[package]] name = "reth-downloaders" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8023,7 +8023,7 @@ dependencies = [ [[package]] name = "reth-e2e-test-utils" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8086,7 +8086,7 @@ dependencies = [ [[package]] name = "reth-ecies" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "aes", "alloy-primitives", @@ -8117,7 +8117,7 @@ dependencies = [ [[package]] name = "reth-engine-local" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8140,7 +8140,7 @@ dependencies = [ [[package]] name = "reth-engine-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8165,7 +8165,7 @@ dependencies = [ [[package]] name = "reth-engine-service" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "futures", "pin-project", @@ -8188,7 +8188,7 @@ dependencies = [ [[package]] name = "reth-engine-tree" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8240,7 +8240,7 @@ dependencies = [ [[package]] name = "reth-engine-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-rpc-types-engine 1.0.30", @@ -8268,7 +8268,7 @@ dependencies = [ [[package]] name = "reth-era" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8284,7 +8284,7 @@ dependencies = [ [[package]] name = "reth-era-downloader" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "bytes", @@ -8299,7 +8299,7 @@ dependencies = [ [[package]] name = "reth-era-utils" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8323,7 +8323,7 @@ dependencies = [ [[package]] name = "reth-errors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -8334,7 +8334,7 @@ dependencies = [ [[package]] name = "reth-eth-wire" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-chains", "alloy-primitives", @@ -8362,7 +8362,7 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-chains", "alloy-consensus 1.0.30", @@ -8383,7 +8383,7 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8399,7 +8399,7 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -8417,7 +8417,7 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -8431,7 +8431,7 @@ dependencies = [ [[package]] name = "reth-ethereum-payload-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8458,7 +8458,7 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8476,7 +8476,7 @@ dependencies = [ [[package]] name = "reth-etl" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "rayon", "reth-db-api", @@ -8486,7 +8486,7 @@ dependencies = [ [[package]] name = "reth-evm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8510,7 +8510,7 @@ dependencies = [ [[package]] name = "reth-evm-ethereum" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8530,7 +8530,7 @@ dependencies = [ [[package]] name = "reth-execution-errors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-evm", "alloy-primitives", @@ -8543,7 +8543,7 @@ dependencies = [ [[package]] name = "reth-execution-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8561,7 +8561,7 @@ dependencies = [ [[package]] name = "reth-exex" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8599,7 +8599,7 @@ dependencies = [ [[package]] name = "reth-exex-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -8613,7 +8613,7 @@ dependencies = [ [[package]] name = "reth-fs-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "serde", "serde_json", @@ -8623,7 +8623,7 @@ dependencies = [ [[package]] name = "reth-invalid-block-hooks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8651,7 +8651,7 @@ dependencies = [ [[package]] name = "reth-ipc" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "bytes", "futures", @@ -8671,7 +8671,7 @@ dependencies = [ [[package]] name = "reth-libmdbx" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "bitflags 2.9.4", "byteorder", @@ -8688,7 +8688,7 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "bindgen 0.70.1", "cc", @@ -8697,7 +8697,7 @@ dependencies = [ [[package]] name = "reth-metrics" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "futures", "metrics", @@ -8709,7 +8709,7 @@ dependencies = [ [[package]] name = "reth-net-banlist" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", ] @@ -8717,7 +8717,7 @@ dependencies = [ [[package]] name = "reth-net-nat" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "futures-util", "if-addrs", @@ -8731,7 +8731,7 @@ dependencies = [ [[package]] name = "reth-network" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8787,7 +8787,7 @@ dependencies = [ [[package]] name = "reth-network-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8813,7 +8813,7 @@ dependencies = [ [[package]] name = "reth-network-p2p" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8836,7 +8836,7 @@ dependencies = [ [[package]] name = "reth-network-peers" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -8851,7 +8851,7 @@ dependencies = [ [[package]] name = "reth-network-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eip2124", "humantime-serde", @@ -8865,7 +8865,7 @@ dependencies = [ [[package]] name = "reth-nippy-jar" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "anyhow", "bincode", @@ -8882,7 +8882,7 @@ dependencies = [ [[package]] name = "reth-node-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-rpc-types-engine 1.0.30", "eyre", @@ -8906,7 +8906,7 @@ dependencies = [ [[package]] name = "reth-node-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8974,7 +8974,7 @@ dependencies = [ [[package]] name = "reth-node-core" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9026,7 +9026,7 @@ dependencies = [ [[package]] name = "reth-node-ethereum" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-network", @@ -9064,7 +9064,7 @@ dependencies = [ [[package]] name = "reth-node-ethstats" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9088,7 +9088,7 @@ dependencies = [ [[package]] name = "reth-node-events" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9112,7 +9112,7 @@ dependencies = [ [[package]] name = "reth-node-metrics" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "eyre", "http 1.3.1", @@ -9132,7 +9132,7 @@ dependencies = [ [[package]] name = "reth-node-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "reth-chainspec", "reth-db-api", @@ -9145,7 +9145,7 @@ dependencies = [ [[package]] name = "reth-optimism-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9164,7 +9164,7 @@ dependencies = [ [[package]] name = "reth-payload-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9185,7 +9185,7 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "pin-project", "reth-payload-primitives", @@ -9197,7 +9197,7 @@ dependencies = [ [[package]] name = "reth-payload-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -9217,7 +9217,7 @@ dependencies = [ [[package]] name = "reth-payload-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9227,7 +9227,7 @@ dependencies = [ [[package]] name = "reth-payload-validator" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-rpc-types-engine 1.0.30", @@ -9237,7 +9237,7 @@ dependencies = [ [[package]] name = "reth-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "c-kzg", @@ -9251,7 +9251,7 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9285,7 +9285,7 @@ dependencies = [ [[package]] name = "reth-provider" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9330,7 +9330,7 @@ dependencies = [ [[package]] name = "reth-prune" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9358,7 +9358,7 @@ dependencies = [ [[package]] name = "reth-prune-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "arbitrary", @@ -9372,7 +9372,7 @@ dependencies = [ [[package]] name = "reth-revm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "reth-primitives-traits", @@ -9385,7 +9385,7 @@ dependencies = [ [[package]] name = "reth-rpc" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-dyn-abi", @@ -9462,7 +9462,7 @@ dependencies = [ [[package]] name = "reth-rpc-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-genesis", @@ -9490,7 +9490,7 @@ dependencies = [ [[package]] name = "reth-rpc-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-network", "alloy-provider", @@ -9528,7 +9528,7 @@ dependencies = [ [[package]] name = "reth-rpc-convert" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-json-rpc", @@ -9553,7 +9553,7 @@ dependencies = [ [[package]] name = "reth-rpc-engine-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -9583,7 +9583,7 @@ dependencies = [ [[package]] name = "reth-rpc-eth-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-dyn-abi", @@ -9628,7 +9628,7 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9672,7 +9672,7 @@ dependencies = [ [[package]] name = "reth-rpc-layer" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-rpc-types-engine 1.0.30", "http 1.3.1", @@ -9686,7 +9686,7 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -9702,7 +9702,7 @@ dependencies = [ [[package]] name = "reth-scroll-chainspec" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-chains", "alloy-consensus 1.0.30", @@ -9727,7 +9727,7 @@ dependencies = [ [[package]] name = "reth-scroll-cli" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "clap", "eyre", @@ -9751,7 +9751,7 @@ dependencies = [ [[package]] name = "reth-scroll-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9771,7 +9771,7 @@ dependencies = [ [[package]] name = "reth-scroll-engine-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9796,7 +9796,7 @@ dependencies = [ [[package]] name = "reth-scroll-evm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9826,7 +9826,7 @@ dependencies = [ [[package]] name = "reth-scroll-forks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-chains", "alloy-primitives", @@ -9840,7 +9840,7 @@ dependencies = [ [[package]] name = "reth-scroll-node" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-genesis", @@ -9892,7 +9892,7 @@ dependencies = [ [[package]] name = "reth-scroll-payload" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9923,7 +9923,7 @@ dependencies = [ [[package]] name = "reth-scroll-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9943,7 +9943,7 @@ dependencies = [ [[package]] name = "reth-scroll-rpc" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9984,7 +9984,7 @@ dependencies = [ [[package]] name = "reth-scroll-txpool" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10008,7 +10008,7 @@ dependencies = [ [[package]] name = "reth-stages" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10058,7 +10058,7 @@ dependencies = [ [[package]] name = "reth-stages-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -10085,7 +10085,7 @@ dependencies = [ [[package]] name = "reth-stages-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "arbitrary", @@ -10099,7 +10099,7 @@ dependencies = [ [[package]] name = "reth-static-file" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "parking_lot 0.12.4", @@ -10119,7 +10119,7 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "clap", @@ -10131,7 +10131,7 @@ dependencies = [ [[package]] name = "reth-storage-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10155,7 +10155,7 @@ dependencies = [ [[package]] name = "reth-storage-errors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -10171,7 +10171,7 @@ dependencies = [ [[package]] name = "reth-tasks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "auto_impl", "dyn-clone", @@ -10189,7 +10189,7 @@ dependencies = [ [[package]] name = "reth-testing-utils" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10205,7 +10205,7 @@ dependencies = [ [[package]] name = "reth-tokio-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "tokio", "tokio-stream", @@ -10215,7 +10215,7 @@ dependencies = [ [[package]] name = "reth-tracing" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "clap", "eyre", @@ -10230,7 +10230,7 @@ dependencies = [ [[package]] name = "reth-transaction-pool" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10270,7 +10270,7 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10295,7 +10295,7 @@ dependencies = [ [[package]] name = "reth-trie-common" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -10320,7 +10320,7 @@ dependencies = [ [[package]] name = "reth-trie-db" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "reth-db-api", @@ -10333,7 +10333,7 @@ dependencies = [ [[package]] name = "reth-trie-parallel" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10358,7 +10358,7 @@ dependencies = [ [[package]] name = "reth-trie-sparse" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10377,7 +10377,7 @@ dependencies = [ [[package]] name = "reth-trie-sparse-parallel" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10395,7 +10395,7 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "zstd", ] @@ -11426,7 +11426,7 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scroll-alloy-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -11445,7 +11445,7 @@ dependencies = [ [[package]] name = "scroll-alloy-evm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -11463,7 +11463,7 @@ dependencies = [ [[package]] name = "scroll-alloy-hardforks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-hardforks", "auto_impl", @@ -11473,7 +11473,7 @@ dependencies = [ [[package]] name = "scroll-alloy-network" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-network", @@ -11488,7 +11488,7 @@ dependencies = [ [[package]] name = "scroll-alloy-provider" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-provider", @@ -11513,7 +11513,7 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -11530,7 +11530,7 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types-engine" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" +source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine 1.0.30", diff --git a/Cargo.toml b/Cargo.toml index 60b97a1a..32dbfce2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -134,37 +134,58 @@ alloy-signer-local = { version = "1.0.13", default-features = false } alloy-transport = { version = "1.0.13", default-features = false } # scroll-alloy -scroll-alloy-consensus = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -scroll-alloy-hardforks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -scroll-alloy-network = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -scroll-alloy-provider = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -scroll-alloy-rpc-types-engine = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-consensus = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-hardforks = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-network = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-provider = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-evm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-rpc-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-rpc-types-engine = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } # reth -reth-chainspec = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-e2e-test-utils = { git = "https://github.com/scroll-tech/reth.git" } -reth-eth-wire-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-network = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-network-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-network-peers = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-node-builder = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-node-core = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-payload-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-primitives-traits = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-provider = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-rpc-builder = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-rpc-server-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-tasks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-tokio-util = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-tracing = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-chainspec = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-e2e-test-utils = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all" } +reth-eth-wire = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-eth-wire-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-network = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-network-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-network-p2p = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-network-peers = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-network-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-node-builder = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-node-core = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-node-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-node-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-payload-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-primitives-traits = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-provider = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-rpc-builder = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-rpc-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-rpc-eth-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-rpc-eth-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-rpc-server-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-storage-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-tasks = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-tokio-util = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-tracing = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-transaction-pool = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-trie-db = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-testing-utils = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-revm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-evm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-engine-local = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-cli-util = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } # reth-scroll -reth-scroll-chainspec = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-scroll-engine-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-scroll-forks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-scroll-node = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-scroll-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-chainspec = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-cli = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-evm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-rpc = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-engine-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-forks = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-node = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } # rollup node rollup-node = { path = "crates/node" } @@ -209,53 +230,3 @@ getrandom = { version = "0.2", features = ["js"] } [patch.crates-io] revm = { git = "https://github.com/scroll-tech/revm" } op-revm = { git = "https://github.com/scroll-tech/revm" } - -# [patch."https://github.com/scroll-tech/reth.git"] -# reth-chainspec = { path = "../reth/crates/chainspec" } -# reth-e2e-test-utils = { path = "../reth/crates/e2e-test-utils" } -# reth-eth-wire-types = { path = "../reth/crates/net/eth-wire-types" } -# reth-network = { path = "../reth/crates/net/network" } -# reth-network-api = { path = "../reth/crates/net/network-api" } -# reth-network-peers = { path = "../reth/crates/net/peers" } -# reth-network-p2p = { path = "../reth/crates/net/p2p" } -# reth-network-types = { path = "../reth/crates/net/network-types" } -# reth-node-builder = { path = "../reth/crates/node/builder" } -# reth-node-core = { path = "../reth/crates/node/core" } -# reth-node-api = { path = "../reth/crates/node/api" } -# reth-node-types = { path = "../reth/crates/node/types" } -# reth-payload-primitives = { path = "../reth/crates/payload/primitives" } -# reth-primitives = { path = "../reth/crates/primitives" } -# reth-primitives-traits = { path = "../reth/crates/primitives-traits" } -# reth-provider = { path = "../reth/crates/storage/provider" } -# reth-rpc-builder = { path = "../reth/crates/rpc/rpc-builder" } -# reth-rpc-server-types = { path = "../reth/crates/rpc/rpc-server-types" } -# reth-rpc-api = { path = "../reth/crates/rpc/rpc-api" } -# reth-rpc-eth-api = { path = "../reth/crates/rpc/rpc-eth-api" } -# reth-rpc-eth-types = { path = "../reth/crates/rpc/rpc-eth-types" } -# reth-storage-api = { path = "../reth/crates/storage/storage-api" } -# reth-tasks = { path = "../reth/crates/tasks" } -# reth-tokio-util = { path = "../reth/crates/tokio-util" } -# reth-tracing = { path = "../reth/crates/tracing" } -# reth-transaction-pool = { path = "../reth/crates/transaction-pool" } -# reth-trie-db = { path = "../reth/crates/trie/db" } -# reth-testing-utils = { path = "../reth/testing/testing-utils" } -# reth-revm = { path = "../reth/crates/revm" } -# reth-evm = { path = "../reth/crates/evm/evm" } -# reth-cli-util = { path = "../reth/crates/cli/util" } -# reth-engine-local = { path = "../reth/crates/engine/local" } -# reth-eth-wire = { path = "../reth/crates/net/eth-wire" } -# scroll-alloy-consensus = { path = "../reth/crates/scroll/alloy/consensus" } -# scroll-alloy-hardforks = { path = "../reth/crates/scroll/alloy/hardforks" } -# scroll-alloy-network = { path = "../reth/crates/scroll/alloy/network" } -# scroll-alloy-provider = { path = "../reth/crates/scroll/alloy/provider" } -# scroll-alloy-rpc-types-engine = { path = "../reth/crates/scroll/alloy/rpc-types-engine" } -# scroll-alloy-evm = { path = "../reth/crates/scroll/alloy/evm" } -# scroll-alloy-rpc-types = { path = "../reth/crates/scroll/alloy/rpc-types" } -# reth-scroll-chainspec = { path = "../reth/crates/scroll/chainspec" } -# reth-scroll-engine-primitives = { path = "../reth/crates/scroll/engine-primitives" } -# reth-scroll-forks = { path = "../reth/crates/scroll/hardforks" } -# reth-scroll-node = { path = "../reth/crates/scroll/node" } -# reth-scroll-primitives = { path = "../reth/crates/scroll/primitives" } -# reth-scroll-evm = { path = "../reth/crates/scroll/evm" } -# reth-scroll-cli = { path = "../reth/crates/scroll/cli" } -# reth-scroll-rpc = { path = "../reth/crates/scroll/rpc" } diff --git a/crates/chain-orchestrator/Cargo.toml b/crates/chain-orchestrator/Cargo.toml index 16fa7a2a..3462acaf 100644 --- a/crates/chain-orchestrator/Cargo.toml +++ b/crates/chain-orchestrator/Cargo.toml @@ -32,7 +32,7 @@ scroll-network.workspace = true # reth reth-chainspec.workspace = true -reth-network-p2p = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network-p2p.workspace = true reth-network-peers.workspace = true reth-primitives-traits.workspace = true diff --git a/crates/engine/Cargo.toml b/crates/engine/Cargo.toml index 318b885c..0d822e9f 100644 --- a/crates/engine/Cargo.toml +++ b/crates/engine/Cargo.toml @@ -32,7 +32,7 @@ reth-primitives-traits.workspace = true # reth-scroll reth-scroll-chainspec.workspace = true reth-scroll-primitives.workspace = true -reth-scroll-engine-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-engine-primitives.workspace = true # rollup-node rollup-node-primitives.workspace = true @@ -56,7 +56,7 @@ tracing.workspace = true alloy-consensus.workspace = true arbitrary.workspace = true async-trait.workspace = true -reth-testing-utils = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-testing-utils.workspace = true rollup-node-providers = { workspace = true, features = ["test-utils"] } scroll-alloy-consensus.workspace = true scroll-alloy-rpc-types-engine = { workspace = true, features = ["arbitrary"] } diff --git a/crates/network/Cargo.toml b/crates/network/Cargo.toml index adc549fe..1e0d987d 100644 --- a/crates/network/Cargo.toml +++ b/crates/network/Cargo.toml @@ -15,10 +15,10 @@ reth-chainspec.workspace = true reth-eth-wire-types.workspace = true reth-network.workspace = true reth-network-api.workspace = true -reth-network-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network-types.workspace = true reth-network-peers.workspace = true reth-primitives-traits.workspace = true -reth-storage-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-storage-api.workspace = true reth-tokio-util.workspace = true # scroll diff --git a/crates/node/Cargo.toml b/crates/node/Cargo.toml index 0311beec..5a6d1020 100644 --- a/crates/node/Cargo.toml +++ b/crates/node/Cargo.toml @@ -28,37 +28,37 @@ alloy-signer = "1.0.9" alloy-transport.workspace = true scroll-alloy-consensus.workspace = true -scroll-alloy-evm = { git = "https://github.com/scroll-tech/reth.git" } +scroll-alloy-evm.workspace = true scroll-alloy-hardforks.workspace = true scroll-alloy-network.workspace = true scroll-alloy-provider.workspace = true reth-primitives-traits.workspace = true reth-scroll-engine-primitives.workspace = true -reth-scroll-evm = { git = "https://github.com/scroll-tech/reth.git" } -reth-scroll-cli = { git = "https://github.com/scroll-tech/reth.git" } +reth-scroll-evm.workspace = true +reth-scroll-cli.workspace = true reth-scroll-primitives.workspace = true reth-scroll-chainspec.workspace = true reth-scroll-node.workspace = true -reth-scroll-rpc = { git = "https://github.com/scroll-tech/reth.git" } +reth-scroll-rpc.workspace = true reth-chainspec.workspace = true -reth-cli-util = { git = "https://github.com/scroll-tech/reth.git" } +reth-cli-util.workspace = true reth-eth-wire-types.workspace = true -reth-evm = { git = "https://github.com/scroll-tech/reth.git" } +reth-evm.workspace = true reth-node-builder.workspace = true -reth-node-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-node-api.workspace = true reth-node-core.workspace = true -reth-node-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-node-types.workspace = true reth-network.workspace = true reth-network-api.workspace = true -reth-revm = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-rpc-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-rpc-eth-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-rpc-eth-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-revm.workspace = true +reth-rpc-api.workspace = true +reth-rpc-eth-api.workspace = true +reth-rpc-eth-types.workspace = true reth-tasks.workspace = true -reth-transaction-pool = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-trie-db = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-transaction-pool.workspace = true +reth-trie-db.workspace = true # rollup node rollup-node-chain-orchestrator.workspace = true @@ -76,12 +76,12 @@ aws-sdk-kms = "1.76.0" # test-utils alloy-rpc-types-engine = { workspace = true, optional = true } reth-e2e-test-utils = { workspace = true, optional = true } -reth-engine-local = { git = "https://github.com/scroll-tech/reth.git", default-features = false, optional = true } +reth-engine-local = { workspace = true, optional = true } reth-provider = { workspace = true, optional = true } reth-rpc-server-types = { workspace = true, optional = true } scroll-alloy-rpc-types-engine = { workspace = true, optional = true } scroll-derivation-pipeline = { workspace = true, optional = true } -scroll-alloy-rpc-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-rpc-types.workspace = true scroll-db.workspace = true scroll-engine.workspace = true diff --git a/crates/scroll-wire/Cargo.toml b/crates/scroll-wire/Cargo.toml index c3b9bd47..d98dd7f4 100644 --- a/crates/scroll-wire/Cargo.toml +++ b/crates/scroll-wire/Cargo.toml @@ -15,7 +15,7 @@ alloy-primitives = { workspace = true, features = ["map-foldhash"] } alloy-rlp = { version = "0.3.10", default-features = false } # reth -reth-eth-wire = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-eth-wire.workspace = true reth-network.workspace = true reth-network-api.workspace = true diff --git a/crates/sequencer/Cargo.toml b/crates/sequencer/Cargo.toml index 6de4b053..f4a37b49 100644 --- a/crates/sequencer/Cargo.toml +++ b/crates/sequencer/Cargo.toml @@ -47,7 +47,7 @@ scroll-alloy-consensus.workspace = true # reth reth-e2e-test-utils.workspace = true reth-node-core.workspace = true -reth-tracing = { git = "https://github.com/scroll-tech/reth.git" } +reth-tracing.workspace = true # reth-scroll reth-scroll-chainspec.workspace = true From c61058acbd36045e00be13115abac24088eb8c6f Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Mon, 15 Sep 2025 08:54:10 +0800 Subject: [PATCH 16/25] restore initial network topology after reth broadcast to all is enabled --- .../heterogeneous_client_sync_and_sequencer_handoff.rs | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs b/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs index 601009ca..90623bd5 100644 --- a/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs +++ b/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs @@ -149,9 +149,6 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { // l2geth_sequencer -> rn_sequencer utils::admin_add_peer(&l2geth_follower, &env.rn_sequencer_enode()?).await?; utils::admin_add_peer(&l2geth_sequencer, &env.rn_sequencer_enode()?).await?; - // TODO: only temporarily until eth-wire broadcast of RN is fixed. Until then we need to connect - // l2geth follower to l2geth sequencer to get the blocks - utils::admin_add_peer(&l2geth_follower, &env.l2geth_sequencer_enode()?).await?; // Wait for all nodes to reach the same block again let target_block = target_block + 10; @@ -165,12 +162,10 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { utils::wait_for_block(&nodes, latest_block).await?; utils::assert_blocks_match(&nodes, latest_block).await?; - utils::admin_remove_peer(&l2geth_follower, &env.l2geth_sequencer_enode()?).await?; // TODO: only temporarily until eth-wire broadcast of RN is fixed - // start sequencing on l2geth sequencer again and make sure all nodes reach the same block in // the end utils::miner_start(&l2geth_sequencer).await?; - let target_block = latest_block + 10; + let target_block = latest_block + 20; utils::wait_for_block(&nodes, target_block).await?; assert_blocks_match(&nodes, target_block).await?; From e57ee93c493ce55f8b38e197032dbad9af67b699 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Mon, 15 Sep 2025 08:54:29 +0800 Subject: [PATCH 17/25] add more verbose logs --- crates/network/src/manager.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/crates/network/src/manager.rs b/crates/network/src/manager.rs index 4bc79e4a..b6613378 100644 --- a/crates/network/src/manager.rs +++ b/crates/network/src/manager.rs @@ -175,11 +175,12 @@ impl< eth_wire_block.header.extra_data = block.signature.clone().into(); EthWireNewBlock { block: eth_wire_block, td } }; + trace!(target: "scroll::network::manager", block_number = eth_wire_new_block.block.header.number, block_hash = %hash, signature = eth_wire_new_block.block.header.extra_data.to_string(), "Announcing new block to network, also via eth-wire"); self.inner_network_handle().eth_wire_announce_block(eth_wire_new_block, hash); // Announce block to the filtered set of peers for peer_id in peers { - trace!(target: "scroll::network::manager", peer_id = %peer_id, block_hash = %hash, "Announcing new block to peer"); + trace!(target: "scroll::network::manager", peer_id = %peer_id, block_number = %block.block.header.number, block_hash = %hash, "Announcing new block to peer"); self.scroll_wire.announce_block(peer_id, &block, hash); } } @@ -284,7 +285,7 @@ impl< if self.blocks_seen.contains(&(block_hash, signature)) { return None; } - trace!(target: "scroll::bridge::import", peer_id = %peer_id, block_hash = %block_hash, "Received new block from eth-wire protocol"); + trace!(target: "scroll::bridge::import", peer_id = %peer_id, block_hash = %block_hash, signature = %signature.to_string(), extra_data = %extra_data.to_string(), "Received new block from eth-wire protocol"); // Update the state of the peer cache i.e. peer has seen this block. self.scroll_wire From 9552ce475fe323a5359c37ab81d49213f31e3349 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Wed, 17 Sep 2025 07:16:01 +0800 Subject: [PATCH 18/25] update reth dependency --- Cargo.lock | 1255 +++++++++++++++++++++++++++++++++------------------- Cargo.toml | 148 ++++--- 2 files changed, 895 insertions(+), 508 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c351f8ea..d6cf6e13 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -298,9 +298,9 @@ dependencies = [ [[package]] name = "alloy-evm" -version = "0.17.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2211ccd0f05e2fea4f767242957f5e8cfb08b127ea2e6a3c0d9e5b10e6bf67d9" +checksum = "0dbe7c66c859b658d879b22e8aaa19546dab726b0639f4649a424ada3d99349e" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -312,7 +312,7 @@ dependencies = [ "derive_more", "op-alloy-consensus", "op-revm", - "revm", + "revm 29.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 2.0.16", ] @@ -332,9 +332,9 @@ dependencies = [ [[package]] name = "alloy-hardforks" -version = "0.2.13" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3165210652f71dfc094b051602bafd691f506c54050a174b1cba18fb5ef706a3" +checksum = "8d66cfdf265bf52c0c4a952960c854c3683c71ff2fc02c9b8c317c691fd3bc28" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -2130,19 +2130,6 @@ dependencies = [ "wyz", ] -[[package]] -name = "blake3" -version = "1.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" -dependencies = [ - "arrayref", - "arrayvec", - "cc", - "cfg-if", - "constant_time_eq", -] - [[package]] name = "block-buffer" version = "0.9.0" @@ -2910,12 +2897,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "constant_time_eq" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" - [[package]] name = "convert_case" version = "0.7.1" @@ -3270,6 +3251,7 @@ version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" dependencies = [ + "arbitrary", "cfg-if", "crossbeam-utils", "hashbrown 0.14.5", @@ -5308,14 +5290,32 @@ version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fba77a59c4c644fd48732367624d1bcf6f409f9c9a286fbc71d2f1fc0b2ea16" dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-http-client", - "jsonrpsee-proc-macros", - "jsonrpsee-server", - "jsonrpsee-types", - "jsonrpsee-wasm-client", - "jsonrpsee-ws-client", + "jsonrpsee-client-transport 0.25.1", + "jsonrpsee-core 0.25.1", + "jsonrpsee-http-client 0.25.1", + "jsonrpsee-proc-macros 0.25.1", + "jsonrpsee-server 0.25.1", + "jsonrpsee-types 0.25.1", + "jsonrpsee-wasm-client 0.25.1", + "jsonrpsee-ws-client 0.25.1", + "tokio", + "tracing", +] + +[[package]] +name = "jsonrpsee" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f3f48dc3e6b8bd21e15436c1ddd0bc22a6a54e8ec46fedd6adf3425f396ec6a" +dependencies = [ + "jsonrpsee-client-transport 0.26.0", + "jsonrpsee-core 0.26.0", + "jsonrpsee-http-client 0.26.0", + "jsonrpsee-proc-macros 0.26.0", + "jsonrpsee-server 0.26.0", + "jsonrpsee-types 0.26.0", + "jsonrpsee-wasm-client 0.26.0", + "jsonrpsee-ws-client 0.26.0", "tokio", "tracing", ] @@ -5331,7 +5331,32 @@ dependencies = [ "futures-util", "gloo-net", "http 1.3.1", - "jsonrpsee-core", + "jsonrpsee-core 0.25.1", + "pin-project", + "rustls 0.23.31", + "rustls-pki-types", + "rustls-platform-verifier", + "soketto", + "thiserror 2.0.16", + "tokio", + "tokio-rustls 0.26.2", + "tokio-util", + "tracing", + "url", +] + +[[package]] +name = "jsonrpsee-client-transport" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf36eb27f8e13fa93dcb50ccb44c417e25b818cfa1a481b5470cd07b19c60b98" +dependencies = [ + "base64 0.22.1", + "futures-channel", + "futures-util", + "gloo-net", + "http 1.3.1", + "jsonrpsee-core 0.26.0", "pin-project", "rustls 0.23.31", "rustls-pki-types", @@ -5358,7 +5383,35 @@ dependencies = [ "http 1.3.1", "http-body 1.0.1", "http-body-util", - "jsonrpsee-types", + "jsonrpsee-types 0.25.1", + "parking_lot 0.12.4", + "pin-project", + "rand 0.9.2", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "thiserror 2.0.16", + "tokio", + "tokio-stream", + "tower", + "tracing", + "wasm-bindgen-futures", +] + +[[package]] +name = "jsonrpsee-core" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "316c96719901f05d1137f19ba598b5fe9c9bc39f4335f67f6be8613921946480" +dependencies = [ + "async-trait", + "bytes", + "futures-timer", + "futures-util", + "http 1.3.1", + "http-body 1.0.1", + "http-body-util", + "jsonrpsee-types 0.26.0", "parking_lot 0.12.4", "pin-project", "rand 0.9.2", @@ -5384,8 +5437,31 @@ dependencies = [ "hyper 1.7.0", "hyper-rustls 0.27.7", "hyper-util", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.25.1", + "jsonrpsee-types 0.25.1", + "rustls 0.23.31", + "rustls-platform-verifier", + "serde", + "serde_json", + "thiserror 2.0.16", + "tokio", + "tower", + "url", +] + +[[package]] +name = "jsonrpsee-http-client" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "790bedefcec85321e007ff3af84b4e417540d5c87b3c9779b9e247d1bcc3dab8" +dependencies = [ + "base64 0.22.1", + "http-body 1.0.1", + "hyper 1.7.0", + "hyper-rustls 0.27.7", + "hyper-util", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "rustls 0.23.31", "rustls-platform-verifier", "serde", @@ -5409,6 +5485,19 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "jsonrpsee-proc-macros" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2da3f8ab5ce1bb124b6d082e62dffe997578ceaf0aeb9f3174a214589dc00f07" +dependencies = [ + "heck 0.5.0", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "jsonrpsee-server" version = "0.25.1" @@ -5421,8 +5510,35 @@ dependencies = [ "http-body-util", "hyper 1.7.0", "hyper-util", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.25.1", + "jsonrpsee-types 0.25.1", + "pin-project", + "route-recognizer", + "serde", + "serde_json", + "soketto", + "thiserror 2.0.16", + "tokio", + "tokio-stream", + "tokio-util", + "tower", + "tracing", +] + +[[package]] +name = "jsonrpsee-server" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c51b7c290bb68ce3af2d029648148403863b982f138484a73f02a9dd52dbd7f" +dependencies = [ + "futures-util", + "http 1.3.1", + "http-body 1.0.1", + "http-body-util", + "hyper 1.7.0", + "hyper-util", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "pin-project", "route-recognizer", "serde", @@ -5448,15 +5564,39 @@ dependencies = [ "thiserror 2.0.16", ] +[[package]] +name = "jsonrpsee-types" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc88ff4688e43cc3fa9883a8a95c6fa27aa2e76c96e610b737b6554d650d7fd5" +dependencies = [ + "http 1.3.1", + "serde", + "serde_json", + "thiserror 2.0.16", +] + [[package]] name = "jsonrpsee-wasm-client" version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b67695cbcf4653f39f8f8738925547e0e23fd9fe315bccf951097b9f6a38781" dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-client-transport 0.25.1", + "jsonrpsee-core 0.25.1", + "jsonrpsee-types 0.25.1", + "tower", +] + +[[package]] +name = "jsonrpsee-wasm-client" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7902885de4779f711a95d82c8da2d7e5f9f3a7c7cfa44d51c067fd1c29d72a3c" +dependencies = [ + "jsonrpsee-client-transport 0.26.0", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "tower", ] @@ -5467,9 +5607,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2da2694c9ff271a9d3ebfe520f6b36820e85133a51be77a3cb549fd615095261" dependencies = [ "http 1.3.1", - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-client-transport 0.25.1", + "jsonrpsee-core 0.25.1", + "jsonrpsee-types 0.25.1", + "tower", + "url", +] + +[[package]] +name = "jsonrpsee-ws-client" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b6fceceeb05301cc4c065ab3bd2fa990d41ff4eb44e4ca1b30fa99c057c3e79" +dependencies = [ + "http 1.3.1", + "jsonrpsee-client-transport 0.26.0", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "tower", "url", ] @@ -6375,9 +6529,9 @@ checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" [[package]] name = "op-alloy-consensus" -version = "0.18.14" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c88d2940558fd69f8f07b3cbd7bb3c02fc7d31159c1a7ba9deede50e7881024" +checksum = "d9ade20c592484ba1ea538006e0454284174447a3adf9bb59fa99ed512f95493" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -6393,9 +6547,9 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" -version = "0.18.14" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2b4f977b51e9e177e69a4d241ab7c4b439df9a3a5a998c000ae01be724de271" +checksum = "d4256b1eda5766a9fa7de5874e54515994500bef632afda41e940aed015f9455" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -6414,12 +6568,12 @@ dependencies = [ [[package]] name = "op-revm" -version = "8.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ba21d705bbbfc947a423cba466d75e4af0c7d43ee89ba0a0f1cfa04963cede9" dependencies = [ "auto_impl", - "once_cell", - "revm", + "revm 29.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] @@ -7528,8 +7682,8 @@ checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" [[package]] name = "reth-basic-payload-builder" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7552,8 +7706,8 @@ dependencies = [ [[package]] name = "reth-chain-state" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7573,8 +7727,8 @@ dependencies = [ "reth-primitives-traits", "reth-storage-api", "reth-trie", - "revm-database", - "revm-state", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", "tokio", "tokio-stream", @@ -7583,8 +7737,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-chains", "alloy-consensus 1.0.30", @@ -7603,8 +7757,8 @@ dependencies = [ [[package]] name = "reth-cli" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-genesis", "clap", @@ -7617,10 +7771,9 @@ dependencies = [ [[package]] name = "reth-cli-commands" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ - "ahash 0.8.12", "alloy-chains", "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7634,6 +7787,7 @@ dependencies = [ "fdlimit", "futures", "human_bytes", + "humantime", "itertools 0.14.0", "lz4", "ratatui", @@ -7677,6 +7831,7 @@ dependencies = [ "reth-static-file", "reth-static-file-types", "reth-trie", + "reth-trie-common", "reth-trie-db", "secp256k1 0.30.0", "serde", @@ -7686,12 +7841,13 @@ dependencies = [ "tokio-stream", "toml", "tracing", + "zstd", ] [[package]] name = "reth-cli-runner" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "reth-tasks", "tokio", @@ -7700,8 +7856,8 @@ dependencies = [ [[package]] name = "reth-cli-util" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -7717,8 +7873,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7737,8 +7893,8 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "convert_case", "proc-macro2", @@ -7748,8 +7904,8 @@ dependencies = [ [[package]] name = "reth-config" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "eyre", "humantime-serde", @@ -7763,8 +7919,8 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -7776,8 +7932,8 @@ dependencies = [ [[package]] name = "reth-consensus-common" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7788,8 +7944,8 @@ dependencies = [ [[package]] name = "reth-consensus-debug-client" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -7813,10 +7969,11 @@ dependencies = [ [[package]] name = "reth-db" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", + "dashmap 6.1.0", "derive_more", "eyre", "metrics", @@ -7839,8 +7996,8 @@ dependencies = [ [[package]] name = "reth-db-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-genesis", @@ -7868,8 +8025,8 @@ dependencies = [ [[package]] name = "reth-db-common" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-genesis", @@ -7898,8 +8055,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -7913,8 +8070,8 @@ dependencies = [ [[package]] name = "reth-discv4" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7939,8 +8096,8 @@ dependencies = [ [[package]] name = "reth-discv5" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7963,8 +8120,8 @@ dependencies = [ [[package]] name = "reth-dns-discovery" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "data-encoding", @@ -7987,8 +8144,8 @@ dependencies = [ [[package]] name = "reth-downloaders" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8022,12 +8179,11 @@ dependencies = [ [[package]] name = "reth-e2e-test-utils" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", - "alloy-genesis", "alloy-network", "alloy-primitives", "alloy-provider", @@ -8039,7 +8195,7 @@ dependencies = [ "derive_more", "eyre", "futures-util", - "jsonrpsee", + "jsonrpsee 0.26.0", "reth-chainspec", "reth-cli-commands", "reth-config", @@ -8047,9 +8203,7 @@ dependencies = [ "reth-db", "reth-db-common", "reth-engine-local", - "reth-ethereum-consensus", "reth-ethereum-primitives", - "reth-evm", "reth-network-api", "reth-network-p2p", "reth-network-peers", @@ -8063,18 +8217,15 @@ dependencies = [ "reth-primitives", "reth-primitives-traits", "reth-provider", - "reth-prune-types", "reth-rpc-api", "reth-rpc-builder", "reth-rpc-eth-api", - "reth-rpc-layer", "reth-rpc-server-types", "reth-stages-types", - "reth-static-file", "reth-tasks", "reth-tokio-util", "reth-tracing", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "serde_json", "tempfile", "tokio", @@ -8085,8 +8236,8 @@ dependencies = [ [[package]] name = "reth-ecies" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "aes", "alloy-primitives", @@ -8116,8 +8267,8 @@ dependencies = [ [[package]] name = "reth-engine-local" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8139,8 +8290,8 @@ dependencies = [ [[package]] name = "reth-engine-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8164,8 +8315,8 @@ dependencies = [ [[package]] name = "reth-engine-service" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "futures", "pin-project", @@ -8187,8 +8338,8 @@ dependencies = [ [[package]] name = "reth-engine-tree" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8210,6 +8361,7 @@ dependencies = [ "reth-errors", "reth-ethereum-primitives", "reth-evm", + "reth-execution-types", "reth-metrics", "reth-network-p2p", "reth-payload-builder", @@ -8229,9 +8381,10 @@ dependencies = [ "reth-trie-parallel", "reth-trie-sparse", "reth-trie-sparse-parallel", - "revm", - "revm-primitives", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "schnellru", + "smallvec", "thiserror 2.0.16", "tokio", "tracing", @@ -8239,8 +8392,8 @@ dependencies = [ [[package]] name = "reth-engine-util" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-rpc-types-engine 1.0.30", @@ -8267,8 +8420,8 @@ dependencies = [ [[package]] name = "reth-era" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8283,8 +8436,8 @@ dependencies = [ [[package]] name = "reth-era-downloader" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "bytes", @@ -8298,18 +8451,16 @@ dependencies = [ [[package]] name = "reth-era-utils" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", - "alloy-rlp", "eyre", "futures-util", "reth-db-api", "reth-era", "reth-era-downloader", - "reth-ethereum-primitives", "reth-etl", "reth-fs-util", "reth-primitives-traits", @@ -8322,8 +8473,8 @@ dependencies = [ [[package]] name = "reth-errors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -8333,8 +8484,8 @@ dependencies = [ [[package]] name = "reth-eth-wire" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-chains", "alloy-primitives", @@ -8361,8 +8512,8 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-chains", "alloy-consensus 1.0.30", @@ -8382,8 +8533,8 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8398,8 +8549,8 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -8416,8 +8567,8 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -8430,15 +8581,17 @@ dependencies = [ [[package]] name = "reth-ethereum-payload-builder" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", "alloy-primitives", + "alloy-rlp", "alloy-rpc-types-engine 1.0.30", "reth-basic-payload-builder", "reth-chainspec", + "reth-consensus-common", "reth-errors", "reth-ethereum-primitives", "reth-evm", @@ -8451,14 +8604,14 @@ dependencies = [ "reth-revm", "reth-storage-api", "reth-transaction-pool", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "tracing", ] [[package]] name = "reth-ethereum-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8475,8 +8628,8 @@ dependencies = [ [[package]] name = "reth-etl" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "rayon", "reth-db-api", @@ -8485,8 +8638,8 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8503,14 +8656,14 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-trie-common", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "scroll-alloy-evm", ] [[package]] name = "reth-evm-ethereum" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8524,13 +8677,13 @@ dependencies = [ "reth-execution-types", "reth-primitives-traits", "reth-storage-errors", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", ] [[package]] name = "reth-execution-errors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-evm", "alloy-primitives", @@ -8542,8 +8695,8 @@ dependencies = [ [[package]] name = "reth-execution-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8553,15 +8706,15 @@ dependencies = [ "reth-ethereum-primitives", "reth-primitives-traits", "reth-trie-common", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "serde", "serde_with", ] [[package]] name = "reth-exex" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8598,8 +8751,8 @@ dependencies = [ [[package]] name = "reth-exex-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -8612,8 +8765,8 @@ dependencies = [ [[package]] name = "reth-fs-util" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "serde", "serde_json", @@ -8622,8 +8775,8 @@ dependencies = [ [[package]] name = "reth-invalid-block-hooks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8631,9 +8784,8 @@ dependencies = [ "alloy-rpc-types-debug", "eyre", "futures", - "jsonrpsee", + "jsonrpsee 0.26.0", "pretty_assertions", - "reth-chainspec", "reth-engine-primitives", "reth-evm", "reth-primitives-traits", @@ -8642,22 +8794,22 @@ dependencies = [ "reth-rpc-api", "reth-tracing", "reth-trie", - "revm-bytecode", - "revm-database", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", "serde_json", ] [[package]] name = "reth-ipc" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "bytes", "futures", "futures-util", "interprocess", - "jsonrpsee", + "jsonrpsee 0.26.0", "pin-project", "serde_json", "thiserror 2.0.16", @@ -8670,14 +8822,13 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "bitflags 2.9.4", "byteorder", "dashmap 6.1.0", "derive_more", - "indexmap 2.11.0", "parking_lot 0.12.4", "reth-mdbx-sys", "smallvec", @@ -8687,8 +8838,8 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "bindgen 0.70.1", "cc", @@ -8696,8 +8847,8 @@ dependencies = [ [[package]] name = "reth-metrics" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "futures", "metrics", @@ -8708,16 +8859,16 @@ dependencies = [ [[package]] name = "reth-net-banlist" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", ] [[package]] name = "reth-net-nat" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "futures-util", "if-addrs", @@ -8730,8 +8881,8 @@ dependencies = [ [[package]] name = "reth-network" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8749,7 +8900,6 @@ dependencies = [ "parking_lot 0.12.4", "pin-project", "rand 0.8.5", - "rand 0.9.2", "reth-chainspec", "reth-consensus", "reth-discv4", @@ -8786,8 +8936,8 @@ dependencies = [ [[package]] name = "reth-network-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -8812,8 +8962,8 @@ dependencies = [ [[package]] name = "reth-network-p2p" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8835,8 +8985,8 @@ dependencies = [ [[package]] name = "reth-network-peers" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -8850,8 +9000,8 @@ dependencies = [ [[package]] name = "reth-network-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eip2124", "humantime-serde", @@ -8864,8 +9014,8 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "anyhow", "bincode", @@ -8881,8 +9031,8 @@ dependencies = [ [[package]] name = "reth-node-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-rpc-types-engine 1.0.30", "eyre", @@ -8905,8 +9055,8 @@ dependencies = [ [[package]] name = "reth-node-builder" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -8918,7 +9068,7 @@ dependencies = [ "eyre", "fdlimit", "futures", - "jsonrpsee", + "jsonrpsee 0.26.0", "rayon", "reth-basic-payload-builder", "reth-chain-state", @@ -8973,8 +9123,8 @@ dependencies = [ [[package]] name = "reth-node-core" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9025,8 +9175,8 @@ dependencies = [ [[package]] name = "reth-node-ethereum" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-network", @@ -9057,14 +9207,14 @@ dependencies = [ "reth-rpc-server-types", "reth-tracing", "reth-transaction-pool", - "reth-trie-db", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "tokio", ] [[package]] name = "reth-node-ethstats" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9087,8 +9237,8 @@ dependencies = [ [[package]] name = "reth-node-events" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9111,12 +9261,12 @@ dependencies = [ [[package]] name = "reth-node-metrics" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "eyre", "http 1.3.1", - "jsonrpsee-server", + "jsonrpsee-server 0.26.0", "metrics", "metrics-exporter-prometheus", "metrics-process", @@ -9131,21 +9281,20 @@ dependencies = [ [[package]] name = "reth-node-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "reth-chainspec", "reth-db-api", "reth-engine-primitives", "reth-payload-primitives", "reth-primitives-traits", - "reth-trie-db", ] [[package]] name = "reth-optimism-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9163,8 +9312,8 @@ dependencies = [ [[package]] name = "reth-payload-builder" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9184,8 +9333,8 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "pin-project", "reth-payload-primitives", @@ -9196,8 +9345,8 @@ dependencies = [ [[package]] name = "reth-payload-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -9216,8 +9365,8 @@ dependencies = [ [[package]] name = "reth-payload-util" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9226,8 +9375,8 @@ dependencies = [ [[package]] name = "reth-payload-validator" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-rpc-types-engine 1.0.30", @@ -9236,8 +9385,8 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "c-kzg", @@ -9250,8 +9399,8 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9272,9 +9421,9 @@ dependencies = [ "proptest-arbitrary-interop", "rayon", "reth-codecs", - "revm-bytecode", - "revm-primitives", - "revm-state", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "scroll-alloy-consensus", "secp256k1 0.30.0", "serde", @@ -9284,8 +9433,8 @@ dependencies = [ [[package]] name = "reth-provider" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9320,8 +9469,8 @@ dependencies = [ "reth-storage-errors", "reth-trie", "reth-trie-db", - "revm-database", - "revm-state", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "strum 0.27.2", "tokio", "tracing", @@ -9329,8 +9478,8 @@ dependencies = [ [[package]] name = "reth-prune" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9357,8 +9506,8 @@ dependencies = [ [[package]] name = "reth-prune-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "arbitrary", @@ -9371,21 +9520,21 @@ dependencies = [ [[package]] name = "reth-revm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "reth-primitives-traits", "reth-storage-api", "reth-storage-errors", "reth-trie", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", ] [[package]] name = "reth-rpc" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-dyn-abi", @@ -9395,6 +9544,7 @@ dependencies = [ "alloy-network", "alloy-primitives", "alloy-rlp", + "alloy-rpc-client", "alloy-rpc-types", "alloy-rpc-types-admin", "alloy-rpc-types-beacon 1.0.30", @@ -9414,14 +9564,15 @@ dependencies = [ "http-body 1.0.1", "hyper 1.7.0", "itertools 0.14.0", - "jsonrpsee", - "jsonrpsee-types", + "jsonrpsee 0.26.0", + "jsonrpsee-types 0.26.0", "jsonwebtoken", "parking_lot 0.12.4", "pin-project", "reth-chain-state", "reth-chainspec", "reth-consensus", + "reth-consensus-common", "reth-engine-primitives", "reth-errors", "reth-evm", @@ -9445,9 +9596,9 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "reth-trie-common", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "revm-inspectors", - "revm-primitives", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "serde", "serde_json", "sha2 0.10.9", @@ -9461,8 +9612,8 @@ dependencies = [ [[package]] name = "reth-rpc-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-genesis", @@ -9479,7 +9630,7 @@ dependencies = [ "alloy-rpc-types-trace", "alloy-rpc-types-txpool", "alloy-serde 1.0.30", - "jsonrpsee", + "jsonrpsee 0.26.0", "reth-chain-state", "reth-engine-primitives", "reth-network-peers", @@ -9489,13 +9640,13 @@ dependencies = [ [[package]] name = "reth-rpc-builder" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-network", "alloy-provider", "http 1.3.1", - "jsonrpsee", + "jsonrpsee 0.26.0", "metrics", "pin-project", "reth-chain-state", @@ -9527,8 +9678,8 @@ dependencies = [ [[package]] name = "reth-rpc-convert" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-json-rpc", @@ -9536,13 +9687,13 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", "alloy-signer", - "jsonrpsee-types", + "jsonrpsee-types 0.26.0", "reth-ethereum-primitives", "reth-evm", "reth-primitives-traits", "reth-scroll-primitives", "reth-storage-api", - "revm-context", + "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-evm", @@ -9552,15 +9703,15 @@ dependencies = [ [[package]] name = "reth-rpc-engine-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", "alloy-rpc-types-engine 1.0.30", "async-trait", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "metrics", "parking_lot 0.12.4", "reth-chainspec", @@ -9582,8 +9733,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-dyn-abi", @@ -9600,8 +9751,8 @@ dependencies = [ "auto_impl", "dyn-clone", "futures", - "jsonrpsee", - "jsonrpsee-types", + "jsonrpsee 0.26.0", + "jsonrpsee-types 0.26.0", "parking_lot 0.12.4", "reth-chain-state", "reth-chainspec", @@ -9619,7 +9770,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "reth-trie-common", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "revm-inspectors", "tokio", "tracing", @@ -9627,23 +9778,26 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", "alloy-evm", "alloy-network", "alloy-primitives", + "alloy-rpc-client", "alloy-rpc-types-eth", "alloy-sol-types", + "alloy-transport", "derive_more", "futures", "itertools 0.14.0", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "metrics", "rand 0.9.2", + "reqwest", "reth-chain-state", "reth-chainspec", "reth-errors", @@ -9659,7 +9813,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "reth-trie", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "revm-inspectors", "schnellru", "serde", @@ -9671,12 +9825,12 @@ dependencies = [ [[package]] name = "reth-rpc-layer" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-rpc-types-engine 1.0.30", "http 1.3.1", - "jsonrpsee-http-client", + "jsonrpsee-http-client 0.26.0", "pin-project", "tower", "tower-http", @@ -9685,14 +9839,14 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", "alloy-rpc-types-engine 1.0.30", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.26.0", + "jsonrpsee-types 0.26.0", "reth-errors", "reth-network-api", "serde", @@ -9701,8 +9855,8 @@ dependencies = [ [[package]] name = "reth-scroll-chainspec" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-chains", "alloy-consensus 1.0.30", @@ -9726,8 +9880,8 @@ dependencies = [ [[package]] name = "reth-scroll-cli" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "clap", "eyre", @@ -9750,8 +9904,8 @@ dependencies = [ [[package]] name = "reth-scroll-consensus" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9770,8 +9924,8 @@ dependencies = [ [[package]] name = "reth-scroll-engine-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9795,8 +9949,8 @@ dependencies = [ [[package]] name = "reth-scroll-evm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9813,8 +9967,8 @@ dependencies = [ "reth-scroll-forks", "reth-scroll-primitives", "reth-storage-api", - "revm", - "revm-primitives", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-evm", @@ -9825,8 +9979,8 @@ dependencies = [ [[package]] name = "reth-scroll-forks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-chains", "alloy-primitives", @@ -9839,8 +9993,8 @@ dependencies = [ [[package]] name = "reth-scroll-node" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-genesis", @@ -9878,7 +10032,7 @@ dependencies = [ "reth-tracing", "reth-transaction-pool", "reth-trie-db", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "scroll-alloy-consensus", "scroll-alloy-evm", "scroll-alloy-hardforks", @@ -9891,8 +10045,8 @@ dependencies = [ [[package]] name = "reth-scroll-payload" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -9914,7 +10068,7 @@ dependencies = [ "reth-scroll-primitives", "reth-storage-api", "reth-transaction-pool", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "scroll-alloy-hardforks", "thiserror 2.0.16", "tracing", @@ -9922,8 +10076,8 @@ dependencies = [ [[package]] name = "reth-scroll-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9942,8 +10096,8 @@ dependencies = [ [[package]] name = "reth-scroll-rpc" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -9954,7 +10108,7 @@ dependencies = [ "alloy-transport", "alloy-transport-http", "eyre", - "jsonrpsee-types", + "jsonrpsee-types 0.26.0", "reqwest", "reth-chainspec", "reth-evm", @@ -9971,7 +10125,7 @@ dependencies = [ "reth-scroll-primitives", "reth-tasks", "reth-transaction-pool", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "scroll-alloy-consensus", "scroll-alloy-hardforks", "scroll-alloy-network", @@ -9983,8 +10137,8 @@ dependencies = [ [[package]] name = "reth-scroll-txpool" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10007,14 +10161,13 @@ dependencies = [ [[package]] name = "reth-stages" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", "alloy-primitives", "bincode", - "blake3", "eyre", "futures-util", "itertools 0.14.0", @@ -10048,7 +10201,6 @@ dependencies = [ "reth-testing-utils", "reth-trie", "reth-trie-db", - "serde", "tempfile", "thiserror 2.0.16", "tokio", @@ -10057,8 +10209,8 @@ dependencies = [ [[package]] name = "reth-stages-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -10084,8 +10236,8 @@ dependencies = [ [[package]] name = "reth-stages-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "arbitrary", @@ -10098,8 +10250,8 @@ dependencies = [ [[package]] name = "reth-static-file" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "parking_lot 0.12.4", @@ -10118,8 +10270,8 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "clap", @@ -10130,8 +10282,8 @@ dependencies = [ [[package]] name = "reth-storage-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10148,14 +10300,13 @@ dependencies = [ "reth-stages-types", "reth-storage-errors", "reth-trie-common", - "reth-trie-db", - "revm-database", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", ] [[package]] name = "reth-storage-errors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -10164,14 +10315,14 @@ dependencies = [ "reth-primitives-traits", "reth-prune-types", "reth-static-file-types", - "revm-database-interface", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", "thiserror 2.0.16", ] [[package]] name = "reth-tasks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "auto_impl", "dyn-clone", @@ -10188,8 +10339,8 @@ dependencies = [ [[package]] name = "reth-testing-utils" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10204,8 +10355,8 @@ dependencies = [ [[package]] name = "reth-tokio-util" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "tokio", "tokio-stream", @@ -10214,8 +10365,8 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "clap", "eyre", @@ -10229,8 +10380,8 @@ dependencies = [ [[package]] name = "reth-transaction-pool" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10243,6 +10394,7 @@ dependencies = [ "metrics", "parking_lot 0.12.4", "paste", + "pin-project", "rand 0.9.2", "reth-chain-state", "reth-chainspec", @@ -10254,8 +10406,8 @@ dependencies = [ "reth-primitives-traits", "reth-storage-api", "reth-tasks", - "revm-interpreter", - "revm-primitives", + "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "rustc-hash 2.1.1", "schnellru", "serde", @@ -10269,8 +10421,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -10287,15 +10439,15 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm-database", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", "tracing", "triehash", ] [[package]] name = "reth-trie-common" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-primitives", @@ -10312,15 +10464,15 @@ dependencies = [ "plain_hasher", "reth-codecs", "reth-primitives-traits", - "revm-database", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", "serde_with", ] [[package]] name = "reth-trie-db" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "reth-db-api", @@ -10332,8 +10484,8 @@ dependencies = [ [[package]] name = "reth-trie-parallel" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10357,8 +10509,8 @@ dependencies = [ [[package]] name = "reth-trie-sparse" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10376,8 +10528,8 @@ dependencies = [ [[package]] name = "reth-trie-sparse-parallel" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10394,8 +10546,8 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "zstd", ] @@ -10411,129 +10563,257 @@ dependencies = [ [[package]] name = "revm" -version = "27.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "29.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c278b6ee9bba9e25043e3fae648fdce632d1944d3ba16f5203069b43bddd57f" +dependencies = [ + "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context 9.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-handler 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-inspector 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-interpreter 25.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-precompile 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "revm" +version = "29.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ - "revm-bytecode", - "revm-context", - "revm-context-interface", - "revm-database", - "revm-database-interface", - "revm-handler", - "revm-inspector", - "revm-interpreter", - "revm-precompile", - "revm-primitives", - "revm-state", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", + "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-handler 10.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-inspector 10.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-precompile 27.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", ] [[package]] name = "revm-bytecode" -version = "6.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "6.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66c52031b73cae95d84cd1b07725808b5fd1500da3e5e24574a3b2dc13d9f16d" dependencies = [ "bitvec", - "once_cell", "phf", - "revm-primitives", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "revm-bytecode" +version = "6.2.2" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "bitvec", + "phf", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "serde", +] + +[[package]] +name = "revm-context" +version = "9.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fb02c5dab3b535aa5b18277b1d21c5117a25d42af717e6ce133df0ea56663e1" +dependencies = [ + "bitvec", + "cfg-if", + "derive-where", + "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] [[package]] name = "revm-context" -version = "8.0.4" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "9.0.2" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ + "bitvec", "cfg-if", "derive-where", - "revm-bytecode", - "revm-context-interface", - "revm-database-interface", - "revm-primitives", - "revm-state", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", ] [[package]] name = "revm-context-interface" -version = "9.0.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b8e9311d27cf75fbf819e7ba4ca05abee1ae02e44ff6a17301c7ab41091b259" dependencies = [ "alloy-eip2930", "alloy-eip7702", "auto_impl", "either", - "revm-database-interface", - "revm-primitives", - "revm-state", + "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "revm-context-interface" +version = "10.1.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "either", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "serde", +] + +[[package]] +name = "revm-database" +version = "7.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39a276ed142b4718dcf64bc9624f474373ed82ef20611025045c3fb23edbef9c" +dependencies = [ + "alloy-eips 1.0.30", + "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] [[package]] name = "revm-database" -version = "7.0.2" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "7.0.5" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "alloy-eips 1.0.30", - "revm-bytecode", - "revm-database-interface", - "revm-primitives", - "revm-state", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", ] [[package]] name = "revm-database-interface" -version = "7.0.2" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "7.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c523c77e74eeedbac5d6f7c092e3851dbe9c7fec6f418b85992bd79229db361" dependencies = [ "auto_impl", "either", - "revm-primitives", - "revm-state", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "revm-database-interface" +version = "7.0.5" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "auto_impl", + "either", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "serde", +] + +[[package]] +name = "revm-handler" +version = "10.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "528d2d81cc918d311b8231c35330fac5fba8b69766ddc538833e2b5593ee016e" +dependencies = [ + "auto_impl", + "derive-where", + "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context 9.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-interpreter 25.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-precompile 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] [[package]] name = "revm-handler" -version = "8.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "auto_impl", "derive-where", - "revm-bytecode", - "revm-context", - "revm-context-interface", - "revm-database-interface", - "revm-interpreter", - "revm-precompile", - "revm-primitives", - "revm-state", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-precompile 27.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", ] [[package]] name = "revm-inspector" -version = "8.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf443b664075999a14916b50c5ae9e35a7d71186873b8f8302943d50a672e5e0" dependencies = [ "auto_impl", "either", - "revm-context", - "revm-database-interface", - "revm-handler", - "revm-interpreter", - "revm-primitives", - "revm-state", + "revm-context 9.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-handler 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-interpreter 25.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", + "serde_json", +] + +[[package]] +name = "revm-inspector" +version = "10.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "auto_impl", + "either", + "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-handler 10.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", "serde", "serde_json", ] [[package]] name = "revm-inspectors" -version = "0.27.2" +version = "0.29.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc2c1ee7db275fd7176cd1d873fa033e5a16e029c5c793661c5a13381e80534" +checksum = "8fdb678b03faa678a7007a7c761a78efa9ca9adcd9434ef3d1ad894aec6e43d1" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -10543,7 +10823,7 @@ dependencies = [ "boa_engine", "boa_gc", "colorchoice", - "revm", + "revm 29.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "serde_json", "thiserror 2.0.16", @@ -10551,19 +10831,56 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "24.0.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "25.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d6406b711fac73b4f13120f359ed8e65964380dd6182bd12c4c09ad0d4641f" +dependencies = [ + "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "revm-interpreter" +version = "25.0.2" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ - "revm-bytecode", - "revm-context-interface", - "revm-primitives", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "serde", ] [[package]] name = "revm-precompile" -version = "25.0.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "27.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25b57d4bd9e6b5fe469da5452a8a137bc2d030a3cd47c46908efc615bbc699da" +dependencies = [ + "ark-bls12-381", + "ark-bn254", + "ark-ec", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "arrayref", + "aurora-engine-modexp", + "c-kzg", + "cfg-if", + "k256", + "libsecp256k1", + "p256", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "ripemd", + "rug", + "secp256k1 0.31.1", + "sha2 0.10.9", +] + +[[package]] +name = "revm-precompile" +version = "27.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -10577,9 +10894,8 @@ dependencies = [ "cfg-if", "k256", "libsecp256k1", - "once_cell", "p256", - "revm-primitives", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "ripemd", "rug", "secp256k1 0.31.1", @@ -10588,36 +10904,61 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "20.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "20.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aa29d9da06fe03b249b6419b33968ecdf92ad6428e2f012dc57bcd619b5d94e" dependencies = [ "alloy-primitives", "num_enum", + "once_cell", + "serde", +] + +[[package]] +name = "revm-primitives" +version = "20.2.1" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "alloy-primitives", + "num_enum", + "once_cell", "serde", ] [[package]] name = "revm-scroll" version = "0.1.0" -source = "git+https://github.com/scroll-tech/scroll-revm#59d400f1a0b616d7b97a24da1cb5b8dcb8006f4b" +source = "git+https://github.com/scroll-tech/scroll-revm#e424e5400e4bb225cbb48b22bd8d7f342832c039" dependencies = [ "auto_impl", "enumn", "once_cell", - "revm", - "revm-inspector", - "revm-primitives", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-inspector 10.0.0 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "serde", +] + +[[package]] +name = "revm-state" +version = "7.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f64fbacb86008394aaebd3454f9643b7d5a782bd251135e17c5b33da592d84d" +dependencies = [ + "bitflags 2.9.4", + "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] [[package]] name = "revm-state" -version = "7.0.2" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "7.0.5" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "bitflags 2.9.4", - "revm-bytecode", - "revm-primitives", + "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", + "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", "serde", ] @@ -10772,7 +11113,7 @@ dependencies = [ "color-eyre", "eyre", "futures", - "jsonrpsee", + "jsonrpsee 0.25.1", "reqwest", "reth-chainspec", "reth-cli-util", @@ -11425,8 +11766,8 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scroll-alloy-consensus" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -11444,8 +11785,8 @@ dependencies = [ [[package]] name = "scroll-alloy-evm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -11453,7 +11794,7 @@ dependencies = [ "alloy-primitives", "auto_impl", "encoder-standard", - "revm", + "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-hardforks", @@ -11462,8 +11803,8 @@ dependencies = [ [[package]] name = "scroll-alloy-hardforks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-hardforks", "auto_impl", @@ -11472,8 +11813,8 @@ dependencies = [ [[package]] name = "scroll-alloy-network" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-network", @@ -11487,8 +11828,8 @@ dependencies = [ [[package]] name = "scroll-alloy-provider" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-provider", @@ -11500,7 +11841,7 @@ dependencies = [ "derive_more", "eyre", "http-body-util", - "jsonrpsee", + "jsonrpsee 0.26.0", "reqwest", "reth-rpc-api", "reth-scroll-engine-primitives", @@ -11512,8 +11853,8 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-consensus 1.0.30", "alloy-eips 1.0.30", @@ -11529,8 +11870,8 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types-engine" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git?branch=feat/announce-new-block-to-all#27953e00eed880cc66f9e80f3db468d2766a1967" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235f893545f347e70" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine 1.0.30", diff --git a/Cargo.toml b/Cargo.toml index 32dbfce2..497b0c15 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -134,58 +134,58 @@ alloy-signer-local = { version = "1.0.13", default-features = false } alloy-transport = { version = "1.0.13", default-features = false } # scroll-alloy -scroll-alloy-consensus = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -scroll-alloy-hardforks = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -scroll-alloy-network = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -scroll-alloy-provider = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -scroll-alloy-evm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -scroll-alloy-rpc-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -scroll-alloy-rpc-types-engine = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +scroll-alloy-consensus = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-hardforks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-network = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-provider = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-evm = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-rpc-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +scroll-alloy-rpc-types-engine = { git = "https://github.com/scroll-tech/reth.git", default-features = false } # reth -reth-chainspec = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-e2e-test-utils = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all" } -reth-eth-wire = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-eth-wire-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-network = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-network-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-network-p2p = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-network-peers = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-network-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-node-builder = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-node-core = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-node-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-node-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-payload-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-primitives-traits = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-provider = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-rpc-builder = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-rpc-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-rpc-eth-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-rpc-eth-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-rpc-server-types = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-storage-api = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-tasks = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-tokio-util = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-tracing = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-transaction-pool = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-trie-db = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-testing-utils = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-revm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-evm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-engine-local = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-cli-util = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-chainspec = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-e2e-test-utils = { git = "https://github.com/scroll-tech/reth.git" } +reth-eth-wire = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-eth-wire-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network-p2p = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network-peers = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-network-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-node-builder = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-node-core = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-node-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-node-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-payload-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-primitives-traits = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-provider = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-rpc-builder = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-rpc-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-rpc-eth-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-rpc-eth-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-rpc-server-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-storage-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-tasks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-tokio-util = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-tracing = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-transaction-pool = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-trie-db = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-testing-utils = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-revm = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-evm = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-engine-local = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-cli-util = { git = "https://github.com/scroll-tech/reth.git", default-features = false } # reth-scroll -reth-scroll-chainspec = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-cli = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-evm = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-rpc = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-engine-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-forks = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-node = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } -reth-scroll-primitives = { git = "https://github.com/scroll-tech/reth.git", branch = "feat/announce-new-block-to-all", default-features = false } +reth-scroll-chainspec = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-cli = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-evm = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-rpc = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-engine-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-forks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-node = { git = "https://github.com/scroll-tech/reth.git", default-features = false } +reth-scroll-primitives = { git = "https://github.com/scroll-tech/reth.git", default-features = false } # rollup node rollup-node = { path = "crates/node" } @@ -227,6 +227,52 @@ tokio-stream = { version = "0.1", default-features = false } tracing = "0.1.0" getrandom = { version = "0.2", features = ["js"] } -[patch.crates-io] -revm = { git = "https://github.com/scroll-tech/revm" } -op-revm = { git = "https://github.com/scroll-tech/revm" } +# [patch."https://github.com/scroll-tech/reth.git"] +# reth-chainspec = { path = "../reth/crates/chainspec" } +# reth-e2e-test-utils = { path = "../reth/crates/e2e-test-utils" } +# reth-eth-wire-types = { path = "../reth/crates/net/eth-wire-types" } +# reth-network = { path = "../reth/crates/net/network" } +# reth-network-api = { path = "../reth/crates/net/network-api" } +# reth-network-peers = { path = "../reth/crates/net/peers" } +# reth-network-p2p = { path = "../reth/crates/net/p2p" } +# reth-network-types = { path = "../reth/crates/net/network-types" } +# reth-node-builder = { path = "../reth/crates/node/builder" } +# reth-node-core = { path = "../reth/crates/node/core" } +# reth-node-api = { path = "../reth/crates/node/api" } +# reth-node-types = { path = "../reth/crates/node/types" } +# reth-payload-primitives = { path = "../reth/crates/payload/primitives" } +# reth-primitives = { path = "../reth/crates/primitives" } +# reth-primitives-traits = { path = "../reth/crates/primitives-traits" } +# reth-provider = { path = "../reth/crates/storage/provider" } +# reth-rpc-builder = { path = "../reth/crates/rpc/rpc-builder" } +# reth-rpc-server-types = { path = "../reth/crates/rpc/rpc-server-types" } +# reth-rpc-api = { path = "../reth/crates/rpc/rpc-api" } +# reth-rpc-eth-api = { path = "../reth/crates/rpc/rpc-eth-api" } +# reth-rpc-eth-types = { path = "../reth/crates/rpc/rpc-eth-types" } +# reth-storage-api = { path = "../reth/crates/storage/storage-api" } +# reth-tasks = { path = "../reth/crates/tasks" } +# reth-tokio-util = { path = "../reth/crates/tokio-util" } +# reth-tracing = { path = "../reth/crates/tracing" } +# reth-transaction-pool = { path = "../reth/crates/transaction-pool" } +# reth-trie-db = { path = "../reth/crates/trie/db" } +# reth-testing-utils = { path = "../reth/testing/testing-utils" } +# reth-revm = { path = "../reth/crates/revm" } +# reth-evm = { path = "../reth/crates/evm/evm" } +# reth-cli-util = { path = "../reth/crates/cli/util" } +# reth-engine-local = { path = "../reth/crates/engine/local" } +# reth-eth-wire = { path = "../reth/crates/net/eth-wire" } +# scroll-alloy-consensus = { path = "../reth/crates/scroll/alloy/consensus" } +# scroll-alloy-hardforks = { path = "../reth/crates/scroll/alloy/hardforks" } +# scroll-alloy-network = { path = "../reth/crates/scroll/alloy/network" } +# scroll-alloy-provider = { path = "../reth/crates/scroll/alloy/provider" } +# scroll-alloy-rpc-types-engine = { path = "../reth/crates/scroll/alloy/rpc-types-engine" } +# scroll-alloy-evm = { path = "../reth/crates/scroll/alloy/evm" } +# scroll-alloy-rpc-types = { path = "../reth/crates/scroll/alloy/rpc-types" } +# reth-scroll-chainspec = { path = "../reth/crates/scroll/chainspec" } +# reth-scroll-engine-primitives = { path = "../reth/crates/scroll/engine-primitives" } +# reth-scroll-forks = { path = "../reth/crates/scroll/hardforks" } +# reth-scroll-node = { path = "../reth/crates/scroll/node" } +# reth-scroll-primitives = { path = "../reth/crates/scroll/primitives" } +# reth-scroll-evm = { path = "../reth/crates/scroll/evm" } +# reth-scroll-cli = { path = "../reth/crates/scroll/cli" } +# reth-scroll-rpc = { path = "../reth/crates/scroll/rpc" } From 8d47314e0ab7f196eec78860b4da0cfa6f729792 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 18 Sep 2025 08:49:54 +0800 Subject: [PATCH 19/25] fix issues after merge --- Cargo.lock | 541 ++++++++------------------------ Cargo.toml | 4 + crates/engine/src/future/mod.rs | 1 - tests/src/docker_compose.rs | 8 +- 4 files changed, 134 insertions(+), 420 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0f75125d..e73959bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -312,7 +312,7 @@ dependencies = [ "derive_more", "op-alloy-consensus", "op-revm", - "revm 29.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm", "thiserror 2.0.16", ] @@ -5283,59 +5283,16 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f3f48dc3e6b8bd21e15436c1ddd0bc22a6a54e8ec46fedd6adf3425f396ec6a" dependencies = [ - "jsonrpsee-client-transport 0.25.1", - "jsonrpsee-core 0.25.1", - "jsonrpsee-http-client 0.25.1", - "jsonrpsee-proc-macros 0.25.1", - "jsonrpsee-server 0.25.1", - "jsonrpsee-types 0.25.1", - "jsonrpsee-wasm-client 0.25.1", - "jsonrpsee-ws-client 0.25.1", - "tokio", - "tracing", -] - -[[package]] -name = "jsonrpsee" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f3f48dc3e6b8bd21e15436c1ddd0bc22a6a54e8ec46fedd6adf3425f396ec6a" -dependencies = [ - "jsonrpsee-client-transport 0.26.0", - "jsonrpsee-core 0.26.0", - "jsonrpsee-http-client 0.26.0", - "jsonrpsee-proc-macros 0.26.0", - "jsonrpsee-server 0.26.0", - "jsonrpsee-types 0.26.0", - "jsonrpsee-wasm-client 0.26.0", - "jsonrpsee-ws-client 0.26.0", - "tokio", - "tracing", -] - -[[package]] -name = "jsonrpsee-client-transport" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf36eb27f8e13fa93dcb50ccb44c417e25b818cfa1a481b5470cd07b19c60b98" -dependencies = [ - "base64 0.22.1", - "futures-channel", - "futures-util", - "gloo-net", - "http 1.3.1", - "jsonrpsee-core 0.25.1", - "pin-project", - "rustls 0.23.31", - "rustls-pki-types", - "rustls-platform-verifier", - "soketto", - "thiserror 2.0.16", + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-http-client", + "jsonrpsee-proc-macros", + "jsonrpsee-server", + "jsonrpsee-types", + "jsonrpsee-wasm-client", + "jsonrpsee-ws-client", "tokio", - "tokio-rustls 0.26.2", - "tokio-util", "tracing", - "url", ] [[package]] @@ -5349,7 +5306,7 @@ dependencies = [ "futures-util", "gloo-net", "http 1.3.1", - "jsonrpsee-core 0.26.0", + "jsonrpsee-core", "pin-project", "rustls 0.23.31", "rustls-pki-types", @@ -5376,35 +5333,7 @@ dependencies = [ "http 1.3.1", "http-body 1.0.1", "http-body-util", - "jsonrpsee-types 0.25.1", - "parking_lot 0.12.4", - "pin-project", - "rand 0.9.2", - "rustc-hash 2.1.1", - "serde", - "serde_json", - "thiserror 2.0.16", - "tokio", - "tokio-stream", - "tower", - "tracing", - "wasm-bindgen-futures", -] - -[[package]] -name = "jsonrpsee-core" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "316c96719901f05d1137f19ba598b5fe9c9bc39f4335f67f6be8613921946480" -dependencies = [ - "async-trait", - "bytes", - "futures-timer", - "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "jsonrpsee-types 0.26.0", + "jsonrpsee-types", "parking_lot 0.12.4", "pin-project", "rand 0.9.2", @@ -5430,31 +5359,8 @@ dependencies = [ "hyper 1.7.0", "hyper-rustls 0.27.7", "hyper-util", - "jsonrpsee-core 0.25.1", - "jsonrpsee-types 0.25.1", - "rustls 0.23.31", - "rustls-platform-verifier", - "serde", - "serde_json", - "thiserror 2.0.16", - "tokio", - "tower", - "url", -] - -[[package]] -name = "jsonrpsee-http-client" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "790bedefcec85321e007ff3af84b4e417540d5c87b3c9779b9e247d1bcc3dab8" -dependencies = [ - "base64 0.22.1", - "http-body 1.0.1", - "hyper 1.7.0", - "hyper-rustls 0.27.7", - "hyper-util", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee-core", + "jsonrpsee-types", "rustls 0.23.31", "rustls-platform-verifier", "serde", @@ -5490,35 +5396,8 @@ dependencies = [ "http-body-util", "hyper 1.7.0", "hyper-util", - "jsonrpsee-core 0.25.1", - "jsonrpsee-types 0.25.1", - "pin-project", - "route-recognizer", - "serde", - "serde_json", - "soketto", - "thiserror 2.0.16", - "tokio", - "tokio-stream", - "tokio-util", - "tower", - "tracing", -] - -[[package]] -name = "jsonrpsee-server" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c51b7c290bb68ce3af2d029648148403863b982f138484a73f02a9dd52dbd7f" -dependencies = [ - "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "hyper 1.7.0", - "hyper-util", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee-core", + "jsonrpsee-types", "pin-project", "route-recognizer", "serde", @@ -5550,36 +5429,10 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7902885de4779f711a95d82c8da2d7e5f9f3a7c7cfa44d51c067fd1c29d72a3c" dependencies = [ - "jsonrpsee-client-transport 0.25.1", - "jsonrpsee-core 0.25.1", - "jsonrpsee-types 0.25.1", - "tower", -] - -[[package]] -name = "jsonrpsee-wasm-client" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7902885de4779f711a95d82c8da2d7e5f9f3a7c7cfa44d51c067fd1c29d72a3c" -dependencies = [ - "jsonrpsee-client-transport 0.26.0", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", - "tower", -] - -[[package]] -name = "jsonrpsee-ws-client" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b6fceceeb05301cc4c065ab3bd2fa990d41ff4eb44e4ca1b30fa99c057c3e79" -dependencies = [ - "http 1.3.1", - "jsonrpsee-client-transport 0.25.1", - "jsonrpsee-core 0.25.1", - "jsonrpsee-types 0.25.1", + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-types", "tower", - "url", ] [[package]] @@ -5589,9 +5442,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b6fceceeb05301cc4c065ab3bd2fa990d41ff4eb44e4ca1b30fa99c057c3e79" dependencies = [ "http 1.3.1", - "jsonrpsee-client-transport 0.26.0", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-types", "tower", "url", ] @@ -7694,8 +7547,8 @@ dependencies = [ "reth-primitives-traits", "reth-storage-api", "reth-trie", - "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-database", + "revm-state", "serde", "tokio", "tokio-stream", @@ -8162,7 +8015,7 @@ dependencies = [ "derive_more", "eyre", "futures-util", - "jsonrpsee 0.26.0", + "jsonrpsee", "reth-chainspec", "reth-cli-commands", "reth-config", @@ -8192,7 +8045,7 @@ dependencies = [ "reth-tasks", "reth-tokio-util", "reth-tracing", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "serde_json", "tempfile", "tokio", @@ -8348,8 +8201,8 @@ dependencies = [ "reth-trie-parallel", "reth-trie-sparse", "reth-trie-sparse-parallel", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm", + "revm-primitives", "schnellru", "smallvec", "thiserror 2.0.16", @@ -8571,7 +8424,7 @@ dependencies = [ "reth-revm", "reth-storage-api", "reth-transaction-pool", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "tracing", ] @@ -8623,7 +8476,7 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-trie-common", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "scroll-alloy-evm", ] @@ -8644,7 +8497,7 @@ dependencies = [ "reth-execution-types", "reth-primitives-traits", "reth-storage-errors", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", ] [[package]] @@ -8673,7 +8526,7 @@ dependencies = [ "reth-ethereum-primitives", "reth-primitives-traits", "reth-trie-common", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "serde", "serde_with", ] @@ -8751,7 +8604,7 @@ dependencies = [ "alloy-rpc-types-debug", "eyre", "futures", - "jsonrpsee 0.26.0", + "jsonrpsee", "pretty_assertions", "reth-engine-primitives", "reth-evm", @@ -8761,8 +8614,8 @@ dependencies = [ "reth-rpc-api", "reth-tracing", "reth-trie", - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-bytecode", + "revm-database", "serde", "serde_json", ] @@ -8776,7 +8629,7 @@ dependencies = [ "futures", "futures-util", "interprocess", - "jsonrpsee 0.26.0", + "jsonrpsee", "pin-project", "serde_json", "thiserror 2.0.16", @@ -9035,7 +8888,7 @@ dependencies = [ "eyre", "fdlimit", "futures", - "jsonrpsee 0.26.0", + "jsonrpsee", "rayon", "reth-basic-payload-builder", "reth-chain-state", @@ -9233,7 +9086,7 @@ source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235 dependencies = [ "eyre", "http 1.3.1", - "jsonrpsee-server 0.26.0", + "jsonrpsee-server", "metrics", "metrics-exporter-prometheus", "metrics-process", @@ -9388,9 +9241,9 @@ dependencies = [ "proptest-arbitrary-interop", "rayon", "reth-codecs", - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-bytecode", + "revm-primitives", + "revm-state", "scroll-alloy-consensus", "secp256k1 0.30.0", "serde", @@ -9436,8 +9289,8 @@ dependencies = [ "reth-storage-errors", "reth-trie", "reth-trie-db", - "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-database", + "revm-state", "strum 0.27.2", "tokio", "tracing", @@ -9495,7 +9348,7 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-trie", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", ] [[package]] @@ -9531,8 +9384,8 @@ dependencies = [ "http-body 1.0.1", "hyper 1.7.0", "itertools 0.14.0", - "jsonrpsee 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee", + "jsonrpsee-types", "jsonwebtoken", "parking_lot 0.12.4", "pin-project", @@ -9563,9 +9416,9 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "reth-trie-common", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "revm-inspectors", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-primitives", "serde", "serde_json", "sha2 0.10.9", @@ -9597,7 +9450,7 @@ dependencies = [ "alloy-rpc-types-trace", "alloy-rpc-types-txpool", "alloy-serde 1.0.30", - "jsonrpsee 0.26.0", + "jsonrpsee", "reth-chain-state", "reth-engine-primitives", "reth-network-peers", @@ -9613,7 +9466,7 @@ dependencies = [ "alloy-network", "alloy-provider", "http 1.3.1", - "jsonrpsee 0.26.0", + "jsonrpsee", "metrics", "pin-project", "reth-chain-state", @@ -9654,13 +9507,13 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", "alloy-signer", - "jsonrpsee-types 0.26.0", + "jsonrpsee-types", "reth-ethereum-primitives", "reth-evm", "reth-primitives-traits", "reth-scroll-primitives", "reth-storage-api", - "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", + "revm-context", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-evm", @@ -9677,8 +9530,8 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-engine 1.0.30", "async-trait", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee-core", + "jsonrpsee-types", "metrics", "parking_lot 0.12.4", "reth-chainspec", @@ -9718,8 +9571,8 @@ dependencies = [ "auto_impl", "dyn-clone", "futures", - "jsonrpsee 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee", + "jsonrpsee-types", "parking_lot 0.12.4", "reth-chain-state", "reth-chainspec", @@ -9737,7 +9590,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "reth-trie-common", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "revm-inspectors", "tokio", "tracing", @@ -9760,8 +9613,8 @@ dependencies = [ "derive_more", "futures", "itertools 0.14.0", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee-core", + "jsonrpsee-types", "metrics", "rand 0.9.2", "reqwest", @@ -9780,7 +9633,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "reth-trie", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "revm-inspectors", "schnellru", "serde", @@ -9797,7 +9650,7 @@ source = "git+https://github.com/scroll-tech/reth.git#103e3e198a088c86dc7629a235 dependencies = [ "alloy-rpc-types-engine 1.0.30", "http 1.3.1", - "jsonrpsee-http-client 0.26.0", + "jsonrpsee-http-client", "pin-project", "tower", "tower-http", @@ -9812,8 +9665,8 @@ dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", "alloy-rpc-types-engine 1.0.30", - "jsonrpsee-core 0.26.0", - "jsonrpsee-types 0.26.0", + "jsonrpsee-core", + "jsonrpsee-types", "reth-errors", "reth-network-api", "serde", @@ -9934,8 +9787,8 @@ dependencies = [ "reth-scroll-forks", "reth-scroll-primitives", "reth-storage-api", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm", + "revm-primitives", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-evm", @@ -9999,7 +9852,7 @@ dependencies = [ "reth-tracing", "reth-transaction-pool", "reth-trie-db", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "scroll-alloy-consensus", "scroll-alloy-evm", "scroll-alloy-hardforks", @@ -10035,7 +9888,7 @@ dependencies = [ "reth-scroll-primitives", "reth-storage-api", "reth-transaction-pool", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "scroll-alloy-hardforks", "thiserror 2.0.16", "tracing", @@ -10075,7 +9928,7 @@ dependencies = [ "alloy-transport", "alloy-transport-http", "eyre", - "jsonrpsee-types 0.26.0", + "jsonrpsee-types", "reqwest", "reth-chainspec", "reth-evm", @@ -10092,7 +9945,7 @@ dependencies = [ "reth-scroll-primitives", "reth-tasks", "reth-transaction-pool", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "scroll-alloy-consensus", "scroll-alloy-hardforks", "scroll-alloy-network", @@ -10282,7 +10135,7 @@ dependencies = [ "reth-primitives-traits", "reth-prune-types", "reth-static-file-types", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-database-interface", "thiserror 2.0.16", ] @@ -10373,8 +10226,8 @@ dependencies = [ "reth-primitives-traits", "reth-storage-api", "reth-tasks", - "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-interpreter", + "revm-primitives", "rustc-hash 2.1.1", "schnellru", "serde", @@ -10406,7 +10259,7 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-database", "tracing", "triehash", ] @@ -10431,7 +10284,7 @@ dependencies = [ "plain_hasher", "reth-codecs", "reth-primitives-traits", - "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-database", "serde", "serde_with", ] @@ -10533,46 +10386,17 @@ name = "revm" version = "29.0.0" source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ - "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context 9.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-handler 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-inspector 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-interpreter 25.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-precompile 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "revm" -version = "29.0.0" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", - "revm-database 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-handler 10.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-inspector 10.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-precompile 27.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", -] - -[[package]] -name = "revm-bytecode" -version = "6.2.2" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "bitvec", - "phf", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", ] [[package]] @@ -10582,7 +10406,7 @@ source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2 dependencies = [ "bitvec", "phf", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-primitives", "serde", ] @@ -10594,42 +10418,11 @@ dependencies = [ "bitvec", "cfg-if", "derive-where", - "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - -[[package]] -name = "revm-context" -version = "9.0.2" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "bitvec", - "cfg-if", - "derive-where", - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", - "serde", -] - -[[package]] -name = "revm-context-interface" -version = "10.1.0" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702", - "auto_impl", - "either", - "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-bytecode", + "revm-context-interface", + "revm-database-interface", + "revm-primitives", + "revm-state", "serde", ] @@ -10642,22 +10435,9 @@ dependencies = [ "alloy-eip7702", "auto_impl", "either", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", - "serde", -] - -[[package]] -name = "revm-database" -version = "7.0.5" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "alloy-eips 1.0.30", - "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface", + "revm-primitives", + "revm-state", "serde", ] @@ -10667,10 +10447,10 @@ version = "7.0.5" source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "alloy-eips 1.0.30", - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-bytecode", + "revm-database-interface", + "revm-primitives", + "revm-state", "serde", ] @@ -10681,38 +10461,8 @@ source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2 dependencies = [ "auto_impl", "either", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - -[[package]] -name = "revm-database-interface" -version = "7.0.5" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "auto_impl", - "either", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", - "serde", -] - -[[package]] -name = "revm-handler" -version = "10.0.0" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "auto_impl", - "derive-where", - "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context 9.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-interpreter 25.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-precompile 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives", + "revm-state", "serde", ] @@ -10723,14 +10473,14 @@ source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2 dependencies = [ "auto_impl", "derive-where", - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-precompile 27.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", "serde", ] @@ -10741,29 +10491,12 @@ source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2 dependencies = [ "auto_impl", "either", - "revm-context 9.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-handler 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-interpreter 25.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-state 7.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", - "serde_json", -] - -[[package]] -name = "revm-inspector" -version = "10.0.0" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "auto_impl", - "either", - "revm-context 9.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-database-interface 7.0.5 (git+https://github.com/scroll-tech/revm)", - "revm-handler 10.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-interpreter 25.0.2 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "revm-state 7.0.5 (git+https://github.com/scroll-tech/revm)", + "revm-context", + "revm-database-interface", + "revm-handler", + "revm-interpreter", + "revm-primitives", + "revm-state", "serde", "serde_json", ] @@ -10782,7 +10515,7 @@ dependencies = [ "boa_engine", "boa_gc", "colorchoice", - "revm 29.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm", "serde", "serde_json", "thiserror 2.0.16", @@ -10793,20 +10526,9 @@ name = "revm-interpreter" version = "25.0.2" source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ - "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context-interface 10.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - -[[package]] -name = "revm-interpreter" -version = "25.0.2" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-context-interface 10.1.0 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-bytecode", + "revm-context-interface", + "revm-primitives", "serde", ] @@ -10828,7 +10550,7 @@ dependencies = [ "k256", "libsecp256k1", "p256", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-primitives", "ripemd", "rug", "secp256k1 0.31.1", @@ -10854,20 +10576,9 @@ dependencies = [ "auto_impl", "enumn", "once_cell", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-inspector 10.0.0 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", - "serde", -] - -[[package]] -name = "revm-state" -version = "7.0.5" -source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" -dependencies = [ - "bitflags 2.9.4", - "revm-bytecode 6.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 20.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm", + "revm-inspector", + "revm-primitives", "serde", ] @@ -10877,8 +10588,8 @@ version = "7.0.5" source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "bitflags 2.9.4", - "revm-bytecode 6.2.2 (git+https://github.com/scroll-tech/revm)", - "revm-primitives 20.2.1 (git+https://github.com/scroll-tech/revm)", + "revm-bytecode", + "revm-primitives", "serde", ] @@ -11033,7 +10744,7 @@ dependencies = [ "color-eyre", "eyre", "futures", - "jsonrpsee 0.25.1", + "jsonrpsee", "reqwest", "reth-chainspec", "reth-cli-util", @@ -11715,7 +11426,7 @@ dependencies = [ "alloy-primitives", "auto_impl", "encoder-standard", - "revm 29.0.0 (git+https://github.com/scroll-tech/revm)", + "revm", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-hardforks", @@ -11762,7 +11473,7 @@ dependencies = [ "derive_more", "eyre", "http-body-util", - "jsonrpsee 0.26.0", + "jsonrpsee", "reqwest", "reth-rpc-api", "reth-scroll-engine-primitives", diff --git a/Cargo.toml b/Cargo.toml index 803acbac..45332320 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -227,6 +227,10 @@ tokio-stream = { version = "0.1", default-features = false } tracing = "0.1.0" getrandom = { version = "0.2", features = ["js"] } +[patch.crates-io] +revm = { git = "https://github.com/scroll-tech/revm" } +op-revm = { git = "https://github.com/scroll-tech/revm" } + # [patch."https://github.com/scroll-tech/reth.git"] # reth-chainspec = { path = "../reth/crates/chainspec" } # reth-e2e-test-utils = { path = "../reth/crates/e2e-test-utils" } diff --git a/crates/engine/src/future/mod.rs b/crates/engine/src/future/mod.rs index 69f938fd..41ea27bf 100644 --- a/crates/engine/src/future/mod.rs +++ b/crates/engine/src/future/mod.rs @@ -7,7 +7,6 @@ use alloy_rpc_types_engine::{ ExecutionData, ExecutionPayloadV1, ForkchoiceState as AlloyForkchoiceState, ForkchoiceUpdated, PayloadStatusEnum, }; -use alloy_primitives::bytes::Bytes; use eyre::Result; use reth_scroll_engine_primitives::try_into_block; use reth_scroll_primitives::ScrollBlock; diff --git a/tests/src/docker_compose.rs b/tests/src/docker_compose.rs index bde091a4..52f33731 100644 --- a/tests/src/docker_compose.rs +++ b/tests/src/docker_compose.rs @@ -49,13 +49,13 @@ impl DockerComposeEnv { tracing::info!("๐Ÿš€ Starting test environment: {project_name}"); // Pre-cleanup existing containers to avoid conflicts - Self::cleanup(&compose_file, &project_name, false); + Self::cleanup(compose_file, &project_name, false); // Start the environment let env = Self::start_environment(compose_file, &project_name)?; // Start streaming logs in the background - let _ = Self::stream_container_logs(&compose_file, &project_name).await; + let _ = Self::stream_container_logs(compose_file, &project_name).await; // Wait for all services to be ready tracing::info!("โณ Waiting for services to be ready..."); @@ -80,8 +80,8 @@ impl DockerComposeEnv { project_name, "up", "-d", - // "--force-recreate", - // "--build", + "--force-recreate", + "--build", ]) .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) From aaf4500ac90b04999b90bc25d058b258300a62e9 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 18 Sep 2025 16:50:52 +0800 Subject: [PATCH 20/25] fix issues after merge --- Dockerfile.test | 3 --- tests/launch_rollup_node_sequencer.bash | 2 +- tests/src/docker_compose.rs | 13 +++++++++---- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/Dockerfile.test b/Dockerfile.test index 10ce2a9f..670f8f96 100644 --- a/Dockerfile.test +++ b/Dockerfile.test @@ -5,7 +5,6 @@ ARG CARGO_FEATURES="" # Install basic packages RUN apt-get update && apt-get -y upgrade && apt-get install -y libclang-dev pkg-config RUN cargo install cargo-chef sccache --locked -ENV RUSTC_WRAPPER=sccache SCCACHE_DIR=/sccache FROM chef AS planner WORKDIR /app @@ -31,13 +30,11 @@ WORKDIR /app COPY --from=planner /recipe.json recipe.json RUN --mount=type=cache,target=/usr/local/cargo/registry \ --mount=type=cache,target=/usr/local/cargo/git \ - --mount=type=cache,target=$SCCACHE_DIR,sharing=locked \ cargo chef cook --release --recipe-path recipe.json COPY . . RUN --mount=type=cache,target=/usr/local/cargo/registry \ --mount=type=cache,target=/usr/local/cargo/git \ - --mount=type=cache,target=$SCCACHE_DIR,sharing=locked \ cargo build ${CARGO_FEATURES:+--features $CARGO_FEATURES} --release --target-dir=/app-target # Release diff --git a/tests/launch_rollup_node_sequencer.bash b/tests/launch_rollup_node_sequencer.bash index 8cadb23b..bf76e48d 100644 --- a/tests/launch_rollup_node_sequencer.bash +++ b/tests/launch_rollup_node_sequencer.bash @@ -20,7 +20,7 @@ exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --sequencer.allow-empty-blocks \ --signer.key-file /l2reth/sequencer-key \ --sequencer.block-time 500 \ - --sequencer.payload-building-duration 300 \ + --sequencer.payload-building-duration 400 \ --txpool.pending-max-count=1000 \ --builder.gaslimit=30000000 \ --rpc.max-connections=5000 \ diff --git a/tests/src/docker_compose.rs b/tests/src/docker_compose.rs index 52f33731..77e8b8e9 100644 --- a/tests/src/docker_compose.rs +++ b/tests/src/docker_compose.rs @@ -80,8 +80,8 @@ impl DockerComposeEnv { project_name, "up", "-d", - "--force-recreate", - "--build", + // "--force-recreate", + // "--build", ]) .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) @@ -258,6 +258,11 @@ impl DockerComposeEnv { Ok(()) } + /// Construct the full container name using Docker Compose naming pattern + fn get_full_container_name(&self, service_name: &str) -> String { + format!("{}-{}-1", self.project_name, service_name) + } + /// Get the IP address of a container within the project network fn get_container_ip(&self, container_name: &str) -> Result { let output = Command::new("docker") @@ -288,13 +293,13 @@ impl DockerComposeEnv { /// Get the rollup node sequencer enode URL with resolved IP address pub fn rn_sequencer_enode(&self) -> Result { - let ip = self.get_container_ip("rollup-node-sequencer")?; + let ip = self.get_container_ip(&self.get_full_container_name("rollup-node-sequencer"))?; Ok(RN_SEQUENCER_ENODE.replace("{IP}", &ip)) } /// Get the l2geth sequencer enode URL with resolved IP address pub fn l2geth_sequencer_enode(&self) -> Result { - let ip = self.get_container_ip("l2geth-sequencer")?; + let ip = self.get_container_ip(&self.get_full_container_name("l2geth-sequencer"))?; Ok(L2GETH_SEQEUNCER_ENODE.replace("{IP}", &ip)) } From b3a050105e64647761430bc66c8e435991e17522 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Thu, 18 Sep 2025 17:00:50 +0800 Subject: [PATCH 21/25] build docker image by default --- tests/src/docker_compose.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/src/docker_compose.rs b/tests/src/docker_compose.rs index 77e8b8e9..5c3ede40 100644 --- a/tests/src/docker_compose.rs +++ b/tests/src/docker_compose.rs @@ -80,8 +80,8 @@ impl DockerComposeEnv { project_name, "up", "-d", - // "--force-recreate", - // "--build", + "--force-recreate", + "--build", ]) .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) From 5afc35578ce40c02519d4cd2cf664d5c6328b4f8 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Fri, 19 Sep 2025 07:17:56 +0800 Subject: [PATCH 22/25] fix typo --- tests/src/docker_compose.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/src/docker_compose.rs b/tests/src/docker_compose.rs index 5c3ede40..8b51f6c3 100644 --- a/tests/src/docker_compose.rs +++ b/tests/src/docker_compose.rs @@ -31,7 +31,7 @@ const L2GETH_SEQUENCER_RPC_URL: &str = "http://localhost:8547"; const L2GETH_FOLLOWER_RPC_URL: &str = "http://localhost:8548"; const RN_SEQUENCER_ENODE: &str= "enode://e7f7e271f62bd2b697add14e6987419758c97e83b0478bd948f5f2d271495728e7edef5bd78ad65258ac910f28e86928ead0c42ee51f2a0168d8ca23ba939766@{IP}:30303"; -const L2GETH_SEQEUNCER_ENODE: &str = "enode://8fc4f6dfd0a2ebf56560d0b0ef5e60ad7bcb01e13f929eae53a4c77086d9c1e74eb8b8c8945035d25c6287afdd871f0d41b3fd7e189697decd0f13538d1ac620@{IP}:30303"; +const L2GETH_SEQUENCER_ENODE: &str = "enode://8fc4f6dfd0a2ebf56560d0b0ef5e60ad7bcb01e13f929eae53a4c77086d9c1e74eb8b8c8945035d25c6287afdd871f0d41b3fd7e189697decd0f13538d1ac620@{IP}:30303"; pub struct DockerComposeEnv { project_name: String, @@ -300,7 +300,7 @@ impl DockerComposeEnv { /// Get the l2geth sequencer enode URL with resolved IP address pub fn l2geth_sequencer_enode(&self) -> Result { let ip = self.get_container_ip(&self.get_full_container_name("l2geth-sequencer"))?; - Ok(L2GETH_SEQEUNCER_ENODE.replace("{IP}", &ip)) + Ok(L2GETH_SEQUENCER_ENODE.replace("{IP}", &ip)) } /// Show logs for all containers From 9e5930901fc537acd147b2939280a1fa5f566a3b Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Fri, 19 Sep 2025 17:34:40 +0800 Subject: [PATCH 23/25] adjust run scripts after merging changes to flags --- tests/launch_rollup_node_follower.bash | 3 ++- tests/launch_rollup_node_sequencer.bash | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/launch_rollup_node_follower.bash b/tests/launch_rollup_node_follower.bash index d85898ad..f0527749 100644 --- a/tests/launch_rollup_node_follower.bash +++ b/tests/launch_rollup_node_follower.bash @@ -4,10 +4,11 @@ set -e export RUST_LOG=sqlx=off,scroll=trace,reth=trace,rollup=trace,trace exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --metrics=0.0.0.0:6060 \ - --network.scroll-wire --network.bridge --disable-discovery \ + --disable-discovery \ --network.valid_signer "0xb674ff99cca262c99d3eab5b32796a99188543da" \ --http --http.addr=0.0.0.0 --http.port=8545 --http.corsdomain "*" --http.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ --ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ + --rpc.rollup-node \ --log.stdout.format log-fmt -vvv \ --txpool.pending-max-count=1000 \ --builder.gaslimit=30000000 \ diff --git a/tests/launch_rollup_node_sequencer.bash b/tests/launch_rollup_node_sequencer.bash index bf76e48d..e66fa4b2 100644 --- a/tests/launch_rollup_node_sequencer.bash +++ b/tests/launch_rollup_node_sequencer.bash @@ -11,10 +11,11 @@ echo -n "01c0d9156e199d89814d4b18e9eb64e25de3927f3f6d27b778177f3ff6b610ad" > /l2 export RUST_LOG=sqlx=off,scroll=trace,reth=trace,rollup=trace,trace exec rollup-node node --chain /l2reth/l2reth-genesis-e2e.json --datadir=/l2reth --metrics=0.0.0.0:6060 \ - --network.scroll-wire --network.bridge --disable-discovery \ + --disable-discovery \ --network.valid_signer "0xb674ff99cca262c99d3eab5b32796a99188543da" \ --http --http.addr=0.0.0.0 --http.port=8545 --http.corsdomain "*" --http.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ --ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev \ + --rpc.rollup-node \ --log.stdout.format log-fmt -vvv \ --sequencer.enabled \ --sequencer.allow-empty-blocks \ From 97a04b3e12128342b2d2b36245504d7ea1144c98 Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Fri, 19 Sep 2025 17:35:28 +0800 Subject: [PATCH 24/25] remove sscache --- Dockerfile.test | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile.test b/Dockerfile.test index 670f8f96..112e674d 100644 --- a/Dockerfile.test +++ b/Dockerfile.test @@ -4,7 +4,7 @@ ARG CARGO_FEATURES="" # Install basic packages RUN apt-get update && apt-get -y upgrade && apt-get install -y libclang-dev pkg-config -RUN cargo install cargo-chef sccache --locked +RUN cargo install cargo-chef --locked FROM chef AS planner WORKDIR /app From f1db7f8e4c351a567284aa52342cd8abf9beadca Mon Sep 17 00:00:00 2001 From: jonastheis <4181434+jonastheis@users.noreply.github.com> Date: Fri, 19 Sep 2025 17:51:27 +0800 Subject: [PATCH 25/25] add Deref for NamedProvider --- tests/src/docker_compose.rs | 10 +++++++++- tests/src/utils.rs | 15 +++------------ ...ogeneous_client_sync_and_sequencer_handoff.rs | 16 ++++++++-------- 3 files changed, 20 insertions(+), 21 deletions(-) diff --git a/tests/src/docker_compose.rs b/tests/src/docker_compose.rs index 8b51f6c3..f5977701 100644 --- a/tests/src/docker_compose.rs +++ b/tests/src/docker_compose.rs @@ -1,7 +1,7 @@ use alloy_provider::{Provider, ProviderBuilder}; use eyre::Result; use scroll_alloy_network::Scroll; -use std::{fs, process::Command, time::Duration}; +use std::{fs, ops::Deref, process::Command, time::Duration}; use tokio::{ io::{AsyncBufReadExt, BufReader}, process::Command as TokioCommand, @@ -19,6 +19,14 @@ impl NamedProvider { } } +impl Deref for NamedProvider { + type Target = dyn Provider; + + fn deref(&self) -> &Self::Target { + self.provider.as_ref() + } +} + /// The sequencer node RPC URL for the Docker Compose environment. const RN_SEQUENCER_RPC_URL: &str = "http://localhost:8545"; diff --git a/tests/src/utils.rs b/tests/src/utils.rs index e57f9850..fc20bc0c 100644 --- a/tests/src/utils.rs +++ b/tests/src/utils.rs @@ -7,7 +7,6 @@ use crate::docker_compose::NamedProvider; /// Enable automatic sequencing on a rollup node pub async fn enable_automatic_sequencing(provider: &NamedProvider) -> Result { provider - .provider .client() .request("rollupNode_enableAutomaticSequencing", ()) .await @@ -17,7 +16,6 @@ pub async fn enable_automatic_sequencing(provider: &NamedProvider) -> Result Result { provider - .provider .client() .request("rollupNode_disableAutomaticSequencing", ()) .await @@ -26,7 +24,6 @@ pub async fn disable_automatic_sequencing(provider: &NamedProvider) -> Result Result<()> { provider - .provider .client() .request("miner_start", ()) .await @@ -35,7 +32,6 @@ pub async fn miner_start(provider: &NamedProvider) -> Result<()> { pub async fn miner_stop(provider: &NamedProvider) -> Result<()> { provider - .provider .client() .request("miner_stop", ()) .await @@ -67,7 +63,7 @@ pub async fn wait_for_block(nodes: &[&NamedProvider], target_block: u64) -> Resu let mut node_statuses = Vec::new(); for node in nodes { - let current_block = node.provider.get_block_number().await?; + let current_block = node.get_block_number().await?; node_statuses.push((node.name, current_block)); if current_block < target_block { @@ -125,8 +121,7 @@ pub async fn assert_blocks_match(nodes: &[&NamedProvider], block_number: u64) -> // Fetch blocks from all nodes for node in nodes { - let block_opt = - node.provider.get_block_by_number(BlockNumberOrTag::Number(block_number)).await?; + let block_opt = node.get_block_by_number(BlockNumberOrTag::Number(block_number)).await?; let block = block_opt .ok_or_else(|| eyre::eyre!("{} block {} not found", node.name, block_number))?; @@ -166,7 +161,7 @@ pub async fn assert_latest_block(nodes: &[&NamedProvider], expected_block: u64) // Verify all nodes have the expected latest block for node in nodes { - let block_number = node.provider.get_block_number().await?; + let block_number = node.get_block_number().await?; assert_eq!( block_number, expected_block, "{} is at block {}, expected {}", @@ -187,7 +182,6 @@ pub async fn assert_latest_block(nodes: &[&NamedProvider], expected_block: u64) /// Add a peer to the node's peer set via admin API pub async fn admin_add_peer(provider: &NamedProvider, enode: &str) -> Result { provider - .provider .client() .request("admin_addPeer", (enode,)) .await @@ -197,7 +191,6 @@ pub async fn admin_add_peer(provider: &NamedProvider, enode: &str) -> Result Result { provider - .provider .client() .request("admin_removePeer", (enode,)) .await @@ -207,7 +200,6 @@ pub async fn admin_remove_peer(provider: &NamedProvider, enode: &str) -> Result< /// Add a trusted peer to the node's trusted peer set via admin API pub async fn admin_add_trusted_peer(provider: &NamedProvider, enode: &str) -> Result { provider - .provider .client() .request("admin_addTrustedPeer", (enode,)) .await @@ -217,7 +209,6 @@ pub async fn admin_add_trusted_peer(provider: &NamedProvider, enode: &str) -> Re /// Remove a trusted peer from the node's trusted peer set via admin API pub async fn admin_remove_trusted_peer(provider: &NamedProvider, enode: &str) -> Result { provider - .provider .client() .request("admin_removeTrustedPeer", (enode,)) .await diff --git a/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs b/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs index 90623bd5..a9c1a626 100644 --- a/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs +++ b/tests/tests/heterogeneous_client_sync_and_sequencer_handoff.rs @@ -71,7 +71,7 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { utils::wait_for_block(&[&l2geth_sequencer], target_block).await?; utils::miner_stop(&l2geth_sequencer).await?; - let latest_block = l2geth_sequencer.provider.get_block_number().await?; + let latest_block = l2geth_sequencer.get_block_number().await?; // Wait for all l2geth nodes to reach the latest block utils::wait_for_block(&l2geth_nodes, latest_block).await?; @@ -98,7 +98,7 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { utils::wait_for_block(&nodes, target_block).await?; utils::miner_stop(&l2geth_sequencer).await?; - let latest_block = l2geth_sequencer.provider.get_block_number().await?; + let latest_block = l2geth_sequencer.get_block_number().await?; utils::wait_for_block(&nodes, latest_block).await?; utils::assert_blocks_match(&nodes, latest_block).await?; tracing::info!("โœ… All nodes reached block {}", latest_block); @@ -110,7 +110,7 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { utils::wait_for_block(&nodes, target_block).await?; utils::disable_automatic_sequencing(&rn_sequencer).await?; - let latest_block = rn_sequencer.provider.get_block_number().await?; + let latest_block = rn_sequencer.get_block_number().await?; utils::wait_for_block(&nodes, latest_block).await?; utils::assert_blocks_match(&nodes, latest_block).await?; tracing::info!("โœ… All nodes reached block {}", latest_block); @@ -130,16 +130,16 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { // Make sure l2geth nodes are still at the old block -> they need to sync once reconnected assert!( - l2geth_sequencer.provider.get_block_number().await? <= target_block + 1, + l2geth_sequencer.get_block_number().await? <= target_block + 1, "l2geth sequencer should be at most at block {}, but is at {}", target_block + 1, - l2geth_sequencer.provider.get_block_number().await? + l2geth_sequencer.get_block_number().await? ); assert!( - l2geth_follower.provider.get_block_number().await? <= target_block + 1, + l2geth_follower.get_block_number().await? <= target_block + 1, "l2geth follower should be at most at block {}, but is at {}", target_block + 1, - l2geth_follower.provider.get_block_number().await? + l2geth_follower.get_block_number().await? ); // Reconnect l2geth follower to l2geth sequencer and let them sync @@ -157,7 +157,7 @@ async fn test_heterogeneous_client_sync_and_sequencer_handoff() -> Result<()> { // Disable sequencing on RN sequencer utils::disable_automatic_sequencing(&rn_sequencer).await?; - let latest_block = rn_sequencer.provider.get_block_number().await?; + let latest_block = rn_sequencer.get_block_number().await?; tracing::info!("Switched RN sequencing off at block {}", latest_block); utils::wait_for_block(&nodes, latest_block).await?; utils::assert_blocks_match(&nodes, latest_block).await?;