| # This file lists the contents of the Limited API and Stable ABI. |
| # Please append new items at the end. |
| |
| # The syntax of this file is not fixed. |
| # It is designed to be read only by Tools/build/stable_abi.py, which can change |
| # without notice. |
| |
| # For the history of the stable ABI prior to this file, |
| # see the history of PC/python3dll.c and before that, PC/python3.def, |
| # and PC/pythonXYstub.def |
| |
| |
| # The current format is TOML. |
| |
| # There are these kinds of top-level "items": |
| # - struct: A C struct. See `struct_abi_kind` for how much of the struct is |
| # exposed. |
| # - function: A function that must be kept available (and exported, i.e. not |
| # converted to a macro). |
| # - const: A simple value, defined with `#define`. |
| # - macro: A preprocessor macro more complex than a simple `const` value. |
| # - data: An exported object, which must continue to be available but its exact |
| # value may change. |
| # - typedef: A C typedef which is used in other definitions in the limited API. |
| # Its size/layout/signature must not change. |
| # - feature_macro: Other items may be conditional on whether this macro |
| # is defined or not. |
| |
| # Each top-level item can have details defined for it: |
| # - added: The version in which the item was added to the stable ABI. |
| # - ifdef: The item is only available if the given feature_macro is defined. |
| # - abi_only: If present, the item is not part of the Limited API, but it *is* |
| # part of the stable ABI. The item will not show up in user-facing docs. |
| # Typically used for: |
| # - private functions called by public macros, e.g. _Py_BuildValue_SizeT |
| # - items that were part of the limited API in the past, and must remain part |
| # of the stable ABI. |
| # - a combination of the above (functions that were called by macros that |
| # were public in the past) |
| # - struct_abi_kind: for `struct`, defines how much of the struct is exposed: |
| # - 'full-abi': All of the struct is part of the ABI, including the size |
| # (users may define arrays of these structs). |
| # Typically used for initialization, rather than at runtime. |
| # - 'opaque': No members are part of the ABI, nor is the size. The Limited |
| # API only handles these via pointers. The C definition should be |
| # incomplete (opaque). |
| # - 'members': Only specific members are part of the stable ABI. |
| # The struct's size may change, so it can't be used in arrays. |
| # Do not add new structs of this kind without an extremely good reason. |
| # - members: For `struct` with struct_abi_kind = 'members', a list of the |
| # exposed members. |
| # - doc: for `feature_macro`, the blurb added in documentation |
| # - windows: for `feature_macro`, this macro is defined on Windows. |
| # (This info is used to generate the DLL manifest and needs to be available |
| # on all platforms.) |
| |
| # Removing items from this file is generally not allowed, and additions should |
| # be considered with that in mind. See the devguide for exact rules: |
| # https://devguide.python.org/c-api/#limited-api |
| |
| # User-facing docs are at: |
| # https://docs.python.org/3/c-api/stable.html#stable |
| |
| |
| # Feature macros for optional functionality: |
| |
| [feature_macro.MS_WINDOWS] |
| doc = 'on Windows' |
| windows = true |
| [feature_macro.HAVE_FORK] |
| doc = 'on platforms with fork()' |
| [feature_macro.USE_STACKCHECK] |
| doc = 'on platforms with USE_STACKCHECK' |
| windows = 'maybe' |
| [feature_macro.PY_HAVE_THREAD_NATIVE_ID] |
| doc = 'on platforms with native thread IDs' |
| windows = true |
| [feature_macro.Py_REF_DEBUG] |
| doc = 'when Python is compiled in debug mode (with Py_REF_DEBUG)' |
| windows = 'maybe' |
| [feature_macro.Py_TRACE_REFS] |
| # nb. This mode is not compatible with Stable ABI/Limited API. |
| doc = 'when Python is compiled with Py_TRACE_REFS' |
| windows = 'maybe' |
| |
| |
| # Mentioned in PEP 384: |
| |
| [struct.PyObject] |
| added = '3.2' |
| members = ['ob_refcnt', 'ob_type'] |
| struct_abi_kind = 'members' |
| [struct.PyVarObject] |
| added = '3.2' |
| members = ['ob_base', 'ob_size'] |
| struct_abi_kind = 'members' |
| [struct.PyMethodDef] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyMemberDef] |
| added = '3.2' # Before 3.12, PyMemberDef required #include "structmember.h" |
| struct_abi_kind = 'full-abi' |
| [struct.PyGetSetDef] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyModuleDef_Base] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyModuleDef] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyStructSequence_Field] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyStructSequence_Desc] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyType_Slot] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyType_Spec] |
| added = '3.2' |
| struct_abi_kind = 'full-abi' |
| [struct.PyThreadState] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| [struct.PyInterpreterState] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| [struct.PyFrameObject] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| [struct.symtable] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| [struct.PyWeakReference] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| [struct.PyLongObject] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| [struct.PyTypeObject] |
| added = '3.2' |
| struct_abi_kind = 'opaque' |
| |
| [function.PyType_FromSpec] |
| added = '3.2' |
| |
| [const.Py_tp_dealloc] |
| added = '3.2' |
| [const.Py_tp_getattr] |
| added = '3.2' |
| [const.Py_tp_setattr] |
| added = '3.2' |
| [const.Py_tp_repr] |
| added = '3.2' |
| [const.Py_tp_hash] |
| added = '3.2' |
| [const.Py_tp_call] |
| added = '3.2' |
| [const.Py_tp_str] |
| added = '3.2' |
| [const.Py_tp_getattro] |
| added = '3.2' |
| [const.Py_tp_setattro] |
| added = '3.2' |
| [const.Py_tp_doc] |
| added = '3.2' |
| [const.Py_tp_traverse] |
| added = '3.2' |
| [const.Py_tp_clear] |
| added = '3.2' |
| [const.Py_tp_richcompare] |
| added = '3.2' |
| [const.Py_tp_iter] |
| added = '3.2' |
| [const.Py_tp_iternext] |
| added = '3.2' |
| [const.Py_tp_methods] |
| added = '3.2' |
| [const.Py_tp_base] |
| added = '3.2' |
| [const.Py_tp_descr_get] |
| added = '3.2' |
| [const.Py_tp_descr_set] |
| added = '3.2' |
| [const.Py_tp_init] |
| added = '3.2' |
| [const.Py_tp_alloc] |
| added = '3.2' |
| [const.Py_tp_new] |
| added = '3.2' |
| [const.Py_tp_members] |
| added = '3.2' |
| [const.Py_tp_getset] |
| added = '3.2' |
| [const.Py_tp_free] |
| added = '3.2' |
| [const.Py_tp_is_gc] |
| added = '3.2' |
| [const.Py_tp_bases] |
| added = '3.2' |
| [const.Py_tp_del] |
| added = '3.2' |
| [const.Py_nb_add] |
| added = '3.2' |
| [const.Py_nb_subtract] |
| added = '3.2' |
| [const.Py_nb_multiply] |
| added = '3.2' |
| [const.Py_nb_remainder] |
| added = '3.2' |
| [const.Py_nb_divmod] |
| added = '3.2' |
| [const.Py_nb_power] |
| added = '3.2' |
| [const.Py_nb_negative] |
| added = '3.2' |
| [const.Py_nb_positive] |
| added = '3.2' |
| [const.Py_nb_absolute] |
| added = '3.2' |
| [const.Py_nb_bool] |
| added = '3.2' |
| [const.Py_nb_invert] |
| added = '3.2' |
| [const.Py_nb_lshift] |
| added = '3.2' |
| [const.Py_nb_rshift] |
| added = '3.2' |
| [const.Py_nb_and] |
| added = '3.2' |
| [const.Py_nb_xor] |
| added = '3.2' |
| [const.Py_nb_or] |
| added = '3.2' |
| [const.Py_nb_int] |
| added = '3.2' |
| [const.Py_nb_float] |
| added = '3.2' |
| [const.Py_nb_inplace_add] |
| added = '3.2' |
| [const.Py_nb_inplace_subtract] |
| added = '3.2' |
| [const.Py_nb_inplace_multiply] |
| added = '3.2' |
| [const.Py_nb_inplace_remainder] |
| added = '3.2' |
| [const.Py_nb_inplace_power] |
| added = '3.2' |
| [const.Py_nb_inplace_lshift] |
| added = '3.2' |
| [const.Py_nb_inplace_rshift] |
| added = '3.2' |
| [const.Py_nb_inplace_and] |
| added = '3.2' |
| [const.Py_nb_inplace_xor] |
| added = '3.2' |
| [const.Py_nb_inplace_or] |
| added = '3.2' |
| [const.Py_nb_floor_divide] |
| added = '3.2' |
| [const.Py_nb_true_divide] |
| added = '3.2' |
| [const.Py_nb_inplace_floor_divide] |
| added = '3.2' |
| [const.Py_nb_inplace_true_divide] |
| added = '3.2' |
| [const.Py_nb_index] |
| added = '3.2' |
| [const.Py_sq_length] |
| added = '3.2' |
| [const.Py_sq_concat] |
| added = '3.2' |
| [const.Py_sq_repeat] |
| added = '3.2' |
| [const.Py_sq_item] |
| added = '3.2' |
| [const.Py_sq_ass_item] |
| added = '3.2' |
| [const.Py_sq_contains] |
| added = '3.2' |
| [const.Py_sq_inplace_concat] |
| added = '3.2' |
| [const.Py_sq_inplace_repeat] |
| added = '3.2' |
| [const.Py_mp_length] |
| added = '3.2' |
| [const.Py_mp_subscript] |
| added = '3.2' |
| [const.Py_mp_ass_subscript] |
| added = '3.2' |
| |
| [typedef.Py_uintptr_t] |
| added = '3.2' |
| [typedef.Py_intptr_t] |
| added = '3.2' |
| [typedef.Py_ssize_t] |
| added = '3.2' |
| [typedef.unaryfunc] |
| added = '3.2' |
| [typedef.binaryfunc] |
| added = '3.2' |
| [typedef.ternaryfunc] |
| added = '3.2' |
| [typedef.inquiry] |
| added = '3.2' |
| [typedef.lenfunc] |
| added = '3.2' |
| [typedef.ssizeargfunc] |
| added = '3.2' |
| [typedef.ssizessizeargfunc] |
| added = '3.2' |
| [typedef.ssizeobjargproc] |
| added = '3.2' |
| [typedef.ssizessizeobjargproc] |
| added = '3.2' |
| [typedef.objobjargproc] |
| added = '3.2' |
| [typedef.objobjproc] |
| added = '3.2' |
| [typedef.visitproc] |
| added = '3.2' |
| [typedef.traverseproc] |
| added = '3.2' |
| [typedef.destructor] |
| added = '3.2' |
| [typedef.getattrfunc] |
| added = '3.2' |
| [typedef.getattrofunc] |
| added = '3.2' |
| [typedef.setattrfunc] |
| added = '3.2' |
| [typedef.setattrofunc] |
| added = '3.2' |
| [typedef.reprfunc] |
| added = '3.2' |
| [typedef.hashfunc] |
| added = '3.2' |
| [typedef.richcmpfunc] |
| added = '3.2' |
| [typedef.getiterfunc] |
| added = '3.2' |
| [typedef.iternextfunc] |
| added = '3.2' |
| [typedef.descrgetfunc] |
| added = '3.2' |
| [typedef.descrsetfunc] |
| added = '3.2' |
| [typedef.initproc] |
| added = '3.2' |
| [typedef.newfunc] |
| added = '3.2' |
| [typedef.allocfunc] |
| added = '3.2' |
| [typedef.PyCFunction] |
| added = '3.2' |
| [typedef.PyCFunctionWithKeywords] |
| added = '3.2' |
| [typedef.PyCapsule_Destructor] |
| added = '3.2' |
| [typedef.getter] |
| added = '3.2' |
| [typedef.setter] |
| added = '3.2' |
| [typedef.PyOS_sighandler_t] |
| added = '3.2' |
| [typedef.PyGILState_STATE] |
| added = '3.2' |
| [typedef.Py_UCS4] |
| added = '3.2' |
| |
| [macro.Py_BEGIN_ALLOW_THREADS] |
| added = '3.2' |
| [macro.Py_BLOCK_THREADS] |
| added = '3.2' |
| [macro.Py_UNBLOCK_THREADS] |
| added = '3.2' |
| [macro.Py_END_ALLOW_THREADS] |
| added = '3.2' |
| |
| # The following were added in PC/python3.def in the initial stable ABI commit, |
| # 4d0d471a8031de90a2b1ce99c4ac4780e60b3bc9, |
| # and later amendments in 3.2: |
| # 0d012f284be829c6217f60523db0e1671b7db9d9 |
| # c83bc3c1fbed14d27a5de3032e24d2cf006a7c4b |
| |
| [function.PyArg_Parse] |
| added = '3.2' |
| [function.PyArg_ParseTuple] |
| added = '3.2' |
| [function.PyArg_ParseTupleAndKeywords] |
| added = '3.2' |
| [function.PyArg_UnpackTuple] |
| added = '3.2' |
| [function.PyArg_VaParse] |
| added = '3.2' |
| [function.PyArg_VaParseTupleAndKeywords] |
| added = '3.2' |
| [function.PyArg_ValidateKeywordArguments] |
| added = '3.2' |
| [data.PyBaseObject_Type] |
| added = '3.2' |
| [function.PyBool_FromLong] |
| added = '3.2' |
| [data.PyBool_Type] |
| added = '3.2' |
| [data.PyByteArrayIter_Type] |
| added = '3.2' |
| [function.PyByteArray_AsString] |
| added = '3.2' |
| [function.PyByteArray_Concat] |
| added = '3.2' |
| [function.PyByteArray_FromObject] |
| added = '3.2' |
| [function.PyByteArray_FromStringAndSize] |
| added = '3.2' |
| [function.PyByteArray_Resize] |
| added = '3.2' |
| [function.PyByteArray_Size] |
| added = '3.2' |
| [data.PyByteArray_Type] |
| added = '3.2' |
| [data.PyBytesIter_Type] |
| added = '3.2' |
| [function.PyBytes_AsString] |
| added = '3.2' |
| [function.PyBytes_AsStringAndSize] |
| added = '3.2' |
| [function.PyBytes_Concat] |
| added = '3.2' |
| [function.PyBytes_ConcatAndDel] |
| added = '3.2' |
| [function.PyBytes_DecodeEscape] |
| added = '3.2' |
| [function.PyBytes_FromFormat] |
| added = '3.2' |
| [function.PyBytes_FromFormatV] |
| added = '3.2' |
| [function.PyBytes_FromObject] |
| added = '3.2' |
| [function.PyBytes_FromString] |
| added = '3.2' |
| [function.PyBytes_FromStringAndSize] |
| added = '3.2' |
| [function.PyBytes_Repr] |
| added = '3.2' |
| [function.PyBytes_Size] |
| added = '3.2' |
| [data.PyBytes_Type] |
| added = '3.2' |
| [function.PyCFunction_Call] |
| added = '3.2' |
| abi_only = true |
| [function.PyCFunction_GetFlags] |
| added = '3.2' |
| [function.PyCFunction_GetFunction] |
| added = '3.2' |
| [function.PyCFunction_GetSelf] |
| added = '3.2' |
| [function.PyCFunction_NewEx] |
| added = '3.2' |
| [data.PyCFunction_Type] |
| added = '3.2' |
| [function.PyCallIter_New] |
| added = '3.2' |
| [data.PyCallIter_Type] |
| added = '3.2' |
| [function.PyCallable_Check] |
| added = '3.2' |
| [function.PyCapsule_GetContext] |
| added = '3.2' |
| [function.PyCapsule_GetDestructor] |
| added = '3.2' |
| [function.PyCapsule_GetName] |
| added = '3.2' |
| [function.PyCapsule_GetPointer] |
| added = '3.2' |
| [function.PyCapsule_Import] |
| added = '3.2' |
| [function.PyCapsule_IsValid] |
| added = '3.2' |
| [function.PyCapsule_New] |
| added = '3.2' |
| [function.PyCapsule_SetContext] |
| added = '3.2' |
| [function.PyCapsule_SetDestructor] |
| added = '3.2' |
| [function.PyCapsule_SetName] |
| added = '3.2' |
| [function.PyCapsule_SetPointer] |
| added = '3.2' |
| [data.PyCapsule_Type] |
| added = '3.2' |
| [data.PyClassMethodDescr_Type] |
| added = '3.2' |
| [function.PyCodec_BackslashReplaceErrors] |
| added = '3.2' |
| [function.PyCodec_Decode] |
| added = '3.2' |
| [function.PyCodec_Decoder] |
| added = '3.2' |
| [function.PyCodec_Encode] |
| added = '3.2' |
| [function.PyCodec_Encoder] |
| added = '3.2' |
| [function.PyCodec_IgnoreErrors] |
| added = '3.2' |
| [function.PyCodec_IncrementalDecoder] |
| added = '3.2' |
| [function.PyCodec_IncrementalEncoder] |
| added = '3.2' |
| [function.PyCodec_KnownEncoding] |
| added = '3.2' |
| [function.PyCodec_LookupError] |
| added = '3.2' |
| [function.PyCodec_Register] |
| added = '3.2' |
| [function.PyCodec_RegisterError] |
| added = '3.2' |
| [function.PyCodec_ReplaceErrors] |
| added = '3.2' |
| [function.PyCodec_StreamReader] |
| added = '3.2' |
| [function.PyCodec_StreamWriter] |
| added = '3.2' |
| [function.PyCodec_StrictErrors] |
| added = '3.2' |
| [function.PyCodec_XMLCharRefReplaceErrors] |
| added = '3.2' |
| [function.PyComplex_FromDoubles] |
| added = '3.2' |
| [function.PyComplex_ImagAsDouble] |
| added = '3.2' |
| [function.PyComplex_RealAsDouble] |
| added = '3.2' |
| [data.PyComplex_Type] |
| added = '3.2' |
| [function.PyDescr_NewClassMethod] |
| added = '3.2' |
| [function.PyDescr_NewGetSet] |
| added = '3.2' |
| [function.PyDescr_NewMember] |
| added = '3.2' |
| [function.PyDescr_NewMethod] |
| added = '3.2' |
| [data.PyDictItems_Type] |
| added = '3.2' |
| [data.PyDictIterItem_Type] |
| added = '3.2' |
| [data.PyDictIterKey_Type] |
| added = '3.2' |
| [data.PyDictIterValue_Type] |
| added = '3.2' |
| [data.PyDictKeys_Type] |
| added = '3.2' |
| [function.PyDictProxy_New] |
| added = '3.2' |
| [data.PyDictProxy_Type] |
| added = '3.2' |
| [data.PyDictValues_Type] |
| added = '3.2' |
| [function.PyDict_Clear] |
| added = '3.2' |
| [function.PyDict_Contains] |
| added = '3.2' |
| [function.PyDict_Copy] |
| added = '3.2' |
| [function.PyDict_DelItem] |
| added = '3.2' |
| [function.PyDict_DelItemString] |
| added = '3.2' |
| [function.PyDict_GetItem] |
| added = '3.2' |
| [function.PyDict_GetItemString] |
| added = '3.2' |
| [function.PyDict_GetItemWithError] |
| added = '3.2' |
| [function.PyDict_Items] |
| added = '3.2' |
| [function.PyDict_Keys] |
| added = '3.2' |
| [function.PyDict_Merge] |
| added = '3.2' |
| [function.PyDict_MergeFromSeq2] |
| added = '3.2' |
| [function.PyDict_New] |
| added = '3.2' |
| [function.PyDict_Next] |
| added = '3.2' |
| [function.PyDict_SetItem] |
| added = '3.2' |
| [function.PyDict_SetItemString] |
| added = '3.2' |
| [function.PyDict_Size] |
| added = '3.2' |
| [data.PyDict_Type] |
| added = '3.2' |
| [function.PyDict_Update] |
| added = '3.2' |
| [function.PyDict_Values] |
| added = '3.2' |
| [data.PyEllipsis_Type] |
| added = '3.2' |
| [data.PyEnum_Type] |
| added = '3.2' |
| [function.PyErr_BadArgument] |
| added = '3.2' |
| [function.PyErr_BadInternalCall] |
| added = '3.2' |
| [function.PyErr_CheckSignals] |
| added = '3.2' |
| [function.PyErr_Clear] |
| added = '3.2' |
| [function.PyErr_Display] |
| added = '3.2' |
| [function.PyErr_DisplayException] |
| added = '3.12' |
| [function.PyErr_ExceptionMatches] |
| added = '3.2' |
| [function.PyErr_Fetch] |
| added = '3.2' |
| [function.PyErr_Format] |
| added = '3.2' |
| [function.PyErr_GivenExceptionMatches] |
| added = '3.2' |
| [function.PyErr_NewException] |
| added = '3.2' |
| [function.PyErr_NewExceptionWithDoc] |
| added = '3.2' |
| [function.PyErr_NoMemory] |
| added = '3.2' |
| [function.PyErr_NormalizeException] |
| added = '3.2' |
| [function.PyErr_Occurred] |
| added = '3.2' |
| [function.PyErr_Print] |
| added = '3.2' |
| [function.PyErr_PrintEx] |
| added = '3.2' |
| [function.PyErr_ProgramText] |
| added = '3.2' |
| [function.PyErr_Restore] |
| added = '3.2' |
| [function.PyErr_SetFromErrno] |
| added = '3.2' |
| [function.PyErr_SetFromErrnoWithFilename] |
| added = '3.2' |
| [function.PyErr_SetFromErrnoWithFilenameObject] |
| added = '3.2' |
| [function.PyErr_SetInterrupt] |
| added = '3.2' |
| [function.PyErr_SetNone] |
| added = '3.2' |
| [function.PyErr_SetObject] |
| added = '3.2' |
| [function.PyErr_SetString] |
| added = '3.2' |
| [function.PyErr_SyntaxLocation] |
| added = '3.2' |
| [function.PyErr_WarnEx] |
| added = '3.2' |
| [function.PyErr_WarnExplicit] |
| added = '3.2' |
| [function.PyErr_WarnFormat] |
| added = '3.2' |
| [function.PyErr_WriteUnraisable] |
| added = '3.2' |
| [function.PyEval_AcquireLock] |
| added = '3.2' |
| abi_only = true |
| [function.PyEval_AcquireThread] |
| added = '3.2' |
| [function.PyEval_CallFunction] |
| added = '3.2' |
| abi_only = true |
| [function.PyEval_CallMethod] |
| added = '3.2' |
| abi_only = true |
| [function.PyEval_CallObjectWithKeywords] |
| added = '3.2' |
| abi_only = true |
| [function.PyEval_EvalCode] |
| added = '3.2' |
| [function.PyEval_EvalCodeEx] |
| added = '3.2' |
| [function.PyEval_EvalFrame] |
| added = '3.2' |
| [function.PyEval_EvalFrameEx] |
| added = '3.2' |
| [function.PyEval_GetBuiltins] |
| added = '3.2' |
| [function.PyEval_GetFrame] |
| added = '3.2' |
| [function.PyEval_GetFuncDesc] |
| added = '3.2' |
| [function.PyEval_GetFuncName] |
| added = '3.2' |
| [function.PyEval_GetGlobals] |
| added = '3.2' |
| [function.PyEval_GetLocals] |
| added = '3.2' |
| [function.PyEval_InitThreads] |
| added = '3.2' |
| [function.PyEval_ReleaseLock] |
| added = '3.2' |
| abi_only = true |
| [function.PyEval_ReleaseThread] |
| added = '3.2' |
| [function.PyEval_RestoreThread] |
| added = '3.2' |
| [function.PyEval_SaveThread] |
| added = '3.2' |
| [function.PyEval_ThreadsInitialized] |
| added = '3.2' |
| abi_only = true |
| [data.PyExc_ArithmeticError] |
| added = '3.2' |
| [data.PyExc_AssertionError] |
| added = '3.2' |
| [data.PyExc_AttributeError] |
| added = '3.2' |
| [data.PyExc_BaseException] |
| added = '3.2' |
| [data.PyExc_BaseExceptionGroup] |
| added = '3.11' |
| [data.PyExc_BufferError] |
| added = '3.2' |
| [data.PyExc_BytesWarning] |
| added = '3.2' |
| [data.PyExc_DeprecationWarning] |
| added = '3.2' |
| [data.PyExc_EOFError] |
| added = '3.2' |
| [data.PyExc_EnvironmentError] |
| added = '3.2' |
| [data.PyExc_Exception] |
| added = '3.2' |
| [data.PyExc_FloatingPointError] |
| added = '3.2' |
| [data.PyExc_FutureWarning] |
| added = '3.2' |
| [data.PyExc_GeneratorExit] |
| added = '3.2' |
| [data.PyExc_IOError] |
| added = '3.2' |
| [data.PyExc_ImportError] |
| added = '3.2' |
| [data.PyExc_ImportWarning] |
| added = '3.2' |
| [data.PyExc_IndentationError] |
| added = '3.2' |
| [data.PyExc_IndexError] |
| added = '3.2' |
| [data.PyExc_KeyError] |
| added = '3.2' |
| [data.PyExc_KeyboardInterrupt] |
| added = '3.2' |
| [data.PyExc_LookupError] |
| added = '3.2' |
| [data.PyExc_MemoryError] |
| added = '3.2' |
| [data.PyExc_NameError] |
| added = '3.2' |
| [data.PyExc_NotImplementedError] |
| added = '3.2' |
| [data.PyExc_OSError] |
| added = '3.2' |
| [data.PyExc_OverflowError] |
| added = '3.2' |
| [data.PyExc_PendingDeprecationWarning] |
| added = '3.2' |
| [data.PyExc_ReferenceError] |
| added = '3.2' |
| [data.PyExc_RuntimeError] |
| added = '3.2' |
| [data.PyExc_RuntimeWarning] |
| added = '3.2' |
| [data.PyExc_StopIteration] |
| added = '3.2' |
| [data.PyExc_SyntaxError] |
| added = '3.2' |
| [data.PyExc_SyntaxWarning] |
| added = '3.2' |
| [data.PyExc_SystemError] |
| added = '3.2' |
| [data.PyExc_SystemExit] |
| added = '3.2' |
| [data.PyExc_TabError] |
| added = '3.2' |
| [data.PyExc_TypeError] |
| added = '3.2' |
| [data.PyExc_UnboundLocalError] |
| added = '3.2' |
| [data.PyExc_UnicodeDecodeError] |
| added = '3.2' |
| [data.PyExc_UnicodeEncodeError] |
| added = '3.2' |
| [data.PyExc_UnicodeError] |
| added = '3.2' |
| [data.PyExc_UnicodeTranslateError] |
| added = '3.2' |
| [data.PyExc_UnicodeWarning] |
| added = '3.2' |
| [data.PyExc_UserWarning] |
| added = '3.2' |
| [data.PyExc_ValueError] |
| added = '3.2' |
| [data.PyExc_Warning] |
| added = '3.2' |
| [data.PyExc_ZeroDivisionError] |
| added = '3.2' |
| [function.PyException_GetCause] |
| added = '3.2' |
| [function.PyException_GetContext] |
| added = '3.2' |
| [function.PyException_GetTraceback] |
| added = '3.2' |
| [function.PyException_SetCause] |
| added = '3.2' |
| [function.PyException_SetContext] |
| added = '3.2' |
| [function.PyException_SetTraceback] |
| added = '3.2' |
| [function.PyFile_FromFd] |
| added = '3.2' |
| [function.PyFile_GetLine] |
| added = '3.2' |
| [function.PyFile_WriteObject] |
| added = '3.2' |
| [function.PyFile_WriteString] |
| added = '3.2' |
| [data.PyFilter_Type] |
| added = '3.2' |
| [function.PyFloat_AsDouble] |
| added = '3.2' |
| [function.PyFloat_FromDouble] |
| added = '3.2' |
| [function.PyFloat_FromString] |
| added = '3.2' |
| [function.PyFloat_GetInfo] |
| added = '3.2' |
| [function.PyFloat_GetMax] |
| added = '3.2' |
| [function.PyFloat_GetMin] |
| added = '3.2' |
| [data.PyFloat_Type] |
| added = '3.2' |
| [function.PyFrozenSet_New] |
| added = '3.2' |
| [data.PyFrozenSet_Type] |
| added = '3.2' |
| [function.PyGC_Collect] |
| added = '3.2' |
| [function.PyGILState_Ensure] |
| added = '3.2' |
| [function.PyGILState_GetThisThreadState] |
| added = '3.2' |
| [function.PyGILState_Release] |
| added = '3.2' |
| [data.PyGetSetDescr_Type] |
| added = '3.2' |
| [function.PyImport_AddModule] |
| added = '3.2' |
| [function.PyImport_AppendInittab] |
| added = '3.2' |
| [function.PyImport_ExecCodeModule] |
| added = '3.2' |
| [function.PyImport_ExecCodeModuleEx] |
| added = '3.2' |
| [function.PyImport_ExecCodeModuleWithPathnames] |
| added = '3.2' |
| [function.PyImport_GetImporter] |
| added = '3.2' |
| [function.PyImport_GetMagicNumber] |
| added = '3.2' |
| [function.PyImport_GetMagicTag] |
| added = '3.2' |
| [function.PyImport_GetModuleDict] |
| added = '3.2' |
| [function.PyImport_Import] |
| added = '3.2' |
| [function.PyImport_ImportFrozenModule] |
| added = '3.2' |
| [function.PyImport_ImportModule] |
| added = '3.2' |
| [function.PyImport_ImportModuleLevel] |
| added = '3.2' |
| [function.PyImport_ImportModuleNoBlock] |
| added = '3.2' |
| [function.PyImport_ReloadModule] |
| added = '3.2' |
| [function.PyInterpreterState_Clear] |
| added = '3.2' |
| [function.PyInterpreterState_Delete] |
| added = '3.2' |
| [function.PyInterpreterState_New] |
| added = '3.2' |
| [function.PyIter_Next] |
| added = '3.2' |
| [data.PyListIter_Type] |
| added = '3.2' |
| [data.PyListRevIter_Type] |
| added = '3.2' |
| [function.PyList_Append] |
| added = '3.2' |
| [function.PyList_AsTuple] |
| added = '3.2' |
| [function.PyList_GetItem] |
| added = '3.2' |
| [function.PyList_GetSlice] |
| added = '3.2' |
| [function.PyList_Insert] |
| added = '3.2' |
| [function.PyList_New] |
| added = '3.2' |
| [function.PyList_Reverse] |
| added = '3.2' |
| [function.PyList_SetItem] |
| added = '3.2' |
| [function.PyList_SetSlice] |
| added = '3.2' |
| [function.PyList_Size] |
| added = '3.2' |
| [function.PyList_Sort] |
| added = '3.2' |
| [data.PyList_Type] |
| added = '3.2' |
| [data.PyLongRangeIter_Type] |
| added = '3.2' |
| [function.PyLong_AsDouble] |
| added = '3.2' |
| [function.PyLong_AsLong] |
| added = '3.2' |
| [function.PyLong_AsLongAndOverflow] |
| added = '3.2' |
| [function.PyLong_AsLongLong] |
| added = '3.2' |
| [function.PyLong_AsLongLongAndOverflow] |
| added = '3.2' |
| [function.PyLong_AsSize_t] |
| added = '3.2' |
| [function.PyLong_AsSsize_t] |
| added = '3.2' |
| [function.PyLong_AsUnsignedLong] |
| added = '3.2' |
| [function.PyLong_AsUnsignedLongLong] |
| added = '3.2' |
| [function.PyLong_AsUnsignedLongLongMask] |
| added = '3.2' |
| [function.PyLong_AsUnsignedLongMask] |
| added = '3.2' |
| [function.PyLong_AsVoidPtr] |
| added = '3.2' |
| [function.PyLong_FromDouble] |
| added = '3.2' |
| [function.PyLong_FromLong] |
| added = '3.2' |
| [function.PyLong_FromLongLong] |
| added = '3.2' |
| [function.PyLong_FromSize_t] |
| added = '3.2' |
| [function.PyLong_FromSsize_t] |
| added = '3.2' |
| [function.PyLong_FromString] |
| added = '3.2' |
| [function.PyLong_FromUnsignedLong] |
| added = '3.2' |
| [function.PyLong_FromUnsignedLongLong] |
| added = '3.2' |
| [function.PyLong_FromVoidPtr] |
| added = '3.2' |
| [function.PyLong_GetInfo] |
| added = '3.2' |
| [data.PyLong_Type] |
| added = '3.2' |
| [data.PyMap_Type] |
| added = '3.2' |
| [function.PyMapping_Check] |
| added = '3.2' |
| [function.PyMapping_GetItemString] |
| added = '3.2' |
| [function.PyMapping_HasKey] |
| added = '3.2' |
| [function.PyMapping_HasKeyString] |
| added = '3.2' |
| [function.PyMapping_Items] |
| added = '3.2' |
| [function.PyMapping_Keys] |
| added = '3.2' |
| [function.PyMapping_Length] |
| added = '3.2' |
| [function.PyMapping_SetItemString] |
| added = '3.2' |
| [function.PyMapping_Size] |
| added = '3.2' |
| [function.PyMapping_Values] |
| added = '3.2' |
| [function.PyMem_Free] |
| added = '3.2' |
| [function.PyMem_Malloc] |
| added = '3.2' |
| [function.PyMem_Realloc] |
| added = '3.2' |
| [data.PyMemberDescr_Type] |
| added = '3.2' |
| [function.PyMemoryView_FromObject] |
| added = '3.2' |
| [function.PyMemoryView_GetContiguous] |
| added = '3.2' |
| [data.PyMemoryView_Type] |
| added = '3.2' |
| [data.PyMethodDescr_Type] |
| added = '3.2' |
| [function.PyModule_AddIntConstant] |
| added = '3.2' |
| [function.PyModule_AddObject] |
| added = '3.2' |
| [function.PyModule_AddStringConstant] |
| added = '3.2' |
| [function.PyModule_Create2] |
| added = '3.2' |
| [function.PyModule_GetDef] |
| added = '3.2' |
| [function.PyModule_GetDict] |
| added = '3.2' |
| [function.PyModule_GetFilename] |
| added = '3.2' |
| [function.PyModule_GetFilenameObject] |
| added = '3.2' |
| [function.PyModule_GetName] |
| added = '3.2' |
| [function.PyModule_GetState] |
| added = '3.2' |
| [function.PyModule_New] |
| added = '3.2' |
| [data.PyModule_Type] |
| added = '3.2' |
| [function.PyNumber_Absolute] |
| added = '3.2' |
| [function.PyNumber_Add] |
| added = '3.2' |
| [function.PyNumber_And] |
| added = '3.2' |
| [function.PyNumber_AsSsize_t] |
| added = '3.2' |
| [function.PyNumber_Check] |
| added = '3.2' |
| [function.PyNumber_Divmod] |
| added = '3.2' |
| [function.PyNumber_Float] |
| added = '3.2' |
| [function.PyNumber_FloorDivide] |
| added = '3.2' |
| [function.PyNumber_InPlaceAdd] |
| added = '3.2' |
| [function.PyNumber_InPlaceAnd] |
| added = '3.2' |
| [function.PyNumber_InPlaceFloorDivide] |
| added = '3.2' |
| [function.PyNumber_InPlaceLshift] |
| added = '3.2' |
| [function.PyNumber_InPlaceMultiply] |
| added = '3.2' |
| [function.PyNumber_InPlaceOr] |
| added = '3.2' |
| [function.PyNumber_InPlacePower] |
| added = '3.2' |
| [function.PyNumber_InPlaceRemainder] |
| added = '3.2' |
| [function.PyNumber_InPlaceRshift] |
| added = '3.2' |
| [function.PyNumber_InPlaceSubtract] |
| added = '3.2' |
| [function.PyNumber_InPlaceTrueDivide] |
| added = '3.2' |
| [function.PyNumber_InPlaceXor] |
| added = '3.2' |
| [function.PyNumber_Index] |
| added = '3.2' |
| [function.PyNumber_Invert] |
| added = '3.2' |
| [function.PyNumber_Long] |
| added = '3.2' |
| [function.PyNumber_Lshift] |
| added = '3.2' |
| [function.PyNumber_Multiply] |
| added = '3.2' |
| [function.PyNumber_Negative] |
| added = '3.2' |
| [function.PyNumber_Or] |
| added = '3.2' |
| [function.PyNumber_Positive] |
| added = '3.2' |
| [function.PyNumber_Power] |
| added = '3.2' |
| [function.PyNumber_Remainder] |
| added = '3.2' |
| [function.PyNumber_Rshift] |
| added = '3.2' |
| [function.PyNumber_Subtract] |
| added = '3.2' |
| [function.PyNumber_ToBase] |
| added = '3.2' |
| [function.PyNumber_TrueDivide] |
| added = '3.2' |
| [function.PyNumber_Xor] |
| added = '3.2' |
| [function.PyOS_AfterFork] |
| added = '3.2' |
| ifdef = 'HAVE_FORK' |
| [data.PyOS_InputHook] |
| added = '3.2' |
| [function.PyOS_InterruptOccurred] |
| added = '3.2' |
| [function.PyOS_double_to_string] |
| added = '3.2' |
| [function.PyOS_getsig] |
| added = '3.2' |
| [function.PyOS_mystricmp] |
| added = '3.2' |
| [function.PyOS_mystrnicmp] |
| added = '3.2' |
| [function.PyOS_setsig] |
| added = '3.2' |
| [function.PyOS_snprintf] |
| added = '3.2' |
| [function.PyOS_string_to_double] |
| added = '3.2' |
| [function.PyOS_strtol] |
| added = '3.2' |
| [function.PyOS_strtoul] |
| added = '3.2' |
| [function.PyOS_vsnprintf] |
| added = '3.2' |
| [function.PyObject_ASCII] |
| added = '3.2' |
| [function.PyObject_AsFileDescriptor] |
| added = '3.2' |
| [function.PyObject_Bytes] |
| added = '3.2' |
| [function.PyObject_Call] |
| added = '3.2' |
| [function.PyObject_CallFunction] |
| added = '3.2' |
| [function.PyObject_CallFunctionObjArgs] |
| added = '3.2' |
| [function.PyObject_CallMethod] |
| added = '3.2' |
| [function.PyObject_CallMethodObjArgs] |
| added = '3.2' |
| [function.PyObject_CallObject] |
| added = '3.2' |
| [function.PyObject_ClearWeakRefs] |
| added = '3.2' |
| [function.PyObject_DelItem] |
| added = '3.2' |
| [function.PyObject_DelItemString] |
| added = '3.2' |
| [function.PyObject_Dir] |
| added = '3.2' |
| [function.PyObject_Format] |
| added = '3.2' |
| [function.PyObject_Free] |
| added = '3.2' |
| [function.PyObject_GC_Del] |
| added = '3.2' |
| [function.PyObject_GC_Track] |
| added = '3.2' |
| [function.PyObject_GC_UnTrack] |
| added = '3.2' |
| [function.PyObject_GenericGetAttr] |
| added = '3.2' |
| [function.PyObject_GenericSetAttr] |
| added = '3.2' |
| [function.PyObject_GetAttr] |
| added = '3.2' |
| [function.PyObject_GetAttrString] |
| added = '3.2' |
| [function.PyObject_GetItem] |
| added = '3.2' |
| [function.PyObject_GetIter] |
| added = '3.2' |
| [function.PyObject_HasAttr] |
| added = '3.2' |
| [function.PyObject_HasAttrString] |
| added = '3.2' |
| [function.PyObject_Hash] |
| added = '3.2' |
| [function.PyObject_HashNotImplemented] |
| added = '3.2' |
| [function.PyObject_Init] |
| added = '3.2' |
| [function.PyObject_InitVar] |
| added = '3.2' |
| [function.PyObject_IsInstance] |
| added = '3.2' |
| [function.PyObject_IsSubclass] |
| added = '3.2' |
| [function.PyObject_IsTrue] |
| added = '3.2' |
| [function.PyObject_Length] |
| added = '3.2' |
| [function.PyObject_Malloc] |
| added = '3.2' |
| [function.PyObject_Not] |
| added = '3.2' |
| [function.PyObject_Realloc] |
| added = '3.2' |
| [function.PyObject_Repr] |
| added = '3.2' |
| [function.PyObject_RichCompare] |
| added = '3.2' |
| [function.PyObject_RichCompareBool] |
| added = '3.2' |
| [function.PyObject_SelfIter] |
| added = '3.2' |
| [function.PyObject_SetAttr] |
| added = '3.2' |
| [function.PyObject_SetAttrString] |
| added = '3.2' |
| [function.PyObject_SetItem] |
| added = '3.2' |
| [function.PyObject_Size] |
| added = '3.2' |
| [function.PyObject_Str] |
| added = '3.2' |
| [function.PyObject_Type] |
| added = '3.2' |
| [data.PyProperty_Type] |
| added = '3.2' |
| [data.PyRangeIter_Type] |
| added = '3.2' |
| [data.PyRange_Type] |
| added = '3.2' |
| [data.PyReversed_Type] |
| added = '3.2' |
| [function.PySeqIter_New] |
| added = '3.2' |
| [data.PySeqIter_Type] |
| added = '3.2' |
| [function.PySequence_Check] |
| added = '3.2' |
| [function.PySequence_Concat] |
| added = '3.2' |
| [function.PySequence_Contains] |
| added = '3.2' |
| [function.PySequence_Count] |
| added = '3.2' |
| [function.PySequence_DelItem] |
| added = '3.2' |
| [function.PySequence_DelSlice] |
| added = '3.2' |
| [function.PySequence_Fast] |
| added = '3.2' |
| [function.PySequence_GetItem] |
| added = '3.2' |
| [function.PySequence_GetSlice] |
| added = '3.2' |
| [function.PySequence_In] |
| added = '3.2' |
| [function.PySequence_InPlaceConcat] |
| added = '3.2' |
| [function.PySequence_InPlaceRepeat] |
| added = '3.2' |
| [function.PySequence_Index] |
| added = '3.2' |
| [function.PySequence_Length] |
| added = '3.2' |
| [function.PySequence_List] |
| added = '3.2' |
| [function.PySequence_Repeat] |
| added = '3.2' |
| [function.PySequence_SetItem] |
| added = '3.2' |
| [function.PySequence_SetSlice] |
| added = '3.2' |
| [function.PySequence_Size] |
| added = '3.2' |
| [function.PySequence_Tuple] |
| added = '3.2' |
| [data.PySetIter_Type] |
| added = '3.2' |
| [function.PySet_Add] |
| added = '3.2' |
| [function.PySet_Clear] |
| added = '3.2' |
| [function.PySet_Contains] |
| added = '3.2' |
| [function.PySet_Discard] |
| added = '3.2' |
| [function.PySet_New] |
| added = '3.2' |
| [function.PySet_Pop] |
| added = '3.2' |
| [function.PySet_Size] |
| added = '3.2' |
| [data.PySet_Type] |
| added = '3.2' |
| [function.PySlice_GetIndices] |
| added = '3.2' |
| [function.PySlice_GetIndicesEx] |
| added = '3.2' |
| [function.PySlice_New] |
| added = '3.2' |
| [data.PySlice_Type] |
| added = '3.2' |
| [function.PyState_FindModule] |
| added = '3.2' |
| [function.PyStructSequence_GetItem] |
| added = '3.2' |
| [function.PyStructSequence_New] |
| added = '3.2' |
| [function.PyStructSequence_NewType] |
| added = '3.2' |
| [function.PyStructSequence_SetItem] |
| added = '3.2' |
| [data.PySuper_Type] |
| added = '3.2' |
| [function.PySys_AddWarnOption] |
| added = '3.2' |
| abi_only = true |
| [function.PySys_AddWarnOptionUnicode] |
| added = '3.2' |
| abi_only = true |
| [function.PySys_FormatStderr] |
| added = '3.2' |
| [function.PySys_FormatStdout] |
| added = '3.2' |
| [function.PySys_GetObject] |
| added = '3.2' |
| [function.PySys_HasWarnOptions] |
| added = '3.2' |
| abi_only = true |
| [function.PySys_ResetWarnOptions] |
| added = '3.2' |
| [function.PySys_SetArgv] |
| added = '3.2' |
| [function.PySys_SetArgvEx] |
| added = '3.2' |
| [function.PySys_SetObject] |
| added = '3.2' |
| [function.PySys_SetPath] |
| added = '3.2' |
| abi_only = true |
| [function.PySys_WriteStderr] |
| added = '3.2' |
| [function.PySys_WriteStdout] |
| added = '3.2' |
| [function.PyThreadState_Clear] |
| added = '3.2' |
| [function.PyThreadState_Delete] |
| added = '3.2' |
| [function.PyThreadState_DeleteCurrent] |
| added = '3.2' |
| abi_only = true |
| [function.PyThreadState_Get] |
| added = '3.2' |
| [function.PyThreadState_GetDict] |
| added = '3.2' |
| [function.PyThreadState_New] |
| added = '3.2' |
| [function.PyThreadState_SetAsyncExc] |
| added = '3.2' |
| [function.PyThreadState_Swap] |
| added = '3.2' |
| [function.PyTraceBack_Here] |
| added = '3.2' |
| [function.PyTraceBack_Print] |
| added = '3.2' |
| [data.PyTraceBack_Type] |
| added = '3.2' |
| [data.PyTupleIter_Type] |
| added = '3.2' |
| [function.PyTuple_GetItem] |
| added = '3.2' |
| [function.PyTuple_GetSlice] |
| added = '3.2' |
| [function.PyTuple_New] |
| added = '3.2' |
| [function.PyTuple_Pack] |
| added = '3.2' |
| [function.PyTuple_SetItem] |
| added = '3.2' |
| [function.PyTuple_Size] |
| added = '3.2' |
| [data.PyTuple_Type] |
| added = '3.2' |
| [function.PyType_ClearCache] |
| added = '3.2' |
| [function.PyType_GenericAlloc] |
| added = '3.2' |
| [function.PyType_GenericNew] |
| added = '3.2' |
| [function.PyType_GetFlags] |
| added = '3.2' |
| [function.PyType_IsSubtype] |
| added = '3.2' |
| [function.PyType_Modified] |
| added = '3.2' |
| [function.PyType_Ready] |
| added = '3.2' |
| [data.PyType_Type] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_Create] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_GetEncoding] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_GetEnd] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_GetObject] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_GetReason] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_GetStart] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_SetEnd] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_SetReason] |
| added = '3.2' |
| [function.PyUnicodeDecodeError_SetStart] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_GetEncoding] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_GetEnd] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_GetObject] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_GetReason] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_GetStart] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_SetEnd] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_SetReason] |
| added = '3.2' |
| [function.PyUnicodeEncodeError_SetStart] |
| added = '3.2' |
| [data.PyUnicodeIter_Type] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_GetEnd] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_GetObject] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_GetReason] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_GetStart] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_SetEnd] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_SetReason] |
| added = '3.2' |
| [function.PyUnicodeTranslateError_SetStart] |
| added = '3.2' |
| [function.PyUnicode_Append] |
| added = '3.2' |
| [function.PyUnicode_AppendAndDel] |
| added = '3.2' |
| [function.PyUnicode_AsASCIIString] |
| added = '3.2' |
| [function.PyUnicode_AsCharmapString] |
| added = '3.2' |
| [function.PyUnicode_AsDecodedObject] |
| added = '3.2' |
| [function.PyUnicode_AsDecodedUnicode] |
| added = '3.2' |
| [function.PyUnicode_AsEncodedObject] |
| added = '3.2' |
| [function.PyUnicode_AsEncodedString] |
| added = '3.2' |
| [function.PyUnicode_AsEncodedUnicode] |
| added = '3.2' |
| [function.PyUnicode_AsLatin1String] |
| added = '3.2' |
| [function.PyUnicode_AsRawUnicodeEscapeString] |
| added = '3.2' |
| [function.PyUnicode_AsUTF16String] |
| added = '3.2' |
| [function.PyUnicode_AsUTF32String] |
| added = '3.2' |
| [function.PyUnicode_AsUTF8String] |
| added = '3.2' |
| [function.PyUnicode_AsUnicodeEscapeString] |
| added = '3.2' |
| [function.PyUnicode_AsWideChar] |
| added = '3.2' |
| [function.PyUnicode_Compare] |
| added = '3.2' |
| [function.PyUnicode_Concat] |
| added = '3.2' |
| [function.PyUnicode_Contains] |
| added = '3.2' |
| [function.PyUnicode_Count] |
| added = '3.2' |
| [function.PyUnicode_Decode] |
| added = '3.2' |
| [function.PyUnicode_DecodeASCII] |
| added = '3.2' |
| [function.PyUnicode_DecodeCharmap] |
| added = '3.2' |
| [function.PyUnicode_DecodeFSDefault] |
| added = '3.2' |
| [function.PyUnicode_DecodeFSDefaultAndSize] |
| added = '3.2' |
| [function.PyUnicode_DecodeLatin1] |
| added = '3.2' |
| [function.PyUnicode_DecodeRawUnicodeEscape] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF16] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF16Stateful] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF32] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF32Stateful] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF8] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF8Stateful] |
| added = '3.2' |
| [function.PyUnicode_DecodeUnicodeEscape] |
| added = '3.2' |
| [function.PyUnicode_FSConverter] |
| added = '3.2' |
| [function.PyUnicode_FSDecoder] |
| added = '3.2' |
| [function.PyUnicode_Find] |
| added = '3.2' |
| [function.PyUnicode_Format] |
| added = '3.2' |
| [function.PyUnicode_FromEncodedObject] |
| added = '3.2' |
| [function.PyUnicode_FromFormat] |
| added = '3.2' |
| [function.PyUnicode_FromFormatV] |
| added = '3.2' |
| [function.PyUnicode_FromObject] |
| added = '3.2' |
| [function.PyUnicode_FromOrdinal] |
| added = '3.2' |
| [function.PyUnicode_FromString] |
| added = '3.2' |
| [function.PyUnicode_FromStringAndSize] |
| added = '3.2' |
| [function.PyUnicode_FromWideChar] |
| added = '3.2' |
| [function.PyUnicode_GetDefaultEncoding] |
| added = '3.2' |
| [function.PyUnicode_GetSize] |
| added = '3.2' |
| abi_only = true |
| [function.PyUnicode_IsIdentifier] |
| added = '3.2' |
| [function.PyUnicode_Join] |
| added = '3.2' |
| [function.PyUnicode_Partition] |
| added = '3.2' |
| [function.PyUnicode_RPartition] |
| added = '3.2' |
| [function.PyUnicode_RSplit] |
| added = '3.2' |
| [function.PyUnicode_Replace] |
| added = '3.2' |
| [function.PyUnicode_Resize] |
| added = '3.2' |
| [function.PyUnicode_RichCompare] |
| added = '3.2' |
| [function.PyUnicode_Split] |
| added = '3.2' |
| [function.PyUnicode_Splitlines] |
| added = '3.2' |
| [function.PyUnicode_Tailmatch] |
| added = '3.2' |
| [function.PyUnicode_Translate] |
| added = '3.2' |
| [function.PyUnicode_BuildEncodingMap] |
| added = '3.2' |
| [function.PyUnicode_CompareWithASCIIString] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF7] |
| added = '3.2' |
| [function.PyUnicode_DecodeUTF7Stateful] |
| added = '3.2' |
| [function.PyUnicode_EncodeFSDefault] |
| added = '3.2' |
| [function.PyUnicode_InternFromString] |
| added = '3.2' |
| [function.PyUnicode_InternImmortal] |
| added = '3.2' |
| abi_only = true |
| [function.PyUnicode_InternInPlace] |
| added = '3.2' |
| [data.PyUnicode_Type] |
| added = '3.2' |
| [function.PyWeakref_GetObject] |
| added = '3.2' |
| [function.PyWeakref_NewProxy] |
| added = '3.2' |
| [function.PyWeakref_NewRef] |
| added = '3.2' |
| [data.PyWrapperDescr_Type] |
| added = '3.2' |
| [function.PyWrapper_New] |
| added = '3.2' |
| [data.PyZip_Type] |
| added = '3.2' |
| [function.Py_AddPendingCall] |
| added = '3.2' |
| [function.Py_AtExit] |
| added = '3.2' |
| [function.Py_BuildValue] |
| added = '3.2' |
| [function.Py_CompileString] |
| added = '3.2' |
| [function.Py_DecRef] |
| added = '3.2' |
| [function.Py_EndInterpreter] |
| added = '3.2' |
| [function.Py_Exit] |
| added = '3.2' |
| [function.Py_FatalError] |
| added = '3.2' |
| [data.Py_FileSystemDefaultEncoding] |
| added = '3.2' |
| [function.Py_Finalize] |
| added = '3.2' |
| [function.Py_GetBuildInfo] |
| added = '3.2' |
| [function.Py_GetCompiler] |
| added = '3.2' |
| [function.Py_GetCopyright] |
| added = '3.2' |
| [function.Py_GetExecPrefix] |
| added = '3.2' |
| [function.Py_GetPath] |
| added = '3.2' |
| [function.Py_GetPlatform] |
| added = '3.2' |
| [function.Py_GetPrefix] |
| added = '3.2' |
| [function.Py_GetProgramFullPath] |
| added = '3.2' |
| [function.Py_GetProgramName] |
| added = '3.2' |
| [function.Py_GetPythonHome] |
| added = '3.2' |
| [function.Py_GetRecursionLimit] |
| added = '3.2' |
| [function.Py_GetVersion] |
| added = '3.2' |
| [data.Py_HasFileSystemDefaultEncoding] |
| added = '3.2' |
| [function.Py_IncRef] |
| added = '3.2' |
| [function.Py_Initialize] |
| added = '3.2' |
| [function.Py_InitializeEx] |
| added = '3.2' |
| [function.Py_IsInitialized] |
| added = '3.2' |
| [function.Py_Main] |
| added = '3.2' |
| [function.Py_MakePendingCalls] |
| added = '3.2' |
| [function.Py_NewInterpreter] |
| added = '3.2' |
| [function.Py_ReprEnter] |
| added = '3.2' |
| [function.Py_ReprLeave] |
| added = '3.2' |
| [function.Py_SetProgramName] |
| added = '3.2' |
| [function.Py_SetPythonHome] |
| added = '3.2' |
| [function.Py_SetRecursionLimit] |
| added = '3.2' |
| [function.Py_VaBuildValue] |
| added = '3.2' |
| |
| [function._PyErr_BadInternalCall] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_CallFunction_SizeT] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_CallMethod_SizeT] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_GC_New] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_GC_NewVar] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_GC_Resize] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_New] |
| added = '3.2' |
| abi_only = true |
| [function._PyObject_NewVar] |
| added = '3.2' |
| abi_only = true |
| [function._PyState_AddModule] |
| added = '3.2' |
| abi_only = true |
| [function._PyThreadState_Init] |
| added = '3.2' |
| abi_only = true |
| [function._PyThreadState_Prealloc] |
| added = '3.2' |
| abi_only = true |
| [data._PyWeakref_CallableProxyType] |
| added = '3.2' |
| abi_only = true |
| [data._PyWeakref_ProxyType] |
| added = '3.2' |
| abi_only = true |
| [data._PyWeakref_RefType] |
| added = '3.2' |
| abi_only = true |
| [function._Py_BuildValue_SizeT] |
| added = '3.2' |
| abi_only = true |
| [function._Py_CheckRecursiveCall] |
| added = '3.2' |
| abi_only = true |
| [function._Py_Dealloc] |
| added = '3.2' |
| abi_only = true |
| [data._Py_EllipsisObject] |
| added = '3.2' |
| abi_only = true |
| [data._Py_FalseStruct] |
| added = '3.2' |
| abi_only = true |
| [data._Py_NoneStruct] |
| added = '3.2' |
| abi_only = true |
| [data._Py_NotImplementedStruct] |
| added = '3.2' |
| abi_only = true |
| [data._Py_SwappedOp] |
| added = '3.2' |
| abi_only = true |
| [data._Py_TrueStruct] |
| added = '3.2' |
| abi_only = true |
| [function._Py_VaBuildValue_SizeT] |
| added = '3.2' |
| abi_only = true |
| |
| # Old buffer protocol support (deprecated) |
| |
| [function.PyObject_AsCharBuffer] |
| added = '3.2' |
| abi_only = true |
| [function.PyObject_AsReadBuffer] |
| added = '3.2' |
| abi_only = true |
| [function.PyObject_AsWriteBuffer] |
| added = '3.2' |
| abi_only = true |
| [function.PyObject_CheckReadBuffer] |
| added = '3.2' |
| abi_only = true |
| |
| # Flags are implicitly part of the ABI: |
| |
| [const.Py_TPFLAGS_DEFAULT] |
| added = '3.2' |
| [const.Py_TPFLAGS_BASETYPE] |
| added = '3.2' |
| [const.Py_TPFLAGS_HAVE_GC] |
| added = '3.2' |
| |
| [const.METH_VARARGS] |
| added = '3.2' |
| [const.METH_NOARGS] |
| added = '3.2' |
| [const.METH_O] |
| added = '3.2' |
| [const.METH_CLASS] |
| added = '3.2' |
| [const.METH_STATIC] |
| added = '3.2' |
| [const.METH_COEXIST] |
| added = '3.2' |
| # METH_STACKLESS is undocumented |
| # METH_FASTCALL is not part of limited API. |
| |
| # The following are defined in private headers, but historically |
| # they were exported as part of the stable ABI. |
| [function.PyMarshal_ReadObjectFromString] |
| added = '3.2' |
| abi_only = true |
| [function.PyMarshal_WriteObjectToString] |
| added = '3.2' |
| abi_only = true |
| [function.PyMember_GetOne] |
| added = '3.2' # Before 3.12, available in "structmember.h" |
| [function.PyMember_SetOne] |
| added = '3.2' # Before 3.12, available in "structmember.h" |
| |
| # TLS api is deprecated; superseded by TSS API |
| |
| [function.PyThread_ReInitTLS] |
| added = '3.2' |
| [function.PyThread_create_key] |
| added = '3.2' |
| [function.PyThread_delete_key] |
| added = '3.2' |
| [function.PyThread_set_key_value] |
| added = '3.2' |
| [function.PyThread_get_key_value] |
| added = '3.2' |
| [function.PyThread_delete_key_value] |
| added = '3.2' |
| [function.PyThread_acquire_lock] |
| added = '3.2' |
| [function.PyThread_acquire_lock_timed] |
| added = '3.2' |
| [function.PyThread_allocate_lock] |
| added = '3.2' |
| [function.PyThread_exit_thread] |
| added = '3.2' |
| [function.PyThread_free_lock] |
| added = '3.2' |
| [function.PyThread_get_stacksize] |
| added = '3.2' |
| [function.PyThread_get_thread_ident] |
| added = '3.2' |
| [function.PyThread_get_thread_native_id] |
| added = '3.2' |
| ifdef = 'PY_HAVE_THREAD_NATIVE_ID' |
| [function.PyThread_init_thread] |
| added = '3.2' |
| [function.PyThread_release_lock] |
| added = '3.2' |
| [function.PyThread_set_stacksize] |
| added = '3.2' |
| [function.PyThread_start_new_thread] |
| added = '3.2' |
| |
| # The following were added in PC/python3.def in Python 3.3: |
| # 7800f75827b1be557be16f3b18f5170fbf9fae08 |
| # 9c56409d3353b8cd4cfc19e0467bbe23fd34fc92 |
| # 75aeaa9b18667219bbacbc58ba6efecccef9dfbd |
| |
| [function.PyState_AddModule] |
| added = '3.3' |
| [function.PyState_RemoveModule] |
| added = '3.3' |
| [function.PyType_FromSpecWithBases] |
| added = '3.3' |
| [function._PyArg_Parse_SizeT] |
| added = '3.3' |
| abi_only = true |
| [function._PyArg_ParseTuple_SizeT] |
| added = '3.3' |
| abi_only = true |
| [function._PyArg_ParseTupleAndKeywords_SizeT] |
| added = '3.3' |
| abi_only = true |
| [function._PyArg_VaParse_SizeT] |
| added = '3.3' |
| abi_only = true |
| [function._PyArg_VaParseTupleAndKeywords_SizeT] |
| added = '3.3' |
| abi_only = true |
| [function.PyThread_GetInfo] |
| added = '3.3' |
| |
| # The following were added in PC/python3.def in Python 3.4: |
| # 3ba3a3ee56c142e93d6bbe20ff6bf939212a30f0 |
| |
| [function.PyCFunction_New] |
| added = '3.4' |
| [function.PyType_GetSlot] |
| added = '3.4' |
| |
| # The following were added in PC/python3.def in Python 3.5: |
| # 11d7b1423fc44d764eba7065ea5eba58ed748b21 |
| # f3b73ad51da3097d7915796fdc62608b1ab90c0a |
| |
| [function.PyErr_FormatV] |
| added = '3.5' |
| [function.PyModuleDef_Init] |
| added = '3.5' |
| [data.PyModuleDef_Type] |
| added = '3.5' |
| |
| # New slots in 3.5: |
| # d51374ed78a3e3145911a16cdf3b9b84b3ba7d15 - Matrix multiplication (PEP 465) |
| # 7544508f0245173bff5866aa1598c8f6cce1fc5f - Async iterators (PEP 492) |
| # 0969a9f8abcf98bb43ea77b1dd050426adcfb4f7 - tp_finalize |
| |
| [const.Py_nb_matrix_multiply] |
| added = '3.5' |
| [const.Py_nb_inplace_matrix_multiply] |
| added = '3.5' |
| [const.Py_am_await] |
| added = '3.5' |
| [const.Py_am_aiter] |
| added = '3.5' |
| [const.Py_am_anext] |
| added = '3.5' |
| [const.Py_tp_finalize] |
| added = '3.5' |
| |
| # The following were added in PC/python3.def in Python 3.6: |
| |
| [function.Py_FinalizeEx] |
| added = '3.6' |
| |
| [function.PyOS_FSPath] |
| added = '3.6' |
| [function.PyErr_ResourceWarning] |
| added = '3.6' |
| [function.PyErr_SetImportErrorSubclass] |
| added = '3.6' |
| [data.PyExc_ModuleNotFoundError] |
| added = '3.6' |
| |
| # The following were added in PC/python3.def in Python 3.6.1 and 3.5.3/3.5.4: |
| |
| [function.PyCodec_NameReplaceErrors] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyErr_GetExcInfo] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyErr_SetExcInfo] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyErr_SetFromErrnoWithFilenameObjects] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyErr_SetImportError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyErr_SyntaxLocationEx] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_BlockingIOError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_BrokenPipeError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ChildProcessError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ConnectionAbortedError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ConnectionError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ConnectionRefusedError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ConnectionResetError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_FileExistsError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_FileNotFoundError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_InterruptedError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_IsADirectoryError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_NotADirectoryError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_PermissionError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ProcessLookupError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_RecursionError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_ResourceWarning] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_StopAsyncIteration] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [data.PyExc_TimeoutError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyImport_AddModuleObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyImport_ExecCodeModuleObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyImport_ImportFrozenModuleObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyImport_ImportModuleLevelObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyMem_Calloc] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyMemoryView_FromMemory] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyModule_AddFunctions] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyModule_ExecDef] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyModule_FromDefAndSpec2] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyModule_GetNameObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyModule_NewObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyModule_SetDocString] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyNumber_InPlaceMatrixMultiply] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyNumber_MatrixMultiply] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyObject_Calloc] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyObject_GenericSetDict] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PySys_AddXOption] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| abi_only = true |
| [function.PySys_GetXOptions] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_AsUCS4] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_AsUCS4Copy] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_AsWideCharString] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_DecodeLocale] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_DecodeLocaleAndSize] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_EncodeLocale] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_FindChar] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_GetLength] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_ReadChar] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_Substring] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.PyUnicode_WriteChar] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.Py_DecodeLocale] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.Py_EncodeLocale] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| [function.Py_SetPath] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| abi_only = true |
| [function.PyErr_SetExcFromWindowsErr] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyErr_SetExcFromWindowsErrWithFilename] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyErr_SetExcFromWindowsErrWithFilenameObject] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyErr_SetExcFromWindowsErrWithFilenameObjects] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyErr_SetFromWindowsErr] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyErr_SetFromWindowsErrWithFilename] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [data.PyExc_WindowsError] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyOS_CheckStack] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'USE_STACKCHECK' |
| [function.PyUnicode_AsMBCSString] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyUnicode_DecodeCodePageStateful] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyUnicode_DecodeMBCS] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyUnicode_DecodeMBCSStateful] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| [function.PyUnicode_EncodeCodePage] |
| added = '3.7' # (and 3.6.1 and 3.5.3) |
| ifdef = 'MS_WINDOWS' |
| |
| # 3.5.4: |
| [function.PySlice_AdjustIndices] |
| added = '3.7' # (and 3.6.1 and 3.5.4) |
| [function.PySlice_Unpack] |
| added = '3.7' # (and 3.6.1 and 3.5.4) |
| |
| # The following were added in PC/python3.def in Python 3.7: |
| |
| [function.PyInterpreterState_GetID] |
| added = '3.7' |
| [function.PyThread_tss_alloc] |
| added = '3.7' |
| [function.PyThread_tss_create] |
| added = '3.7' |
| [function.PyThread_tss_delete] |
| added = '3.7' |
| [function.PyThread_tss_free] |
| added = '3.7' |
| [function.PyThread_tss_get] |
| added = '3.7' |
| [function.PyThread_tss_is_created] |
| added = '3.7' |
| [function.PyThread_tss_set] |
| added = '3.7' |
| [function.PyOS_BeforeFork] |
| added = '3.7' |
| ifdef = 'HAVE_FORK' |
| [function.PyOS_AfterFork_Parent] |
| added = '3.7' |
| ifdef = 'HAVE_FORK' |
| [function.PyOS_AfterFork_Child] |
| added = '3.7' |
| ifdef = 'HAVE_FORK' |
| |
| # New method flags in 3.7 (PEP 590): |
| |
| [const.METH_FASTCALL] |
| added = '3.7' |
| [const.METH_METHOD] |
| added = '3.7' |
| |
| # The following were added in PC/python3.def in Python 3.8: |
| |
| [function.PyImport_GetModule] |
| added = '3.8' |
| [data.Py_UTF8Mode] |
| added = '3.8' |
| [function.PyExceptionClass_Name] |
| added = '3.8' |
| [function.PyIndex_Check] |
| added = '3.8' |
| [function.PyIter_Check] |
| added = '3.8' |
| [data.PyDictRevIterItem_Type] |
| added = '3.8' |
| [data.PyDictRevIterKey_Type] |
| added = '3.8' |
| [data.PyDictRevIterValue_Type] |
| added = '3.8' |
| [function.PyInterpreterState_GetDict] |
| added = '3.8' |
| [function.Py_BytesMain] |
| added = '3.8' |
| |
| # New type flag (PEP 590): |
| |
| [const.Py_TPFLAGS_METHOD_DESCRIPTOR] |
| added = '3.8' |
| |
| # The following were added in PC/python3.def in Python 3.9: |
| |
| [function.Py_EnterRecursiveCall] |
| added = '3.9' |
| [function.Py_LeaveRecursiveCall] |
| added = '3.9' |
| [function.Py_GenericAlias] |
| added = '3.9' |
| [data.Py_GenericAliasType] |
| added = '3.9' |
| [function.PyCMethod_New] |
| added = '3.9' |
| [function.PyInterpreterState_Get] |
| added = '3.9' |
| [function.PyObject_GC_IsFinalized] |
| added = '3.9' |
| [function.PyObject_GC_IsTracked] |
| added = '3.9' |
| |
| # The following were added in PC/python3.def in Python 3.10: |
| |
| [function.Py_GetArgcArgv] |
| added = '3.10' |
| abi_only = true |
| [function.PyIter_Send] |
| added = '3.10' |
| [function.PyUnicode_AsUTF8AndSize] |
| added = '3.10' |
| [function.PyObject_GenericGetDict] |
| added = '3.10' |
| [function.Py_NewRef] |
| added = '3.10' |
| [function.Py_XNewRef] |
| added = '3.10' |
| [function.PyModule_AddType] |
| added = '3.10' |
| [function.PyType_FromModuleAndSpec] |
| added = '3.10' |
| [function.PyType_GetModule] |
| added = '3.10' |
| [function.PyType_GetModuleState] |
| added = '3.10' |
| [function.PyFrame_GetLineNumber] |
| added = '3.10' |
| [function.PyFrame_GetCode] |
| added = '3.10' |
| [function.PyObject_CallNoArgs] |
| added = '3.10' |
| [function.PyThreadState_GetFrame] |
| added = '3.10' |
| [function.PyThreadState_GetID] |
| added = '3.10' |
| [function.PyThreadState_GetInterpreter] |
| added = '3.10' |
| [function.PyModule_AddObjectRef] |
| added = '3.10' |
| [data.Py_FileSystemDefaultEncodeErrors] |
| added = '3.10' |
| [function.PyCodec_Unregister] |
| added = '3.10' |
| [function.PyErr_SetInterruptEx] |
| added = '3.10' |
| [function.Py_Is] |
| added = '3.10' |
| [function.Py_IsTrue] |
| added = '3.10' |
| [function.Py_IsFalse] |
| added = '3.10' |
| [function.Py_IsNone] |
| added = '3.10' |
| [function._Py_IncRef] |
| added = '3.10' |
| abi_only = true |
| [function._Py_DecRef] |
| added = '3.10' |
| abi_only = true |
| [function.PyAIter_Check] |
| added = '3.10' |
| [function.PyObject_GetAIter] |
| added = '3.10' |
| [data.PyExc_EncodingWarning] |
| added = '3.10' |
| |
| # Support for Stable ABI in debug builds |
| |
| [data._Py_RefTotal] |
| added = '3.10' |
| ifdef = 'Py_REF_DEBUG' |
| abi_only = true |
| [function._Py_NegativeRefcount] |
| added = '3.10' |
| ifdef = 'Py_REF_DEBUG' |
| abi_only = true |
| |
| # New slots in 3.10: |
| |
| [const.Py_am_send] |
| added = '3.10' |
| |
| |
| # New GC control functions in Py3.10 (https://bugs.python.org/issue28254) |
| |
| [function.PyGC_Disable] |
| added = '3.10' |
| [function.PyGC_Enable] |
| added = '3.10' |
| [function.PyGC_IsEnabled] |
| added = '3.10' |
| |
| # Add new C API in Python 3.11 |
| |
| [function.PyType_GetName] |
| added = '3.11' |
| [function.PyType_GetQualName] |
| added = '3.11' |
| [data.PyStructSequence_UnnamedField] |
| added = '3.11' |
| |
| # Add stable Py_buffer API in Python 3.11 (https://bugs.python.org/issue45459) |
| [struct.Py_buffer] |
| added = '3.11' |
| struct_abi_kind = 'full-abi' |
| [function.PyObject_CheckBuffer] |
| added = '3.11' |
| [function.PyObject_GetBuffer] |
| added = '3.11' |
| [function.PyBuffer_GetPointer] |
| added = '3.11' |
| [function.PyBuffer_SizeFromFormat] |
| added = '3.11' |
| [function.PyBuffer_ToContiguous] |
| added = '3.11' |
| [function.PyBuffer_FromContiguous] |
| added = '3.11' |
| [function.PyObject_CopyData] |
| added = '3.11' |
| [function.PyBuffer_IsContiguous] |
| added = '3.11' |
| [function.PyBuffer_FillContiguousStrides] |
| added = '3.11' |
| [function.PyBuffer_FillInfo] |
| added = '3.11' |
| [function.PyBuffer_Release] |
| added = '3.11' |
| [function.PyMemoryView_FromBuffer] |
| added = '3.11' |
| |
| # Constants for Py_buffer API added to this list in Python 3.11.1 (https://github.com/python/cpython/issues/98680) |
| # (they were available with 3.11.0) |
| [const.PyBUF_MAX_NDIM] |
| added = '3.11' |
| [const.PyBUF_SIMPLE] |
| added = '3.11' |
| [const.PyBUF_WRITABLE] |
| added = '3.11' |
| [const.PyBUF_FORMAT] |
| added = '3.11' |
| [const.PyBUF_ND] |
| added = '3.11' |
| [const.PyBUF_STRIDES] |
| added = '3.11' |
| [const.PyBUF_C_CONTIGUOUS] |
| added = '3.11' |
| [const.PyBUF_F_CONTIGUOUS] |
| added = '3.11' |
| [const.PyBUF_ANY_CONTIGUOUS] |
| added = '3.11' |
| [const.PyBUF_INDIRECT] |
| added = '3.11' |
| [const.PyBUF_CONTIG] |
| added = '3.11' |
| [const.PyBUF_CONTIG_RO] |
| added = '3.11' |
| [const.PyBUF_STRIDED] |
| added = '3.11' |
| [const.PyBUF_STRIDED_RO] |
| added = '3.11' |
| [const.PyBUF_RECORDS] |
| added = '3.11' |
| [const.PyBUF_RECORDS_RO] |
| added = '3.11' |
| [const.PyBUF_FULL] |
| added = '3.11' |
| [const.PyBUF_FULL_RO] |
| added = '3.11' |
| [const.PyBUF_READ] |
| added = '3.11' |
| [const.PyBUF_WRITE] |
| added = '3.11' |
| |
| |
| # (Detailed comments aren't really needed for further entries: from here on |
| # we can use version control logs.) |
| |
| [data.Py_Version] |
| added = '3.11' |
| [function.PyErr_GetHandledException] |
| added = '3.11' |
| [function.PyErr_SetHandledException] |
| added = '3.11' |
| |
| [function.PyType_FromMetaclass] |
| added = '3.12' |
| [const.Py_TPFLAGS_HAVE_VECTORCALL] |
| added = '3.12' |
| [function.PyVectorcall_NARGS] |
| added = '3.12' |
| [function.PyVectorcall_Call] |
| added = '3.12' |
| [function.PyErr_GetRaisedException] |
| added = '3.12' |
| [function.PyErr_SetRaisedException] |
| added = '3.12' |
| [function.PyException_GetArgs] |
| added = '3.12' |
| [function.PyException_SetArgs] |
| added = '3.12' |
| |
| [typedef.vectorcallfunc] |
| added = '3.12' |
| [function.PyObject_Vectorcall] |
| added = '3.12' |
| [function.PyObject_VectorcallMethod] |
| added = '3.12' |
| [macro.PY_VECTORCALL_ARGUMENTS_OFFSET] |
| added = '3.12' |
| [typedef.getbufferproc] |
| added = '3.12' |
| [typedef.releasebufferproc] |
| added = '3.12' |
| |
| [const.Py_T_BYTE] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_SHORT] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_INT] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_LONG] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_LONGLONG] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_UBYTE] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_UINT] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_USHORT] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_ULONG] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_ULONGLONG] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_PYSSIZET] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_FLOAT] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_DOUBLE] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_BOOL] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_STRING] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_STRING_INPLACE] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_CHAR] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_T_OBJECT_EX] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_READONLY] |
| added = '3.12' # Before 3.12, available in "structmember.h" w/o Py_ prefix |
| [const.Py_AUDIT_READ] |
| added = '3.12' # Before 3.12, available in "structmember.h" |
| |
| [function.PyObject_GetTypeData] |
| added = '3.12' |
| [function.PyType_GetTypeDataSize] |
| added = '3.12' |
| [const.Py_RELATIVE_OFFSET] |
| added = '3.12' |
| [const.Py_TPFLAGS_ITEMS_AT_END] |
| added = '3.12' |
| [function.PyImport_AddModuleRef] |
| added = '3.13' |
| [function.PyWeakref_GetRef] |
| added = '3.13' |
| [function.PyObject_DelAttr] |
| added = '3.13' |
| [function.PyObject_DelAttrString] |
| added = '3.13' |
| [function.PyObject_GetOptionalAttr] |
| added = '3.13' |
| [function.PyObject_GetOptionalAttrString] |
| added = '3.13' |
| [function.PyMapping_GetOptionalItem] |
| added = '3.13' |
| [function.PyMapping_GetOptionalItemString] |
| added = '3.13' |
| [function.PyModule_Add] |
| added = '3.13' |
| [function.PyDict_GetItemRef] |
| added = '3.13' |
| [function.PyDict_GetItemStringRef] |
| added = '3.13' |
| [function.PyLong_AsInt] |
| added = '3.13' |
| [function.PyObject_HasAttrWithError] |
| added = '3.13' |
| [function.PyObject_HasAttrStringWithError] |
| added = '3.13' |
| [function.PyMapping_HasKeyWithError] |
| added = '3.13' |
| [function.PyMapping_HasKeyStringWithError] |
| added = '3.13' |
| [function.Py_IsFinalizing] |
| added = '3.13' |
| [function.PyUnicode_EqualToUTF8] |
| added = '3.13' |
| [function.PyUnicode_EqualToUTF8AndSize] |
| added = '3.13' |
| [function.PyMem_RawMalloc] |
| added = '3.13' |
| [function.PyMem_RawCalloc] |
| added = '3.13' |
| [function.PyMem_RawRealloc] |
| added = '3.13' |
| [function.PyMem_RawFree] |
| added = '3.13' |
| [function.PySys_Audit] |
| added = '3.13' |
| [function.PySys_AuditTuple] |
| added = '3.13' |
| [function._Py_SetRefcnt] |
| added = '3.13' |
| abi_only = true |
| [function.PyList_GetItemRef] |
| added = '3.13' |
| [typedef.PyCFunctionFast] |
| added = '3.13' |
| # "abi-only" since 3.10. (Callback type names aren't used in C code, |
| # but this function signature was expected with METH_FASTCALL.) |
| [typedef.PyCFunctionFastWithKeywords] |
| added = '3.13' |
| # "abi-only" since 3.10. (Same story as PyCFunctionFast.) |
| [function.PyType_GetFullyQualifiedName] |
| added = '3.13' |
| [function.PyType_GetModuleName] |
| added = '3.13' |
| [function.Py_GetConstant] |
| added = '3.13' |
| [function.Py_GetConstantBorrowed] |
| added = '3.13' |
| [function.PyType_GetModuleByDef] |
| added = '3.13' |
| [function.PyEval_GetFrameBuiltins] |
| added = '3.13' |
| [function.PyEval_GetFrameGlobals] |
| added = '3.13' |
| [function.PyEval_GetFrameLocals] |
| added = '3.13' |
| |
| [function.Py_TYPE] |
| added = '3.14' |
| [function.Py_REFCNT] |
| added = '3.14' |
| [function.PyIter_NextItem] |
| added = '3.14' |
| [function.PyLong_FromInt32] |
| added = '3.14' |
| [function.PyLong_FromUInt32] |
| added = '3.14' |
| [function.PyLong_AsInt32] |
| added = '3.14' |
| [function.PyLong_AsUInt32] |
| added = '3.14' |
| [function.PyLong_FromInt64] |
| added = '3.14' |
| [function.PyLong_FromUInt64] |
| added = '3.14' |
| [function.PyLong_AsInt64] |
| added = '3.14' |
| [function.PyLong_AsUInt64] |
| added = '3.14' |
| [const.Py_tp_vectorcall] |
| added = '3.14' |
| [function.PyType_GetBaseByToken] |
| added = '3.14' |
| [const.Py_tp_token] |
| added = '3.14' |
| [const.Py_TP_USE_SPEC] |
| added = '3.14' |
| [function.PyUnicode_Equal] |
| added = '3.14' |
| [function.PyType_Freeze] |
| added = '3.14' |