From 6ff9e8bb8180eaa9a52f3aead47977f629c90896 Mon Sep 17 00:00:00 2001 From: HackingGate Date: Wed, 9 Sep 2026 23:56:49 +0900 Subject: [PATCH] The MSRV is 1.90, which is what the tree-sitter the parser wants requires tree-sitter 0.27.0 and tree-sitter-language 0.1.8 declare rustc 1.90, so the MSRV job refuses #151 on a floor of 1.88 -- not as a lint but as a build: the job compiles the crate on the declared version rather than on whatever stable is that week, which is the whole reason the number is checkable. Raising the floor is the decision, and it is a decision about who can build uphold rather than a dependency bump, so it is its own commit. Both copies move together -- Cargo.toml's `rust-version` and toolchain.toml's rustc `want` -- because cargo cannot read the preflight's manifest and tests/test_toolchain.py refuses a tree where only one of them moved. Verified on the floor itself rather than on stable: `cargo +1.90 check --locked --all-targets` builds this tree, and with #151's manifest and lock applied on top it builds tree-sitter 0.27.0 and tree-sitter-language 0.1.8 too, with the suite at 807 passed and 0 failed. So the number here is the number that lets #151 through, and not a round one chosen above it. Claude-Session: https://claude.ai/code/session_01HertdiAvdNKGyjR91jvRUM --- Cargo.toml | 12 +++++++----- toolchain.toml | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 0f7e20c..d7b2acd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,13 +2,15 @@ name = "uphold" version = "1.16.0" edition = "2021" -# 1.88, not 1.85: the ripgrep stack this crate embeds -- globset 0.4.20 and -# ignore 0.4.33 in Cargo.lock -- refuses anything older. The 1.85 that stood here -# had never been built, because CI built on whatever `stable` was that week; the -# MSRV job added alongside this comment is what turned the claim into a check. +# 1.90, and the floor is set by what the tree embeds rather than by taste: the +# ripgrep stack -- globset 0.4.20 and ignore 0.4.33 in Cargo.lock -- refuses +# anything older than 1.88, and tree-sitter 0.27 with tree-sitter-language 0.1.8 +# refuses anything older than 1.90. A number here that had never been built is +# what the MSRV job exists to prevent: it builds the crate on this version rather +# than on whatever `stable` was that week, so raising this is a claim CI checks. # Raising it means raising toolchain.toml's rustc `want` in the same commit -- # tests/test_toolchain.py refuses the tree where only one of the two moved. -rust-version = "1.88" +rust-version = "1.90" description = "One binary for the engineering principles catalog and the rules that enforce it" license = "Apache-2.0" repository = "https://github.com/HackingGate/uphold" diff --git a/toolchain.toml b/toolchain.toml index d088e9e..73ad180 100644 --- a/toolchain.toml +++ b/toolchain.toml @@ -37,7 +37,7 @@ hint = "the rustup toolchain multiplexer; the default toolchain is set by the ru name = "rustc" check = "rustc --version" version = "rustc --version" -want = ">=1.88" +want = ">=1.90" hint = "no default toolchain? run: scripts/deps.sh install (rustup default stable)" # cargo fmt / clippy hooks need these components on the active toolchain.