Skip to content

Refactor development tooling with uv and package validation - #18

Merged
strohganoff merged 10 commits into
mainfrom
refactor/development-tooling
Nov 2, 2026
Merged

strohganoff merged 10 commits into
mainfrom
refactor/development-tooling

Conversation

@strohganoff

@strohganoff strohganoff commented Nov 2, 2026 •

Copy link
Copy Markdown
Owner

Adopt uv for development environments and CI, with committed dependency locking and development tools declared in dependency groups. GitHub Actions now runs the Python 3.9–3.13 matrix directly, replacing Tox.

  • Modernize MIT license metadata, add the Python 3.13 classifier, and correct coverage configuration.
  • Include Ruff and mypy in development dependencies, target Python 3.9 in Ruff, and clean up stale rule comments and configuration.
  • Add a packaging job that builds source and wheel distributions, runs strict Twine checks, and verifies installed-wheel imports and both CLI entry paths outside the checkout.
  • Correct stale action imports exposed by the packaging smoke check and update README examples.

Validation: all six CI checks pass on commit 4c26079: tests on Python 3.9–3.13 and the Python 3.13 packaging job. Local builds, strict Twine checks, and clean-wheel smoke checks also passed on Python 3.9.6. Ruff reports 101 existing findings and mypy reports 49 existing errors; neither is enforced by CI.

The published dev extra is replaced by [dependency-groups].dev; contributors now use uv sync --locked and uv run --locked. Broader contributor documentation updates remain separate. Release publishing is unchanged.

Removed two unused mypy ignore comments; the other diagnostics are unchanged and 86 focused tests pass locally. CI for this follow-up is pending.

@strohganoff
strohganoff merged commit d6468a7 into main Nov 2, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant