Releases: numpy/numpy
v1.16.1
==========================
NumPy 1.16.1 Release Notes
The NumPy 1.16.1 release fixes bugs reported against the 1.16.0 release, and
also backports several enhancements from master that seem appropriate for a
release series that is the last to support Python 2.7. The wheels on PyPI are
linked with OpenBLAS v0.3.4+, which should fix the known threading issues
found in previous OpenBLAS versions.
Downstream developers building this release should use Cython >= 0.29.2 and, if
using OpenBLAS, OpenBLAS > v0.3.4.
If you are installing using pip, you may encounter a problem with older
installed versions of NumPy that pip did not delete becoming mixed with the
current version, resulting in an ImportError
. That problem is particularly
common on Debian derived distributions due to a modified pip. The fix is to
make sure all previous NumPy versions installed by pip have been removed. See
#12736 <https://github.com/numpy/numpy/issues/12736>
__ for discussion of the
issue. Note that previously this problem resulted in an AttributeError
.
Contributors
A total of 16 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Antoine Pitrou
- Arcesio Castaneda Medina +
- Charles Harris
- Chris Markiewicz +
- Christoph Gohlke
- Christopher J. Markiewicz +
- Daniel Hrisca +
- EelcoPeacs +
- Eric Wieser
- Kevin Sheppard
- Matti Picus
- OBATA Akio +
- Ralf Gommers
- Sebastian Berg
- Stephan Hoyer
- Tyler Reddy
Enhancements
- #12767: ENH: add mm->q floordiv
- #12768: ENH: port np.core.overrides to C for speed
- #12769: ENH: Add np.ctypeslib.as_ctypes_type(dtype), improve
np.ctypeslib.as_ctypes
- #12773: ENH: add "max difference" messages to np.testing.assert_array_equal...
- #12820: ENH: Add mm->qm divmod
- #12890: ENH: add _dtype_ctype to namespace for freeze analysis
Compatibility notes
-
The changed error message emited by array comparison testing functions may
affect doctests. See below for detail. -
Casting from double and single denormals to float16 has been corrected. In
some rare cases, this may result in results being rounded up instead of down,
changing the last bit (ULP) of the result.
New Features
divmod operation is now supported for two timedelta64
operands
The divmod operator now handles two np.timedelta64
operands, with
type signature mm->qm
.
Improvements
Further improvements to ctypes
support in np.ctypeslib
A new np.ctypeslib.as_ctypes_type
function has been added, which can be
used to converts a dtype
into a best-guess ctypes
type. Thanks to this
new function, np.ctypeslib.as_ctypes
now supports a much wider range of
array types, including structures, booleans, and integers of non-native
endianness.
Array comparison assertions include maximum differences
Error messages from array comparison tests such as
np.testing.assert_allclose
now include "max absolute difference" and
"max relative difference," in addition to the previous "mismatch" percentage.
This information makes it easier to update absolute and relative error
tolerances.
Changes
timedelta64 % 0
behavior adjusted to return NaT
The modulus operation with two np.timedelta64
operands now returns
NaT
in the case of division by zero, rather than returning zero
Checksums
MD5
456aae0a43311da1570a53baef7f5620 numpy-1.16.1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
8f39da654cd27a96877955a2fbf3883f numpy-1.16.1-cp27-cp27m-manylinux1_i686.whl
add6fcaf9b5007dca2fc966b918d585e numpy-1.16.1-cp27-cp27m-manylinux1_x86_64.whl
b2193c7af769169229eef8d2371929c2 numpy-1.16.1-cp27-cp27m-win32.whl
3a7eba56bcebc52b223d63ab4b9bf029 numpy-1.16.1-cp27-cp27m-win_amd64.whl
3bc676163ce4d526c8305bc889f0594d numpy-1.16.1-cp27-cp27mu-manylinux1_i686.whl
55ccd6d343be1e16e70159714ac74848 numpy-1.16.1-cp27-cp27mu-manylinux1_x86_64.whl
15bebbeddc5924243a010680e184b6e8 numpy-1.16.1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
86aacbea051b7542a8bd3486d2fa79cd numpy-1.16.1-cp35-cp35m-manylinux1_i686.whl
486ce91fd66ec19044d8faa7d00e619b numpy-1.16.1-cp35-cp35m-manylinux1_x86_64.whl
f2665475de0378467d88e6d80ac47f09 numpy-1.16.1-cp35-cp35m-win32.whl
42b9d99bf4b03e3e9ae7aee8cbdff97c numpy-1.16.1-cp35-cp35m-win_amd64.whl
269c80fde767b2b65abec775171aebed numpy-1.16.1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
a9561d8a38ee7d52126dfe779429036d numpy-1.16.1-cp36-cp36m-manylinux1_i686.whl
2d146e75063ce8aaa255ea06d6647fa2 numpy-1.16.1-cp36-cp36m-manylinux1_x86_64.whl
3a422881207202055c7530d3c4a63cc0 numpy-1.16.1-cp36-cp36m-win32.whl
641af9183978922d4eb610c0df1abb4a numpy-1.16.1-cp36-cp36m-win_amd64.whl
8eca0834ffce217b61633a2ba16f9e98 numpy-1.16.1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
df387b8e8ee398f2a6a46b18981ce7e3 numpy-1.16.1-cp37-cp37m-manylinux1_i686.whl
daaac731bf53b6f90bf381e30c0b0e35 numpy-1.16.1-cp37-cp37m-manylinux1_x86_64.whl
7443f622e549bf116ca561c1db6a4491 numpy-1.16.1-cp37-cp37m-win32.whl
18b7d994de469d38e26c75c27898fa4f numpy-1.16.1-cp37-cp37m-win_amd64.whl
ae2e65a2f2d7c80a3264fb038157895c numpy-1.16.1.tar.gz
dafda51934f645d888866f98424521ae numpy-1.16.1.zip
SHA256
e9c88f173d31909d881a60f08a8494e63f1aff2a4052476b24d4f50e82c47e24 numpy-1.16.1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
69c152f7c11bf3b4fc11bc4cc62eb0334371c0db6844ebace43b7c815b602805 numpy-1.16.1-cp27-cp27m-manylinux1_i686.whl
ae602ba425fb2b074e16d125cdce4f0194903da935b2e7fe284ebecca6d92e76 numpy-1.16.1-cp27-cp27m-manylinux1_x86_64.whl
4341a39fc085f31a583be505eabf00e17c619b469fef78dc7e8241385bfddaa4 numpy-1.16.1-cp27-cp27m-win32.whl
a863957192855c4c57f60a75a1ac06ce5362ad18506d362dd807e194b4baf3ce numpy-1.16.1-cp27-cp27m-win_amd64.whl
62784b35df7de7ca4d0d81c5b6af5983f48c5cdef32fc3635b445674e56e3266 numpy-1.16.1-cp27-cp27mu-manylinux1_i686.whl
6ccfdcefd287f252cf1ea7a3f1656070da330c4a5658e43ad223269165cdf977 numpy-1.16.1-cp27-cp27mu-manylinux1_x86_64.whl
8bbee788d82c0ac656536de70e817af09b7694f5326b0ef08e5c1014fcb96bb3 numpy-1.16.1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
f69dde0c5a137d887676a8129373e44366055cf19d1b434e853310c7a1e68f93 numpy-1.16.1-cp35-cp35m-manylinux1_i686.whl
575cefd28d3e0da85b0864506ae26b06483ee4a906e308be5a7ad11083f9d757 numpy-1.16.1-cp35-cp35m-manylinux1_x86_64.whl
45080f065dcaa573ebecbfe13cdd86e8c0a68c4e999aa06bd365374ea7137706 numpy-1.16.1-cp35-cp35m-win32.whl
34dd4922aab246c39bf5df03ca653d6265e65971deca6784c956bf356bca6197 numpy-1.16.1-cp35-cp35m-win_amd64.whl
c2c39d69266621dd7464e2bb740d6eb5abc64ddc339cc97aa669f3bb4d75c103 numpy-1.16.1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
392e2ea22b41a22c0289a88053204b616181288162ba78e6823e1760309d5277 numpy-1.16.1-cp36-cp36m-manylinux1_i686.whl
7298fbd73c0b3eff1d53dc9b9bdb7add8797bb55eeee38c8ccd7906755ba28af numpy-1.16.1-cp36-cp36m-manylinux1_x86_64.whl
384e2dfa03da7c8d54f8f934f61b6a5e4e1ebb56a65b287567629d6c14578003 numpy-1.16.1-cp36-cp36m-win32.whl
2b0cca1049bd39d1879fa4d598624cafe82d35529c72de1b3d528d68031cdd95 numpy-1.16.1-cp36-cp36m-win_amd64.whl
b13faa258b20fa66d29011f99fdf498641ca74a0a6d9266bc27d83c70fea4a6a numpy-1.16.1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
485cb1eb4c9962f4cd042fed9424482ec1d83fee5dc2ef3f2552ac47852cb259 numpy-1.16.1-cp37-cp37m-manylinux1_i686.whl
0cdbbaa30ae69281b18dd995d3079c4e552ad6d5426977f66b9a2a95f11f552a numpy-1.16.1-cp37-cp37m-manylinux1_x86_64.whl
79463d918d1bf3aeb9186e3df17ddb0baca443f41371df422f99ee94f4f2bbfe numpy-1.16.1-cp37-cp37m-win32.whl
f1a29267ac29fff0913de0f11f3a9edfcd3f39595f467026c29376fad243ebe3 numpy-1.16.1-cp37-cp37m-win_amd64.whl
748369f4d5f60caf93e1d86cb22ad7fc5f82693f18804638f22bc55df27792ec numpy-1.16.1.tar.gz
31d3fe5b673e99d33d70cfee2ea8fe8dccd60f265c3ed990873a88647e3dd288 numpy-1.16.1.zip
v1.16.0
==========================
NumPy 1.16.0 Release Notes
This NumPy release is the last one to support Python 2.7 and will be maintained
as a long term release with bug fixes until 2020. Support for Python 3.4 been
dropped, the supported Python versions are 2.7 and 3.5-3.7. The wheels on PyPI
are linked with OpenBLAS v0.3.4+, which should fix the known threading issues
found in previous OpenBLAS versions.
Downstream developers building this release should use Cython >= 0.29 and, if
using OpenBLAS, OpenBLAS > v0.3.4.
This release has seen a lot of refactoring and features many bug fixes, improved
code organization, and better cross platform compatibility. Not all of these
improvements will be visible to users, but they should help make maintenance
easier going forward.
Highlights
-
Experimental support for overriding numpy functions,
see__array_function__
below. -
The
matmul
function is now a ufunc. This provides better
performance and allows overriding with__array_ufunc__
. -
Improved support for the ARM and POWER architectures.
-
Improved support for AIX and PyPy.
-
Improved interop with ctypes.
-
Improved support for PEP 3118.
New functions
-
New functions added to the
numpy.lib.recfuntions
module to ease the
structured assignment changes:assign_fields_by_name
structured_to_unstructured
unstructured_to_structured
apply_along_fields
require_fields
See the user guide at https://docs.scipy.org/doc/numpy/user/basics.rec.html
for more info.
New deprecations
-
The type dictionaries
numpy.core.typeNA
andnumpy.core.sctypeNA
are
deprecated. They were buggy and not documented and will be removed in the
1.18 release. Usenumpy.sctypeDict
instead. -
The
numpy.asscalar
function is deprecated. It is an alias to the more
powerfulnumpy.ndarray.item
, not tested, and fails for scalars. -
The
numpy.set_array_ops
andnumpy.get_array_ops
functions are deprecated.
As part ofNEP 15
, they have been deprecated along with the C-API functions
:c:func:PyArray_SetNumericOps
and :c:func:PyArray_GetNumericOps
. Users
who wish to override the inner loop functions in built-in ufuncs should use
:c:func:PyUFunc_ReplaceLoopBySignature
. -
The
numpy.unravel_index
keyword argumentdims
is deprecated, use
shape
instead. -
The
numpy.histogram
normed
argument is deprecated. It was deprecated
previously, but no warning was issued. -
The
positive
operator (+
) applied to non-numerical arrays is
deprecated. See below for details. -
Passing an iterator to the stack functions is deprecated
Expired deprecations
-
NaT comparisons now return
False
without a warning, finishing a
deprecation cycle begun in NumPy 1.11. -
np.lib.function_base.unique
was removed, finishing a deprecation cycle
begun in NumPy 1.4. Usenumpy.unique
instead. -
multi-field indexing now returns views instead of copies, finishing a
deprecation cycle begun in NumPy 1.7. The change was previously attempted in
NumPy 1.14 but reverted until now. -
np.PackageLoader
andnp.pkgload
have been removed. These were
deprecated in 1.10, had no tests, and seem to no longer work in 1.15.
Future changes
- NumPy 1.17 will drop support for Python 2.7.
Compatibility notes
f2py script on Windows
On Windows, the installed script for running f2py is now an .exe
file
rather than a *.py
file and should be run from the command line as f2py
whenever the Scripts
directory is in the path. Running f2py
as a module
python -m numpy.f2py [...]
will work without path modification in any
version of NumPy.
NaT comparisons
Consistent with the behavior of NaN, all comparisons other than inequality
checks with datetime64 or timedelta64 NaT ("not-a-time") values now always
return False
, and inequality checks with NaT now always return True
.
This includes comparisons beteween NaT values. For compatibility with the
old behavior, use np.isnat
to explicitly check for NaT or convert
datetime64/timedelta64 arrays with .astype(np.int64)
before making
comparisons.
complex64/128 alignment has changed
The memory alignment of complex types is now the same as a C-struct composed of
two floating point values, while before it was equal to the size of the type.
For many users (for instance on x64/unix/gcc) this means that complex64 is now
4-byte aligned instead of 8-byte aligned. An important consequence is that
aligned structured dtypes may now have a different size. For instance,
np.dtype('c8,u1', align=True)
used to have an itemsize of 16 (on x64/gcc)
but now it is 12.
More in detail, the complex64 type now has the same alignment as a C-struct
struct {float r, i;}
, according to the compiler used to compile numpy, and
similarly for the complex128 and complex256 types.
nd_grid len removal
len(np.mgrid)
and len(np.ogrid)
are now considered nonsensical
and raise a TypeError
.
np.unravel_index
now accepts shape
keyword argument
Previously, only the dims
keyword argument was accepted
for specification of the shape of the array to be used
for unraveling. dims
remains supported, but is now deprecated.
multi-field views return a view instead of a copy
Indexing a structured array with multiple fields, e.g., arr[['f1', 'f3']]
,
returns a view into the original array instead of a copy. The returned view
will often have extra padding bytes corresponding to intervening fields in the
original array, unlike before, which will affect code such as
arr[['f1', 'f3']].view('float64')
. This change has been planned since numpy
1.7. Operations hitting this path have emitted FutureWarnings
since then.
Additional FutureWarnings
about this change were added in 1.12.
To help users update their code to account for these changes, a number of
functions have been added to the numpy.lib.recfunctions
module which
safely allow such operations. For instance, the code above can be replaced
with structured_to_unstructured(arr[['f1', 'f3']], dtype='float64')
.
See the "accessing multiple fields" section of the
user guide <https://docs.scipy.org/doc/numpy/user/basics.rec.html#accessing-multiple-fields>
__.
C API changes
The :c:data:NPY_API_VERSION
was incremented to 0x0000D, due to the addition
of:
- :c:member:
PyUFuncObject.core_dim_flags
- :c:member:
PyUFuncObject.core_dim_sizes
- :c:member:
PyUFuncObject.identity_value
- :c:function:
PyUFunc_FromFuncAndDataAndSignatureAndIdentity
New Features
Integrated squared error (ISE) estimator added to histogram
This method (bins='stone'
) for optimizing the bin number is a
generalization of the Scott's rule. The Scott's rule assumes the distribution
is approximately Normal, while the ISE_ is a non-parametric method based on
cross-validation.
.. _ISE: https://en.wikipedia.org/wiki/Histogram#Minimizing_cross-validation_estimated_squared_error
max_rows
keyword added for np.loadtxt
New keyword max_rows
in numpy.loadtxt
sets the maximum rows of the
content to be read after skiprows
, as in numpy.genfromtxt
.
modulus operator support added for np.timedelta64
operands
The modulus (remainder) operator is now supported for two operands
of type np.timedelta64
. The operands may have different units
and the return value will match the type of the operands.
Improvements
no-copy pickling of numpy arrays
Up to protocol 4, numpy array pickling created 2 spurious copies of the data
being serialized. With pickle protocol 5, and the PickleBuffer
API, a
large variety of numpy arrays can now be serialized without any copy using
out-of-band buffers, and with one less copy using in-band buffers. This
results, for large arrays, in an up to 66% drop in peak memory usage.
build shell independence
NumPy builds should no longer interact with the host machine
shell directly. exec_command
has been replaced with
subprocess.check_output
where appropriate.
np.polynomial.Polynomial
classes render in LaTeX in Jupyter notebooks
When used in a front-end that supports it, Polynomial
instances are now
rendered through LaTeX. The current format is experimental, and is subject to
change.
randint
and choice
now work on empty distributions
Even when no elements needed to be drawn, np.random.randint
and
np.random.choice
raised an error when the arguments described an empty
distribution. This has been fixed so that e.g.
np.random.choice([], 0) == np.array([], dtype=float64)
.
linalg.lstsq
, linalg.qr
, and linalg.svd
now work with empty arrays
Previously, a LinAlgError
would be raised when an empty matrix/empty
matrices (with zero rows and/or columns) is/are passed in. Now outputs of
appropriate shapes are returned.
Chain exceptions to give better error messages for invalid PEP3118 format strings
---------------------...
v1.16.0rc2
==========================
NumPy 1.16.0 Release Notes
This NumPy release is the last one to support Python 2.7 and will be maintained
as a long term release with bug fixes until 2020. Support for Python 3.4 been
dropped, the supported Python versions are 2.7 and 3.5-3.7. The wheels on PyPI
are linked with OpenBLAS v0.3.4+, which should fix the known threading issues
found in previous OpenBLAS versions.
Downstream developers building this release should use Cython >= 0.29 and, if
using OpenBLAS, OpenBLAS > v0.3.4.
This release has seen a lot of refactoring and features many bug fixes, improved
code organization, and better cross platform compatibility. Not all of these
improvements will be visible to users, but they should help make maintenance
easier going forward.
Highlights
-
Experimental support for overriding numpy functions,
see__array_function__
below. -
The
matmul
function is now a ufunc. This provides better
performance and allows overriding with__array_ufunc__
. -
Improved support for the ARM and POWER architectures.
-
Improved support for AIX and PyPy.
-
Improved interop with ctypes.
-
Improved support for PEP 3118.
New functions
-
New functions added to the
numpy.lib.recfuntions
module to ease the
structured assignment changes:assign_fields_by_name
structured_to_unstructured
unstructured_to_structured
apply_along_fields
require_fields
See the user guide at https://docs.scipy.org/doc/numpy/user/basics.rec.html
for more info.
New deprecations
-
The type dictionaries
numpy.core.typeNA
andnumpy.core.sctypeNA
are
deprecated. They were buggy and not documented and will be removed in the
1.18 release. Usenumpy.sctypeDict
instead. -
The
numpy.asscalar
function is deprecated. It is an alias to the more
powerfulnumpy.ndarray.item
, not tested, and fails for scalars. -
The
numpy.set_array_ops
andnumpy.get_array_ops
functions are deprecated.
As part ofNEP 15
, they have been deprecated along with the C-API functions
:c:func:PyArray_SetNumericOps
and :c:func:PyArray_GetNumericOps
. Users
who wish to override the inner loop functions in built-in ufuncs should use
:c:func:PyUFunc_ReplaceLoopBySignature
. -
The
numpy.unravel_index
keyword argumentdims
is deprecated, use
shape
instead. -
The
numpy.histogram
normed
argument is deprecated. It was deprecated
previously, but no warning was issued. -
The
positive
operator (+
) applied to non-numerical arrays is
deprecated. See below for details. -
Passing an iterator to the stack functions is deprecated
Expired deprecations
-
NaT comparisons now return
False
without a warning, finishing a
deprecation cycle begun in NumPy 1.11. -
np.lib.function_base.unique
was removed, finishing a deprecation cycle
begun in NumPy 1.4. Usenumpy.unique
instead. -
multi-field indexing now returns views instead of copies, finishing a
deprecation cycle begun in NumPy 1.7. The change was previously attempted in
NumPy 1.14 but reverted until now. -
np.PackageLoader
andnp.pkgload
have been removed. These were
deprecated in 1.10, had no tests, and seem to no longer work in 1.15.
Future changes
- NumPy 1.17 will drop support for Python 2.7.
Compatibility notes
f2py script on Windows
On Windows, the installed script for running f2py is now an .exe
file
rather than a *.py
file and should be run from the command line as f2py
whenever the Scripts
directory is in the path. Running f2py
as a module
python -m numpy.f2py [...]
will work without path modification in any
version of NumPy.
NaT comparisons
Consistent with the behavior of NaN, all comparisons other than inequality
checks with datetime64 or timedelta64 NaT ("not-a-time") values now always
return False
, and inequality checks with NaT now always return True
.
This includes comparisons beteween NaT values. For compatibility with the
old behavior, use np.isnat
to explicitly check for NaT or convert
datetime64/timedelta64 arrays with .astype(np.int64)
before making
comparisons.
complex64/128 alignment has changed
The memory alignment of complex types is now the same as a C-struct composed of
two floating point values, while before it was equal to the size of the type.
For many users (for instance on x64/unix/gcc) this means that complex64 is now
4-byte aligned instead of 8-byte aligned. An important consequence is that
aligned structured dtypes may now have a different size. For instance,
np.dtype('c8,u1', align=True)
used to have an itemsize of 16 (on x64/gcc)
but now it is 12.
More in detail, the complex64 type now has the same alignment as a C-struct
struct {float r, i;}
, according to the compiler used to compile numpy, and
similarly for the complex128 and complex256 types.
nd_grid len removal
len(np.mgrid)
and len(np.ogrid)
are now considered nonsensical
and raise a TypeError
.
np.unravel_index
now accepts shape
keyword argument
Previously, only the dims
keyword argument was accepted
for specification of the shape of the array to be used
for unraveling. dims
remains supported, but is now deprecated.
multi-field views return a view instead of a copy
Indexing a structured array with multiple fields, e.g., arr[['f1', 'f3']]
,
returns a view into the original array instead of a copy. The returned view
will often have extra padding bytes corresponding to intervening fields in the
original array, unlike before, which will affect code such as
arr[['f1', 'f3']].view('float64')
. This change has been planned since numpy
1.7. Operations hitting this path have emitted FutureWarnings
since then.
Additional FutureWarnings
about this change were added in 1.12.
To help users update their code to account for these changes, a number of
functions have been added to the numpy.lib.recfunctions
module which
safely allow such operations. For instance, the code above can be replaced
with structured_to_unstructured(arr[['f1', 'f3']], dtype='float64')
.
See the "accessing multiple fields" section of the
user guide <https://docs.scipy.org/doc/numpy/user/basics.rec.html#accessing-multiple-fields>
__.
C API changes
The :c:data:NPY_API_VERSION
was incremented to 0x0000D, due to the addition
of:
- :c:member:
PyUFuncObject.core_dim_flags
- :c:member:
PyUFuncObject.core_dim_sizes
- :c:member:
PyUFuncObject.identity_value
- :c:function:
PyUFunc_FromFuncAndDataAndSignatureAndIdentity
New Features
Integrated squared error (ISE) estimator added to histogram
This method (bins='stone'
) for optimizing the bin number is a
generalization of the Scott's rule. The Scott's rule assumes the distribution
is approximately Normal, while the ISE_ is a non-parametric method based on
cross-validation.
.. _ISE: https://en.wikipedia.org/wiki/Histogram#Minimizing_cross-validation_estimated_squared_error
max_rows
keyword added for np.loadtxt
New keyword max_rows
in numpy.loadtxt
sets the maximum rows of the
content to be read after skiprows
, as in numpy.genfromtxt
.
modulus operator support added for np.timedelta64
operands
The modulus (remainder) operator is now supported for two operands
of type np.timedelta64
. The operands may have different units
and the return value will match the type of the operands.
Improvements
no-copy pickling of numpy arrays
Up to protocol 4, numpy array pickling created 2 spurious copies of the data
being serialized. With pickle protocol 5, and the PickleBuffer
API, a
large variety of numpy arrays can now be serialized without any copy using
out-of-band buffers, and with one less copy using in-band buffers. This
results, for large arrays, in an up to 66% drop in peak memory usage.
build shell independence
NumPy builds should no longer interact with the host machine
shell directly. exec_command
has been replaced with
subprocess.check_output
where appropriate.
np.polynomial.Polynomial
classes render in LaTeX in Jupyter notebooks
When used in a front-end that supports it, Polynomial
instances are now
rendered through LaTeX. The current format is experimental, and is subject to
change.
randint
and choice
now work on empty distributions
Even when no elements needed to be drawn, np.random.randint
and
np.random.choice
raised an error when the arguments described an empty
distribution. This has been fixed so that e.g.
np.random.choice([], 0) == np.array([], dtype=float64)
.
linalg.lstsq
, linalg.qr
, and linalg.svd
now work with empty arrays
Previously, a LinAlgError
would be raised when an empty matrix/empty
matrices (with zero rows and/or columns) is/are passed in. Now outputs of
appropriate shapes are returned.
Chain exceptions to give better error messages for invalid PEP3118 format strings
---------------------...
v1.16.0rc1
==========================
NumPy 1.16.0 Release Notes
This NumPy release is the last one to support Python 2.7 and will be maintained
as a long term release with bug fixes until 2020. Support for Python 3.4 been
dropped, the supported Python versions are 2.7 and 3.5-3.7. The wheels on PyPI
are linked with OpenBLAS v0.3.4+, which should fix the known threading issues
found in previous OpenBLAS versions.
Downstream developers building this release should use Cython >= 0.29 and, if
using OpenBLAS, OpenBLAS > v0.3.4.
This release has seen a lot of refactoring and features many bug fixes, improved
code organization, and better cross platform compatibility. Not all of these
improvements will be visible to users, but they should help make maintenance
easier going forward.
Highlights
-
Experimental support for overriding numpy functions,
see__array_function__
below. -
The
matmul
function is now a ufunc. This provides better
performance and allows overriding with__array_ufunc__
. -
Improved support for the ARM and POWER architectures.
-
Improved support for AIX and PyPy.
-
Improved interop with ctypes.
-
Improved support for PEP 3118.
New functions
-
New functions added to the
numpy.lib.recfuntions
module to ease the
structured assignment changes:assign_fields_by_name
structured_to_unstructured
unstructured_to_structured
apply_along_fields
require_fields
See the user guide at https://docs.scipy.org/doc/numpy/user/basics.rec.html
for more info.
New deprecations
-
The type dictionaries
numpy.core.typeNA
andnumpy.core.sctypeNA
are
deprecated. They were buggy and not documented and will be removed in the
1.18 release. Usenumpy.sctypeDict
instead. -
The
numpy.asscalar
function is deprecated. It is an alias to the more
powerfulnumpy.ndarray.item
, not tested, and fails for scalars. -
The
numpy.set_array_ops
andnumpy.get_array_ops
functions are deprecated.
As part ofNEP 15
, they have been deprecated along with the C-API functions
:c:func:PyArray_SetNumericOps
and :c:func:PyArray_GetNumericOps
. Users
who wish to override the inner loop functions in built-in ufuncs should use
:c:func:PyUFunc_ReplaceLoopBySignature
. -
The
numpy.unravel_index
keyword argumentdims
is deprecated, use
shape
instead. -
The
numpy.histogram
normed
argument is deprecated. It was deprecated
previously, but no warning was issued. -
The
positive
operator (+
) applied to non-numerical arrays is
deprecated. See below for details. -
Passing an iterator to the stack functions is deprecated
Expired deprecations
-
NaT comparisons now return
False
without a warning, finishing a
deprecation cycle begun in NumPy 1.11. -
np.lib.function_base.unique
was removed, finishing a deprecation cycle
begun in NumPy 1.4. Usenumpy.unique
instead. -
multi-field indexing now returns views instead of copies, finishing a
deprecation cycle begun in NumPy 1.7. The change was previously attempted in
NumPy 1.14 but reverted until now. -
np.PackageLoader
andnp.pkgload
have been removed. These were
deprecated in 1.10, had no tests, and seem to no longer work in 1.15.
Future changes
- NumPy 1.17 will drop support for Python 2.7.
Compatibility notes
f2py script on Windows
On Windows, the installed script for running f2py is now an .exe
file
rather than a *.py
file and should be run from the command line as f2py
whenever the Scripts
directory is in the path. Running f2py
as a module
python -m numpy.f2py [...]
will work without path modification in any
version of NumPy.
NaT comparisons
Consistent with the behavior of NaN, all comparisons other than inequality
checks with datetime64 or timedelta64 NaT ("not-a-time") values now always
return False
, and inequality checks with NaT now always return True
.
This includes comparisons beteween NaT values. For compatibility with the
old behavior, use np.isnat
to explicitly check for NaT or convert
datetime64/timedelta64 arrays with .astype(np.int64)
before making
comparisons.
complex64/128 alignment has changed
The memory alignment of complex types is now the same as a C-struct composed of
two floating point values, while before it was equal to the size of the type.
For many users (for instance on x64/unix/gcc) this means that complex64 is now
4-byte aligned instead of 8-byte aligned. An important consequence is that
aligned structured dtypes may now have a different size. For instance,
np.dtype('c8,u1', align=True)
used to have an itemsize of 16 (on x64/gcc)
but now it is 12.
More in detail, the complex64 type now has the same alignment as a C-struct
struct {float r, i;}
, according to the compiler used to compile numpy, and
similarly for the complex128 and complex256 types.
nd_grid len removal
len(np.mgrid)
and len(np.ogrid)
are now considered nonsensical
and raise a TypeError
.
np.unravel_index
now accepts shape
keyword argument
Previously, only the dims
keyword argument was accepted
for specification of the shape of the array to be used
for unraveling. dims
remains supported, but is now deprecated.
multi-field views return a view instead of a copy
Indexing a structured array with multiple fields, e.g., arr[['f1', 'f3']]
,
returns a view into the original array instead of a copy. The returned view
will often have extra padding bytes corresponding to intervening fields in the
original array, unlike before, which will affect code such as
arr[['f1', 'f3']].view('float64')
. This change has been planned since numpy
1.7. Operations hitting this path have emitted FutureWarnings
since then.
Additional FutureWarnings
about this change were added in 1.12.
To help users update their code to account for these changes, a number of
functions have been added to the numpy.lib.recfunctions
module which
safely allow such operations. For instance, the code above can be replaced
with structured_to_unstructured(arr[['f1', 'f3']], dtype='float64')
.
See the "accessing multiple fields" section of the
user guide <https://docs.scipy.org/doc/numpy/user/basics.rec.html#accessing-multiple-fields>
__.
C API changes
The :c:data:NPY_API_VERSION
was incremented to 0x0000D, due to the addition
of:
- :c:member:
PyUFuncObject.core_dim_flags
- :c:member:
PyUFuncObject.core_dim_sizes
- :c:member:
PyUFuncObject.identity_value
- :c:function:
PyUFunc_FromFuncAndDataAndSignatureAndIdentity
New Features
Integrated squared error (ISE) estimator added to histogram
This method (bins='stone'
) for optimizing the bin number is a
generalization of the Scott's rule. The Scott's rule assumes the distribution
is approximately Normal, while the ISE_ is a non-parametric method based on
cross-validation.
.. _ISE: https://en.wikipedia.org/wiki/Histogram#Minimizing_cross-validation_estimated_squared_error
max_rows
keyword added for np.loadtxt
New keyword max_rows
in numpy.loadtxt
sets the maximum rows of the
content to be read after skiprows
, as in numpy.genfromtxt
.
modulus operator support added for np.timedelta64
operands
The modulus (remainder) operator is now supported for two operands
of type np.timedelta64
. The operands may have different units
and the return value will match the type of the operands.
Improvements
no-copy pickling of numpy arrays
Up to protocol 4, numpy array pickling created 2 spurious copies of the data
being serialized. With pickle protocol 5, and the PickleBuffer
API, a
large variety of numpy arrays can now be serialized without any copy using
out-of-band buffers, and with one less copy using in-band buffers. This
results, for large arrays, in an up to 66% drop in peak memory usage.
build shell independence
NumPy builds should no longer interact with the host machine
shell directly. exec_command
has been replaced with
subprocess.check_output
where appropriate.
np.polynomial.Polynomial
classes render in LaTeX in Jupyter notebooks
When used in a front-end that supports it, Polynomial
instances are now
rendered through LaTeX. The current format is experimental, and is subject to
change.
randint
and choice
now work on empty distributions
Even when no elements needed to be drawn, np.random.randint
and
np.random.choice
raised an error when the arguments described an empty
distribution. This has been fixed so that e.g.
np.random.choice([], 0) == np.array([], dtype=float64)
.
linalg.lstsq
, linalg.qr
, and linalg.svd
now work with empty arrays
Previously, a LinAlgError
would be raised when an empty matrix/empty
matrices (with zero rows and/or columns) is/are passed in. Now outputs of
appropriate shapes are returned.
Chain exceptions to give better error messages for invalid PEP3118 format strings
---------------------...
v1.15.4
==========================
NumPy 1.15.4 Release Notes
This is a bugfix release for bugs and regressions reported following the 1.15.3
release. The Python versions supported by this release are 2.7, 3.4-3.7. The
wheels are linked with OpenBLAS v0.3.0, which should fix some of the linalg
problems reported for NumPy 1.14.
Compatibility Note
The NumPy 1.15.x OS X wheels released on PyPI no longer contain 32-bit
binaries. That will also be the case in future releases. See
#11625 <https://github.com/numpy/numpy/issues/11625>
__ for the related
discussion. Those needing 32-bit support should look elsewhere or build
from source.
Contributors
A total of 4 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Charles Harris
- Matti Picus
- Sebastian Berg
- bbbbbbbbba +
Pull requests merged
A total of 4 pull requests were merged for this release.
- #12296: BUG: Dealloc cached buffer info
- #12297: BUG: Fix fill value in masked array '==' and '!=' ops.
- #12307: DOC: Correct the default value of
optimize
innumpy.einsum
- #12320: REL: Prepare for the NumPy 1.15.4 release
Checksums
MD5
277c501cfcc67767d73d83a53ba69ecb numpy-1.15.4-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
4c687d8cd7833e0b549d4a20905f29a2 numpy-1.15.4-cp27-cp27m-manylinux1_i686.whl
988d0b321d0b7576b105528fc948ddc3 numpy-1.15.4-cp27-cp27m-manylinux1_x86_64.whl
ea6bd39d05539847a0ebb12ff955251a numpy-1.15.4-cp27-cp27mu-manylinux1_i686.whl
8ef2d1ea4571cdd0e7e8dfd5128436b4 numpy-1.15.4-cp27-cp27mu-manylinux1_x86_64.whl
b550d4cc012623a0c38f1392e08f4805 numpy-1.15.4-cp27-none-win32.whl
cb38e4778d9db33199dc7bb6a69ce089 numpy-1.15.4-cp27-none-win_amd64.whl
fa0acf5b2f852454346df5486a4ff4d9 numpy-1.15.4-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
a7614f6318899aa1bfbc337232c4647f numpy-1.15.4-cp34-cp34m-manylinux1_i686.whl
ae16e02274996ff926a30f23f6d6d7e8 numpy-1.15.4-cp34-cp34m-manylinux1_x86_64.whl
c1e1f381de7abc96509d4c5463903755 numpy-1.15.4-cp34-none-win32.whl
c269c8f2fce6cefdffe5e3821fc04fb5 numpy-1.15.4-cp34-none-win_amd64.whl
8906282c374b9b008c5c6401e5dc750b numpy-1.15.4-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
537949e404ecc5814cb0db534bdfef36 numpy-1.15.4-cp35-cp35m-manylinux1_i686.whl
3b10a2fcf8610bbbfe08161e1d9d176e numpy-1.15.4-cp35-cp35m-manylinux1_x86_64.whl
b67621a1c9b8dcac707ca22055629e9f numpy-1.15.4-cp35-none-win32.whl
25b45b69d624cb07a8c05a5f82779b0a numpy-1.15.4-cp35-none-win_amd64.whl
76ed46a4d4e9cdb7076bf1359d9df1d4 numpy-1.15.4-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
b98cbad7770856dc12c827dca7c201b4 numpy-1.15.4-cp36-cp36m-manylinux1_i686.whl
6293fa6db83849aab3a8b1a606cf3d03 numpy-1.15.4-cp36-cp36m-manylinux1_x86_64.whl
21df485f92248c13cab3838762d717f6 numpy-1.15.4-cp36-none-win32.whl
c9cf7a267f8d2f57dc6384cc8b9f5acf numpy-1.15.4-cp36-none-win_amd64.whl
1f6990e094c6b2bb47c6a528ac7b1263 numpy-1.15.4-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
e79239cd9a3ce3cbfa5e7345bfb2ca56 numpy-1.15.4-cp37-cp37m-manylinux1_i686.whl
fc046ba978ef4dd0556af09643c57d30 numpy-1.15.4-cp37-cp37m-manylinux1_x86_64.whl
6291159933eb5a7f9c0bf28ae9707739 numpy-1.15.4-cp37-none-win32.whl
6097910d675f9e81d5d131b91a6c5c61 numpy-1.15.4-cp37-none-win_amd64.whl
b3626fec2f39ab01cad8bbb63a103742 numpy-1.15.4.tar.gz
219ac537d12cf06ed14f478662096ebc numpy-1.15.4.zip
SHA256
18e84323cdb8de3325e741a7a8dd4a82db74fde363dce32b625324c7b32aa6d7 numpy-1.15.4-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
154c35f195fd3e1fad2569930ca51907057ae35e03938f89a8aedae91dd1b7c7 numpy-1.15.4-cp27-cp27m-manylinux1_i686.whl
4d8d3e5aa6087490912c14a3c10fbdd380b40b421c13920ff468163bc50e016f numpy-1.15.4-cp27-cp27m-manylinux1_x86_64.whl
c857ae5dba375ea26a6228f98c195fec0898a0fd91bcf0e8a0cae6d9faf3eca7 numpy-1.15.4-cp27-cp27mu-manylinux1_i686.whl
0df89ca13c25eaa1621a3f09af4c8ba20da849692dcae184cb55e80952c453fb numpy-1.15.4-cp27-cp27mu-manylinux1_x86_64.whl
36e36b6868e4440760d4b9b44587ea1dc1f06532858d10abba98e851e154ca70 numpy-1.15.4-cp27-none-win32.whl
99d59e0bcadac4aa3280616591fb7bcd560e2218f5e31d5223a2e12a1425d495 numpy-1.15.4-cp27-none-win_amd64.whl
edfa6fba9157e0e3be0f40168eb142511012683ac3dc82420bee4a3f3981b30e numpy-1.15.4-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
b261e0cb0d6faa8fd6863af26d30351fd2ffdb15b82e51e81e96b9e9e2e7ba16 numpy-1.15.4-cp34-cp34m-manylinux1_i686.whl
db9814ff0457b46f2e1d494c1efa4111ca089e08c8b983635ebffb9c1573361f numpy-1.15.4-cp34-cp34m-manylinux1_x86_64.whl
df04f4bad8a359daa2ff74f8108ea051670cafbca533bb2636c58b16e962989e numpy-1.15.4-cp34-none-win32.whl
7da99445fd890206bfcc7419f79871ba8e73d9d9e6b82fe09980bc5bb4efc35f numpy-1.15.4-cp34-none-win_amd64.whl
56994e14b386b5c0a9b875a76d22d707b315fa037affc7819cda08b6d0489756 numpy-1.15.4-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
ecf81720934a0e18526177e645cbd6a8a21bb0ddc887ff9738de07a1df5c6b61 numpy-1.15.4-cp35-cp35m-manylinux1_i686.whl
cf5bb4a7d53a71bb6a0144d31df784a973b36d8687d615ef6a7e9b1809917a9b numpy-1.15.4-cp35-cp35m-manylinux1_x86_64.whl
561ef098c50f91fbac2cc9305b68c915e9eb915a74d9038ecf8af274d748f76f numpy-1.15.4-cp35-none-win32.whl
4f41fd159fba1245e1958a99d349df49c616b133636e0cf668f169bce2aeac2d numpy-1.15.4-cp35-none-win_amd64.whl
416a2070acf3a2b5d586f9a6507bb97e33574df5bd7508ea970bbf4fc563fa52 numpy-1.15.4-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
24fd645a5e5d224aa6e39d93e4a722fafa9160154f296fd5ef9580191c755053 numpy-1.15.4-cp36-cp36m-manylinux1_i686.whl
23557bdbca3ccbde3abaa12a6e82299bc92d2b9139011f8c16ca1bb8c75d1e95 numpy-1.15.4-cp36-cp36m-manylinux1_x86_64.whl
b1853df739b32fa913cc59ad9137caa9cc3d97ff871e2bbd89c2a2a1d4a69451 numpy-1.15.4-cp36-none-win32.whl
73a1f2a529604c50c262179fcca59c87a05ff4614fe8a15c186934d84d09d9a5 numpy-1.15.4-cp36-none-win_amd64.whl
1e8956c37fc138d65ded2d96ab3949bd49038cc6e8a4494b1515b0ba88c91565 numpy-1.15.4-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
a4cc09489843c70b22e8373ca3dfa52b3fab778b57cf81462f1203b0852e95e3 numpy-1.15.4-cp37-cp37m-manylinux1_i686.whl
4a22dc3f5221a644dfe4a63bf990052cc674ef12a157b1056969079985c92816 numpy-1.15.4-cp37-cp37m-manylinux1_x86_64.whl
b1f44c335532c0581b77491b7715a871d0dd72e97487ac0f57337ccf3ab3469b numpy-1.15.4-cp37-none-win32.whl
a61dc29cfca9831a03442a21d4b5fd77e3067beca4b5f81f1a89a04a71cf93fa numpy-1.15.4-cp37-none-win_amd64.whl
766e09248298e3ad4ae4a805159f358610bbe7dcc7b4a14e5df2128c05655b80 numpy-1.15.4.tar.gz
3d734559db35aa3697dadcea492a423118c5c55d176da2f3be9c98d4803fc2a7 numpy-1.15.4.zip
v1.15.3
==========================
NumPy 1.15.3 Release Notes
This is a bugfix release for bugs and regressions reported following the 1.15.2
release. The Python versions supported by this release are 2.7, 3.4-3.7. The
wheels are linked with OpenBLAS v0.3.0, which should fix some of the linalg
problems reported for NumPy 1.14.
Compatibility Note
The NumPy 1.15.x OS X wheels released on PyPI no longer contain 32-bit
binaries. That will also be the case in future releases. See
#11625 <https://github.com/numpy/numpy/issues/11625>
__ for the related
discussion. Those needing 32-bit support should look elsewhere or build
from source.
Contributors
A total of 7 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Allan Haldane
- Charles Harris
- Jeroen Demeyer
- Kevin Sheppard
- Matthew Bowden +
- Matti Picus
- Tyler Reddy
Pull requests merged
A total of 12 pull requests were merged for this release.
- #12080: MAINT: Blacklist some MSVC complex functions.
- #12083: TST: Add azure CI testing to 1.15.x branch.
- #12084: BUG: test_path() now uses Path.resolve()
- #12085: TST, MAINT: Fix some failing tests on azure-pipelines mac and...
- #12187: BUG: Fix memory leak in mapping.c
- #12188: BUG: Allow boolean subtract in histogram
- #12189: BUG: Fix in-place permutation
- #12190: BUG: limit default for get_num_build_jobs() to 8
- #12191: BUG: OBJECT_to_* should check for errors
- #12192: DOC: Prepare for NumPy 1.15.3 release.
- #12237: BUG: Fix MaskedArray fill_value type conversion.
- #12238: TST: Backport azure-pipeline testing fixes for Mac
Checksums
MD5
fc1ae8356a65804d02e5c7d9c1c07f65 numpy-1.15.3-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
85faf750ff68d76dad812eb6410cc417 numpy-1.15.3-cp27-cp27m-manylinux1_i686.whl
6d92d50f6235501475b642fc35212ad7 numpy-1.15.3-cp27-cp27m-manylinux1_x86_64.whl
f7430f4ca8d179a9e34072c0d1c1ca9c numpy-1.15.3-cp27-cp27mu-manylinux1_i686.whl
ebd394af280ee41b55add821f84dc180 numpy-1.15.3-cp27-cp27mu-manylinux1_x86_64.whl
3bac2fd14dc19c20a0ced77bb8c395de numpy-1.15.3-cp27-none-win32.whl
da69a44d0292379a261f1bf33b2afe3e numpy-1.15.3-cp27-none-win_amd64.whl
c021f69eeed541202947d11c0ec3c2f4 numpy-1.15.3-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
4c2a4a7685c7431937aa0b5e6425b7de numpy-1.15.3-cp34-cp34m-manylinux1_i686.whl
2eb4e845844b91853743bb4d4316e237 numpy-1.15.3-cp34-cp34m-manylinux1_x86_64.whl
47b03a3e34152c7e1ae7056f672674a5 numpy-1.15.3-cp34-none-win32.whl
64ebc4e0a722e5a6f1bd697309c3f951 numpy-1.15.3-cp34-none-win_amd64.whl
f7a9b021b45372fa39e009ae396d6108 numpy-1.15.3-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
7a7578978757cb69507ab680a2f9b8f3 numpy-1.15.3-cp35-cp35m-manylinux1_i686.whl
52d5bd16e06561e735cb7f461370e697 numpy-1.15.3-cp35-cp35m-manylinux1_x86_64.whl
c1421e59a425b6cd1307a45612c4911f numpy-1.15.3-cp35-none-win32.whl
2ea2c18feb7f92ebd6b64261265d1b7f numpy-1.15.3-cp35-none-win_amd64.whl
ed7b1d79ad554f59c65b6c2d15924624 numpy-1.15.3-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
bece3ef7768bfa7b354b8d1014aa85b3 numpy-1.15.3-cp36-cp36m-manylinux1_i686.whl
4ed669d22449b6e1759b320ff9b37eb7 numpy-1.15.3-cp36-cp36m-manylinux1_x86_64.whl
a3c7ce17e1fdf009950f2f41adcde29b numpy-1.15.3-cp36-none-win32.whl
890f23c488a00a2c64578bcb3737533e numpy-1.15.3-cp36-none-win_amd64.whl
c3a332b97d53c60d8c129a1a8e062652 numpy-1.15.3-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
096f70a3a147a596a9317ce8ac9bf1bd numpy-1.15.3-cp37-cp37m-manylinux1_i686.whl
2317122b49e79ffad91250a428ca54f9 numpy-1.15.3-cp37-cp37m-manylinux1_x86_64.whl
2719106f42758fd285bce25fa3c1a78e numpy-1.15.3-cp37-none-win32.whl
9a692a2bbcbaabf98f19fbd9c0c5c163 numpy-1.15.3-cp37-none-win_amd64.whl
274dd6db3a13c6b6c47a05b5365e1749 numpy-1.15.3.tar.gz
7f1b9e521c2a662cecf3708026e8bdad numpy-1.15.3.zip
SHA256
3c7959f750b54b445f14962a3ddc41b9eadbab00b86da55fbb1967b2b79aad10 numpy-1.15.3-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
9d1598573d310104acb90377f0a8c2319f737084689f5eb18012becaf345cda5 numpy-1.15.3-cp27-cp27m-manylinux1_i686.whl
a988db28f54e104a01e8573ceb6f28202b4c15635b1450b2e3b2b822c6564f9b numpy-1.15.3-cp27-cp27m-manylinux1_x86_64.whl
3d8f9273c763a139a99e65c2a3c10f1109df30bedae7f011b10d95c538364704 numpy-1.15.3-cp27-cp27mu-manylinux1_i686.whl
919f65e0732195474897b1cafefb4d4e7c2bb8174a725e506b62e9096e4df28d numpy-1.15.3-cp27-cp27mu-manylinux1_x86_64.whl
d263f8f14f2da0c079c0297e829e550d8f2c4e0ffef215506bd1d0ddd2bff3de numpy-1.15.3-cp27-none-win32.whl
b12fe6f31babb9477aa0f9692730654b3ee0e71f33b4568170dfafd439caf0a2 numpy-1.15.3-cp27-none-win_amd64.whl
febd31cd0d2fd2509ca2ec53cb339f8bf593c1bd245b9fc55c1917a68532a0af numpy-1.15.3-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
d0f36a24cf8061a2c03e151be3418146717505b9b4ec17502fa3bbdb04ec1431 numpy-1.15.3-cp34-cp34m-manylinux1_i686.whl
63bca71691339d2d6f8a7c970821f2b12098a53afccc0190d4e1555e75e5223a numpy-1.15.3-cp34-cp34m-manylinux1_x86_64.whl
b7599ff4acd23f5de983e3aec772153b1043e131487a5c6ad0f94b41a828877a numpy-1.15.3-cp34-none-win32.whl
c9f4dafd6065c4c782be84cd67ceeb9b1d4380af60a7af32be10ebecd723385e numpy-1.15.3-cp34-none-win_amd64.whl
32a07241cb624e104b88b08dea2851bf4ec5d65a1f599d7735041ced7171fd7a numpy-1.15.3-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
8bc4b92a273659e44ca3f3a2f8786cfa39d8302223bcfe7df794429c63d5f5a1 numpy-1.15.3-cp35-cp35m-manylinux1_i686.whl
2f5ebc7a04885c7d69e5daa05208faef4db7f1ae6a99f4d36962df8cd54cdc76 numpy-1.15.3-cp35-cp35m-manylinux1_x86_64.whl
ce3622b73ccd844ba301c1aea65d36cf9d8331e7c25c16b1725d0f14db99aaf4 numpy-1.15.3-cp35-none-win32.whl
9fff90c88bfaad2901be50453d5cd7897a826c1d901f0654ee1d73ab3a48cd18 numpy-1.15.3-cp35-none-win_amd64.whl
032df9b6571c5f1d41ea6f6a189223208cb488990373aa686aca55570fcccb42 numpy-1.15.3-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
866a7c8774ccc7d603667fad95456b4cf56d79a2bb5a7648ac9f0082e0b9416e numpy-1.15.3-cp36-cp36m-manylinux1_i686.whl
7ae9c3baff3b989859c88e0168ad10902118595b996bf781eaf011bb72428798 numpy-1.15.3-cp36-cp36m-manylinux1_x86_64.whl
d8837ff272800668aabdfe70b966631914b0d6513aed4fc1b1428446f771834d numpy-1.15.3-cp36-none-win32.whl
fa337b6bd5fe2b8c4e705f4102186feb9985de9bb8536d32d5129a658f1789e0 numpy-1.15.3-cp36-none-win_amd64.whl
2aa0910eaeb603b1a5598193cc3bc8eacf1baf6c95cbc3955eb8e15fa380c133 numpy-1.15.3-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
ef694fe72a3995aa778a5095bda946e0d31f7efabd5e8063ad8c6238ab7d3f78 numpy-1.15.3-cp37-cp37m-manylinux1_i686.whl
f1fd1a6f40a501ba4035f5ed2c1f4faa68245d1407bf97d2ee401e4f23d1720b numpy-1.15.3-cp37-cp37m-manylinux1_x86_64.whl
094f8a83e5bd0a44a7557fa24a46db6ba7d5299c389ddbc9e0e18722f567fb63 numpy-1.15.3-cp37-none-win32.whl
a245464ddf6d90e2d6287e9cef6bcfda2a99467fdcf1b677b99cd0b6c7b43de2 numpy-1.15.3-cp37-none-win_amd64.whl
4656ea0d66a3724fd88aafa39a0c5cef216d1257a71b40534fe589abd46ba77b numpy-1.15.3.tar.gz
1c0c80e74759fa4942298044274f2c11b08c86230b25b8b819e55e644f5ff2b6 numpy-1.15.3.zip
v1.15.2
==========================
NumPy 1.15.2 Release Notes
This is a bugfix release for bugs and regressions reported following the 1.15.1
release.
- The matrix PendingDeprecationWarning is now suppressed in pytest 3.8.
- The new cached allocations machinery has been fixed to be thread safe.
- The boolean indexing of subclasses now works correctly.
- A small memory leak in PyArray_AdaptFlexibleDType has been fixed.
The Python versions supported by this release are 2.7, 3.4-3.7. The wheels are
linked with OpenBLAS v0.3.0, which should fix some of the linalg problems
reported for NumPy 1.14.
Compatibility Note
The NumPy 1.15.x OS X wheels released on PyPI no longer contain 32-bit
binaries. That will also be the case in future releases. See
#11625 <https://github.com/numpy/numpy/issues/11625>
__ for the related
discussion. Those needing 32-bit support should look elsewhere or build
from source.
Contributors
A total of 4 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Charles Harris
- Julian Taylor
- Marten van Kerkwijk
- Matti Picus
Pull requests merged
A total of 4 pull requests were merged for this release.
- #11902: BUG: Fix matrix PendingDeprecationWarning suppression for pytest...
- #11981: BUG: fix cached allocations without the GIL for 1.15.x
- #11982: BUG: fix refcount leak in PyArray_AdaptFlexibleDType
- #11992: BUG: Ensure boolean indexing of subclasses sets base correctly.
Checksums
MD5
6935d733421b32533eebc7d9a5b1bde9 numpy-1.15.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
d80b588176313013d50a513d1b3d8cb8 numpy-1.15.2-cp27-cp27m-manylinux1_i686.whl
34b93ec0335f8dd028137bd3c1434800 numpy-1.15.2-cp27-cp27m-manylinux1_x86_64.whl
008df3819bf77abdb0546d96f660bec0 numpy-1.15.2-cp27-cp27mu-manylinux1_i686.whl
48530fca78a9abdfa34c2b19c2d45600 numpy-1.15.2-cp27-cp27mu-manylinux1_x86_64.whl
3b6032a8100df348ab0c17545dd7b72d numpy-1.15.2-cp27-none-win32.whl
2e1c8985c10e813a7b8de54f18f99921 numpy-1.15.2-cp27-none-win_amd64.whl
2e9bab1f2bb399945cd660062c1d63ac numpy-1.15.2-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
d774936507ac59e0ed8cd6b9592449fe numpy-1.15.2-cp34-cp34m-manylinux1_i686.whl
5f0b7cb501e3e459f043725330dd19f8 numpy-1.15.2-cp34-cp34m-manylinux1_x86_64.whl
5c54aa9f3825af973ed7c4c38bf499bc numpy-1.15.2-cp34-none-win32.whl
1f479fa8f54da6726aa9729d296d31e7 numpy-1.15.2-cp34-none-win_amd64.whl
e7100118df61980e784ac71a9eafe410 numpy-1.15.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
f55e7f845d9f18a6c3cf8a0dc4515226 numpy-1.15.2-cp35-cp35m-manylinux1_i686.whl
de9a79dd7abcaa099b34234d7ee43903 numpy-1.15.2-cp35-cp35m-manylinux1_x86_64.whl
48e7213f7029a38e6a63e1e92c50c15d numpy-1.15.2-cp35-none-win32.whl
3086e690e4eef8b10523349e93c34dcb numpy-1.15.2-cp35-none-win_amd64.whl
9e56f996c325345a5a3076a9f5d0abfe numpy-1.15.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
e7835fb3d56d4bbcd8d47120df709cbf numpy-1.15.2-cp36-cp36m-manylinux1_i686.whl
5151de4cfdec3623d4061d0e7a8677bb numpy-1.15.2-cp36-cp36m-manylinux1_x86_64.whl
7f911b24989f8d6aa0e6617fea6e8c10 numpy-1.15.2-cp36-none-win32.whl
948dbd9c23ac7948485d5a07a48a27eb numpy-1.15.2-cp36-none-win_amd64.whl
921214854ed05d5e0c294b2fcc345d37 numpy-1.15.2-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
38a69cfe0d954d05054a73e5f56b1533 numpy-1.15.2-cp37-cp37m-manylinux1_i686.whl
4ce844e4452baf8c25025e53e59d91ff numpy-1.15.2-cp37-cp37m-manylinux1_x86_64.whl
2de0167b4297d1732e25c9288bbe3add numpy-1.15.2-cp37-none-win32.whl
de26b3d5573b0c9a6cd38eeb4e8d865e numpy-1.15.2-cp37-none-win_amd64.whl
d40b15478148a48ec324327578de4583 numpy-1.15.2.tar.gz
5a55a994eca6095b1e82d44600217ece numpy-1.15.2.zip
SHA256
b5ff7dae352fd9e1edddad1348698e9fea14064460a7e39121ef9526745802e6 numpy-1.15.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
1b1cf8f7300cf7b11ddb4250b3898c711a6187df05341b5b7153db23ffe5d498 numpy-1.15.2-cp27-cp27m-manylinux1_i686.whl
ec8bf53ef7c92c99340972519adbe122e82c81d5b87cbd955c74ba8a8cd2a4ad numpy-1.15.2-cp27-cp27m-manylinux1_x86_64.whl
733dc5d47e71236263837825b69c975bc08728ae638452b34aeb1d6fa347b780 numpy-1.15.2-cp27-cp27mu-manylinux1_i686.whl
82f00a1e2695a0e5b89879aa25ea614530b8ebdca6d49d4834843d498e8a5e92 numpy-1.15.2-cp27-cp27mu-manylinux1_x86_64.whl
63f833a7c622e9082df3cbaf03b4fd92d7e0c11e2f9d87cb57dbf0e84441964b numpy-1.15.2-cp27-none-win32.whl
c898f9cca806102fcacb6309899743aa39efb2ad2a302f4c319f54db9f05cd84 numpy-1.15.2-cp27-none-win_amd64.whl
f2e55726a9ee2e8129d6ce6abb466304868051bcc7a09d652b3b07cd86e801a2 numpy-1.15.2-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
981224224bbf44d95278eb37996162e8beb6f144d2719b144e86dfe2fce6c510 numpy-1.15.2-cp34-cp34m-manylinux1_i686.whl
f592fd7fe1f20b5041928cce1330937eca62f9058cb41e69c2c2d83cffc0d1e3 numpy-1.15.2-cp34-cp34m-manylinux1_x86_64.whl
9ad36dbfdbb0cba90a08e7343fadf86f43cf6d87450e8d2b5d71d7c7202907e4 numpy-1.15.2-cp34-none-win32.whl
d1569013e8cc8f37e9769d19effdd85e404c976cd0ca28a94e3ddc026c216ae8 numpy-1.15.2-cp34-none-win_amd64.whl
8d2cfb0aef7ec8759736cce26946efa084cdf49797712333539ef7d135e0295e numpy-1.15.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
f4dee74f2626c783a3804df9191e9008946a104d5a284e52427a53ff576423cb numpy-1.15.2-cp35-cp35m-manylinux1_i686.whl
497d7c86df4f85eb03b7f58a7dd0f8b948b1f582e77629341f624ba301b4d204 numpy-1.15.2-cp35-cp35m-manylinux1_x86_64.whl
866bf72b9c3bfabe4476d866c70ee1714ad3e2f7b7048bb934892335e7b6b1f7 numpy-1.15.2-cp35-none-win32.whl
71bf3b7ca15b1967bba3a1ef6a8e87286382a8b5e46ac76b42a02fe787c5237d numpy-1.15.2-cp35-none-win_amd64.whl
4e28e66cf80c09a628ae680efeb0aa9a066eb4bb7db2a5669024c5b034891576 numpy-1.15.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
8aeac8b08f4b8c52129518efcd93706bb6d506ccd17830b67d18d0227cf32d9e numpy-1.15.2-cp36-cp36m-manylinux1_i686.whl
a251570bb3cb04f1627f23c234ad09af0e54fc8194e026cf46178f2e5748d647 numpy-1.15.2-cp36-cp36m-manylinux1_x86_64.whl
5b4dfb6551eaeaf532054e2c6ef4b19c449c2e3a709ebdde6392acb1372ecabc numpy-1.15.2-cp36-none-win32.whl
981daff58fa3985a26daa4faa2b726c4e7a1d45178100125c0e1fdaf2ac64978 numpy-1.15.2-cp36-none-win_amd64.whl
dca261e85fe0d34b2c242ecb31c9ab693509af2cf955d9caf01ee3ef3669abd0 numpy-1.15.2-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
ffab5b80bba8c86251291b8ce2e6c99a61446459d4c6637f5d5cc8c9ce37c972 numpy-1.15.2-cp37-cp37m-manylinux1_i686.whl
58be95faf0ca2d886b5b337e7cba2923e3ad1224b806a91223ea39f1e0c77d03 numpy-1.15.2-cp37-cp37m-manylinux1_x86_64.whl
3fde172e28c899580d32dc21cb6d4a1225d62362f61050b654545c662eac215a numpy-1.15.2-cp37-none-win32.whl
cf4b970042ce148ad8dce4369c02a4078b382dadf20067ce2629c239d76460d1 numpy-1.15.2-cp37-none-win_amd64.whl
6a1e96568332fd8974b355a422b397288e214746715a7fa6abc10b34d06bad76 numpy-1.15.2.tar.gz
27a0d018f608a3fe34ac5e2b876f4c23c47e38295c47dd0775cc294cd2614bc1 numpy-1.15.2.zip
v1.14.6
==========================
NumPy 1.14.6 Release Notes
This is a bugfix release for bugs reported following the 1.14.5 release. The
most significant fixes are:
- Fix for behavior change in
ma.masked_values(shrink=True)
- Fix the new cached allocations machinery to be thread safe.
The Python versions supported in this release are 2.7 and 3.4 - 3.7. The Python
3.6 wheels on PyPI should be compatible with all Python 3.6 versions.
Contributors
A total of 4 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Charles Harris
- Eric Wieser
- Julian Taylor
- Matti Picus
Pull requests merged
A total of 4 pull requests were merged for this release.
- #11985: BUG: fix cached allocations without the GIL
- #11986: BUG: Undo behavior change in ma.masked_values(shrink=True)
- #11987: BUG: fix refcount leak in PyArray_AdaptFlexibleDType
- #11995: TST: Add Python 3.7 testing to NumPy 1.14.
Checksums
MD5
f67c12a012b32b44e39eb057d6c5e5a9 numpy-1.14.6-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
a9325f87cd57dca3164e8920bd93ed30 numpy-1.14.6-cp27-cp27m-manylinux1_i686.whl
a02a64177b422b6059242f01fc39eba9 numpy-1.14.6-cp27-cp27m-manylinux1_x86_64.whl
4d45b10bc3be5e2e87aaf530bbcd9e48 numpy-1.14.6-cp27-cp27mu-manylinux1_i686.whl
d9e0e8d2aa9a198bcebb9e6627669c7b numpy-1.14.6-cp27-cp27mu-manylinux1_x86_64.whl
cfe9797b5bb22896aae777a356e77eab numpy-1.14.6-cp27-none-win32.whl
7e2bb331cc8fc5939a362df46cf60081 numpy-1.14.6-cp27-none-win_amd64.whl
1ba6477836db55255943977535bf6821 numpy-1.14.6-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
e341e9d58654c8afd15728495a523473 numpy-1.14.6-cp34-cp34m-manylinux1_i686.whl
e326047645ebee9bfac01922663488c7 numpy-1.14.6-cp34-cp34m-manylinux1_x86_64.whl
29f8f49c0c3b3282fcd644d66bf15001 numpy-1.14.6-cp34-none-win32.whl
92ad00143740a54180bb6f2015004940 numpy-1.14.6-cp34-none-win_amd64.whl
0f25ad62a1f7627729296d47a72d5fe4 numpy-1.14.6-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
9027e902724fe6d0468f30f9fed878c9 numpy-1.14.6-cp35-cp35m-manylinux1_i686.whl
25cc365ada785dd26ed74eae5b90630d numpy-1.14.6-cp35-cp35m-manylinux1_x86_64.whl
b969c8694c91918927b74f82dcbd6e51 numpy-1.14.6-cp35-none-win32.whl
db451ea9b296b95644bbdb0dfe133d38 numpy-1.14.6-cp35-none-win_amd64.whl
afc5355fe367e833bf8b503e2be19e11 numpy-1.14.6-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
200cdb3ed59ced85a6fe4255b4e93c32 numpy-1.14.6-cp36-cp36m-manylinux1_i686.whl
b40851c94f1c7586a1f5b4e9602a748a numpy-1.14.6-cp36-cp36m-manylinux1_x86_64.whl
7ece416512eb587d237e0ea35a764387 numpy-1.14.6-cp36-none-win32.whl
fb0334939e7f0716415971c1566a3da5 numpy-1.14.6-cp36-none-win_amd64.whl
7cd2d7d164af228289e2a2dd7dc2f6b0 numpy-1.14.6-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
f816dd37be0320767994c18aaca1f530 numpy-1.14.6-cp37-cp37m-manylinux1_i686.whl
29539a787aa1c04c5026c7b9c4e611e4 numpy-1.14.6-cp37-cp37m-manylinux1_x86_64.whl
d957e060a892311bd19df11fd2efbce3 numpy-1.14.6-cp37-none-win32.whl
4660539e780b295ab849fe9cd6491994 numpy-1.14.6-cp37-none-win_amd64.whl
dd01e3e29e8f46f2be8f176d3649cab1 numpy-1.14.6.tar.gz
9118b06f0ff86f9545beee4a10a80717 numpy-1.14.6.zip
SHA256
bd6b3906a50f9ad755e2c21a78661eff1bbaab3c803c0fcf22927ec50372dba6 numpy-1.14.6-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
f1dd9a8ecbe9f8f13652afe04c470bb837578e402a3641649ddc41764d0e4326 numpy-1.14.6-cp27-cp27m-manylinux1_i686.whl
4c774c852cad87f692e6b3e374ba7074c7a9897cf4bafcc47ad48142d455f3ae numpy-1.14.6-cp27-cp27m-manylinux1_x86_64.whl
40f9c0ae71453e4d28d40e502e531e72810bf3b12b2d55cad939ab86a26ead42 numpy-1.14.6-cp27-cp27mu-manylinux1_i686.whl
964c2c6a9e0ecac54a368effa26a89a97b2e15266dc68dc78f2519f3040be623 numpy-1.14.6-cp27-cp27mu-manylinux1_x86_64.whl
4e2f4c7031507b23b14056a4bc2b4cbe865607f55b45bfc15cc745a268bc817e numpy-1.14.6-cp27-none-win32.whl
35be3f06ad20030bfba9ae199fa5d5474aebeabb3197d2ce9fcd8c417f7415e3 numpy-1.14.6-cp27-none-win_amd64.whl
e11e5eba43e0d8b077aafa11e43db7a77af4fa435557972dd3570898e0cbb736 numpy-1.14.6-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
1718e009ac6699868c82c4ed154e64945479f5c3d8826b2e10c470e9fad7bd18 numpy-1.14.6-cp34-cp34m-manylinux1_i686.whl
6eb031402a278a6fa5838e543cf36ed6d21a6ee90e9a2803570d47908ca5e9fd numpy-1.14.6-cp34-cp34m-manylinux1_x86_64.whl
1b07024c4d87bf7a0738c438aa7fb709f9d7c093513bb8ffb2ac849f4553658c numpy-1.14.6-cp34-none-win32.whl
e5daec856ea0e1111391179449b855aa29f1433ac507adc3d6c00a96abb438cb numpy-1.14.6-cp34-none-win_amd64.whl
0e7c5e5358be186e0d6c73a9b34e1b890602ac1db413adc61794e2e3e02ec65c numpy-1.14.6-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
6f2a52bb05c560fd6f29d7b49dfe8b4d7c5445c448e5587969446a0f10cf9164 numpy-1.14.6-cp35-cp35m-manylinux1_i686.whl
1454aca5a62fe18bb2828ea1b2f9d1534afed7216c13404a6657cda57937c54b numpy-1.14.6-cp35-cp35m-manylinux1_x86_64.whl
686869ff6adc49b3066fdb44198c0655603b33e2c4d852a04c6a84cd8b224786 numpy-1.14.6-cp35-none-win32.whl
057ca467673a4b0422a9365ea0b53572813764f60896d3d1423f5cc9d2dd0d02 numpy-1.14.6-cp35-none-win_amd64.whl
db10d3d10658a847f85fe9df0d5fe6df190a30d32423d670c3824580e373c0a8 numpy-1.14.6-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
7ce70ef6fd9bdfafd896c617761129fafaa06e4683d0bfbf3c56a87c89e02d61 numpy-1.14.6-cp36-cp36m-manylinux1_i686.whl
4ab59a69a627ee73a2723b60723abfe0404947c16acef7b0880d6bbec93ba7cd numpy-1.14.6-cp36-cp36m-manylinux1_x86_64.whl
33acfba9f453b0b6465c0aa5fe5cb0d32b8483850bc8cc776b4d3cc96595aa03 numpy-1.14.6-cp36-none-win32.whl
6d3e10394dada2cdf8ba354025ddf15a744b4e833c77347e31547c4b5c77deab numpy-1.14.6-cp36-none-win_amd64.whl
d37f058ea9a2fd2a9160b0cc65bbfb302dfcea8d5fe178299938d95d7bfa2b83 numpy-1.14.6-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
a1cafe27328c1f01127297f11e2be25d5d3821d2654a7459e017cfce98258995 numpy-1.14.6-cp37-cp37m-manylinux1_i686.whl
df2937c62d8d3059c1396c7cacfc12577c0923e2a37557592759358848b1544c numpy-1.14.6-cp37-cp37m-manylinux1_x86_64.whl
d3f22c0781ad5fe51d7210f36a91f01620355520996fc332a1d0cf24e0cab794 numpy-1.14.6-cp37-none-win32.whl
fe909f8d14b2f16ea5d9ec2234fc0ffbfccccaef1ba6bc27d9d21acfe8cc72e1 numpy-1.14.6-cp37-none-win_amd64.whl
61b01b87d1e76df9a1e43fff727c1e0289c4cd2bc7be9f806e97b45aed3682cc numpy-1.14.6.tar.gz
1250edf6f6c43e1d7823f0967416bc18258bb271dc536298eb0ea00a9e45b80a numpy-1.14.6.zip
v1.15.1
==========================
NumPy 1.15.1 Release Notes
This is a bugfix release for bugs and regressions reported following the 1.15.0
release.
- The annoying but harmless RuntimeWarning that "numpy.dtype size changed" has
been suppressed. The long standing suppression was lost in the transition to
pytest. - The update to Cython 0.28.3 exposed a problematic use of a gcc attribute used
to prefer code size over speed in module initialization, possibly resulting in
incorrect compiled code. This has been fixed in latest Cython but has been
disabled here for safety. - Support for big-endian and ARMv8 architectures has been improved.
The Python versions supported by this release are 2.7, 3.4-3.7. The wheels are
linked with OpenBLAS v0.3.0, which should fix some of the linalg problems
reported for NumPy 1.14.
Compatibility Note
The NumPy 1.15.x OS X wheels released on PyPI no longer contain 32-bit
binaries. That will also be the case in future releases. See
#11625 <https://github.com/numpy/numpy/issues/11625>
__ for the related
discussion. Those needing 32-bit support should look elsewhere or build
from source.
Contributors
A total of 7 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Charles Harris
- Chris Billington
- Elliott Sales de Andrade +
- Eric Wieser
- Jeremy Manning +
- Matti Picus
- Ralf Gommers
Pull requests merged
A total of 24 pull requests were merged for this release.
- #11647: MAINT: Filter Cython warnings in
__init__.py
- #11648: BUG: Fix doc source links to unwrap decorators
- #11657: BUG: Ensure singleton dimensions are not dropped when converting...
- #11661: BUG: Warn on Nan in minimum,maximum for scalars
- #11665: BUG: cython sometimes emits invalid gcc attribute
- #11682: BUG: Fix regression in void_getitem
- #11698: BUG: Make matrix_power again work for object arrays.
- #11700: BUG: Add missing PyErr_NoMemory after failing malloc
- #11719: BUG: Fix undefined functions on big-endian systems.
- #11720: MAINT: Make einsum optimize default to False.
- #11746: BUG: Fix regression in loadtxt for bz2 text files in Python 2.
- #11757: BUG: Revert use of
console_scripts
. - #11758: BUG: Fix Fortran kind detection for aarch64 & s390x.
- #11759: BUG: Fix printing of longdouble on ppc64le.
- #11760: BUG: Fixes for unicode field names in Python 2
- #11761: BUG: Increase required cython version on python 3.7
- #11763: BUG: check return value of _buffer_format_string
- #11775: MAINT: Make assert_array_compare more generic.
- #11776: TST: Fix urlopen stubbing.
- #11777: BUG: Fix regression in intersect1d.
- #11779: BUG: Fix test sensitive to platform byte order.
- #11781: BUG: Avoid signed overflow in histogram
- #11785: BUG: Fix pickle and memoryview for datetime64, timedelta64 scalars
- #11786: BUG: Deprecation triggers segfault
Checksums
MD5
8e894e6873420259fa13bc685ca922a7 numpy-1.15.1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
75154de03468c18c8b8d337b75d29bad numpy-1.15.1-cp27-cp27m-manylinux1_i686.whl
50e3db64b9be2d399f7035ea71e16092 numpy-1.15.1-cp27-cp27m-manylinux1_x86_64.whl
35e15be82a5fc807572c7723171902b4 numpy-1.15.1-cp27-cp27mu-manylinux1_i686.whl
315cc1fb777c5251f27e49075b4d13fb numpy-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl
7b6fbdca75eeb0a0c28c09bfaf2e17c2 numpy-1.15.1-cp27-none-win32.whl
8bc75bc94bd189a4cc3ded0f0e9b1353 numpy-1.15.1-cp27-none-win_amd64.whl
3c8950f10241185376ae6dd425209543 numpy-1.15.1-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
3e488ea8de86391335a56e7e2b2c47de numpy-1.15.1-cp34-cp34m-manylinux1_i686.whl
0edee0d56ea5670b93b47410e66fa337 numpy-1.15.1-cp34-cp34m-manylinux1_x86_64.whl
67670224f931699c3836a1c9e4e8230b numpy-1.15.1-cp34-none-win32.whl
5b9e984e562aac63b7549e456bd89dfe numpy-1.15.1-cp34-none-win_amd64.whl
063f6a86f0713211b69050545e7c6c2c numpy-1.15.1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
4afe4fd3ea108a967bd0b9425305b979 numpy-1.15.1-cp35-cp35m-manylinux1_i686.whl
e1ebc2bc6d0947159b33f208e844251a numpy-1.15.1-cp35-cp35m-manylinux1_x86_64.whl
910aab0be682f29a182239e4bd4631cf numpy-1.15.1-cp35-none-win32.whl
bfaac6c5f4e8ab65cd76b010ea5c5dfe numpy-1.15.1-cp35-none-win_amd64.whl
ce48f8b807c9ac8b7d00301584ab7976 numpy-1.15.1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
d7d0c86acb89a86894811b8a792fba89 numpy-1.15.1-cp36-cp36m-manylinux1_i686.whl
3cd21facc099e72ab56a957978207c8c numpy-1.15.1-cp36-cp36m-manylinux1_x86_64.whl
04471e530164dd25c7a9c1309712cc64 numpy-1.15.1-cp36-none-win32.whl
013ea5fbb8a953c2112acaa591c675a8 numpy-1.15.1-cp36-none-win_amd64.whl
3fdd39812b8fe172824d2cc52cb807c4 numpy-1.15.1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
381bd5ea598b17333264b1cbc9f62fac numpy-1.15.1-cp37-cp37m-manylinux1_i686.whl
e600bd09303c622ff4d16ed63fefb205 numpy-1.15.1-cp37-cp37m-manylinux1_x86_64.whl
c05625370ff437b3e1a4f08cf194e3e4 numpy-1.15.1-cp37-none-win32.whl
f476babe66c6104c00accbf0bcfafce5 numpy-1.15.1-cp37-none-win_amd64.whl
e369ffae42ab89c7d1be5fe786e27702 numpy-1.15.1.tar.gz
898004d5be091fde59ae353e3008fe9b numpy-1.15.1.zip
SHA256
5e359e9c531075220785603e5966eef20ccae9b3b6b8a06fdfb66c084361ce92 numpy-1.15.1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
419e6faee16097124ee627ed31572c7e80a1070efa25260b78097cca240e219a numpy-1.15.1-cp27-cp27m-manylinux1_i686.whl
719b6789acb2bc86ea9b33a701d7c43dc2fc56d95107fd3c5b0a8230164d4dfb numpy-1.15.1-cp27-cp27m-manylinux1_x86_64.whl
62d55e96ec7b117d3d5e618c15efcf769e70a6effaee5842857b64fb4883887a numpy-1.15.1-cp27-cp27mu-manylinux1_i686.whl
df0b02c6705c5d1c25cc35c7b5d6b6f9b3b30833f9d178843397ae55ecc2eebb numpy-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl
dae8618c0bcbfcf6cf91350f8abcdd84158323711566a8c5892b5c7f832af76f numpy-1.15.1-cp27-none-win32.whl
a3bd01d6d3ed3d7c06d7f9979ba5d68281f15383fafd53b81aa44b9191047cf8 numpy-1.15.1-cp27-none-win_amd64.whl
1c362ad12dd09a43b348bb28dd2295dd9cdf77f41f0f45965e04ba97f525b864 numpy-1.15.1-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
83b8fc18261b70f45bece2d392537c93dc81eb6c539a16c9ac994c47fc79f09a numpy-1.15.1-cp34-cp34m-manylinux1_i686.whl
ce75ed495a746e3e78cfa22a77096b3bff2eda995616cb7a542047f233091268 numpy-1.15.1-cp34-cp34m-manylinux1_x86_64.whl
340ec1697d9bb3a9c464028af7a54245298502e91178bddb4c37626d36e197b7 numpy-1.15.1-cp34-none-win32.whl
2156a06bd407918df4ac0122df6497a9c137432118f585e5b17d543e593d1587 numpy-1.15.1-cp34-none-win_amd64.whl
549f3e9778b148a47f4fb4682955ed88057eb627c9fe5467f33507c536deda9d numpy-1.15.1-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
378378973546ecc1dfaf9e24c160d683dd04df871ecd2dcc86ce658ca20f92c0 numpy-1.15.1-cp35-cp35m-manylinux1_i686.whl
35db8d419345caa4eeaa65cd63f34a15208acd87530a30f0bc25fc84f55c8c80 numpy-1.15.1-cp35-cp35m-manylinux1_x86_64.whl
4287104c24e6a09b9b418761a1e7b1bbde65105f110690ca46a23600a3c606b8 numpy-1.15.1-cp35-none-win32.whl
7a70f2b60d48828cba94a54a8776b61a9c2657a803d47f5785f8062e3a9c7c55 numpy-1.15.1-cp35-none-win_amd64.whl
e3660744cda0d94b90141cdd0db9308b958a372cfeee8d7188fdf5ad9108ea82 numpy-1.15.1-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
5ee7f3dbbdba0da75dec7e94bd7a2b10fe57a83e1b38e678200a6ad8e7b14fdc numpy-1.15.1-cp36-cp36m-manylinux1_i686.whl
36e8dcd1813ca92ce7e4299120cee6c03adad33d89b54862c1b1a100443ac399 numpy-1.15.1-cp36-cp36m-manylinux1_x86_64.whl
9473ad28375710ab18378e72b59422399b27e957e9339c413bf00793b4b12df0 numpy-1.15.1-cp36-none-win32.whl
c81a6afc1d2531a9ada50b58f8c36197f8418ef3d0611d4c1d7af93fdcda764f numpy-1.15.1-cp36-none-win_amd64.whl
98b86c62c08c2e5dc98a9c856d4a95329d11b1c6058cb9b5191d5ea6891acd09 numpy-1.15.1-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
24e4149c38489b51fc774b1e1faa9103e82f73344d7a00ba66f6845ab4769f3f numpy-1.15.1-cp37-cp37m-manylinux1_i686.whl
95b085b253080e5d09f7826f5e27dce067bae813a132023a77b739614a29de6e numpy-1.15.1-cp37-cp37m-manylinux1_x86_64.whl
361370e9b7f5e44c41eee29f2bb5cb3b755abb4b038bce6d6cbe08db7ff9cb74 numpy-1.15.1-cp37-none-win32.whl
f2362d0ca3e16c37782c1054d7972b8ad2729169567e3f0f4e5dd3cdf85f188e numpy-1.15.1-cp37-none-win_amd64.whl
3c1ccce5d935ef8df16ae0595b459ef08a5cdb05aee195ebc04b9d89a72be7fa numpy-1.15.1.tar.gz
7b9e37f194f8bcdca8e9e6af92e2cbad79e360542effc2dd6b98d63955d8d8a3 numpy-1.15.1.zip
v1.15.0
==========================
NumPy 1.15.0 Release Notes
NumPy 1.15.0 is a release with an unusual number of cleanups, many deprecations
of old functions, and improvements to many existing functions. Please read the
detailed descriptions below to see if you are affected.
For testing, we have switched to pytest as a replacement for the no longer
maintained nose framework. The old nose based interface remains for downstream
projects who may still be using it.
The Python versions supported by this release are 2.7, 3.4-3.7. The wheels are
linked with OpenBLAS v0.3.0, which should fix some of the linalg problems
reported for NumPy 1.14.
Highlights
- NumPy has switched to pytest for testing.
- A new
numpy.printoptions
context manager. - Many improvements to the histogram functions.
- Support for unicode field names in python 2.7.
- Improved support for PyPy.
- Fixes and improvements to
numpy.einsum
.
New functions
-
numpy.gcd
andnumpy.lcm
, to compute the greatest common divisor and least
common multiple. -
numpy.ma.stack
, thenumpy.stack
array-joining function generalized to
masked arrays. -
numpy.quantile
function, an interface topercentile
without factors of
100 -
numpy.nanquantile
function, an interface tonanpercentile
without
factors of 100 -
numpy.printoptions
, a context manager that sets print options temporarily
for the scope of thewith
block::with np.printoptions(precision=2):
... print(np.array([2.0]) / 3)
[0.67] -
numpy.histogram_bin_edges
, a function to get the edges of the bins used by a
histogram without needing to calculate the histogram. -
C functions
npy_get_floatstatus_barrier
andnpy_clear_floatstatus_barrier
have been added to deal with compiler optimization changing the order of
operations. See below for details.
Deprecations
-
Aliases of builtin
pickle
functions are deprecated, in favor of their
unaliasedpickle.<func>
names:numpy.loads
numpy.core.numeric.load
numpy.core.numeric.loads
numpy.ma.loads
,numpy.ma.dumps
numpy.ma.load
,numpy.ma.dump
- these functions already failed on
python 3 when called with a string.
-
Multidimensional indexing with anything but a tuple is deprecated. This means
that the index list inind = [slice(None), 0]; arr[ind]
should be changed
to a tuple, e.g.,ind = [slice(None), 0]; arr[tuple(ind)]
or
arr[(slice(None), 0)]
. That change is necessary to avoid ambiguity in
expressions such asarr[[[0, 1], [0, 1]]]
, currently interpreted as
arr[array([0, 1]), array([0, 1])]
, that will be interpreted
asarr[array([[0, 1], [0, 1]])]
in the future. -
Imports from the following sub-modules are deprecated, they will be removed
at some future date.numpy.testing.utils
numpy.testing.decorators
numpy.testing.nosetester
numpy.testing.noseclasses
numpy.core.umath_tests
-
Giving a generator to
numpy.sum
is now deprecated. This was undocumented
behavior, but worked. Previously, it would calculate the sum of the generator
expression. In the future, it might return a different result. Use
np.sum(np.from_iter(generator))
or the built-in Pythonsum
instead. -
Users of the C-API should call
PyArrayResolveWriteBackIfCopy
or
PyArray_DiscardWritbackIfCopy
on any array with theWRITEBACKIFCOPY
flag set, before deallocating the array. A deprecation warning will be
emitted if those calls are not used when needed. -
Users of
nditer
should use the nditer object as a context manager
anytime one of the iterator operands is writeable, so that numpy can
manage writeback semantics, or should callit.close()
. A
RuntimeWarning
may be emitted otherwise in these cases. -
The
normed
argument ofnp.histogram
, deprecated long ago in 1.6.0,
now emits aDeprecationWarning
.
Future Changes
- NumPy 1.16 will drop support for Python 3.4.
- NumPy 1.17 will drop support for Python 2.7.
Compatibility notes
Compiled testing modules renamed and made private
The following compiled modules have been renamed and made private:
umath_tests
->_umath_tests
test_rational
->_rational_tests
multiarray_tests
->_multiarray_tests
struct_ufunc_test
->_struct_ufunc_tests
operand_flag_tests
->_operand_flag_tests
The umath_tests
module is still available for backwards compatibility, but
will be removed in the future.
The NpzFile
returned by np.savez
is now a collections.abc.Mapping
This means it behaves like a readonly dictionary, and has a new .values()
method and len()
implementation.
For python 3, this means that .iteritems()
, .iterkeys()
have been
deprecated, and .keys()
and .items()
now return views and not lists.
This is consistent with how the builtin dict
type changed between python 2
and python 3.
Under certain conditions, nditer
must be used in a context manager
When using an numpy.nditer
with the "writeonly"
or "readwrite"
flags, there
are some circumstances where nditer doesn't actually give you a view of the
writable array. Instead, it gives you a copy, and if you make changes to the
copy, nditer later writes those changes back into your actual array. Currently,
this writeback occurs when the array objects are garbage collected, which makes
this API error-prone on CPython and entirely broken on PyPy. Therefore,
nditer
should now be used as a context manager whenever it is used
with writeable arrays, e.g., with np.nditer(...) as it: ...
. You may also
explicitly call it.close()
for cases where a context manager is unusable,
for instance in generator expressions.
Numpy has switched to using pytest instead of nose for testing
The last nose release was 1.3.7 in June, 2015, and development of that tool has
ended, consequently NumPy has now switched to using pytest. The old decorators
and nose tools that were previously used by some downstream projects remain
available, but will not be maintained. The standard testing utilities,
assert_almost_equal
and such, are not be affected by this change except for
the nose specific functions import_nose
and raises
. Those functions are
not used in numpy, but are kept for downstream compatibility.
Numpy no longer monkey-patches ctypes
with __array_interface__
Previously numpy added __array_interface__
attributes to all the integer
types from ctypes
.
np.ma.notmasked_contiguous
and np.ma.flatnotmasked_contiguous
always return lists
This is the documented behavior, but previously the result could be any of
slice, None, or list.
All downstream users seem to check for the None
result from
flatnotmasked_contiguous
and replace it with []
. Those callers will
continue to work as before.
np.squeeze
restores old behavior of objects that cannot handle an axis
argument
Prior to version 1.7.0
, numpy.squeeze
did not have an axis
argument and
all empty axes were removed by default. The incorporation of an axis
argument made it possible to selectively squeeze single or multiple empty axes,
but the old API expectation was not respected because axes could still be
selectively removed (silent success) from an object expecting all empty axes to
be removed. That silent, selective removal of empty axes for objects expecting
the old behavior has been fixed and the old behavior restored.
unstructured void array's .item
method now returns a bytes object
.item
now returns a bytes
object instead of a buffer or byte array.
This may affect code which assumed the return value was mutable, which is no
longer the case.
copy.copy
and copy.deepcopy
no longer turn masked
into an array
Since np.ma.masked
is a readonly scalar, copying should be a no-op. These
functions now behave consistently with np.copy()
.
Multifield Indexing of Structured Arrays will still return a copy
The change that multi-field indexing of structured arrays returns a view
instead of a copy is pushed back to 1.16. A new method
numpy.lib.recfunctions.repack_fields
has been introduced to help mitigate
the effects of this change, which can be used to write code compatible with
both numpy 1.15 and 1.16. For more information on how to update code to account
for this future change see the "accessing multiple fields" section of the
user guide <https://docs.scipy.org/doc/numpy/user/basics.rec.html>
__.
C API changes
New functions npy_get_floatstatus_barrier
and npy_clear_floatstatus_barrier
Functions npy_get_floatstatus_barrier
and npy_clear_floatstatus_barrier
have been added and should be used in place of the npy_get_floatstatus
and
npy_clear_status
functions. Optimizing compilers like GCC 8.1 and Cla...