Skip to content

Commit 4800213

Browse files
ci(msrv): bump workspace floor 1.85 → 1.88 for rpassword 7.5 let-chains
`rpassword` 7.5+ uses `let` chains in match arms, stable since Rust 1.88. CI's MSRV job (currently pinned to 1.85) cannot compile the crate; downstream consumers running 1.85-1.87 hit the same wall. - ci.yml: rename `msrv-1-85` → `msrv-1-88`, toolchain pinned to 1.88, cache key updated. - crates/hsh-cli/Cargo.toml: `rust-version = "1.85"` → `"1.88"`. The library crates (hsh / hsh-kms / hsh-digest) still declare `rust-version = "1.75"` — they don't pull rpassword, so 1.75 stays buildable for downstream consumers that depend on the libs alone. --- THE ARCHITECT ᛫ Sebastien Rousseau ᛫ https://sebastienrousseau.com THE ENGINE ᛞ EUXIS ᛫ Enterprise Unified Execution Intelligence System ᛫ https://euxis.co Assisted-by: Claude:claude-opus-4-7
1 parent a636406 commit 4800213

2 files changed

Lines changed: 17 additions & 14 deletions

File tree

.github/workflows/ci.yml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,8 @@ jobs:
162162
cargo public-api --diff-git-checkouts origin/main HEAD --simplified -p hsh-kms || true
163163
cargo public-api --diff-git-checkouts origin/main HEAD --simplified -p hsh-digest || true
164164
165-
msrv-1-85:
166-
name: MSRV — workspace minimum (1.85)
165+
msrv-1-88:
166+
name: MSRV — workspace minimum (1.88)
167167
runs-on: ubuntu-latest
168168
permissions:
169169
contents: read
@@ -173,19 +173,19 @@ jobs:
173173
persist-credentials: false
174174
- uses: dtolnay/rust-toolchain@3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9 # master
175175
with:
176-
toolchain: "1.85"
176+
toolchain: "1.88"
177177
- uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2.9.1
178178
with:
179-
key: msrv-1.85
180-
- name: Workspace check at 1.85 floor
181-
# The library crates declare `rust-version = "1.75"` for downstream
182-
# consumability, but the *workspace* effective floor is 1.85 because
183-
# `hsh-cli` declares `edition = "2024"`. Cargo 1.75 cannot load the
184-
# workspace manifest at all under that condition. The 1.75
185-
# per-crate floor is documentation only; downstream consumers who
186-
# need to verify it must depend on the lib crates without pulling
187-
# `hsh-cli` into their workspace.
188-
run: cargo +1.85 check --locked --workspace --all-features
179+
key: msrv-1.88
180+
- name: Workspace check at 1.88 floor
181+
# The *workspace* effective floor is 1.88:
182+
# - `hsh-cli` uses edition = "2024" (needs Cargo 1.85+).
183+
# - The `rpassword` 7.5+ dep uses `let` chains (stable in 1.88).
184+
# The library crates declare `rust-version = "1.75"` for
185+
# downstream consumability (documentation only — downstream
186+
# consumers depend on the lib crates without pulling `hsh-cli`
187+
# into their workspace, so they keep the 1.75 floor).
188+
run: cargo +1.88 check --locked --workspace --all-features
189189

190190
cross-platform:
191191
name: Test (${{ matrix.os }})

crates/hsh-cli/Cargo.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ description = "Command-line companion for the `hsh` password-hashing library: ha
66
# CLI gets the modern edition; the lib stays on 2021 / MSRV 1.75 so it
77
# remains broadly consumable.
88
edition = "2024"
9-
rust-version = "1.85"
9+
# Bumped from 1.85 → 1.88 because the `rpassword` 7.5+ dep started
10+
# using let chains (stable in 1.88). The lib crates' 1.75 floor is
11+
# unaffected because they don't pull rpassword.
12+
rust-version = "1.88"
1013

1114
authors.workspace = true
1215
license.workspace = true

0 commit comments

Comments
 (0)