chore: bump fvm#6142
Conversation
WalkthroughUpdated dependency versions and feature flags in Cargo.toml; added Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Suggested labels
Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
Comment |
| "fvm 2.11.2", | ||
| "fvm 3.13.2", | ||
| "fvm 4.7.3", | ||
| "fvm 4.7.4", |
There was a problem hiding this comment.
fvm@4.7.3 -> fvm@4.7.4
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
src/shim/version.rs (1)
42-57: Excellent refactor using macro to generate version constants.The
define_network_versions!macro is a clean solution that:
- Eliminates repetitive code for V0–V28 constants
- Uses the
pastecrate appropriately to generate identifiers- Makes future version additions trivial (just add a number to the list)
- Adds V28 support as required by the PR objectives
The macro correctly expands to:
pub const V0: Self = Self(NetworkVersion_latest::V0); pub const V1: Self = Self(NetworkVersion_latest::V1); // ... etcFor future maintainability, consider adding a doc comment to the macro explaining its purpose and expansion pattern:
+/// Defines public constants V0, V1, ..., Vn for NetworkVersion. +/// Each constant is mapped to the corresponding NetworkVersion_latest variant. macro_rules! define_network_versions { ($($version:literal),+ $(,)?) => {
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
Cargo.lockis excluded by!**/*.lock
📒 Files selected for processing (3)
Cargo.toml(6 hunks)src/auth/mod.rs(1 hunks)src/shim/version.rs(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
- GitHub Check: Build forest binaries on Linux AMD64
- GitHub Check: tests
- GitHub Check: tests-release
- GitHub Check: All lint checks
- GitHub Check: cargo-publish-dry-run
- GitHub Check: Build Ubuntu
- GitHub Check: Build MacOS
🔇 Additional comments (4)
src/auth/mod.rs (1)
23-23: LGTM! Harmless addition ofClonetrait.Adding
Cloneto theClaimsstruct is safe since all fields (Vec<String>andusize) already implementClone. While not strictly required by the visible code in this file, it may be needed for external usage or is good for future-proofing.Cargo.toml (2)
91-91: LGTM! Addition ofnv28-devfeature aligns with PR objectives.The addition of the
nv28-devfeature tofvm4correctly supports the FVM v4 upgrade and NetworkVersion::V28 functionality mentioned in the PR description.
19-19: Dependency versions and security advisories verifiedAll updated crates are at their latest versions with no known vulnerabilities (the only hashbrown advisory applies to <0.15.1 and is resolved in v0.16.0).
src/shim/version.rs (1)
13-13: Verifypastecrate usage aligns with learnings.The
pastecrate is used for token concatenation in the macro. Note that while the retrieved learnings mention a Python WSGI framework also named "Paste", this is the Rustpastecrate (for macro token pasting), which is unrelated.Based on learnings
Summary of changes
Changes introduced in this pull request:
fvm@4andfvm_shared@4and enablenv28-devfeature (4.7.3->4.7.4)NetworkVersion::V28NetworkVersiondefinations with macrocargo updateReference issue to close (if applicable)
Closes
Other information and links
Change checklist
Summary by CodeRabbit