PEP 741: Python Configuration C API (second version)

I cannot agree more, it is the same story everywhere/everytime CPython must be embedded. I maintened a runtime+ecosystem for Android 4.4+ for some time ( in order more comfortably use Panda3D standalone than with Kivy) ,
patching CPython and making a CI for it was ok.

But i had to give up because now each year i had to recompile every known modules often : this is not sustainable for one individual ( and sept 2019 marked the end of hobby time spent on that for me for obvious reaons anyway).

So i dropped the 4 android arch to only go webassembly ( emscripten )

But same (hard and boring) problem always : have to rebuild numerous packages that are commonly used with 2D/3D framework …

For example, i add to PR to numpy vendored-meson fix for numpy just yesterday, just to build on 3.13.

Except for ONE, Harfang3d this one i did not rebuild since 3.11 initial port … Guess why ? it is a limited api - abi3 module !

Even when people care about PEP, they may not know enough or have samples about limited api/abi to do anything durable with it.

That could sometimes be mistaken for some kind of hostility against third party modules maintener just because you often hear “Don’t use that it is a binary module. We only support pure python modules.” or " Yes you can have binary modules, but this one will be hell to build/maintain because it does not support the only CPython that supports your platform".

Well pure python modules are not performant at all. and also have porting problem of their own that only pop up at runtime

c-api modules need constant care ( eg all/parts of scientific stack each year see pyodide/kivy had to do for getting around )

cffi modules need (too) complex wrappers and are runtime minefields.

Limited api abi3 are fresh air, fast and portable.
and associated with a stable config runtime it would be just perfect way better !

Thanks a lot to everyone trying helping the C-API Working group to get around the problem and improve !