Skip to content

Commit 68c0909

Browse files
committed
ci: move ndarray's hardcoded toolchain pins to 1.98.1 too
Caught by reading the PR's own check names: CI reported tests/1.97.1 and clippy/1.97.1 AFTER the toolchain file said 1.98.1. Unlike lance-graph, whose eleven workflows all read rust-toolchain.toml with no toolchain input, this repo's CI pins the version explicitly via dtolnay/rust-toolchain@<version> plus an MSRV env var. So bumping rust-toolchain.toml alone left CI still testing the OLD toolchain — the bump would have been cosmetic where it is actually gated. Six real pins moved: MSRV, BLAS_MSRV, the clippy matrix entry, and three dtolnay/rust-toolchain@ steps. Six comments also restated the version in prose and are rewritten rather than edited, the same lesson rust-toolchain.toml already carries: a stale comment on a version pin is how the next reader learns the wrong number. The matrix comment now names WHERE the number lives (three places in this file, because CI does not read the toolchain file) instead of duplicating the number itself, and points at the bump log as the single record of why each move happened. The comment it replaces still described the 1.94.1 bump as 'this PR'. Verified: zero remaining 1.97.1 references in ci.yaml, and the YAML parses. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AGVLyRZNEKKBSfBDJfbY3V
1 parent 2095b76 commit 68c0909

1 file changed

Lines changed: 19 additions & 18 deletions

File tree

‎.github/workflows/ci.yaml‎

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ env:
2121
# `LazyLock<Tier>` detection means one binary, all ISAs. Jobs that
2222
# specifically need a higher target-cpu can opt in via per-job env.
2323
RUSTFLAGS: "-D warnings"
24-
MSRV: 1.97.1
25-
BLAS_MSRV: 1.97.1
24+
MSRV: 1.98.1
25+
BLAS_MSRV: 1.98.1
2626

2727
jobs:
2828
pass-msrv:
@@ -41,18 +41,19 @@ jobs:
4141
runs-on: ubuntu-latest
4242
strategy:
4343
matrix:
44-
# Pinned to 1.97.1 to match `rust-toolchain.toml`. The workspace
45-
# bumped from 1.94.1 → 1.97.1 in commit
46-
# https://github.com/AdaWorldAPI/ndarray (this PR) to align with
47-
# bevy (edition 2024 → 1.95 MSRV) and lance-graph. 1.95 added the
48-
# `clippy::manual_checked_ops` lint which fires on
49-
# `impl_owned_array.rs::into_scalar` — fixed in this same PR.
44+
# Must equal `rust-toolchain.toml`'s channel. The version is NOT
45+
# restated in this comment on purpose: CI here does NOT read the
46+
# toolchain file (it uses `dtolnay/rust-toolchain@<version>`), so the
47+
# number lives in three places — the `MSRV`/`BLAS_MSRV` env above, the
48+
# matrix entry below, and each `dtolnay/rust-toolchain@` step. All of
49+
# them move together with the toolchain file, and its bump log is the
50+
# one place that records WHY each move happened.
5051
rust:
51-
- "1.97.1"
52+
- "1.98.1"
5253
name: clippy/${{ matrix.rust }}
5354
steps:
5455
- uses: actions/checkout@v4
55-
- uses: dtolnay/rust-toolchain@1.97.1
56+
- uses: dtolnay/rust-toolchain@1.98.1
5657
with:
5758
components: clippy
5859
- uses: Swatinem/rust-cache@v2
@@ -74,10 +75,10 @@ jobs:
7475
# That state no longer exists; the band-aid is removed in this PR.
7576
steps:
7677
- uses: actions/checkout@v4
77-
# Stable rustfmt 1.97.1 — pinned in `rust-toolchain.toml`. No
78-
# nightly dependency since rustfmt.toml is stable-clean post-PR
79-
# #133.
80-
- uses: dtolnay/rust-toolchain@1.97.1
78+
# Stable rustfmt on the pinned channel (see `rust-toolchain.toml`;
79+
# version deliberately not restated here). No nightly dependency since
80+
# rustfmt.toml is stable-clean post-PR #133.
81+
- uses: dtolnay/rust-toolchain@1.98.1
8182
with:
8283
components: rustfmt
8384
- run: cargo fmt --all --check
@@ -99,7 +100,7 @@ jobs:
99100
with:
100101
toolchain: ${{ matrix.rust }}
101102
targets: ${{ matrix.target }}
102-
# rust-toolchain.toml pins 1.97.1 — install the cross-compile target
103+
# rust-toolchain.toml pins the channel — install the cross-compile target
103104
# for that toolchain too, since dtolnay/rust-toolchain only installs
104105
# for the matrix value which may differ from the pinned version.
105106
- run: rustup target add ${{ matrix.target }}
@@ -126,7 +127,7 @@ jobs:
126127
- uses: dtolnay/rust-toolchain@stable
127128
with:
128129
targets: wasm32-unknown-unknown
129-
# rust-toolchain.toml pins 1.97.1 — install the wasm target for the pinned
130+
# rust-toolchain.toml pins the channel — install the wasm target for the pinned
130131
# toolchain too (dtolnay installs for `stable`, which may differ).
131132
- run: rustup target add wasm32-unknown-unknown
132133
- uses: actions/setup-node@v4
@@ -155,7 +156,7 @@ jobs:
155156
- uses: dtolnay/rust-toolchain@stable
156157
with:
157158
targets: aarch64-unknown-linux-gnu
158-
# rust-toolchain.toml pins 1.97.1 — install the aarch64 target for the
159+
# rust-toolchain.toml pins the channel — install the aarch64 target for the
159160
# pinned toolchain too (dtolnay installs for `stable`, which may differ).
160161
- run: rustup target add aarch64-unknown-linux-gnu
161162
- name: install aarch64 cross toolchain + qemu-user
@@ -210,7 +211,7 @@ jobs:
210211
name: hpc-stream-parallel/rayon
211212
steps:
212213
- uses: actions/checkout@v4
213-
- uses: dtolnay/rust-toolchain@1.97.1
214+
- uses: dtolnay/rust-toolchain@1.98.1
214215
- uses: Swatinem/rust-cache@v2
215216
- uses: taiki-e/install-action@nextest
216217
- name: cargo check (no rayon — scalar path unchanged)

0 commit comments

Comments
 (0)