chore: remove 'static bound from ConfigureEvmEnv (#14606)

This commit is contained in:
Arsenii Kulikov
2025-02-20 13:54:57 +04:00
committed by GitHub
parent 7ee8461bac
commit 2c069230aa
7 changed files with 9 additions and 9 deletions

View File

@ -85,7 +85,7 @@ where
where where
B: PayloadAttributesBuilder<<N::Engine as PayloadTypes>::PayloadAttributes>, B: PayloadAttributesBuilder<<N::Engine as PayloadTypes>::PayloadAttributes>,
V: EngineValidator<N::Engine, Block = BlockTy<N>>, V: EngineValidator<N::Engine, Block = BlockTy<N>>,
C: ConfigureEvm<Header = HeaderTy<N>, Transaction = TxTy<N>>, C: ConfigureEvm<Header = HeaderTy<N>, Transaction = TxTy<N>> + 'static,
{ {
let chain_spec = provider.chain_spec(); let chain_spec = provider.chain_spec();
let engine_kind = let engine_kind =

View File

@ -93,7 +93,7 @@ where
) -> Self ) -> Self
where where
V: EngineValidator<N::Engine, Block = BlockTy<N>>, V: EngineValidator<N::Engine, Block = BlockTy<N>>,
C: ConfigureEvm<Header = HeaderTy<N>, Transaction = TxTy<N>>, C: ConfigureEvm<Header = HeaderTy<N>, Transaction = TxTy<N>> + 'static,
{ {
let engine_kind = let engine_kind =
if chain_spec.is_optimism() { EngineApiKind::OpStack } else { EngineApiKind::Ethereum }; if chain_spec.is_optimism() { EngineApiKind::OpStack } else { EngineApiKind::Ethereum };

View File

@ -648,7 +648,7 @@ where
<P as DatabaseProviderFactory>::Provider: <P as DatabaseProviderFactory>::Provider:
BlockReader<Block = N::Block, Header = N::BlockHeader>, BlockReader<Block = N::Block, Header = N::BlockHeader>,
E: BlockExecutorProvider<Primitives = N>, E: BlockExecutorProvider<Primitives = N>,
C: ConfigureEvm<Header = N::BlockHeader, Transaction = N::SignedTx>, C: ConfigureEvm<Header = N::BlockHeader, Transaction = N::SignedTx> + 'static,
T: EngineTypes, T: EngineTypes,
V: EngineValidator<T, Block = N::Block>, V: EngineValidator<T, Block = N::Block>,
{ {

View File

@ -166,7 +166,7 @@ where
/// ///
/// Default trait method implementation is done w.r.t. L1. /// Default trait method implementation is done w.r.t. L1.
#[auto_impl::auto_impl(&, Arc)] #[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. /// The header type used by the EVM.
type Header: BlockHeader; type Header: BlockHeader;
@ -177,7 +177,7 @@ pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone + 'static {
type TxEnv: TransactionEnv; type TxEnv: TransactionEnv;
/// The error type that is returned by [`Self::next_evm_env`]. /// 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. /// Identifier of the EVM specification.
type Spec: Debug + Copy + Send + Sync + 'static; type Spec: Debug + Copy + Send + Sync + 'static;

View File

@ -409,7 +409,7 @@ where
Pool: TransactionPool<Transaction: PoolTransaction<Consensus = TxTy<Node::Types>>> Pool: TransactionPool<Transaction: PoolTransaction<Consensus = TxTy<Node::Types>>>
+ Unpin + Unpin
+ 'static, + 'static,
EVM: ConfigureEvmFor<PrimitivesTy<Node::Types>>, EVM: ConfigureEvmFor<PrimitivesTy<Node::Types>> + 'static,
Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>, Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>,
Cons: Cons:
FullConsensus<PrimitivesTy<Node::Types>, Error = ConsensusError> + Clone + Unpin + 'static, FullConsensus<PrimitivesTy<Node::Types>, Error = ConsensusError> + Clone + Unpin + 'static,

View File

@ -9,7 +9,7 @@ pub trait ExecutorBuilder<Node: FullNodeTypes>: Send {
/// The EVM config to use. /// The EVM config to use.
/// ///
/// This provides the node with the necessary configuration to configure an EVM. /// This provides the node with the necessary configuration to configure an EVM.
type EVM: ConfigureEvmFor<PrimitivesTy<Node::Types>>; type EVM: ConfigureEvmFor<PrimitivesTy<Node::Types>> + 'static;
/// The type that knows how to execute blocks. /// The type that knows how to execute blocks.
type Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>; type Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>;
@ -24,7 +24,7 @@ pub trait ExecutorBuilder<Node: FullNodeTypes>: Send {
impl<Node, F, Fut, EVM, Executor> ExecutorBuilder<Node> for F impl<Node, F, Fut, EVM, Executor> ExecutorBuilder<Node> for F
where where
Node: FullNodeTypes, Node: FullNodeTypes,
EVM: ConfigureEvmFor<PrimitivesTy<Node::Types>>, EVM: ConfigureEvmFor<PrimitivesTy<Node::Types>> + 'static,
Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>, Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>,
F: FnOnce(&BuilderContext<Node>) -> Fut + Send, F: FnOnce(&BuilderContext<Node>) -> Fut + Send,
Fut: Future<Output = eyre::Result<(EVM, Executor)>> + Send, Fut: Future<Output = eyre::Result<(EVM, Executor)>> + Send,

View File

@ -127,7 +127,7 @@ where
Pool: TransactionPool<Transaction: PoolTransaction<Consensus = TxTy<Node::Types>>> Pool: TransactionPool<Transaction: PoolTransaction<Consensus = TxTy<Node::Types>>>
+ Unpin + Unpin
+ 'static, + 'static,
EVM: ConfigureEvm<Header = HeaderTy<Node::Types>, Transaction = TxTy<Node::Types>>, EVM: ConfigureEvm<Header = HeaderTy<Node::Types>, Transaction = TxTy<Node::Types>> + 'static,
Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>, Executor: BlockExecutorProvider<Primitives = PrimitivesTy<Node::Types>>,
Cons: Cons:
FullConsensus<PrimitivesTy<Node::Types>, Error = ConsensusError> + Clone + Unpin + 'static, FullConsensus<PrimitivesTy<Node::Types>, Error = ConsensusError> + Clone + Unpin + 'static,