chore: remove BlockExecutorProvider trait (#15989)

Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
This commit is contained in:
Federico Gimenez
2025-05-06 13:34:37 +02:00
committed by GitHub
parent cbdb81069f
commit 699b3fde1b
56 changed files with 411 additions and 880 deletions

View File

@@ -10,7 +10,7 @@ use reth_downloaders::{
bodies::bodies::BodiesDownloaderBuilder,
headers::reverse_headers::ReverseHeadersDownloaderBuilder,
};
use reth_evm::execute::BlockExecutorProvider;
use reth_evm::ConfigureEvm;
use reth_exex::ExExManagerHandle;
use reth_network_p2p::{
bodies::downloader::BodyDownloader, headers::downloader::HeaderDownloader, BlockClient,
@@ -25,7 +25,7 @@ use tokio::sync::watch;
/// Constructs a [Pipeline] that's wired to the network
#[expect(clippy::too_many_arguments)]
pub fn build_networked_pipeline<N, Client, Executor>(
pub fn build_networked_pipeline<N, Client, Evm>(
config: &StageConfig,
client: Client,
consensus: Arc<dyn FullConsensus<N::Primitives, Error = ConsensusError>>,
@@ -35,13 +35,13 @@ pub fn build_networked_pipeline<N, Client, Executor>(
prune_config: Option<PruneConfig>,
max_block: Option<BlockNumber>,
static_file_producer: StaticFileProducer<ProviderFactory<N>>,
executor: Executor,
evm_config: Evm,
exex_manager_handle: ExExManagerHandle<N::Primitives>,
) -> eyre::Result<Pipeline<N>>
where
N: ProviderNodeTypes,
Client: BlockClient<Block = BlockTy<N>> + 'static,
Executor: BlockExecutorProvider<Primitives = N::Primitives>,
Evm: ConfigureEvm<Primitives = N::Primitives> + 'static,
{
// building network downloaders using the fetch client
let header_downloader = ReverseHeadersDownloaderBuilder::new(config.headers)
@@ -62,7 +62,7 @@ where
metrics_tx,
prune_config,
static_file_producer,
executor,
evm_config,
exex_manager_handle,
)?;
@@ -71,7 +71,7 @@ where
/// Builds the [Pipeline] with the given [`ProviderFactory`] and downloaders.
#[expect(clippy::too_many_arguments)]
pub fn build_pipeline<N, H, B, Executor>(
pub fn build_pipeline<N, H, B, Evm>(
provider_factory: ProviderFactory<N>,
stage_config: &StageConfig,
header_downloader: H,
@@ -81,14 +81,14 @@ pub fn build_pipeline<N, H, B, Executor>(
metrics_tx: reth_stages::MetricEventsSender,
prune_config: Option<PruneConfig>,
static_file_producer: StaticFileProducer<ProviderFactory<N>>,
executor: Executor,
evm_config: Evm,
exex_manager_handle: ExExManagerHandle<N::Primitives>,
) -> eyre::Result<Pipeline<N>>
where
N: ProviderNodeTypes,
H: HeaderDownloader<Header = HeaderTy<N>> + 'static,
B: BodyDownloader<Block = BlockTy<N>> + 'static,
Executor: BlockExecutorProvider<Primitives = N::Primitives>,
Evm: ConfigureEvm<Primitives = N::Primitives> + 'static,
{
let mut builder = Pipeline::<N>::builder();
@@ -111,12 +111,12 @@ where
Arc::clone(&consensus),
header_downloader,
body_downloader,
executor.clone(),
evm_config.clone(),
stage_config.clone(),
prune_modes,
)
.set(ExecutionStage::new(
executor,
evm_config,
consensus,
stage_config.execution.into(),
stage_config.execution_external_clean_threshold(),