PEP 803: Stable ABI for Free-Threaded Builds (packaging thread)

Well, you thought wrong :‍(
The Stable ABI is versioned, and it grew new (incompatible) additions in every single CPython version since it was introduced.

Pardon the simplification, that was meant in a different context. I could instead say:

Stable ABI 3.n is compatible with the default build of 3.n+k, for all k.

That’s been the case since 3.2 (except some bugs along the way).

Yes. If and when free threading becomes the default, we’ll need to either break PEP 384’s promise or release Python 4.

Per the Steering Council decision on PEP 779:

The Steering Council also expects that Stable ABI for free-threading should be prepared and defined for Python 3.15.

It has settled down (but obviously isn’t the default yet).