Repository navigation
v0.5.0
Stable-ABI wheels: one wheel per platform now covers every CPython ≥ 3.11.
Changed
- Wheels target the CPython stable ABI (
cp311-abi3, via thepyo3/abi3-py311feature). A single wheel per platform supports every CPython ≥ 3.11 — including versions released after the build — so a new CPython minor no longer requires a repo change or a new release to be installable (#14, #15, #101). - The abi3 build benchmarked ~11% faster than the version-specific build (min parse time, CPython 3.12, Apple Silicon), so no hybrid version-specific wheels are shipped.
- CI builds one abi3 wheel and runs the full CPython 3.11–3.14 test matrix against that same wheel — the stable-ABI contract is verified, not assumed. The publish matrix collapsed from one wheel per interpreter to one per platform.
Not included
- Free-threaded CPython (cp313t/cp314t) wheels remain deferred: free-threaded builds don't support the stable ABI, and the required shared-state audit is sequenced after the lazy-parsing work (#97). On 3.13t/3.14t the source build still installs, with the GIL re-enabled on import.
PyPI availability
This release does not reach PyPI yet. The fast-mail-parser project on PyPI is still owned by a third party and remains at 0.2.5; the PEP 541 transfer request (pypi/support#11044) is open. Once the transfer completes and a Trusted Publisher is configured, the publish job can be re-run for this tag (skip-existing makes that safe). #14 and #15 close when the fixed release actually lands on PyPI.