diff options
-rw-r--r-- | Doc/whatsnew/3.11.rst | 6 | ||||
-rw-r--r-- | Include/Python.h | 2 | ||||
-rw-r--r-- | Include/cpython/funcobject.h (renamed from Include/funcobject.h) | 4 | ||||
-rw-r--r-- | Makefile.pre.in | 2 | ||||
-rw-r--r-- | Misc/NEWS.d/next/C API/2021-10-15-00-11-51.bpo-35134.eX4zqy.rst | 3 | ||||
-rw-r--r-- | PCbuild/pythoncore.vcxproj | 2 | ||||
-rw-r--r-- | PCbuild/pythoncore.vcxproj.filters | 6 | ||||
-rwxr-xr-x | Tools/scripts/stable_abi.py | 1 |
8 files changed, 16 insertions, 10 deletions
diff --git a/Doc/whatsnew/3.11.rst b/Doc/whatsnew/3.11.rst index 0647774..a455683 100644 --- a/Doc/whatsnew/3.11.rst +++ b/Doc/whatsnew/3.11.rst @@ -572,6 +572,12 @@ Porting to Python 3.11 header provides functions like ``printf()`` and ``fopen()``. (Contributed by Victor Stinner in :issue:`45434`.) +* The non-limited API file ``funcobject.h`` has been moved to the + ``Include/cpython`` directory. This file must not be included directly, as it + is already included in ``Python.h``: :ref:`Include Files <api-includes>`. If + it has been included directly, consider including ``Python.h`` instead. + (Contributed by Victor Stinner in :issue:`35134`.) + Deprecated ---------- diff --git a/Include/Python.h b/Include/Python.h index dc5c9b8..e8e061b 100644 --- a/Include/Python.h +++ b/Include/Python.h @@ -60,7 +60,7 @@ #include "setobject.h" #include "methodobject.h" #include "moduleobject.h" -#include "funcobject.h" +#include "cpython/funcobject.h" #include "classobject.h" #include "fileobject.h" #include "pycapsule.h" diff --git a/Include/funcobject.h b/Include/cpython/funcobject.h index 6bc03f5..60b7022 100644 --- a/Include/funcobject.h +++ b/Include/cpython/funcobject.h @@ -1,5 +1,5 @@ - /* Function object interface */ + #ifndef Py_LIMITED_API #ifndef Py_FUNCOBJECT_H #define Py_FUNCOBJECT_H @@ -76,7 +76,6 @@ PyAPI_FUNC(int) PyFunction_SetClosure(PyObject *, PyObject *); PyAPI_FUNC(PyObject *) PyFunction_GetAnnotations(PyObject *); PyAPI_FUNC(int) PyFunction_SetAnnotations(PyObject *, PyObject *); -#ifndef Py_LIMITED_API PyAPI_FUNC(PyObject *) _PyFunction_Vectorcall( PyObject *func, PyObject *const *stack, @@ -84,7 +83,6 @@ PyAPI_FUNC(PyObject *) _PyFunction_Vectorcall( PyObject *kwnames); uint32_t _PyFunction_GetVersionForCurrentState(PyFunctionObject *func); -#endif /* Macros for direct access to these values. Type checks are *not* done, so use with care. */ diff --git a/Makefile.pre.in b/Makefile.pre.in index 30b025e..a5585c8 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -1145,7 +1145,6 @@ PYTHON_HEADERS= \ $(srcdir)/Include/fileutils.h \ $(srcdir)/Include/floatobject.h \ $(srcdir)/Include/frameobject.h \ - $(srcdir)/Include/funcobject.h \ $(srcdir)/Include/genobject.h \ $(srcdir)/Include/import.h \ $(srcdir)/Include/interpreteridobject.h \ @@ -1210,6 +1209,7 @@ PYTHON_HEADERS= \ $(srcdir)/Include/cpython/fileutils.h \ $(srcdir)/Include/cpython/floatobject.h \ $(srcdir)/Include/cpython/frameobject.h \ + $(srcdir)/Include/cpython/funcobject.h \ $(srcdir)/Include/cpython/import.h \ $(srcdir)/Include/cpython/initconfig.h \ $(srcdir)/Include/cpython/interpreteridobject.h \ diff --git a/Misc/NEWS.d/next/C API/2021-10-15-00-11-51.bpo-35134.eX4zqy.rst b/Misc/NEWS.d/next/C API/2021-10-15-00-11-51.bpo-35134.eX4zqy.rst new file mode 100644 index 0000000..fc12e02 --- /dev/null +++ b/Misc/NEWS.d/next/C API/2021-10-15-00-11-51.bpo-35134.eX4zqy.rst @@ -0,0 +1,3 @@ +Move Include/funcobject.h header file to Include/cpython/funcobject.h. +C extensions should only include the main ``<Python.h>`` header. +Patch by Victor Stinner. diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj index f688e8a..dc216e3 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -134,6 +134,7 @@ <ClInclude Include="..\Include\cpython\fileutils.h" /> <ClInclude Include="..\Include\cpython\floatobject.h" /> <ClInclude Include="..\Include\cpython\frameobject.h" /> + <ClInclude Include="..\Include\cpython\funcobject.h" /> <ClInclude Include="..\Include\cpython\import.h" /> <ClInclude Include="..\Include\cpython\initconfig.h" /> <ClInclude Include="..\Include\cpython\interpreteridobject.h" /> @@ -169,7 +170,6 @@ <ClInclude Include="..\Include\fileutils.h" /> <ClInclude Include="..\Include\floatobject.h" /> <ClInclude Include="..\Include\frameobject.h" /> - <ClInclude Include="..\Include\funcobject.h" /> <ClInclude Include="..\Include\genobject.h" /> <ClInclude Include="..\Include\import.h" /> <ClInclude Include="..\Include\internal\pycore_abstract.h" /> diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters index eb72c38..8eeb388 100644 --- a/PCbuild/pythoncore.vcxproj.filters +++ b/PCbuild/pythoncore.vcxproj.filters @@ -108,9 +108,6 @@ <ClInclude Include="..\Include\frameobject.h"> <Filter>Include</Filter> </ClInclude> - <ClInclude Include="..\Include\funcobject.h"> - <Filter>Include</Filter> - </ClInclude> <ClInclude Include="..\Include\genobject.h"> <Filter>Include</Filter> </ClInclude> @@ -456,6 +453,9 @@ <ClInclude Include="..\Include\cpython\frameobject.h"> <Filter>Include\cpython</Filter> </ClInclude> + <ClInclude Include="..\Include\cpython\funcobject.h"> + <Filter>Include\cpython</Filter> + </ClInclude> <ClInclude Include="..\Include\cpython\interpreteridobject.h"> <Filter>Include\cpython</Filter> </ClInclude> diff --git a/Tools/scripts/stable_abi.py b/Tools/scripts/stable_abi.py index 6d70340..6cb310e 100755 --- a/Tools/scripts/stable_abi.py +++ b/Tools/scripts/stable_abi.py @@ -34,7 +34,6 @@ EXCLUDED_HEADERS = { "datetime.h", "dtoa.h", "frameobject.h", - "funcobject.h", "genobject.h", "longintrepr.h", "parsetok.h", |