Repository navigation
Add CI - #7
Merged
Merged
Add CI#7
Conversation
Tests only ran when somebody remembered to run them. This workflow runs the suite on every push to main and every pull request against it. The matrix covers 3.11 through 3.14. pyproject.toml claims requires-python = ">=3.11", and a claim nothing checks is a claim that drifts; the local default interpreter is 3.14, so the floor in particular was never actually exercised before now. All four pass today. `uv lock --check` fails the run if uv.lock and pyproject.toml disagree, and a final step calls --version on both entry points so a release bump that misses one of them cannot merge green. Both READMEs get a CI badge. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WtWRX5q9dRRL2eiH4okG1U
astral-sh/setup-uv publishes no bare major alias past v7, so @v10 could not resolve and every matrix job failed in Set up job before running anything. The v10.0.1 tag itself exists; only the moving alias is absent. Pin both actions to exact tags rather than fixing setup-uv alone: one file with two pinning styles is how the next person picks the wrong one. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WtWRX5q9dRRL2eiH4okG1U
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tests only ran when somebody remembered to run them. This adds
.github/workflows/ci.yml, running the suite on every push tomainand every pull request against it.What it checks
pyproject.tomlclaimsrequires-python = ">=3.11", and a claim nothing checks is a claim that drifts. The local default interpreter here is 3.14, so the floor in particular was never actually exercised. All four pass.uv lock --checkfails the run ifuv.lockandpyproject.tomldisagree.--versionon both entry points, so a release bump that updates one and misses the other cannot merge green. This pairs withtests/test_version.py, which catches drift againstpyproject.toml.fail-fast: falseso one bad interpreter does not hide the others.permissions: contents: readsince the workflow publishes nothing, and aconcurrencygroup so a new push cancels the superseded run.Verification
The four matrix versions were run locally through
uv run --python <ver>before writing the workflow, and the YAML was parsed to confirm it is valid. Actions are pinned to the current majors (actions/checkout@v7,astral-sh/setup-uv@v10), both looked up rather than assumed.Both READMEs get a CI badge.
🤖 Generated with Claude Code
https://claude.ai/code/session_01WtWRX5q9dRRL2eiH4okG1U