mirror of
https://github.com/python/cpython
synced 2024-09-05 16:38:56 +00:00
![Victor Stinner](/assets/img/avatar_default.png)
* Add PyDict_GetItemRef() and PyDict_GetItemStringRef() functions. Add these functions to the stable ABI version 3.13. * Add unit tests on the PyDict C API in test_capi.
2453 lines
61 KiB
TOML
2453 lines
61 KiB
TOML
# 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 initalization, 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'
|
|
|
|
|
|
# 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'
|
|
abi_only = true
|
|
[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'
|
|
abi_only = true
|
|
[function.PySys_SetArgvEx]
|
|
added = '3.2'
|
|
abi_only = true
|
|
[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'
|
|
abi_only = true
|
|
[function.Py_SetPythonHome]
|
|
added = '3.2'
|
|
abi_only = true
|
|
[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'
|