Skip to content

Fix main CI on Windows/macOS Python 3.10 (wheel test, conformance CLI test) - #118

Merged
guijacquemet merged 1 commit into
mainfrom
claude/fix-main-ci-310
Oct 12, 2026
Merged

guijacquemet merged 1 commit into
mainfrom
claude/fix-main-ci-310

Conversation

@guijacquemet

Copy link
Copy Markdown
Contributor

Main CI is red on Windows and macOS with Python 3.10 (runs 38291903402, 38294220866, 38295558295). Pull requests run those two only on 3.12, so the PRs were green.

Two failing tests, both only on the 3.10 runners:

  1. test_conformance.Packaging.test_the_built_wheel_contains_the_file_and_the_loader_reads_it_from_there (macOS and Windows): build_meta.build_wheel exits with SystemExit ... invalid command 'bdist_wheel' because the runner's setuptools is older than 70.1. The test only caught Exception, so the exit was an error.
  2. test_conformance.Loader.test_the_command_line_gives_the_path_and_validates (Windows 3.10 only): the subprocess was started with an environment of only PYTHONPATH and PATH="", and printed nothing. Windows needs SYSTEMROOT. The test now passes it and shows stderr in the failure message. (Inferred from the log, which shows only the empty output: the dispatched run on this branch confirms it.)

Changes:

  • pyproject.toml: the test extra asks for setuptools>=70.1 (bdist_wheel built in, so no separate wheel). [build-system] requires stays setuptools>=64: the test calls the installed backend in process, so the installed version is what matters.
  • The wheel test skips, with a reason, only when SystemExit carries invalid command 'bdist_wheel'. Any other exit, and any other exception, now fails (the blanket skip on Exception is gone). No other test builds a wheel or calls a build backend.
  • docs/REGRESSION_LEDGER.md: one row. docs/TESTING.md: says pull requests do not run Windows/macOS on 3.10, which hid this, and how to run the full matrix on a branch (gh workflow run ci.yml --ref <branch>, a workflow_dispatch run).

Checked locally: black, ruff, mypy, vulture clean; test_conformance and test_roundtrip_ledger pass; with setuptools 65.5.1 the wheel test skips with the reason, with setuptools >= 70.1 it passes.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Y2SN8SuEakTdiWy3F2WUqN


Generated by Claude Code

…>=70.1, CLI test needs SYSTEMROOT

The wheel test died with SystemExit "invalid command 'bdist_wheel'" on the 3.10 runners (setuptools older than 70.1) because only
Exception was caught. The test extra now asks for setuptools>=70.1, and the test skips only on that exact message; any other error fails.
test_the_command_line_gives_the_path_and_validates started Python with an empty environment, which Windows 3.10 cannot do without
SYSTEMROOT; it now passes it and shows stderr on failure. Ledger row and a TESTING.md note on the PR matrix hiding 3.10 on Windows/macOS.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y2SN8SuEakTdiWy3F2WUqN
@guijacquemet
guijacquemet merged commit 3cdf629 into main Oct 12, 2026
14 checks passed
@guijacquemet
guijacquemet deleted the claude/fix-main-ci-310 branch October 14, 2026 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants