This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author petr.viktorin
Recipients ncoghlan, petr.viktorin, scoder, vstinner
Date 2020-10-27.14:50:49
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1603810249.77.0.333997046365.issue42171@roundup.psfhosted.org>
In-reply-to
Content
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.
History
Date User Action Args
2020-10-27 14:50:49petr.viktorinsetrecipients: + petr.viktorin, ncoghlan, scoder, vstinner
2020-10-27 14:50:49petr.viktorinsetmessageid: <1603810249.77.0.333997046365.issue42171@roundup.psfhosted.org>
2020-10-27 14:50:49petr.viktorinlinkissue42171 messages
2020-10-27 14:50:49petr.viktorincreate