refactor: drop packaging dependency, inline version parsing
Lint & Test / test (push) Successful in 3m9s
Lint & Test / test (push) Successful in 3m9s
The only user of 'packaging' was version_check.py — two small functions (normalize_version, is_newer) that just need to parse "1.2.3-alpha.1" and compare PEP 440-style versions. That's well within stdlib reach. - Inline a NamedTuple-based Version with kind/pre_num ordering (dev < alpha < beta < rc < release), same regex-normalized format - Define a local InvalidVersion exception - Remove packaging>=23.0 from pyproject.toml dependencies Why now: the Windows cross-build uses a hard-coded DEPS array in build-dist-windows.sh, which was never updated when 'packaging' was added on March 25. Result: importable from pip-installed dev envs, missing from the portable installer — tray icon appeared but uvicorn died with ModuleNotFoundError: No module named 'packaging'. Removing the dep entirely is cleaner than adding one more hard-coded entry to the Windows DEPS list. Tests (678 passing) and a manual test matrix covering dev/alpha/beta/rc/release ordering all pass.
This commit is contained in:
@@ -26,7 +26,6 @@ dependencies = [
|
||||
"fastapi>=0.115.0",
|
||||
"uvicorn[standard]>=0.32.0",
|
||||
"httpx>=0.27.2",
|
||||
"packaging>=23.0",
|
||||
"mss>=9.0.2",
|
||||
"numpy>=2.1.3",
|
||||
"pydantic>=2.9.2",
|
||||
|
||||
Reference in New Issue
Block a user