Skip to content

chore(ci): test on Python 3.11 and 3.12 - #31

Merged
Burton-David merged 2 commits into
mainfrom
chore/ci-python-matrix
May 31, 2026
Merged

chore(ci): test on Python 3.11 and 3.12#31
Burton-David merged 2 commits into
mainfrom
chore/ci-python-matrix

Conversation

@Burton-David

Copy link
Copy Markdown
Owner

What

pyproject declares requires-python = ">=3.11" and the classifiers list both 3.11 and 3.12, but CI only ran on 3.12 — a 3.11-specific regression (a dependency without 3.11 wheels, a 3.12-only syntax slip) would ship unnoticed.

Run the full gate (ruff + mypy + pytest, with the same [dev,paper-analysis,claim-extraction,pdf] install and spaCy model) as a matrix across 3.11 and 3.12. fail-fast: false so a break on one version still reports the other.

Test plan

  • Verified locally on a fresh Python 3.11.10 venv with the full CI dep set: ruff clean, mypy clean, pytest -q --strict-markers553 passed, 14 skipped (identical to 3.12)
  • YAML validated; both matrix jobs run on this PR

pyproject declares requires-python = ">=3.11" and the classifiers list both
3.11 and 3.12, but CI only ever ran on 3.12 — so a 3.11-specific regression
(a dep without 3.11 wheels, a 3.12-only syntax slip) would ship unnoticed.

Run the full gate as a matrix across both versions. fail-fast is off so one
version breaking still surfaces the other's result. Verified locally that
ruff + mypy + the full pytest suite pass on 3.11.10 before adding the job.
Branch protection requires a status check named exactly 'pytest + ruff + mypy',
but a matrix job's check is suffixed per python version. Rename the matrix job
to 'test (py…)' and add a fixed-name 'gate' job that needs the matrix and is
green only when every version passed — so the required context stays stable as
the supported-version list changes.
@Burton-David
Burton-David merged commit fe88f6d into main May 31, 2026
3 checks passed
@Burton-David
Burton-David deleted the chore/ci-python-matrix branch May 31, 2026 17:12
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.

1 participant