mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
feat: add reth-eth meta crate (#14361)
This commit is contained in:
20
Cargo.lock
generated
20
Cargo.lock
generated
@ -7484,6 +7484,26 @@ dependencies = [
|
|||||||
"thiserror 2.0.11",
|
"thiserror 2.0.11",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "reth-ethereum"
|
||||||
|
version = "1.1.5"
|
||||||
|
dependencies = [
|
||||||
|
"reth-chainspec",
|
||||||
|
"reth-consensus",
|
||||||
|
"reth-consensus-common",
|
||||||
|
"reth-db",
|
||||||
|
"reth-ethereum-consensus",
|
||||||
|
"reth-ethereum-primitives",
|
||||||
|
"reth-evm",
|
||||||
|
"reth-evm-ethereum",
|
||||||
|
"reth-network",
|
||||||
|
"reth-node-api",
|
||||||
|
"reth-node-ethereum",
|
||||||
|
"reth-primitives-traits",
|
||||||
|
"reth-provider",
|
||||||
|
"reth-storage-api",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "reth-ethereum-cli"
|
name = "reth-ethereum-cli"
|
||||||
version = "1.1.5"
|
version = "1.1.5"
|
||||||
|
|||||||
@ -37,6 +37,7 @@ members = [
|
|||||||
"crates/ethereum/node",
|
"crates/ethereum/node",
|
||||||
"crates/ethereum/payload/",
|
"crates/ethereum/payload/",
|
||||||
"crates/ethereum/primitives/",
|
"crates/ethereum/primitives/",
|
||||||
|
"crates/ethereum/reth/",
|
||||||
"crates/etl/",
|
"crates/etl/",
|
||||||
"crates/evm/",
|
"crates/evm/",
|
||||||
"crates/evm/execution-errors",
|
"crates/evm/execution-errors",
|
||||||
@ -341,6 +342,7 @@ reth-ethereum-engine-primitives = { path = "crates/ethereum/engine-primitives",
|
|||||||
reth-ethereum-forks = { path = "crates/ethereum-forks", default-features = false }
|
reth-ethereum-forks = { path = "crates/ethereum-forks", default-features = false }
|
||||||
reth-ethereum-payload-builder = { path = "crates/ethereum/payload" }
|
reth-ethereum-payload-builder = { path = "crates/ethereum/payload" }
|
||||||
reth-ethereum-primitives = { path = "crates/ethereum/primitives", default-features = false }
|
reth-ethereum-primitives = { path = "crates/ethereum/primitives", default-features = false }
|
||||||
|
reth-ethereum = { path = "crates/ethereum/reth" }
|
||||||
reth-etl = { path = "crates/etl" }
|
reth-etl = { path = "crates/etl" }
|
||||||
reth-evm = { path = "crates/evm" }
|
reth-evm = { path = "crates/evm" }
|
||||||
reth-evm-ethereum = { path = "crates/ethereum/evm" }
|
reth-evm-ethereum = { path = "crates/ethereum/evm" }
|
||||||
|
|||||||
70
crates/ethereum/reth/Cargo.toml
Normal file
70
crates/ethereum/reth/Cargo.toml
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
[package]
|
||||||
|
name = "reth-ethereum"
|
||||||
|
version.workspace = true
|
||||||
|
edition.workspace = true
|
||||||
|
rust-version.workspace = true
|
||||||
|
license.workspace = true
|
||||||
|
homepage.workspace = true
|
||||||
|
repository.workspace = true
|
||||||
|
|
||||||
|
[lints]
|
||||||
|
workspace = true
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
# reth
|
||||||
|
reth-primitives-traits.workspace = true
|
||||||
|
reth-chainspec.workspace = true
|
||||||
|
reth-network = { workspace = true, optional = true }
|
||||||
|
reth-provider = { workspace = true, optional = true }
|
||||||
|
reth-db = { workspace = true, optional = true, features = ["mdbx"] }
|
||||||
|
reth-storage-api = { workspace = true, optional = true }
|
||||||
|
reth-node-api = { workspace = true, optional = true }
|
||||||
|
reth-consensus = { workspace = true, optional = true }
|
||||||
|
reth-consensus-common = { workspace = true, optional = true }
|
||||||
|
reth-evm = { workspace = true, optional = true }
|
||||||
|
|
||||||
|
# reth-ethereum
|
||||||
|
reth-ethereum-primitives.workspace = true
|
||||||
|
reth-ethereum-consensus = { workspace = true, optional = true }
|
||||||
|
reth-evm-ethereum = { workspace = true, optional = true }
|
||||||
|
reth-node-ethereum = { workspace = true, optional = true }
|
||||||
|
|
||||||
|
[features]
|
||||||
|
default = ["std"]
|
||||||
|
std = [
|
||||||
|
"reth-chainspec/std",
|
||||||
|
"reth-ethereum-primitives/std",
|
||||||
|
"reth-primitives-traits/std",
|
||||||
|
"reth-consensus?/std",
|
||||||
|
"reth-consensus-common?/std",
|
||||||
|
]
|
||||||
|
arbitrary = [
|
||||||
|
"std",
|
||||||
|
"reth-chainspec/arbitrary",
|
||||||
|
"reth-ethereum-primitives/arbitrary",
|
||||||
|
"reth-primitives-traits/arbitrary",
|
||||||
|
"reth-db?/arbitrary",
|
||||||
|
]
|
||||||
|
|
||||||
|
test-utils = [
|
||||||
|
"reth-chainspec/test-utils",
|
||||||
|
"reth-consensus?/test-utils",
|
||||||
|
"reth-db?/test-utils",
|
||||||
|
"reth-ethereum-primitives/test-utils",
|
||||||
|
"reth-evm?/test-utils",
|
||||||
|
"reth-network?/test-utils",
|
||||||
|
"reth-node-ethereum?/test-utils",
|
||||||
|
"reth-primitives-traits/test-utils",
|
||||||
|
"reth-provider?/test-utils",
|
||||||
|
]
|
||||||
|
|
||||||
|
full = ["consensus", "evm", "node", "provider"]
|
||||||
|
|
||||||
|
alloy-compat = ["reth-ethereum-primitives/alloy-compat"]
|
||||||
|
consensus = ["dep:reth-consensus", "dep:reth-consensus-common", "dep:reth-ethereum-consensus"]
|
||||||
|
evm = ["dep:reth-evm", "dep:reth-evm-ethereum"]
|
||||||
|
node-api = ["dep:reth-node-api"]
|
||||||
|
node = ["provider", "consensus", "evm", "node-api", "dep:reth-node-ethereum"]
|
||||||
|
network = ["dep:reth-network"]
|
||||||
|
provider = ["storage-api", "dep:reth-provider", "dep:reth-db"]
|
||||||
|
storage-api = ["dep:reth-storage-api"]
|
||||||
78
crates/ethereum/reth/src/lib.rs
Normal file
78
crates/ethereum/reth/src/lib.rs
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
//! Ethereum meta crate that provides access to commonly used reth dependencies.
|
||||||
|
|
||||||
|
#![doc(
|
||||||
|
html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/reth/main/assets/reth-docs.png",
|
||||||
|
html_favicon_url = "https://avatars0.githubusercontent.com/u/97369466?s=256",
|
||||||
|
issue_tracker_base_url = "https://github.com/paradigmxyz/reth/issues/"
|
||||||
|
)]
|
||||||
|
#![cfg_attr(not(test), warn(unused_crate_dependencies))]
|
||||||
|
#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
|
||||||
|
#![cfg_attr(not(feature = "std"), no_std)]
|
||||||
|
|
||||||
|
/// Re-exported ethereum types
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_ethereum_primitives::*;
|
||||||
|
|
||||||
|
/// Re-exported reth primitives
|
||||||
|
pub mod primitives {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_primitives_traits::*;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported consensus types
|
||||||
|
#[cfg(feature = "consensus")]
|
||||||
|
pub mod consensus {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_consensus::*;
|
||||||
|
pub use reth_consensus_common::*;
|
||||||
|
pub use reth_ethereum_consensus::*;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported from `reth_chainspec`
|
||||||
|
pub mod chainspec {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_chainspec::*;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported evm types
|
||||||
|
#[cfg(feature = "evm")]
|
||||||
|
pub mod evm {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_evm_ethereum::*;
|
||||||
|
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_evm as primitives;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported reth network types
|
||||||
|
#[cfg(feature = "network")]
|
||||||
|
pub mod network {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_network::*;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported reth provider types
|
||||||
|
#[cfg(feature = "provider")]
|
||||||
|
pub mod provider {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_provider::*;
|
||||||
|
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_db as db;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported reth storage api types
|
||||||
|
#[cfg(feature = "storage-api")]
|
||||||
|
pub mod storage {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_storage_api::*;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Re-exported ethereum node
|
||||||
|
#[cfg(feature = "node-api")]
|
||||||
|
pub mod node {
|
||||||
|
#[doc(inline)]
|
||||||
|
pub use reth_node_api as api;
|
||||||
|
#[cfg(feature = "node")]
|
||||||
|
pub use reth_node_ethereum::*;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user