New submission from Petr Viktorin <encu...@gmail.com>:

The following PEP 573 were not added to the Windows list of stable ABI symbols 
(PC/python3dll.c):
- PyModule_AddType
- PyType_FromModuleAndSpec
- PyType_GetModule
- PyType_GetModuleState

I'd like to add them.

Also, the PEP introduces the (METH_FASTCALL | METH_KEYWORDS | METH_METHOD) 
calling convention, but METH_FASTCALL is not part of the stable ABI (and it 
other uses are not suitable for stable ABI).
I propose adding a new value, METH_METHOD_ARGS_KWD (name up for bikeshedding), 
which would be equal to (METH_FASTCALL | METH_KEYWORDS | METH_METHOD) but part 
of the limited API.

Does that sound like a good idea?


On the sprint, Steve mentioned that it would be possible to backport this to 
Python 3.9.1, even though it would mean a weird minor-version requirement.
I no longer think that's a good idea: fixing the stable ABI will be a 
longer-term project, and I don't want to fight issues in a 3.9 backport.

FWIW, for the longer-term project, I started a brainstorming repo at 
https://github.com/encukou/abi3 (Yes, it has some overlap with Victor's more 
general notes at https://pythoncapi.readthedocs.io/ )
But I'd like to get the additions above in to unblock #42111 before I start on 
improving the stable ABI in general.

----------
components: C API
messages: 379762
nosy: ncoghlan, petr.viktorin, scoder, vstinner
priority: normal
severity: normal
status: open
title: Add PEP 573 to the stable ABI
versions: Python 3.10

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue42171>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to