Repository navigation
chore(deps): upgrade Reth to 2.8 and consolidate dependency updates - #419
Conversation
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Update Reth and related dependencies Cargo.toml |
Reth Git dependencies move from v2.5.0 to v2.8.0. Related Reth, Alloy, revm, revm-inspectors, Tokio, and rand versions are updated. |
Adjust node provider and test imports crates/node/src/builder.rs, crates/node/src/payload_service.rs |
build_payload converts the state provider to an EVM state provider before creating StateProviderDatabase. Test imports source CachedReads and CancelOnDrop from their respective crates. |
Priority:
Estimated code review effort: 2 (Simple) | ~10 minutes
Change: Other
Possibly related issues
evstack/ev-nodeissue 3495 reports a Tokio vulnerability affecting version 1.52.3 and versions before 1.53.3. This update uses Tokio 1.54.1, which is outside that affected range.
Suggested reviewers: chatton, randygrok
Merge Risk: 
Minimal · up to b07c7
-
The dependency and node adjustments have no established merge-blocking issue; they are mergeable after normal checks.
Pre-merge checks: 
4 · 
1
-
Failed checks: 1 inconclusive Passed checks: 4 passed-
Full details: Out of Scope Changes check
-
Explanation
The reviewable changes are the Cargo.toml dependency version updates, the builder.rs state-provider adaptation in crates/node/src/builder.rs, and the test import move in crates/node/src/payload_service.rs. Each change supports the dependency upgrade in
#406-#416. The payload_service.rs change moves CachedReads and CancelOnDrop imports to their source crates instead of reth_revm. The PR description ties this change to the reth_tasks import move. The summary shows no unrelated feature code. The PR description states that the peer head subscription PR is excluded, and no code for it appears in the summary. Cargo.lock is excluded from review by the !**/*.lock rule. Its contents are not used as evidence for this assessment. Lockfile completeness is covered in the linkedIssuesAssessment.
Full details: Docstring Coverage
-
Explanation
Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 2 files. (1 skipped: 1 unsupported.)
Full details: Description check
-
Explanation
The description states the purpose clearly: upgrading Reth git dependencies from v2.5.0 to v2.8.0, aligning related crates (reth-codecs/primitives-traits 0.8.2, REVM 43.0.3, alloy-evm 0.39.0, Alloy 2.5.0, revm-inspectors 0.44.3, Tokio 1.54.1, rand 0.10.3), and adapting payload building and a test import. It lists consolidated PRs
#406-#416 and closing references, plus detailed validation results on macOS ARM64, a proptest compatibility note, and an operator note. It does not follow the repository template: the '## Type of Change' checkboxes are missing, the template's 'Checklist' section is absent, and 'Testing' is written as a free-form list rather than the template's section. The template's 'Fixes #(issue)' line is replaced by 'Closes' lines for multiple issues. Core information is present, so the description is mostly complete even though several template sections are not followed.
-
Full details: Linked Issues check
-
Explanation
Scope: directly linked issues
#406,#407,#408,#409,#410,#411,#412,#413,#414,#415,#416. No linked issue is closed or contextual.Supported by reviewable evidence:
- Version declarations in Cargo.toml move Reth from v2.5.0 to v2.8.0, reth-codecs and primitives-traits to 0.8.2, revm to 43.0.3, alloy-evm to 0.39.0, Alloy to 2.5.0, revm-inspectors to 0.44.3, Tokio to 1.54.1, and rand to 0.10.3 [
#407,#408-chore(deps): bump reth-trie-db from v2.5.0 to v2.8.0 #414,#415,#416]. - crates/node/src/builder.rs converts the latest state provider into an EVM state provider before StateProviderDatabase is built. This is the compatibility change for the Reth EVM state-provider adapter [
#409-chore(deps): bump reth-node-builder from v2.5.0 to v2.8.0 #411,#414].
Not established from reviewable evidence:
- Cargo.lock is excluded by ignored_files (rule !**/*.lock). Lockfile resolution is therefore unknown. This affects
#406(highest compatible versions, additions and removals), the resolved Tokio 1.54.1 and rand 0.10.3 requirements [#407,#415], and the resolved alloy-signer-local 2.5.0 and revm-inspectors 0.44.3 requirements [#413,#416]. - No reviewable change shows accommodation of the reth-testing-utils test-helper changes (PeerConfig builder, INVALID payload failure) [
#408]. It is unknown whether the repository uses these helpers. - No reviewable change shows accommodation of trie API or multiproof interface changes [
#414], or of other reth-trie-db, reth-consensus-common, reth-cli, or reth-node-builder API changes [#409-chore(deps): bump reth-node-builder from v2.5.0 to v2.8.0 #411]. The summary lists no such files. It is unknown whether the repository uses these APIs. - Upstream behavior changes named in
#410and#411(gas-price oracle defaults, WebSocket origin enforcement, minimum priority fee, worker sizing, RPC compression, metrics limits) appear only in the PR operator note. No reviewable code or configuration change addresses them. It is unknown whether repository configuration depends on them. - The author reports successful cargo check, test, clippy, build, and client test runs. These results were not verified in this review.
Resolution
Provide reviewable evidence for the following items:
- Resolved versions in Cargo.lock for tokio 1.54.1, rand 0.10.3, alloy-signer-local 2.5.0, revm-inspectors 0.44.3, and the reth-* crates at v2.8.0. Confirm that the lockfile contains the additions and removals described in
#406. Cargo.lock is excluded from this review by the !**/*.lock rule, so this check needs an independent lockfile review. - Confirmation from repository source that reth-testing-utils, reth-trie-db, reth-consensus-common, reth-cli, and reth-node-builder are either unused or compile and behave correctly with the v2.8.0 APIs. Cite any changed call sites.
- Confirmation whether repository configuration or code depends on the gas-price oracle defaults, WebSocket origin enforcement, minimum priority fee handling, or builder-start error codes changed in Reth v2.8.0. If a dependency exists, provide the code or configuration change that accounts for it.
- Version declarations in Cargo.toml move Reth from v2.5.0 to v2.8.0, reth-codecs and primitives-traits to 0.8.2, revm to 43.0.3, alloy-evm to 0.39.0, Alloy to 2.5.0, revm-inspectors to 0.44.3, Tokio to 1.54.1, and rand to 0.10.3 [
-
Finishing Touches
-
📝 Generate docstrings
-
- Commit to this branch
- Create a new PR
🧪 Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands.
Upgrade all Reth git dependencies together from v2.5.0 to v2.8.0 and align reth-codecs/primitives-traits 0.8.2, REVM 43.0.3, alloy-evm 0.39.0, Alloy 2.5.0, and revm-inspectors 0.44.3. Refresh Cargo.lock, including Tokio 1.54.1 and rand 0.10.3.
Adapt payload building to Reth's EVM state-provider adapter and move the test cancellation import to reth_tasks.
Consolidates dependency PRs #406, #407, #408, #409, #410, #411, #412, #413, #414, #415, and #416. Their updates are included in this branch; the unrelated peer head subscription PR is outside this change.
Validation on macOS ARM64 with Rust stable 1.98.1 (debug/test profiles with debug info and incremental compilation disabled):
Compatibility note: Cargo.lock deliberately retains proptest 1.11.0. Updating to 1.12.0 breaks proptest-arbitrary-interop 0.1.0 because its TestRng::fill_bytes trait import no longer resolves. A fresh unrestricted cargo update will need to retain this version until upstream is fixed.
Operator note: upstream Reth 2.8 changes GPO defaults, WebSocket origin enforcement, minimum-priority-fee handling, and builder-start error codes. See https://github.com/paradigmxyz/reth/releases/tag/v2.8.0.
Closes #406
Closes #407
Closes #408
Closes #409
Closes #410
Closes #411
Closes #412
Closes #413
Closes #414
Closes #415
Closes #416
Summary by CodeRabbit