paradigmxyz / reth

Modular, contributor-friendly and blazing-fast implementation of the Ethereum protocol, in Rust
https://reth.rs/
Apache License 2.0
3.5k stars 896 forks source link

Remove `feature = "optimism"` from `reth-optimism-payload-builder` #6906

Open DaniPopes opened 4 months ago

DaniPopes commented 4 months ago

Describe the feature

The feature doesn't make sense as the entire crate is only imported when building op-reth.

Remove [features] optimism = [] and all cfg inside of the crate.

Additional context

No response

mattsse commented 4 months ago

I think this should be possible now

AbnerZheng commented 4 months ago

Could I give it a try?

AbnerZheng commented 3 months ago

I attempted to remove the features=optimism and create a PR, but it appears to be unsuccessful. In my PR, the reth-optimism-payload-builder is a workspace member and it require the activation of the optimism feature in reth-primitives. However, other crates require the optimism feature of reth-primitives to be deactivated when running make lint(no optimism enabled). This is incompatible with Cargo's feature resolution, which builds a dependency with the union of all features enabled by any package that depends on it. https://doc.rust-lang.org/cargo/reference/features.html#feature-unification