@@ -70,13 +70,13 @@ path. The authoritative list of cythonized modules lives in
7070 and ` zeroconf/asyncio.py ` re-export.
7171
7272- ** Line length** : 110 (ruff ` line-length = 110 ` ).
73- ` requires-python = ">=3.9 " ` , ` target-version = "py39 " ` for
74- ruff; pyupgrade runs ` --py39 -plus ` .
73+ ` requires-python = ">=3.10 " ` , ` target-version = "py310 " ` for
74+ ruff; pyupgrade runs ` --py310 -plus ` .
7575
7676- ** Imports** : ruff/isort sorted, ` profile = "black" ` ,
7777 ` known_first_party = ["zeroconf", "tests"] ` . Prefer
7878 ` from __future__ import annotations ` so modern type syntax
79- works on 3.9 .
79+ works on 3.10 .
8080
8181- ** Generated ` .c ` files are not lint-targets.** ` *.c ` files
8282 next to each cythonized module are Cython output — never hand-
@@ -124,8 +124,8 @@ CodSpeed benchmarks live under `tests/benchmarks/` and run in CI
124124through ` CodSpeedHQ/action ` . Ad-hoc microbenchmarks for manual
125125profiling live under ` bench/ ` — those don't run in CI.
126126
127- The CI matrix includes CPython 3.9 – 3.14, the free-threaded
128- 3.14t build, and PyPy 3.9 / 3. 10. Don't add anything that breaks
127+ The CI matrix includes CPython 3.10 – 3.14, the free-threaded
128+ 3.14t build, and PyPy 3.10. Don't add anything that breaks
129129on the free-threaded build (no module-level mutable globals
130130mutated from multiple threads without locks; no
131131` PyDict_Next ` -style escape hatches in Cython).
0 commit comments