Skip to content

docs: README usage/install section; ci: test full Python version matrix - #22

Merged
dmccoystephenson merged 1 commit into
mainfrom
feature/readme-usage-and-ci-matrix
Jul 27, 2026
Merged

docs: README usage/install section; ci: test full Python version matrix#22
dmccoystephenson merged 1 commit into
mainfrom
feature/readme-usage-and-ci-matrix

Conversation

@dmccoystephenson

Copy link
Copy Markdown
Member

Summary

  • Add an Installation section (pip install graphik) and a Usage section documenting all public Graphik methods and color constants to README.md — it doubles as the PyPI long description and previously had no install/usage info.
  • Fix the README Projects link, which pointed at the pre-transfer Preponderous-Software/Graphik wiki path, to the current Stephenson-Software/graphik location.
  • Replace the single pinned Python 3.13 CI job with a matrix (3.9-3.13), covering every version pygame ships a prebuilt wheel for, so the declared requires-python range is actually exercised.
  • Bump requires-python from >=3.8 to >=3.9 in pyproject.toml since 3.8 is EOL (Oct 2024) and isn't tested -- keeps the declared floor and the tested floor in agreement per issue ci: test workflow verifies only Python 3.13 while pyproject claims >=3.8 support #20's acceptance criteria.

Test plan

  • python3 -m py_compile src/main/python/preponderous/graphik/graphik.py
  • python3 -c "import sys; sys.path.insert(0,'src/main/python'); import preponderous.graphik as g; print(g.__version__)" -> 0.2.0
  • python3 -m pytest -q -> 19 passed (conftest.py already forces SDL_VIDEODRIVER/SDL_AUDIODRIVER=dummy, so this runs headless without extra env vars)
  • CI matrix itself (3.9-3.12 legs) can only be verified once this runs on GitHub Actions -- the sandbox interpreter here is 3.8, so those legs aren't locally reproducible; the 3.13 leg mirrors the previously-passing pinned job.

Note: also closed #5 (packaging/distribution) separately during this cycle -- it was fully resolved by prior merged PRs (pyproject.toml, single version source, PyPI publish workflow) with only out-of-scope consumer-migration follow-up remaining.

Closes #19
Closes #20

ci: test across the full supported Python version matrix

README lacked installation instructions, a usage example, and a list of
the public Graphik methods -- the first thing a PyPI visitor sees. Also
pointed the Projects link at the current Stephenson-Software/graphik
location instead of the pre-transfer Preponderous-Software/Graphik path.

The test workflow only ran on Python 3.13 while pyproject.toml claimed
support back to 3.8. Added a matrix covering every pygame-wheel-backed
version (3.9-3.13) and bumped requires-python to >=3.9 to match, since
3.8 is EOL and untested.

Closes #19
Closes #20

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@dmccoystephenson

Copy link
Copy Markdown
Member Author

Self-review rubric:

Note: this PR touches .github/workflows/test.yml, which is on this loop's do-not-auto-merge list (CI config changes affect downstream review/automation gates) — leaving open for human review rather than auto-merging, per the skill's Phase 8 gate.

@dmccoystephenson
dmccoystephenson merged commit d6619c7 into main Jul 27, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant