-
Notifications
You must be signed in to change notification settings - Fork 182
chore(release): prepare v0.30.3 #6236
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
Conversation
WalkthroughThis PR updates Forest v0.30.3 release metadata and documentation, bumping the package version in Cargo.toml from 0.30.2 to 0.30.3 and restructuring CHANGELOG.md with semantic versioning sections and new feature entries. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes
Possibly related PRs
Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
Comment |
|
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: 1
📜 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 (2)
CHANGELOG.md(1 hunks)Cargo.toml(1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 5867
File: src/ipld/util.rs:553-558
Timestamp: 2025-08-08T12:10:45.218Z
Learning: Forest project targets Rust stable >=1.89; features stabilized in 1.88 like let-chains are acceptable in this codebase.
Learnt from: elmattic
Repo: ChainSafe/forest PR: 6128
File: src/ipld/util.rs:23-30
Timestamp: 2025-10-17T09:36:15.757Z
Learning: Always run `cargo check` or `cargo build` to verify actual compilation errors in the Forest codebase before flagging them as issues. Do not rely solely on documentation or assumptions about trait implementations.
Learnt from: elmattic
Repo: ChainSafe/forest PR: 6128
File: src/ipld/util.rs:23-30
Timestamp: 2025-10-17T09:36:15.757Z
Learning: Always run `cargo check` or `cargo build` to verify actual compilation errors in the Forest codebase before flagging them as issues. Do not rely solely on documentation or assumptions about trait implementations.
⏰ 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 Ubuntu
- GitHub Check: Build MacOS
- GitHub Check: cargo-publish-dry-run
- GitHub Check: All lint checks
- GitHub Check: tests
- GitHub Check: tests-release
- GitHub Check: Build forest binaries on Linux AMD64
🔇 Additional comments (2)
CHANGELOG.md (2)
32-37: Empty "unreleased" sections are acceptable for a release.The
Changed,Removed, andFixedsubsections under "Forest unreleased" (lines 32-37) are empty, which is appropriate when preparing a release version—this cleanly separates released from unreleased work. However, ensure that any post-release work uses this section for future entries.
38-72: v0.30.3 release notes are well-structured and complete.The v0.30.3 "Trishul" release section contains:
- Clear release description summarizing key improvements (lines 40-41)
- 5 well-documented Added entries with linked PRs/issues
- 1 Changed entry (snapshot export format update)
- 5 Fixed entries addressing critical issues (fork deadlock fix, RPC improvements, batch request fix)
All entries follow the established format and are consistent with the broader codebase changes (version bump in Cargo.toml). No formatting, typographical, or structural issues detected.
| version = "0.30.3" | ||
| authors = ["ChainSafe Systems <info@chainsafe.io>"] | ||
| repository = "https://github.com/ChainSafe/forest" | ||
| edition = "2024" |
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.
Critical: Invalid Rust edition "2024" will prevent compilation.
Rust does not have an edition for 2024 yet. The latest edition is 2021. This line will cause the build to fail immediately. Based on the codebase targeting Rust stable >=1.89, use edition "2021".
Apply this diff to fix the edition:
-edition = "2024"
+edition = "2021"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| edition = "2024" | |
| edition = "2021" |
🤖 Prompt for AI Agents
In Cargo.toml around line 6, the edition is set to "2024" which is invalid;
change it to the supported Rust edition "2021" to match the codebase target
(Rust stable >=1.89). Update the edition line from edition = "2024" to edition =
"2021" and save the file so the project compiles with the correct Rust edition.
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.
Bad bot
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.
🧩 Analysis chain
🌐 Web query:
Rust edition 2024
💡 Result:
Rust 2024 — summary
- What it is: the latest Rust language edition (successor to 2021) that brings small-breaking semantic changes, new language features, std/Cargo/rustfmt updates, and migration tooling. [1][2][3].
- Stable release date / compiler: shipped with Rust 1.85.0 on February 20, 2025 (entered beta Jan 22, 2025). [2][4].
- Key user-facing changes: async closures (async || { }), edition-style rustfmt (style editions), some std/Cargo stabilizations and edition-related sematic tweaks (drop order, macro matcher/
exprbehavior, etc.). See the Edition Guide and release notes for full details. [4][1][5]. - How to opt in: set edition = "2024" in Cargo.toml (optionally set rust-version = "1.85"), or run cargo +beta fix --edition while testing on beta before stable. [2][4].
Read more / primary sources: Rust blog announcement and release notes, Rust project goals / Edition Guide. [1][2][5].
@LesnyRumcajs, I apologize for the incorrect review comment. You're absolutely right - Rust edition 2024 is valid and was released with Rust 1.85.0 on February 20, 2025. The edition = "2024" in your Cargo.toml is correct and will work perfectly fine.
I should not have flagged this as an issue. Thank you for the correction, and I'll be more careful in future reviews.
|\__/|
(•_•)
/ > 💔 Sorry about that
🧠 Learnings used
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 5886
File: interop-tests/src/tests/go_app/gen.go:29-29
Timestamp: 2025-08-07T13:39:15.107Z
Learning: Auto-generated files like those created by rust2go (indicated by "Generated by rust2go. Please DO NOT edit this C part manually." comment) in the Forest project should be skipped during code review as they are not intended for manual editing.
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 5867
File: src/ipld/util.rs:553-558
Timestamp: 2025-08-08T12:10:45.218Z
Learning: Forest project targets Rust stable >=1.89; features stabilized in 1.88 like let-chains are acceptable in this codebase.
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 5867
File: src/ipld/util.rs:553-558
Timestamp: 2025-08-08T12:10:45.218Z
Learning: Forest pins Rust toolchain to 1.89.0 via rust-toolchain.toml; features stabilized in 1.88 (e.g., let-chains) are acceptable in this codebase.
Learnt from: LesnyRumcajs
Repo: ChainSafe/forest PR: 5907
File: src/rpc/methods/state.rs:523-570
Timestamp: 2025-08-06T15:44:33.467Z
Learning: LesnyRumcajs prefers to rely on BufWriter's Drop implementation for automatic flushing rather than explicit flush() calls in Forest codebase.
Summary of changes
Changes introduced in this pull request:
Reference issue to close (if applicable)
Closes
Other information and links
Change checklist
Summary by CodeRabbit
New Features
Bug Fixes