-
Notifications
You must be signed in to change notification settings - Fork 729
Open
Description
With python 2.7 being dropped (intentionally or not; See #1118 for why I say this) upgrading this package to modern python is very possible.
What does it mean to "upgrade to modern python"
- Migrate from
setup.py
→pyproject.toml
- Fully utilize
ruff
(or any linters, but looks like you already are leaning on the side of ruff)- Related Ruff isn't enabled #1119
- Support typing. Either by inline types (ideal) or Add py.typed file to support PEP 561 #1112
- Enforce typing. This is a much larger item compared to the others
There are more things that could be considered "modern python" but I think the above are the big ones.
Minor decision
Should a package manager be suggested? And if so, what one? My personal bias is that of uv
.
You could have all expected dependencies living in pyproject.toml
and uv.lcok
files with dependency groups for testing, instead of the split requirements file you have now.
Related Issues
#956
#1090
Async? This will make async issues easier to resolve. But not explicitly a target of this issue.
Metadata
Metadata
Assignees
Labels
No labels