Repository navigation
build: migrate development workflow to uv - #800
hasansezertasan wants to merge 1 commit into
Conversation
cfe3660 to
e77459a
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #800 +/- ##
=======================================
Coverage 79.33% 79.33%
=======================================
Files 21 21
Lines 1742 1742
Branches 241 241
=======================================
Hits 1382 1382
Misses 282 282
Partials 78 78
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
e75734a to
fa8b14b
Compare
|
@patkan the required status checks The new checks are |
|
Yes, I will update the branch protection, this looks overall good to me an uv would be a good enhancement, i just wanted to try it out locally if I see any handling issues. |
Declare test, docs, lint and typing dependency groups (PEP 735) in pyproject.toml, commit uv.lock, and drop the requirements files. tox now installs from the groups through tox-uv, CI uses setup-uv, and dependabot tracks the lockfile through its uv ecosystem. Closes python-escpos#704
fa8b14b to
779acb6
Compare
Moves the development workflow to uv. The build backend (setuptools + setuptools-scm) and the tox envs stay as they are.
Dependencies
[dependency-groups]inpyproject.toml(test,docs,lint,typing,tox, anddevwhich includes them) and are pinned inuv.lock.tox-uvinstead of per-envdeps. Thestyleenv skips installing the package, since ruff doesn't need it.requirements.txt,requirements.test.txtanddoc/requirements.txtare removed.uvecosystem for the root, the/docpip entry is dropped, and the dead docs link in its header is fixed.CI
pythonpackage.yml,pythonpackage-windows.yml,style.ymlanddocumentation.ymlare merged into a singleci.yml. The test matrix runs on Ubuntu and Windows for Python 3.11 to 3.15, and lint and the docs build run once, on Ubuntu with Python 3.13.astral-sh/setup-uv(pinned to a commit SHA) and runs tox viauv run --locked --only-group tox tox, so the tox versions come fromuv.lock.python.installwithmethod: uv, thedocsgroup and theallextra).Docs
CONTRIBUTING.rstgets a short development setup section.Notes for reviewers
checks (<os>, <python>)), andstyleanddocsare no longer separate checks, so any required status checks in the branch protection settings need updating.styleanddocsnow run on pushes to master and on PRs only, not on every push.Closes #704
Testing
Locally:
tox -e style,tox -e mypyandtox -e 3.13. All checks pass in CI on the latest commit, including the Windows jobs, the docs build and the Read the Docs build.