[Python-Dev] PEP 384: Defining a Stable ABI

"Martin v. Löwis" martin at v.loewis.de
Fri May 22 21:47:33 CEST 2009


> Something I haven't seen explicitly mentioned as yet (in the PEP or the
> python-dev list discussion) are the memory management APIs and the FILE*
> APIs which can cause the MSVCRT versioning issues on Windows.
> 
> Those would either need to be excluded from the stable ABI or else
> changed to use opaque pointers.

Good point. As a separate issue, I would actually like to deprecate,
then remove these APIs. I had originally hoped that this would happen
for 3.0 already, alas, nobody worked on it.

In any case, I have removed them from the ABI now.

I haven't thought about the Windows CRT issue yet. I can see that there
would be still problems even without that, e.g. when you do setlocale
in Python, it might not affect the extension module, etc. How would you
propose to deal with that? One approach would to fix the CRT version for
Windows, for the lifetime of 3.x. Another approach could be to document
the known restrictions, and otherwise declare "use at your own risk".

Regards,
Martin


More information about the Python-Dev mailing list