`RustFmt` error: "let chains are only allowed in Rust 2024 or later" but I'm on 2024
まだ誰も着手していません。
評価
調査の方向性
Start by reading the :RustFmt implementation and how it selects the Rust file’s edition; compare that behavior with cargo fmt on the workspace and crate-level edition configurations described in the report. Reproduce with a crate using let chains and edition 2024, then check whether the command works with an explicit crate edition. Done when :RustFmt formats the file without the Rust 2024 edition error.
索引モデルが issue の本文から書いたものです。
説明
Project setup: I have a workspace that specifies the project versions, rust editions, and dependencies in the workspace Cargo.toml, and the crates contained within use:
version.workspace = true
edition.workspace = true
...
etc to refer to the configuration in the workspace Cargo.toml. I'm using edition "2024".
Vim setup: I'm on vim 8.2. rust.vim is already on its newest version. Here are the versions reported by :RustInfo.
rustfmt 1.8.0-stable (1159e78c47 2025-09-14)
rustc 1.90.0 (1159e78c4 2025-09-14)
cargo 1.90.0 (840b83a10 2025-07-30)
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Apr 02 2025 12:39:01)
Included patches: 1-16, 647, 17-579, 1969, 580-647, 678, 648-1848, 4975, 5016, 5023, 5072, 2068, 1849-1854, 1857, 1855-1857, 1331, 1858, 1858-1859, 1873, 1860-1969, 1992, 1
970-1992, 2010, 1993-2068, 2106, 2069-2106, 2108, 2107-2109, 2109-3995, 4563, 4646, 4774, 4895, 4899, 4901, 4919, 213, 1840, 1846-1847, 2110-2112, 2121
Modified by [email protected]
Compiled by [email protected]
Issue: Running :RustFmt on a rust file that's using let chains fails with a location list of errors saying:
error: let chains are only allowed in Rust 2024 or later
The issue still reproduces this issue by using edition = "2024" on the crate instead of referring to the workspace edition. But cargo fmt on the command line works just fine. cargo fmt will produce the error above if I change to edition = "2018", for example. So rust.vim seems to not see the version correctly.
Any insights on what the underlying issue is and how to resolve it?
- 主要言語
- Vim Script
- スター
- 4.2k
- フォーク
- 323
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
rust-lang/rust.vim のほかの issue
-
難易度 1/5 1〜3時間 初心者へのやさしさ 76/100
-
It's Dead, Jim!オープン
難易度 5/5 1週間以上 初心者へのやさしさ 15/100
-
Remove hard coded edition fallback対応中かも @alerque が 230 日前に担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 35/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 55/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 43/100
rust-lang/rust.vim の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
mglaman/phpstan-drupal#1078 ·
メンテナーはふだん 1 日以内に返信
-
[Bug]: Python mod.Box[T] annotation gets a false generic_arg edge that replaces the parameter_type one ('is' on tree-sitter nodes)対応中かも @rohit-jsfreaky が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
Graphify-Labs/graphify#5110 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
メンテナーはふだん 1 日以内に返信
-
documentation good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
voyageurworks/launch-guard-pack#29 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
bigbio/sdrf-pipelines#372 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信