diff --git a/crates/chainspec/src/api.rs b/crates/chainspec/src/api.rs index cb5b47bc245..80327d38b6d 100644 --- a/crates/chainspec/src/api.rs +++ b/crates/chainspec/src/api.rs @@ -24,9 +24,6 @@ pub trait EthChainSpec: Send + Sync + Unpin + Debug { self.chain().id() } - /// Get the [`BaseFeeParams`] for the chain at the given block. - fn base_fee_params_at_block(&self, block_number: u64) -> BaseFeeParams; - /// Get the [`BaseFeeParams`] for the chain at the given timestamp. fn base_fee_params_at_timestamp(&self, timestamp: u64) -> BaseFeeParams; @@ -85,10 +82,6 @@ impl EthChainSpec for ChainSpec { self.chain } - fn base_fee_params_at_block(&self, block_number: u64) -> BaseFeeParams { - self.base_fee_params_at_block(block_number) - } - fn base_fee_params_at_timestamp(&self, timestamp: u64) -> BaseFeeParams { self.base_fee_params_at_timestamp(timestamp) } diff --git a/crates/chainspec/src/spec.rs b/crates/chainspec/src/spec.rs index 2800640b708..ef3b7f3b277 100644 --- a/crates/chainspec/src/spec.rs +++ b/crates/chainspec/src/spec.rs @@ -393,25 +393,6 @@ impl ChainSpec { } } - /// Get the [`BaseFeeParams`] for the chain at the given block number - pub fn base_fee_params_at_block(&self, block_number: u64) -> BaseFeeParams { - match self.base_fee_params { - BaseFeeParamsKind::Constant(bf_params) => bf_params, - BaseFeeParamsKind::Variable(ForkBaseFeeParams(ref bf_params)) => { - // Walk through the base fee params configuration in reverse order, and return the - // first one that corresponds to a hardfork that is active at the - // given timestamp. - for (fork, params) in bf_params.iter().rev() { - if self.hardforks.is_fork_active_at_block(fork.clone(), block_number) { - return *params - } - } - - bf_params.first().map(|(_, params)| *params).unwrap_or(BaseFeeParams::ethereum()) - } - } - } - /// Get the hash of the genesis block. pub fn genesis_hash(&self) -> B256 { self.genesis_header.hash() diff --git a/crates/ethereum/node/tests/e2e/rpc.rs b/crates/ethereum/node/tests/e2e/rpc.rs index ea49d8b3c8e..ee536016b53 100644 --- a/crates/ethereum/node/tests/e2e/rpc.rs +++ b/crates/ethereum/node/tests/e2e/rpc.rs @@ -62,10 +62,12 @@ async fn test_fee_history() -> eyre::Result<()> { let genesis_base_fee = chain_spec.initial_base_fee().unwrap() as u128; let expected_first_base_fee = genesis_base_fee - - genesis_base_fee / chain_spec.base_fee_params_at_block(0).max_change_denominator; + genesis_base_fee / + chain_spec + .base_fee_params_at_timestamp(chain_spec.genesis_timestamp()) + .max_change_denominator; assert_eq!(fee_history.base_fee_per_gas[0], genesis_base_fee); assert_eq!(fee_history.base_fee_per_gas[1], expected_first_base_fee,); - // Spend some gas let builder = GasWaster::deploy_builder(&provider, U256::from(500)).send().await?; node.advance_block().await?; diff --git a/crates/optimism/chainspec/src/lib.rs b/crates/optimism/chainspec/src/lib.rs index 44361c7abf5..dfc909dbd15 100644 --- a/crates/optimism/chainspec/src/lib.rs +++ b/crates/optimism/chainspec/src/lib.rs @@ -243,10 +243,6 @@ impl EthChainSpec for OpChainSpec { self.inner.chain() } - fn base_fee_params_at_block(&self, block_number: u64) -> BaseFeeParams { - self.inner.base_fee_params_at_block(block_number) - } - fn base_fee_params_at_timestamp(&self, timestamp: u64) -> BaseFeeParams { self.inner.base_fee_params_at_timestamp(timestamp) } diff --git a/examples/custom-node/src/chainspec.rs b/examples/custom-node/src/chainspec.rs index 5677d9fb576..4291b3549e4 100644 --- a/examples/custom-node/src/chainspec.rs +++ b/examples/custom-node/src/chainspec.rs @@ -50,15 +50,8 @@ impl Hardforks for CustomChainSpec { impl EthChainSpec for CustomChainSpec { type Header = CustomHeader; - fn base_fee_params_at_block( - &self, - block_number: u64, - ) -> reth_ethereum::chainspec::BaseFeeParams { - self.inner.base_fee_params_at_block(block_number) - } - - fn blob_params_at_timestamp(&self, timestamp: u64) -> Option { - self.inner.blob_params_at_timestamp(timestamp) + fn chain(&self) -> reth_ethereum::chainspec::Chain { + self.inner.chain() } fn base_fee_params_at_timestamp( @@ -68,38 +61,38 @@ impl EthChainSpec for CustomChainSpec { self.inner.base_fee_params_at_timestamp(timestamp) } - fn bootnodes(&self) -> Option> { - self.inner.bootnodes() - } - - fn chain(&self) -> reth_ethereum::chainspec::Chain { - self.inner.chain() + fn blob_params_at_timestamp(&self, timestamp: u64) -> Option { + self.inner.blob_params_at_timestamp(timestamp) } fn deposit_contract(&self) -> Option<&reth_ethereum::chainspec::DepositContract> { self.inner.deposit_contract() } - fn display_hardforks(&self) -> Box { - self.inner.display_hardforks() + fn genesis_hash(&self) -> revm_primitives::B256 { + self.genesis_header.hash() } fn prune_delete_limit(&self) -> usize { self.inner.prune_delete_limit() } - fn genesis(&self) -> &Genesis { - self.inner.genesis() - } - - fn genesis_hash(&self) -> revm_primitives::B256 { - self.genesis_header.hash() + fn display_hardforks(&self) -> Box { + self.inner.display_hardforks() } fn genesis_header(&self) -> &Self::Header { &self.genesis_header } + fn genesis(&self) -> &Genesis { + self.inner.genesis() + } + + fn bootnodes(&self) -> Option> { + self.inner.bootnodes() + } + fn final_paris_total_difficulty(&self) -> Option { self.inner.get_final_paris_total_difficulty() }