From 12f1e9c944f75b70a360ed48f17b7a724028038d Mon Sep 17 00:00:00 2001 From: Dan Cline <6798349+Rjected@users.noreply.github.com> Date: Mon, 13 May 2024 17:07:37 +0300 Subject: [PATCH] chore: remove validate_block_regarding_chain (#8224) --- crates/consensus/common/Cargo.toml | 2 -- crates/consensus/common/src/validation.rs | 39 +---------------------- 2 files changed, 1 insertion(+), 40 deletions(-) diff --git a/crates/consensus/common/Cargo.toml b/crates/consensus/common/Cargo.toml index af93788ee..accf2d08e 100644 --- a/crates/consensus/common/Cargo.toml +++ b/crates/consensus/common/Cargo.toml @@ -13,8 +13,6 @@ workspace = true [dependencies] # reth reth-primitives.workspace = true -reth-interfaces.workspace = true -reth-provider.workspace = true reth-consensus.workspace=true [dev-dependencies] diff --git a/crates/consensus/common/src/validation.rs b/crates/consensus/common/src/validation.rs index b67d40e98..bf9493720 100644 --- a/crates/consensus/common/src/validation.rs +++ b/crates/consensus/common/src/validation.rs @@ -1,7 +1,6 @@ //! Collection of methods for block validation. use reth_consensus::ConsensusError; -use reth_interfaces::RethResult; use reth_primitives::{ constants::{ eip4844::{DATA_GAS_PER_BLOB, MAX_DATA_GAS_PER_BLOCK}, @@ -9,7 +8,6 @@ use reth_primitives::{ }, ChainSpec, GotExpected, Hardfork, Header, SealedBlock, SealedHeader, }; -use reth_provider::{HeaderProvider, WithdrawalsProvider}; /// Validate header standalone pub fn validate_header_standalone( @@ -110,33 +108,6 @@ pub fn validate_block_standalone( Ok(()) } -/// Validate block with regard to chain (parent) -/// -/// Checks: -/// If we already know the block. -/// If parent is known -/// -/// Returns parent block header -pub fn validate_block_regarding_chain( - block: &SealedBlock, - provider: &PROV, -) -> RethResult { - let hash = block.header.hash(); - - // Check if block is known. - if provider.is_known(&hash)? { - return Err(ConsensusError::BlockKnown { hash, number: block.header.number }.into()) - } - - // Check if parent is known. - let parent = provider - .header(&block.parent_hash)? - .ok_or(ConsensusError::ParentUnknown { hash: block.parent_hash })?; - - // Return parent header. - Ok(parent.seal(block.parent_hash)) -} - /// Validates that the EIP-4844 header fields exist and conform to the spec. This ensures that: /// /// * `blob_gas_used` exists as a header field @@ -204,7 +175,7 @@ mod tests { BlockNumber, Bytes, ChainSpecBuilder, Signature, Transaction, TransactionSigned, TxEip4844, Withdrawal, Withdrawals, U256, }; - use reth_provider::AccountReader; + use reth_provider::{AccountReader, HeaderProvider, WithdrawalsProvider}; use std::ops::RangeBounds; mock! { @@ -398,22 +369,14 @@ mod tests { assert_eq!(validate_block_standalone(&block, &chain_spec), Ok(())); let block = create_block_with_withdrawals(&[5, 6, 7, 8, 9]); assert_eq!(validate_block_standalone(&block, &chain_spec), Ok(())); - let (_, parent) = mock_block(); - let provider = Provider::new(Some(parent.clone())); - let block = create_block_with_withdrawals(&[0, 1, 2]); - let res = validate_block_regarding_chain(&block, &provider); - assert!(res.is_ok()); // Withdrawal index should be the last withdrawal index + 1 let mut provider = Provider::new(Some(parent)); - let block = create_block_with_withdrawals(&[3, 4, 5]); provider .withdrawals_provider .expect_latest_withdrawal() .return_const(Ok(Some(Withdrawal { index: 2, ..Default::default() }))); - let res = validate_block_regarding_chain(&block, &provider); - assert!(res.is_ok()); } #[test]