Skip to content

Commit 0971015

Browse files
committed
fix: feature propagation
Optimize Sender Recovery Process (paradigmxyz#11385) chore: simplify update fn (paradigmxyz#11880) bump rust to 1.82 (paradigmxyz#11876) rpc: add unit tests for `RpcModuleSelection` (paradigmxyz#11883) feat: tasks executor metrics in grafana (paradigmxyz#11815) Co-authored-by: Dan Cline <[email protected]> refactor(txpool): small refactor for `InMemoryBlobStore` impl (paradigmxyz#11886) primitives: use alloy `MAXIMUM_EXTRA_DATA_SIZE` constant (paradigmxyz#11881) test(txpool): add unit test for `BlobStoreCanonTracker` (paradigmxyz#11885) refactor: move `EngineValidator` setup to `RpcAddOns` (paradigmxyz#11850) feat: update el requests for devnet 4 (paradigmxyz#11865) Co-authored-by: Matthias Seitz <[email protected]> check more features
1 parent 9c8f5d8 commit 0971015

File tree

180 files changed

+2511
-1936
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

180 files changed

+2511
-1936
lines changed

.config/zepter.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
version:
2+
format: 1
3+
# Minimum zepter version that is expected to work. This is just for printing a nice error
4+
# message when someone tries to use an older version.
5+
binary: 0.13.2
6+
7+
# The examples in the following comments assume crate `A` to have a dependency on crate `B`.
8+
workflows:
9+
check:
10+
- [
11+
"lint",
12+
# Check that `A` activates the features of `B`.
13+
"propagate-feature",
14+
# These are the features to check:
15+
"--features=std,optimism,dev,asm-keccak,jemalloc,jemalloc-prof,tracy-allocator,serde-bincode-compat,serde,test-utils,arbitrary,bench",
16+
# Do not try to add a new section into `[features]` of `A` only because `B` expose that feature. There are edge-cases where this is still needed, but we can add them manually.
17+
"--left-side-feature-missing=ignore",
18+
# Ignore the case that `A` it outside of the workspace. Otherwise it will report errors in external dependencies that we have no influence on.
19+
"--left-side-outside-workspace=ignore",
20+
# Auxillary flags:
21+
"--offline",
22+
"--locked",
23+
"--show-path",
24+
"--quiet",
25+
]
26+
default:
27+
# Running `zepter` with no subcommand will check & fix.
28+
- [$check.0, "--fix"]
29+
30+
# Will be displayed when any workflow fails:
31+
help:
32+
text: |
33+
Reth uses the Zepter CLI to detect abnormalities in Cargo features, e.g. missing propagation.
34+
35+
It looks like one more more checks failed; please check the console output.
36+
37+
You can try to automatically address them by installing zepter (`cargo install zepter --locked`) and simply running `zepter` in the workspace root.
38+
links:
39+
- "https://github.com/paradigmxyz/reth/pull/11888"
40+
- "https://github.com/ggwpez/zepter"

.github/workflows/lint.yml

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ jobs:
103103
- uses: actions/checkout@v4
104104
- uses: dtolnay/rust-toolchain@master
105105
with:
106-
toolchain: "1.81" # MSRV
106+
toolchain: "1.82" # MSRV
107107
- uses: Swatinem/rust-cache@v2
108108
with:
109109
cache-on-failure: true
@@ -163,7 +163,7 @@ jobs:
163163
- uses: dtolnay/rust-toolchain@nightly
164164
- uses: dtolnay/rust-toolchain@master
165165
with:
166-
toolchain: "1.81" # MSRV
166+
toolchain: "1.82" # MSRV
167167
- uses: Swatinem/rust-cache@v2
168168
with:
169169
cache-on-failure: true
@@ -219,6 +219,22 @@ jobs:
219219
env:
220220
RUSTFLAGS: -D warnings
221221

222+
# Check crates correclty propagate features
223+
feature-propagation:
224+
runs-on: ubuntu-latest
225+
timeout-minutes: 20
226+
steps:
227+
- uses: actions/checkout@v4
228+
- name: fetch deps
229+
run: |
230+
# Eagerly pull dependencies
231+
time cargo metadata --format-version=1 --locked > /dev/null
232+
- name: run zepter
233+
run: |
234+
cargo install zepter -f --locked
235+
zepter --version
236+
time zepter run check
237+
222238
lint-success:
223239
name: lint success
224240
runs-on: ubuntu-latest
@@ -236,6 +252,7 @@ jobs:
236252
- grafana
237253
- no-test-deps
238254
- features
255+
- feature-propagation
239256
timeout-minutes: 30
240257
steps:
241258
- name: Decide whether the needed jobs succeeded or failed

0 commit comments

Comments
 (0)