diff options
author | Charles Harris <charlesr.harris@gmail.com> | 2012-02-01 18:52:59 -0700 |
---|---|---|
committer | Charles Harris <charlesr.harris@gmail.com> | 2012-02-04 16:11:40 -0700 |
commit | 8886322d21acec025d668b6431d0070c89b7a90d (patch) | |
tree | d60e31975b92798d6050c7a334caebd5d97480f9 | |
parent | 8a0e7cd26ea2803b8580dcca1d1306baa1d702dc (diff) | |
download | numpy-8886322d21acec025d668b6431d0070c89b7a90d.tar.gz |
DEP: Deprecate the old_defines.h header and the macros therein.
The old_defines.h file is no longer included in ndarrayobject.h, but
instead in the npy_deprecated_api.h file. It is no longer part of the numpy
build and its deprecation is noted in the release notes.
-rw-r--r-- | doc/release/2.0.0-notes.rst | 21 | ||||
-rw-r--r-- | numpy/core/include/numpy/ndarrayobject.h | 1 | ||||
-rw-r--r-- | numpy/core/include/numpy/npy_deprecated_api.h | 7 | ||||
-rw-r--r-- | numpy/core/include/numpy/old_defines.h | 5 | ||||
-rw-r--r-- | numpy/core/setup.py | 1 |
5 files changed, 28 insertions, 7 deletions
diff --git a/doc/release/2.0.0-notes.rst b/doc/release/2.0.0-notes.rst index 2c9912f33..3f8b8bd0b 100644 --- a/doc/release/2.0.0-notes.rst +++ b/doc/release/2.0.0-notes.rst @@ -161,15 +161,26 @@ The following macros now require trailing semicolons:: Deprecations ============ +General +------- + Specifying a custom string formatter with a `_format` array attribute is deprecated. The new `formatter` keyword in ``numpy.set_printoptions`` or ``numpy.array2string`` can be used instead. -In the C API, direct access to the fields of PyArrayObject* has been -deprecated. Direct access has been recommended against for many releases, but -now you can test your code against the deprecated C API by #defining +The deprecated imports in the polynomial package have been removed. + +C-API +----- + +Direct access to the fields of PyArrayObject* has been +deprecated. Direct access has been recommended against for many releases. + +The macros in old_defines.h are deprecated and will be removed in the next +major release. The sed script tools/replace_old_macros.sed can be used to +replace these macros with the newer versions. + +You can test your code against the deprecated C API by #defining NPY_NO_DEPRECATED_API before including any NumPy headers. Expect something similar for PyArray_Descr* and other core objects in the future as preparation for NumPy 2.0. - -The deprecated imports in the polynomial package have been removed. diff --git a/numpy/core/include/numpy/ndarrayobject.h b/numpy/core/include/numpy/ndarrayobject.h index 03dfcd9cd..74943d535 100644 --- a/numpy/core/include/numpy/ndarrayobject.h +++ b/numpy/core/include/numpy/ndarrayobject.h @@ -214,7 +214,6 @@ PyArray_XDECREF_ERR(PyArrayObject *arr) PyArray_FromDimsAndDataAndDescr(nd, d, PyArray_DescrFromType(type), \ data) -#include "old_defines.h" /* Check to see if this key in the dictionary is the "title" diff --git a/numpy/core/include/numpy/npy_deprecated_api.h b/numpy/core/include/numpy/npy_deprecated_api.h index a268f504a..29bdd95c4 100644 --- a/numpy/core/include/numpy/npy_deprecated_api.h +++ b/numpy/core/include/numpy/npy_deprecated_api.h @@ -95,4 +95,11 @@ */ #define FORTRAN_IF PyArray_FORTRAN_IF +/* + * The macros in old_defines.h are Deprecated as of NumPy 1.7 and will be + * removed in the next major release. + */ +#include "old_defines.h" + + #endif diff --git a/numpy/core/include/numpy/old_defines.h b/numpy/core/include/numpy/old_defines.h index 1607313b7..444fdc33b 100644 --- a/numpy/core/include/numpy/old_defines.h +++ b/numpy/core/include/numpy/old_defines.h @@ -1,3 +1,8 @@ +/* This header is deprecated as of NumPy 1.7 */ +#ifdef NPY_NO_DEPRECATED_API +#error The header "old_defines.h" is deprecated as of NumPy 1.7. +#endif + #define NDARRAY_VERSION NPY_VERSION #define PyArray_MIN_BUFSIZE NPY_MIN_BUFSIZE diff --git a/numpy/core/setup.py b/numpy/core/setup.py index e8f40e806..05872a552 100644 --- a/numpy/core/setup.py +++ b/numpy/core/setup.py @@ -733,7 +733,6 @@ def configuration(parent_package='',top_path=None): join('include', 'numpy', 'arrayobject.h'), join('include', 'numpy', '_neighborhood_iterator_imp.h'), join('include', 'numpy', 'npy_endian.h'), - join('include', 'numpy', 'old_defines.h'), join('include', 'numpy', 'arrayscalars.h'), join('include', 'numpy', 'noprefix.h'), join('include', 'numpy', 'npy_interrupt.h'), |