Skip to content

Bump Rust toolchain to 1.97.1 - #52

Open
perryqh wants to merge 2 commits into
mainfrom
bump-rust-toolchain-1.97.1
Open

Bump Rust toolchain to 1.97.1#52
perryqh wants to merge 2 commits into
mainfrom
bump-rust-toolchain-1.97.1

Conversation

@perryqh

@perryqh perryqh commented Aug 19, 2026

Copy link
Copy Markdown
Contributor
  • Moves the pinned toolchain from 1.92.0 to 1.97.1, the current stable release.
  • No CI workflow pins a Rust version, so all four workflows pick this up from rust-toolchain.toml automatically. The release workflow is cargo-dist-generated and installs via rustup, so it inherits it too.

Why there are source changes

  • Rust 1.97's clippy flags a redundant & passed to format-like macros, which 1.92's did not. Under CI's RUSTFLAGS=-Dwarnings these 9 warnings fail the Lints job, so the bump can't land without fixing them.
  • All 8 source/test changes are the same one-character edit: format!("{}", &x) becomes format!("{}", x). Display and Debug forward transparently through references, so formatted output is byte-identical and no behavior changes.

Reviewing this

  • 565183b is entirely mechanical, safe to skim.
  • 6e25d06 is the one substantive line.
  • The lint fixes land first so each commit passes clippy on its own (verified clean under both 1.90 and 1.97), meaning git bisect never lands on a red commit.

Contributor impact

  • Local builds now need 1.97.1; rustup installs it automatically from rust-toolchain.toml.
  • No rust-version/MSRV is declared in Cargo.toml, so no downstream compatibility constraint is affected.

Heads-up: unrelated flaky test

While running the suite locally, test_respect_gitignore_can_be_disabled failed once under full concurrent load, then passed in isolation. This looks like a pre-existing test-isolation bug rather than something introduced here:

  • test_respects_global_gitignore mutates the developer's real global git config (git config --global core.excludesFile) and is marked #[serial].
  • serial_test's #[serial] only serializes against other #[serial] tests, not against unmarked parallel ones, so test_respect_gitignore_can_be_disabled can run while excludesFile is mid-set/unset and pick up a bogus ignore path.
  • This PR touches no gitignore or zeitwerk code, only format arguments.

If CI goes red on that test, this is the likely cause. Worth fixing separately.

Related: a failed local run can leave tests/fixtures/app_with_unnecessary_dependencies/packs/foo/package.yml modified, since test_auto_correct_unnecessary_dependencies rewrites it and skips cleanup when the suite aborts.

Follow-ups noted, deliberately not included

  • parse_utils.rs:149-152 is if name.is_some() { name.unwrap_or_else(|| panic!(...)) }. The panic is unreachable given the guard and wants to be if let Some(..) = name. There is also a stale commented-out copy just above it that still contains the old &node, so it will drift further out of sync.
  • ci.yml uses actions/checkout@v2 (deprecated Node runtime) and audit.yml uses the archived actions-rs/audit-check@v1.

🤖 Generated with Claude Code

perryqh and others added 2 commits August 19, 2026 13:28
Rust 1.97's clippy flags `&x` passed to format-like macros where the
borrow is redundant, since Display and Debug forward transparently
through references. Drop the borrow in the 8 affected call sites.

Formatted output is byte-identical; no logic or error paths change.
Landed ahead of the toolchain bump so each commit passes clippy on its
own (verified clean under both 1.90 and 1.97).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Moves off 1.92.0 to current stable. No CI workflow pins a Rust version, so all jobs pick this up from rust-toolchain.toml automatically.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-project-automation github-project-automation Bot moved this to Triage in Modularity Aug 19, 2026
@perryqh
perryqh marked this pull request as ready for review August 19, 2026 18:41
@perryqh
perryqh requested a review from a team as a code owner August 19, 2026 18:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

1 participant