h11’s packaging and development configuration is spread across setup.py, tox.ini, and requirements files. Its advertised Python support and CI matrix also need updating.
Following the approach used by h2, I propose:
- Consolidating package metadata, dependency groups, and tool configuration in pyproject.toml.
- Adopting uv with a committed lockfile for development and CI.
- Updating support to Python 3.10–3.14 and PyPy 3.10/3.11, dropping Python 3.8 and 3.9.
- Replacing Black and isort with Ruff for formatting and linting.
- Updating documentation builds and contributor instructions.
This should preserve h11’s runtime behavior, dependency-free installation, and existing package layout.
h11’s packaging and development configuration is spread across setup.py, tox.ini, and requirements files. Its advertised Python support and CI matrix also need updating.
Following the approach used by h2, I propose:
This should preserve h11’s runtime behavior, dependency-free installation, and existing package layout.