On Wed, Dec 8, 2021 at 2:23 AM Petr Viktorin <encu...@gmail.com> wrote: > That really depends on what function we'd want to remove. There are > usually alternatives to deleting things, but the options depend on the > function. If we run out of other options we can make the function always > fail or make it leak memory. > And the regular backwards compatibility policy gives us 2 years to > figure something out :)
What about the various symbols listed in Misc/stable_abi.txt that were accidentally added to the limited API? Can we move toward dropping them from the stable ABI? Most notably, there are quite a few functions listed there that are in the stable ABI but no longer in the limited API. This implies that either they were already deprecated in the limited API (and removed) or they were just removed. At least in some cases they were moved to header files in Include/cpython or Include/internal. So I would not expect extensions to be using them. This subset of those symbols seems entirely appropriate to remove from the stable ABI. Is that okay? Do we even need to bother deprecating them? What about just the "private" ones? For example, I went to change/remove _PyThreadState_Init() (internal API declared in Include/internal/pycore_pystate.h) and found that it is in the stable ABI but not the limited API. It's highly unlikely anyone is using it and plan on double-checking. As far as I can tell, the function was accidentally exposed in the limited API and stable ABI and later removed from the limited API. -eric _______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-le...@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/OJ65FPCJ2NVUFNZDXVNK5DU3R3JGLL3J/ Code of Conduct: http://python.org/psf/codeofconduct/