-
-
Notifications
You must be signed in to change notification settings - Fork 96
feat: replace poetry with uv and drop python 3.9 #541
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
base: master
Are you sure you want to change the base?
Conversation
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.
Pull Request Overview
This PR modernizes the project infrastructure by replacing Poetry with uv for dependency management and dropping Python 3.9 support. The changes include updating type annotations to use Python 3.10+ syntax (PEP 604 union types, built-in generics) and migrating all build/CI tooling to uv.
Key Changes
- Dropped Python 3.9 support, now requiring Python 3.10+
- Replaced Poetry with uv for dependency management and builds
- Updated type annotations to modern Python 3.10+ syntax (X | None instead of Optional[X], dict instead of Dict, etc.)
- Migrated CI/CD workflows from Poetry to uv commands
Reviewed Changes
Copilot reviewed 85 out of 87 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Updated build backend to uv_build, bumped minimum Python to 3.10, updated dependency versions, added Python 3.10 target for mypy |
| tox.ini | Replaced poetry commands with uv sync/run equivalents, removed py39 test environment |
| .python-version | Removed Python 3.9.21 |
| .pre-commit-config.yaml | Updated hooks to use uv run instead of poetry run |
| .github/workflows/test.yml | Migrated from Poetry to uv, updated Python version matrix, fixed lint matrix formatting |
| .github/workflows/release.yml | Migrated release process to use uv build/publish with trusted publishing |
| docs/contrib.md | Updated documentation to reference uv instead of Poetry |
| taskiq/**/*.py | Modernized type annotations: Optional[X] → X | None, Dict → dict, List → list, typing imports → collections.abc |
| tests/**/*.py | Same type annotation modernizations as main code |
| docs/examples/**/*.py | Same type annotation modernizations, removed unnecessary noqa comments |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.