-
Notifications
You must be signed in to change notification settings - Fork 39
Use uv instead of pip #125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Reviewer's GuideThis PR replaces the existing pip-based development setup with uv by consolidating requirements into a dev group in pyproject.toml, removing standalone requirements files, updating CONTRIBUTING instructions, and refactoring all CI workflows to install and invoke tasks via uv. Class diagram for dependency management configuration changesclassDiagram
class requirements_txt {
- test dependencies
- doc dependencies
}
class tests_requirements_txt {
- test dependencies
}
class docs_requirements_txt {
- doc dependencies
}
class pyproject_toml {
+ dependency-groups: dev
}
requirements_txt <.. pyproject_toml : migrated
tests_requirements_txt <.. pyproject_toml : migrated
docs_requirements_txt <.. pyproject_toml : migrated
requirements_txt : removed
tests_requirements_txt : removed
docs_requirements_txt : removed
pyproject_toml : dev group added
pyproject_toml : manages all dev dependencies
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @hagenw - I've reviewed your changes - here's some feedback:
- You need to add pre-commit to your dev dependency group in pyproject.toml so that
uvx pre-commitcommands actually work. - Consider specifying which dependency groups to sync in your CI (e.g.
uv sync --group dev) to avoid installing unnecessary deps in production or publish workflows. - You might speed up your CI by caching the virtualenv or pip cache between runs instead of re-syncing all dependencies every job.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- You need to add pre-commit to your dev dependency group in pyproject.toml so that `uvx pre-commit` commands actually work.
- Consider specifying which dependency groups to sync in your CI (e.g. `uv sync --group dev`) to avoid installing unnecessary deps in production or publish workflows.
- You might speed up your CI by caching the virtualenv or pip cache between runs instead of re-syncing all dependencies every job.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Use
uvto manage the package development.Changes include:
tests/requirements.txtanddocs/requirements.txtby adevdependency group inpyproject.toml(which is automatically installed byuv)requirements.txtCONTRIBUTING.rstto useuvrun for testing and building docsuv buildinstead ofpython -m buildinside the Github Action to publish the packageSummary by Sourcery
Replace direct pip and Python commands with uv for dependency management, development tasks, and CI workflows.
Enhancements:
Build:
CI:
Documentation:
Tests:
Chores: