]> granicus.if.org Git - python/commitdiff
Remove buffer API from stable ABI for now, see #10181.
authorMartin v. Löwis <martin@v.loewis.de>
Thu, 6 Jan 2011 19:15:47 +0000 (19:15 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Thu, 6 Jan 2011 19:15:47 +0000 (19:15 +0000)
Include/abstract.h
Include/memoryobject.h
Include/object.h
Misc/NEWS
PC/python3.def

index 53c9dc7216851a03529bd17ca152eb74ee9b9488..5f2d541e280090fe53809cc33ef8688dca965974 100644 (file)
@@ -488,6 +488,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/
 
     /* new buffer API */
 
+#ifndef Py_LIMITED_API
 #define PyObject_CheckBuffer(obj) \
     (((obj)->ob_type->tp_as_buffer != NULL) &&  \
      ((obj)->ob_type->tp_as_buffer->bf_getbuffer != NULL))
@@ -575,6 +576,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/
 
        /* Releases a Py_buffer obtained from getbuffer ParseTuple's s*.
     */
+#endif /* Py_LIMITED_API */
 
      PyAPI_FUNC(PyObject *) PyObject_Format(PyObject* obj,
                                             PyObject *format_spec);
index f763531b382601fe239758f72ff8a38cae9bbc47..62ecbd644924b31626efab61a187a70bb8d83076 100644 (file)
@@ -55,9 +55,11 @@ PyAPI_FUNC(PyObject *) PyMemoryView_GetContiguous(PyObject *base,
 
 PyAPI_FUNC(PyObject *) PyMemoryView_FromObject(PyObject *base);
 
+#ifndef Py_LIMITED_API
 PyAPI_FUNC(PyObject *) PyMemoryView_FromBuffer(Py_buffer *info);
     /* create new if bufptr is NULL 
         will be a new bytesobject in base */
+#endif
 
 
 /* The struct is declared here so that macros can work, but it shouldn't
index 78bb13bfc7e82665ccaa0b19db848e2639b5e257..690f87bd32ed96f2fc0e0b4337a9ac087aef8185 100644 (file)
@@ -143,7 +143,7 @@ typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *);
 typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *);
 typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *);
 
-
+#ifndef Py_LIMITED_API
 /* buffer interface */
 typedef struct bufferinfo {
     void *buf;
@@ -195,6 +195,7 @@ typedef void (*releasebufferproc)(PyObject *, Py_buffer *);
 #define PyBUF_WRITE 0x200
 
 /* End buffer interface */
+#endif /* Py_LIMITED_API */
 
 typedef int (*objobjproc)(PyObject *, PyObject *);
 typedef int (*visitproc)(PyObject *, void *);
index df42025e1258ef69664c8f9db1d71a579f8afa99..9baf1197c7dd260d7cde5faecfa3c9e13af388de 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -8,6 +8,8 @@ What's New in Python 3.2 Release Candidate 1
 Core and Builtins
 -----------------
 
+- Remove buffer API from stable ABI for now, see #10181.
+
 - Issue #8651: PyArg_Parse*() functions raise an OverflowError if the file
   doesn't have PY_SSIZE_T_CLEAN define and the size doesn't fit in an int
   (length bigger than 2^31-1 bytes).
index 54ad149f219314606f1a6428d18a468a41886701..582e433c1041701a6b8229fd9a0dbebae346ed0b 100644 (file)
@@ -10,13 +10,6 @@ EXPORTS
   PyBaseObject_Type=python32.PyBaseObject_Type DATA\r
   PyBool_FromLong=python32.PyBool_FromLong\r
   PyBool_Type=python32.PyBool_Type DATA\r
-  PyBuffer_FillContiguousStrides=python32.PyBuffer_FillContiguousStrides\r
-  PyBuffer_FillInfo=python32.PyBuffer_FillInfo\r
-  PyBuffer_FromContiguous=python32.PyBuffer_FromContiguous\r
-  PyBuffer_GetPointer=python32.PyBuffer_GetPointer\r
-  PyBuffer_IsContiguous=python32.PyBuffer_IsContiguous\r
-  PyBuffer_Release=python32.PyBuffer_Release\r
-  PyBuffer_ToContiguous=python32.PyBuffer_ToContiguous\r
   PyByteArrayIter_Type=python32.PyByteArrayIter_Type DATA\r
   PyByteArray_AsString=python32.PyByteArray_AsString\r
   PyByteArray_Concat=python32.PyByteArray_Concat\r
@@ -317,7 +310,6 @@ EXPORTS
   PyMem_Malloc=python32.PyMem_Malloc\r
   PyMem_Realloc=python32.PyMem_Realloc\r
   PyMemberDescr_Type=python32.PyMemberDescr_Type DATA\r
-  PyMemoryView_FromBuffer=python32.PyMemoryView_FromBuffer\r
   PyMemoryView_FromObject=python32.PyMemoryView_FromObject\r
   PyMemoryView_GetContiguous=python32.PyMemoryView_GetContiguous\r
   PyMemoryView_Type=python32.PyMemoryView_Type DATA\r
@@ -399,7 +391,6 @@ EXPORTS
   PyObject_CallObject=python32.PyObject_CallObject\r
   PyObject_CheckReadBuffer=python32.PyObject_CheckReadBuffer\r
   PyObject_ClearWeakRefs=python32.PyObject_ClearWeakRefs\r
-  PyObject_CopyData=python32.PyObject_CopyData\r
   PyObject_DelItem=python32.PyObject_DelItem\r
   PyObject_DelItemString=python32.PyObject_DelItemString\r
   PyObject_Dir=python32.PyObject_Dir\r
@@ -412,7 +403,6 @@ EXPORTS
   PyObject_GenericSetAttr=python32.PyObject_GenericSetAttr\r
   PyObject_GetAttr=python32.PyObject_GetAttr\r
   PyObject_GetAttrString=python32.PyObject_GetAttrString\r
-  PyObject_GetBuffer=python32.PyObject_GetBuffer\r
   PyObject_GetItem=python32.PyObject_GetItem\r
   PyObject_GetIter=python32.PyObject_GetIter\r
   PyObject_HasAttr=python32.PyObject_HasAttr\r