Add structseq support.

Incorporate 3149 support.
Mark as final.
This commit is contained in:
Martin v. Löwis 2010-12-04 16:42:07 +00:00
parent 0fd0f4986d
commit b86794e399
1 changed files with 13 additions and 1 deletions

View File

@ -3,7 +3,7 @@ Title: Defining a Stable ABI
Version: $Revision$ Version: $Revision$
Last-Modified: $Date$ Last-Modified: $Date$
Author: Martin v. Löwis <martin@v.loewis.de> Author: Martin v. Löwis <martin@v.loewis.de>
Status: Draft Status: Final
Type: Standards Track Type: Standards Track
Content-Type: text/x-rst Content-Type: text/x-rst
Created: 17-May-2009 Created: 17-May-2009
@ -107,6 +107,8 @@ applications:
- PyModuleDefBase (ob_base, m_init, m_index, m_copy) - PyModuleDefBase (ob_base, m_init, m_index, m_copy)
- PyModuleDef (m_base, m_name, m_doc, m_size, m_methods, m_traverse, - PyModuleDef (m_base, m_name, m_doc, m_size, m_methods, m_traverse,
m_clear, m_free) m_clear, m_free)
- PyStructSequence_Field (name, doc)
- PyStructSequence_Desc (name, doc, fields, sequence)
- PyType_Slot (see below) - PyType_Slot (see below)
- PyType_Spec (see below) - PyType_Spec (see below)
@ -280,6 +282,9 @@ details are not available:
PyInterpreterState_ThreadHead, PyThreadState_Next PyInterpreterState_ThreadHead, PyThreadState_Next
- Py_SubversionRevision, Py_SubversionShortBranch - Py_SubversionRevision, Py_SubversionShortBranch
PyStructSequence_InitType is not available, as it requires
the caller to provide a static type object.
Py_FatalError will be moved from pydebug.h into some other Py_FatalError will be moved from pydebug.h into some other
header file (e.g. pyerrors.h). header file (e.g. pyerrors.h).
@ -332,6 +337,13 @@ version check for the API version will accept either 3 or the current
PYTHON_API_VERSION as conforming. If Python is compiled as a shared PYTHON_API_VERSION as conforming. If Python is compiled as a shared
library, it is installed as both libpython3.so, and libpython3.y.so; library, it is installed as both libpython3.so, and libpython3.y.so;
applications conforming to this PEP should then link to the former. applications conforming to this PEP should then link to the former.
The ABI version is symbolically available as ``PYTHON_ABI_VERSION``.
Also on Unix, the PEP 3149 tag abi<PYTHON_ABI_VERSION> is accepted
in file names of extension modules. No checking is performed that
files named in this way are actually restricted to the limited API,
and no support for building such files will be added to distutils
due to the distutils code freeze.
Implementation Strategy Implementation Strategy
======================= =======================