From 5cf0276f1e252d8d16e5fd76ba82776fff0e99db Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Tue, 28 Jan 2025 14:31:26 +0100 Subject: [PATCH] chore: rm optimism feature from reth-provider (#14035) --- Cargo.lock | 1 - crates/engine/util/Cargo.toml | 1 - crates/net/downloaders/Cargo.toml | 1 - crates/optimism/bin/Cargo.toml | 1 - crates/optimism/cli/Cargo.toml | 1 - crates/optimism/node/Cargo.toml | 1 - crates/optimism/payload/Cargo.toml | 1 - crates/optimism/primitives/src/bedrock.rs | 4 +++ crates/optimism/rpc/Cargo.toml | 1 - crates/storage/provider/Cargo.toml | 14 ---------- .../src/providers/static_file/manager.rs | 27 ++++++++++--------- 11 files changed, 19 insertions(+), 34 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e9b475ecb..76be58ef9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8622,7 +8622,6 @@ dependencies = [ "reth-network-p2p", "reth-nippy-jar", "reth-node-types", - "reth-optimism-primitives", "reth-primitives", "reth-primitives-traits", "reth-prune-types", diff --git a/crates/engine/util/Cargo.toml b/crates/engine/util/Cargo.toml index d98e51ace..5573c74b3 100644 --- a/crates/engine/util/Cargo.toml +++ b/crates/engine/util/Cargo.toml @@ -53,6 +53,5 @@ tracing.workspace = true [features] optimism = [ - "reth-provider/optimism", "revm-primitives/optimism", ] diff --git a/crates/net/downloaders/Cargo.toml b/crates/net/downloaders/Cargo.toml index 56ca9197d..a74fcfe84 100644 --- a/crates/net/downloaders/Cargo.toml +++ b/crates/net/downloaders/Cargo.toml @@ -75,7 +75,6 @@ tempfile.workspace = true optimism = [ "reth-db?/optimism", "reth-db-api?/optimism", - "reth-provider/optimism", ] test-utils = [ diff --git a/crates/optimism/bin/Cargo.toml b/crates/optimism/bin/Cargo.toml index a4c290b47..a50a7d3a6 100644 --- a/crates/optimism/bin/Cargo.toml +++ b/crates/optimism/bin/Cargo.toml @@ -44,7 +44,6 @@ optimism = [ "reth-optimism-evm/optimism", "reth-optimism-payload-builder/optimism", "reth-optimism-rpc/optimism", - "reth-provider/optimism", "reth-optimism-primitives/optimism", ] diff --git a/crates/optimism/cli/Cargo.toml b/crates/optimism/cli/Cargo.toml index daa6fbab3..5d45beb10 100644 --- a/crates/optimism/cli/Cargo.toml +++ b/crates/optimism/cli/Cargo.toml @@ -77,7 +77,6 @@ optimism = [ "dep:derive_more", "dep:serde", "reth-optimism-evm/optimism", - "reth-provider/optimism", "reth-node-core/optimism", "reth-optimism-node/optimism", "reth-execution-types/optimism", diff --git a/crates/optimism/node/Cargo.toml b/crates/optimism/node/Cargo.toml index 0b258af71..97a627959 100644 --- a/crates/optimism/node/Cargo.toml +++ b/crates/optimism/node/Cargo.toml @@ -90,7 +90,6 @@ futures.workspace = true [features] default = ["reth-codec"] optimism = [ - "reth-provider/optimism", "reth-optimism-evm/optimism", "reth-optimism-payload-builder/optimism", "revm/optimism", diff --git a/crates/optimism/payload/Cargo.toml b/crates/optimism/payload/Cargo.toml index 855fdd3a6..10508e96e 100644 --- a/crates/optimism/payload/Cargo.toml +++ b/crates/optimism/payload/Cargo.toml @@ -55,7 +55,6 @@ sha2.workspace = true [features] optimism = [ - "reth-provider/optimism", "reth-optimism-evm/optimism", "revm/optimism", "reth-execution-types/optimism", diff --git a/crates/optimism/primitives/src/bedrock.rs b/crates/optimism/primitives/src/bedrock.rs index 204b34d33..122d5f673 100644 --- a/crates/optimism/primitives/src/bedrock.rs +++ b/crates/optimism/primitives/src/bedrock.rs @@ -55,10 +55,14 @@ pub fn is_dup_tx(block_number: u64) -> bool { } /// OVM Header #1 hash. +/// +/// pub const OVM_HEADER_1_HASH: B256 = b256!("bee7192e575af30420cae0c7776304ac196077ee72b048970549e4f08e875453"); /// Bedrock hash on Optimism Mainnet. +/// +/// pub const BEDROCK_HEADER_HASH: B256 = b256!("dbf6a80fef073de06add9b0d14026d6e5a86c85f6d102c36d3d8e9cf89c2afd3"); diff --git a/crates/optimism/rpc/Cargo.toml b/crates/optimism/rpc/Cargo.toml index 7e87b98f7..ffc3447f0 100644 --- a/crates/optimism/rpc/Cargo.toml +++ b/crates/optimism/rpc/Cargo.toml @@ -70,7 +70,6 @@ reth-optimism-chainspec.workspace = true [features] optimism = [ "reth-optimism-evm/optimism", - "reth-provider/optimism", "revm/optimism", "reth-optimism-consensus/optimism", "reth-optimism-payload-builder/optimism", diff --git a/crates/storage/provider/Cargo.toml b/crates/storage/provider/Cargo.toml index 42ebb3b4d..405bebf3d 100644 --- a/crates/storage/provider/Cargo.toml +++ b/crates/storage/provider/Cargo.toml @@ -41,9 +41,6 @@ alloy-rpc-types-engine.workspace = true alloy-consensus.workspace = true revm.workspace = true -# optimism -reth-optimism-primitives = { workspace = true, features = ["reth-codec"], optional = true } - # async tokio = { workspace = true, features = ["sync", "macros", "rt-multi-thread"] } @@ -85,15 +82,6 @@ eyre.workspace = true alloy-consensus.workspace = true [features] -optimism = [ - "reth-execution-types/optimism", - "reth-optimism-primitives", - "reth-codecs/op", - "reth-db/optimism", - "reth-db-api/optimism", - "revm/optimism", - "reth-optimism-primitives/optimism", -] serde = [ "dashmap/serde", "notify/serde", @@ -105,7 +93,6 @@ serde = [ "alloy-rpc-types-engine/serde", "revm/serde", "reth-codecs/serde", - "reth-optimism-primitives?/serde", "reth-primitives-traits/serde", "reth-execution-types/serde", "reth-trie-db/serde", @@ -128,5 +115,4 @@ test-utils = [ "revm/test-utils", "reth-prune-types/test-utils", "reth-stages-types/test-utils", - "reth-optimism-primitives?/arbitrary", ] diff --git a/crates/storage/provider/src/providers/static_file/manager.rs b/crates/storage/provider/src/providers/static_file/manager.rs index 77583f0da..3dbfbf331 100644 --- a/crates/storage/provider/src/providers/static_file/manager.rs +++ b/crates/storage/provider/src/providers/static_file/manager.rs @@ -9,11 +9,13 @@ use crate::{ }; use alloy_consensus::{transaction::TransactionMeta, Header}; use alloy_eips::{eip2718::Encodable2718, eip4895::Withdrawals, BlockHashOrNumber}; -use alloy_primitives::{keccak256, Address, BlockHash, BlockNumber, TxHash, TxNumber, B256, U256}; +use alloy_primitives::{ + b256, keccak256, Address, BlockHash, BlockNumber, TxHash, TxNumber, B256, U256, +}; use dashmap::DashMap; use notify::{RecommendedWatcher, RecursiveMode, Watcher}; use parking_lot::RwLock; -use reth_chainspec::{ChainInfo, ChainSpecProvider}; +use reth_chainspec::{ChainInfo, ChainSpecProvider, EthChainSpec}; use reth_db::{ lockfile::StorageLock, static_file::{ @@ -655,17 +657,18 @@ impl StaticFileProvider { // // If we detect an OVM import was done (block #1 ), skip it. // More on [#11099](https://github.com/paradigmxyz/reth/pull/11099). - #[cfg(feature = "optimism")] - if reth_chainspec::EthChainSpec::chain(&provider.chain_spec()) == - reth_chainspec::Chain::optimism_mainnet() && - provider - .block_number(reth_optimism_primitives::bedrock::OVM_HEADER_1_HASH)? - .is_some() + if provider.chain_spec().is_optimism() && + reth_chainspec::Chain::optimism_mainnet() == provider.chain_spec().chain_id() { - info!(target: "reth::cli", - "Skipping storage verification for OP mainnet, expected inconsistency in OVM chain" - ); - return Ok(None) + // check whether we have the first OVM block: + const OVM_HEADER_1_HASH: B256 = + b256!("bee7192e575af30420cae0c7776304ac196077ee72b048970549e4f08e875453"); + if provider.block_number(OVM_HEADER_1_HASH)?.is_some() { + info!(target: "reth::cli", + "Skipping storage verification for OP mainnet, expected inconsistency in OVM chain" + ); + return Ok(None) + } } info!(target: "reth::cli", "Verifying storage consistency.");