Files
reth/crates/storage/storage-api/Cargo.toml
Georgios Konstantopoulos d5dc0b27eb fix(storage-api): gate reth-chain dependency behind std feature
The reth-chain crate is inherently std-only (uses BTreeMap, Arc, etc.)
and was breaking the riscv32imac no_std builds by pulling in serde_core
which doesn't support no_std properly.

This makes reth-chain optional and only enables it when std feature is
active, gating the block_writer module that uses Chain behind std.
2026-01-17 08:32:10 +00:00

89 lines
2.2 KiB
TOML

[package]
name = "reth-storage-api"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
description = "Reth storage provider traits and types"
[lints]
workspace = true
[dependencies]
# reth
reth-chain = { workspace = true, optional = true }
reth-db-models.workspace = true
reth-chainspec.workspace = true
reth-db-api = { workspace = true, optional = true }
reth-execution-types.workspace = true
reth-primitives-traits.workspace = true
reth-prune-types.workspace = true
reth-stages-types.workspace = true
reth-storage-errors.workspace = true
reth-trie-common.workspace = true
revm-database.workspace = true
reth-ethereum-primitives.workspace = true
# ethereum
alloy-eips.workspace = true
alloy-primitives.workspace = true
alloy-consensus.workspace = true
alloy-rpc-types-engine.workspace = true
auto_impl.workspace = true
serde_json = { workspace = true, optional = true }
[features]
default = ["std"]
std = [
"dep:reth-chain",
"reth-chainspec/std",
"alloy-consensus/std",
"alloy-eips/std",
"alloy-primitives/std",
"alloy-rpc-types-engine/std",
"reth-primitives-traits/std",
"reth-stages-types/std",
"revm-database/std",
"reth-ethereum-primitives/std",
"reth-execution-types/std",
"reth-prune-types/std",
"reth-storage-errors/std",
"reth-db-models/std",
"reth-trie-common/std",
"serde_json?/std",
]
db-api = [
"dep:reth-db-api",
"dep:serde_json",
]
serde = [
"reth-chain?/serde",
"reth-ethereum-primitives/serde",
"reth-db-models/serde",
"reth-execution-types/serde",
"reth-primitives-traits/serde",
"reth-prune-types/serde",
"reth-stages-types/serde",
"reth-trie-common/serde",
"revm-database/serde",
"alloy-eips/serde",
"alloy-primitives/serde",
"alloy-consensus/serde",
"alloy-rpc-types-engine/serde",
]
serde-bincode-compat = [
"reth-execution-types/serde-bincode-compat",
"reth-primitives-traits/serde-bincode-compat",
"reth-trie-common/serde-bincode-compat",
"reth-chain?/serde-bincode-compat",
"reth-ethereum-primitives/serde-bincode-compat",
"alloy-eips/serde-bincode-compat",
"alloy-consensus/serde-bincode-compat",
]