mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 02:49:55 +00:00
remove: Reduce unnecessary LoC
This commit is contained in:
@ -1,22 +1,9 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use crate::{
|
||||
node::{rpc::engine_api::payload::HlPayloadTypes, HlNode},
|
||||
HlBlock, HlPrimitives,
|
||||
};
|
||||
use crate::{HlBlock, HlPrimitives};
|
||||
use alloy_eips::eip7685::Requests;
|
||||
use alloy_primitives::U256;
|
||||
use reth::{
|
||||
api::FullNodeTypes,
|
||||
builder::{components::PayloadServiceBuilder, BuilderContext},
|
||||
payload::{PayloadBuilderHandle, PayloadServiceCommand},
|
||||
transaction_pool::TransactionPool,
|
||||
};
|
||||
use reth_evm::ConfigureEvm;
|
||||
use reth_payload_primitives::BuiltPayload;
|
||||
use reth_primitives::SealedBlock;
|
||||
use tokio::sync::{broadcast, mpsc};
|
||||
use tracing::warn;
|
||||
use std::sync::Arc;
|
||||
|
||||
/// Built payload for Hl. This is similar to [`EthBuiltPayload`] but without sidecars as those
|
||||
/// included into [`HlBlock`].
|
||||
@ -45,73 +32,3 @@ impl BuiltPayload for HlBuiltPayload {
|
||||
self.requests.clone()
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, Default)]
|
||||
#[non_exhaustive]
|
||||
pub struct HlPayloadServiceBuilder;
|
||||
|
||||
impl<Node, Pool, Evm> PayloadServiceBuilder<Node, Pool, Evm> for HlPayloadServiceBuilder
|
||||
where
|
||||
Node: FullNodeTypes<Types = HlNode>,
|
||||
Pool: TransactionPool,
|
||||
Evm: ConfigureEvm,
|
||||
{
|
||||
async fn spawn_payload_builder_service(
|
||||
self,
|
||||
ctx: &BuilderContext<Node>,
|
||||
_pool: Pool,
|
||||
_evm_config: Evm,
|
||||
) -> eyre::Result<PayloadBuilderHandle<HlPayloadTypes>> {
|
||||
let (tx, mut rx) = mpsc::unbounded_channel();
|
||||
|
||||
ctx.task_executor().spawn_critical("payload builder", async move {
|
||||
let mut subscriptions = Vec::new();
|
||||
|
||||
while let Some(message) = rx.recv().await {
|
||||
match message {
|
||||
PayloadServiceCommand::Subscribe(tx) => {
|
||||
let (events_tx, events_rx) = broadcast::channel(100);
|
||||
// Retain senders to make sure that channels are not getting closed
|
||||
subscriptions.push(events_tx);
|
||||
let _ = tx.send(events_rx);
|
||||
}
|
||||
message => warn!(?message, "Noop payload service received a message"),
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Ok(PayloadBuilderHandle::new(tx))
|
||||
}
|
||||
}
|
||||
|
||||
// impl From<EthBuiltPayload> for HlBuiltPayload {
|
||||
// fn from(value: EthBuiltPayload) -> Self {
|
||||
// let EthBuiltPayload { id, block, fees, sidecars, requests } = value;
|
||||
// HlBuiltPayload {
|
||||
// id,
|
||||
// block: block.into(),
|
||||
// fees,
|
||||
// requests,
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// pub struct HlPayloadBuilder<Inner> {
|
||||
// inner: Inner,
|
||||
// }
|
||||
|
||||
// impl<Inner> PayloadBuilder for HlPayloadBuilder<Inner>
|
||||
// where
|
||||
// Inner: PayloadBuilder<BuiltPayload = EthBuiltPayload>,
|
||||
// {
|
||||
// type Attributes = Inner::Attributes;
|
||||
// type BuiltPayload = HlBuiltPayload;
|
||||
// type Error = Inner::Error;
|
||||
|
||||
// fn try_build(
|
||||
// &self,
|
||||
// args: BuildArguments<Self::Attributes, Self::BuiltPayload>,
|
||||
// ) -> Result<BuildOutcome<Self::BuiltPayload>, PayloadBuilderError> {
|
||||
// let outcome = self.inner.try_build(args)?;
|
||||
// }
|
||||
// }
|
||||
|
||||
@ -165,7 +165,6 @@ where
|
||||
type EVM = HlEvmConfig;
|
||||
|
||||
async fn build_evm(self, ctx: &BuilderContext<Node>) -> eyre::Result<Self::EVM> {
|
||||
let evm_config = HlEvmConfig::hl(ctx.chain_spec());
|
||||
Ok(evm_config)
|
||||
Ok(HlEvmConfig::hl(ctx.chain_spec()))
|
||||
}
|
||||
}
|
||||
|
||||
@ -15,12 +15,15 @@ use crate::{
|
||||
pseudo_peer::BlockSourceConfig,
|
||||
};
|
||||
use consensus::HlConsensusBuilder;
|
||||
use engine::HlPayloadServiceBuilder;
|
||||
use evm::HlExecutorBuilder;
|
||||
use network::HlNetworkBuilder;
|
||||
use reth::{
|
||||
api::{FullNodeTypes, NodeTypes},
|
||||
builder::{components::ComponentsBuilder, rpc::RpcAddOns, Node, NodeAdapter},
|
||||
builder::{
|
||||
components::{ComponentsBuilder, NoopPayloadServiceBuilder},
|
||||
rpc::RpcAddOns,
|
||||
Node, NodeAdapter,
|
||||
},
|
||||
};
|
||||
use reth_engine_primitives::ConsensusEngineHandle;
|
||||
use std::{marker::PhantomData, sync::Arc};
|
||||
@ -65,7 +68,7 @@ impl HlNode {
|
||||
) -> ComponentsBuilder<
|
||||
Node,
|
||||
HlPoolBuilder,
|
||||
HlPayloadServiceBuilder,
|
||||
NoopPayloadServiceBuilder,
|
||||
HlNetworkBuilder,
|
||||
HlExecutorBuilder,
|
||||
HlConsensusBuilder,
|
||||
@ -77,7 +80,7 @@ impl HlNode {
|
||||
.node_types::<Node>()
|
||||
.pool(HlPoolBuilder)
|
||||
.executor(HlExecutorBuilder::default())
|
||||
.payload(HlPayloadServiceBuilder::default())
|
||||
.payload(NoopPayloadServiceBuilder::default())
|
||||
.network(HlNetworkBuilder {
|
||||
engine_handle_rx: self.engine_handle_rx.clone(),
|
||||
block_source_config: self.block_source_config.clone(),
|
||||
@ -100,7 +103,7 @@ where
|
||||
type ComponentsBuilder = ComponentsBuilder<
|
||||
N,
|
||||
HlPoolBuilder,
|
||||
HlPayloadServiceBuilder,
|
||||
NoopPayloadServiceBuilder,
|
||||
HlNetworkBuilder,
|
||||
HlExecutorBuilder,
|
||||
HlConsensusBuilder,
|
||||
|
||||
@ -12,7 +12,6 @@ use crate::{
|
||||
HlBlock,
|
||||
};
|
||||
use alloy_rlp::{Decodable, Encodable};
|
||||
// use handshake::HlHandshake;
|
||||
use reth::{
|
||||
api::{FullNodeTypes, TxTy},
|
||||
builder::{components::NetworkBuilder, BuilderContext},
|
||||
|
||||
@ -114,11 +114,6 @@ impl reth_codecs::Compact for TransactionSigned {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn convert_recovered(value: Recovered<TransactionSigned>) -> Recovered<InnerType> {
|
||||
let (tx, signer) = value.into_parts();
|
||||
Recovered::new_unchecked(tx.into_inner(), signer)
|
||||
}
|
||||
|
||||
impl FromRecoveredTx<TransactionSigned> for TxEnv {
|
||||
fn from_recovered_tx(tx: &TransactionSigned, sender: Address) -> Self {
|
||||
TxEnv::from_recovered_tx(&tx.inner(), sender)
|
||||
@ -192,20 +187,6 @@ impl SerdeBincodeCompat for TransactionSigned {
|
||||
|
||||
pub type BlockBody = alloy_consensus::BlockBody<TransactionSigned>;
|
||||
|
||||
impl From<TransactionSigned> for EthereumTxEnvelope<TxEip4844> {
|
||||
fn from(value: TransactionSigned) -> Self {
|
||||
value.into_inner()
|
||||
}
|
||||
}
|
||||
|
||||
impl TryFrom<TransactionSigned> for EthereumTxEnvelope<TxEip4844WithSidecar> {
|
||||
type Error = <InnerType as TryInto<EthereumTxEnvelope<TxEip4844WithSidecar>>>::Error;
|
||||
|
||||
fn try_from(value: TransactionSigned) -> Result<Self, Self::Error> {
|
||||
value.into_inner().try_into()
|
||||
}
|
||||
}
|
||||
|
||||
impl TryFrom<TransactionSigned>
|
||||
for EthereumTxEnvelope<TxEip4844WithSidecar<BlobTransactionSidecarVariant>>
|
||||
{
|
||||
|
||||
@ -36,7 +36,7 @@ where
|
||||
}
|
||||
}
|
||||
|
||||
/// Validator for Optimism engine API.
|
||||
/// Validator for HyperEVM engine API.
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct HlPayloadValidator {
|
||||
inner: HlExecutionPayloadValidator<HlChainSpec>,
|
||||
@ -123,7 +123,7 @@ where
|
||||
return Err(PayloadError::BlockHash {
|
||||
execution: sealed_block.hash(),
|
||||
consensus: expected_hash,
|
||||
})?;
|
||||
});
|
||||
}
|
||||
|
||||
Ok(sealed_block)
|
||||
|
||||
Reference in New Issue
Block a user