What's changed
- Drop Python 2 and Python < 3.10 support; Python 3.10–3.14 now required
- Add type hints and type declarations (PEP 561
py.typedmarker) - Migrate build tooling to
pyproject.toml, dropsetup.py - Remove dead Python 2 compatibility shims (
ENCODINGconstant,next()aliases) - Modernize CI: uv-based workflow, trusted publishing to PyPI, Dependabot