diff --git a/crates/engine/local/src/service.rs b/crates/engine/local/src/service.rs index dd6a644ac..24132f8ee 100644 --- a/crates/engine/local/src/service.rs +++ b/crates/engine/local/src/service.rs @@ -85,7 +85,7 @@ where where B: PayloadAttributesBuilder<::PayloadAttributes>, V: EngineValidator>, - C: ConfigureEvm
, Transaction = TxTy>, + C: ConfigureEvm
, Transaction = TxTy> + 'static, { let chain_spec = provider.chain_spec(); let engine_kind = diff --git a/crates/engine/service/src/service.rs b/crates/engine/service/src/service.rs index f6b791e74..eef64d6ed 100644 --- a/crates/engine/service/src/service.rs +++ b/crates/engine/service/src/service.rs @@ -93,7 +93,7 @@ where ) -> Self where V: EngineValidator>, - C: ConfigureEvm
, Transaction = TxTy>, + C: ConfigureEvm
, Transaction = TxTy> + 'static, { let engine_kind = if chain_spec.is_optimism() { EngineApiKind::OpStack } else { EngineApiKind::Ethereum }; diff --git a/crates/engine/tree/src/tree/mod.rs b/crates/engine/tree/src/tree/mod.rs index f78f3cd2e..ca36a69a9 100644 --- a/crates/engine/tree/src/tree/mod.rs +++ b/crates/engine/tree/src/tree/mod.rs @@ -648,7 +648,7 @@ where

::Provider: BlockReader, E: BlockExecutorProvider, - C: ConfigureEvm

, + C: ConfigureEvm
+ 'static, T: EngineTypes, V: EngineValidator, { diff --git a/crates/evm/src/lib.rs b/crates/evm/src/lib.rs index 1c5f27f77..8f3a4792b 100644 --- a/crates/evm/src/lib.rs +++ b/crates/evm/src/lib.rs @@ -166,7 +166,7 @@ where /// /// Default trait method implementation is done w.r.t. L1. #[auto_impl::auto_impl(&, Arc)] -pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone + 'static { +pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone { /// The header type used by the EVM. type Header: BlockHeader; @@ -177,7 +177,7 @@ pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone + 'static { type TxEnv: TransactionEnv; /// The error type that is returned by [`Self::next_evm_env`]. - type Error: core::error::Error + Send + Sync; + type Error: core::error::Error + Send + Sync + 'static; /// Identifier of the EVM specification. type Spec: Debug + Copy + Send + Sync + 'static; diff --git a/crates/node/builder/src/components/builder.rs b/crates/node/builder/src/components/builder.rs index 29e4e866e..022504ee7 100644 --- a/crates/node/builder/src/components/builder.rs +++ b/crates/node/builder/src/components/builder.rs @@ -409,7 +409,7 @@ where Pool: TransactionPool>> + Unpin + 'static, - EVM: ConfigureEvmFor>, + EVM: ConfigureEvmFor> + 'static, Executor: BlockExecutorProvider>, Cons: FullConsensus, Error = ConsensusError> + Clone + Unpin + 'static, diff --git a/crates/node/builder/src/components/execute.rs b/crates/node/builder/src/components/execute.rs index 038f647ef..64539baf1 100644 --- a/crates/node/builder/src/components/execute.rs +++ b/crates/node/builder/src/components/execute.rs @@ -9,7 +9,7 @@ pub trait ExecutorBuilder: Send { /// The EVM config to use. /// /// This provides the node with the necessary configuration to configure an EVM. - type EVM: ConfigureEvmFor>; + type EVM: ConfigureEvmFor> + 'static; /// The type that knows how to execute blocks. type Executor: BlockExecutorProvider>; @@ -24,7 +24,7 @@ pub trait ExecutorBuilder: Send { impl ExecutorBuilder for F where Node: FullNodeTypes, - EVM: ConfigureEvmFor>, + EVM: ConfigureEvmFor> + 'static, Executor: BlockExecutorProvider>, F: FnOnce(&BuilderContext) -> Fut + Send, Fut: Future> + Send, diff --git a/crates/node/builder/src/components/mod.rs b/crates/node/builder/src/components/mod.rs index e2ebdc058..5337fa107 100644 --- a/crates/node/builder/src/components/mod.rs +++ b/crates/node/builder/src/components/mod.rs @@ -127,7 +127,7 @@ where Pool: TransactionPool>> + Unpin + 'static, - EVM: ConfigureEvm
, Transaction = TxTy>, + EVM: ConfigureEvm
, Transaction = TxTy> + 'static, Executor: BlockExecutorProvider>, Cons: FullConsensus, Error = ConsensusError> + Clone + Unpin + 'static,