Skip to content

Extend CI: lint, package build, docs build, PyPy, Windows/macOS - #242

Merged
stefankoegl merged 2 commits into
masterfrom
claude/clever-wozniak-ranc2x
Oct 26, 2026
Merged

stefankoegl merged 2 commits into
masterfrom
claude/clever-wozniak-ranc2x

Conversation

@stefankoegl

@stefankoegl stefankoegl commented Oct 26, 2026 •

Copy link
Copy Markdown
Owner

Brings the CI checks in line with stefankoegl/python-json-pointer#100.

  • Lint: new flake8 job (tests depend on it). Syntax errors and undefined names fail the build; everything else is reported with --exit-zero, since a full flake8 run currently reports ~470 style issues that need a separate cleanup.
  • Build: build sdist/wheel and run twine check --strict on every push/PR, not only at release time.
  • Docs: build the Sphinx docs with -W --keep-going (warnings as errors).
  • Tests: add PyPy 3.11 (matching the PyPy classifier) and Windows/macOS on Python 3.13 (matching "OS Independent"). Dependencies are installed from requirements.txt + requirements-dev.txt; Coveralls flags now include the OS.
  • Workflow-level permissions: contents: read.

PyPy 3.10 is not tested: current hypothesis releases build a PyO3 extension, and PyO3 requires PyPy >= 3.11, so the test dependencies can't be installed there.

Verified locally on Linux / CPython 3.13: flake8 error subset clean, twine check --strict passes, docs build without warnings, tests.py and property_tests.py pass.

🤖 Generated with Claude Code

https://claude.ai/code/session_01ASUFowntPRr2bsnKLwY3DB

- Run flake8 in a separate lint job: syntax errors and undefined names
  fail the build, everything else is reported as a warning.
- Build sdist/wheel and run `twine check --strict` on every push/PR,
  not only at release time.
- Build the Sphinx docs with warnings as errors.
- Test on PyPy 3.10/3.11, matching the PyPy classifier.
- Test on Windows and macOS (Python 3.13), matching "OS Independent".
- Install test dependencies from requirements-dev.txt.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01ASUFowntPRr2bsnKLwY3DB
Current hypothesis releases build a PyO3 extension, and PyO3 requires
PyPy >= 3.11, so installing the test dependencies fails on PyPy 3.10.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01ASUFowntPRr2bsnKLwY3DB
@coveralls

coveralls commented Oct 26, 2026 •

Copy link
Copy Markdown

Coverage Status

coverage: 100.0%. remained the same — claude/clever-wozniak-ranc2x into master

@stefankoegl
stefankoegl merged commit d213a54 into master Oct 26, 2026
21 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

Development

Successfully merging this pull request may close these issues.

3 participants