Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,19 @@

### Added

### Changed

### Removed

### Fixed

## Forest v0.30.3 "Trishul"

This is a non-mandatory release that brings important enhancements in Forest's tooling capabilities.
The release includes new CLI commands for snapshot monitoring, a crucial fork handling bug fix and ETH API performance improvements, and error handling.

### Added

- [#6082](https://github.com/ChainSafe/forest/issues/6082) Added `forest-cli snapshot export-status` and `forest-cli snapshot export-cancel` subcommands to monitor or cancel an export, respectively.

- [#6161](https://github.com/ChainSafe/forest/pull/6161) Added `forest-tool db import` subcommand.
Expand All @@ -45,8 +58,6 @@

- [#6145](https://github.com/ChainSafe/forest/pull/6145) Updated `forest-cli snapshot export` to use v2 format by default.

### Removed

### Fixed

- [#6178](https://github.com/ChainSafe/forest/pull/6178) Fixed incorrect error code for unsupported RPC methods.
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "forest-filecoin"
version = "0.30.2"
version = "0.30.3"
authors = ["ChainSafe Systems <info@chainsafe.io>"]
repository = "https://github.com/ChainSafe/forest"
edition = "2024"
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot Nov 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

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.

Suggested change
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.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bad bot

Copy link
Copy Markdown
Contributor

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/expr behavior, 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.

Expand Down
Loading