Skip to content

Commit 2d7f9c1

Browse files
committed
docs(release): justify the interpreter check from the repo, not an OS
The comment rested on `python3` being 3.9 on macOS, which is where the failure showed up rather than why the code was wrong -- and a reader on another platform would take it as not applying to them. The repo-intrinsic version: this package declares requires-python >=3.10 and tomllib is stdlib only from 3.11, so the release script could not run on the oldest Python the package itself claims to support, on any OS. Also records why it stayed hidden -- CI installs 3.12 through uv, so only a human cutting a release ever ran into it. Comment only; no behaviour change.
1 parent e559532 commit 2d7f9c1

1 file changed

Lines changed: 8 additions & 5 deletions

File tree

scripts/release.sh

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,14 @@ cd "$ROOT"
77
die() { echo "error: $*" >&2; exit 1; }
88
need() { command -v "$1" >/dev/null 2>&1 || die "$1 is required"; }
99

10-
# An interpreter that can `import tomllib` — stdlib only from 3.11, while
11-
# `python3` on macOS is still 3.9. Hardcoding `python3` made every step below
12-
# fail with a bare ModuleNotFoundError, which reads as a broken checkout rather
13-
# than a too-old interpreter, and it failed at the FIRST step so nothing was
14-
# half-done. Resolved once here rather than per call site.
10+
# An interpreter that can `import tomllib`, which is stdlib only from 3.11.
11+
#
12+
# `python3` carries no version guarantee, and this package's own requires-python
13+
# is >=3.10 — so hardcoding it meant the release script could not run on the
14+
# oldest Python the package claims to support. CI never sees this, because it
15+
# installs 3.12 through uv; only a human cutting a release does, which is why it
16+
# went unnoticed. The symptom was a bare ModuleNotFoundError, which reads as a
17+
# broken checkout rather than a too-old interpreter.
1518
#
1619
# `uv` is the fallback because this repo already builds and tests through it, so
1720
# a machine that can run the suite can run the release.

0 commit comments

Comments
 (0)