-
Notifications
You must be signed in to change notification settings - Fork 182
chore: bump fvm #6142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fvm@4.7.3 -> fvm@4.7.4
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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