I've been working on adding support for 3.13 to mypyc. After updating the codebase, there are still some functions left we depend on which are now private after #106320. Would it make sense to export these again? That would make adopting 3.13 a bit easier. /CC @vstinner
_PyBytes_Joindefined inpycore_bytesobject.h_PyObject_CallMethodIdObjArgsdefined inpycore_call.h_PyType_CalculateMetaclassdefined inpycore_object.h_PyUnicode_EQdefined inpycore_unicodeobject.h_PyUnicode_FastCopyCharactersdefined inpycore_unicodeobject.h(this could be replaced withPyUnicode_CopyCharactersbut it's used in a simplified copy of_PyUnicode_JoinArraywhich also uses_PyUnicode_FastCopyCharacters).
Other functions include these two. However, as they are inlined, it isn't a problem to include them.
_PyObject_CallMethodIdNoArgsand_PyObject_CallMethodIdOneArgdefined inpycore_call.h
It would be fine to keep all of them in internal/pycore_* and just add PyAPI_FUNC.
/CC @hauntsaninja