numpy
5.0/52

numpy

pypi i numpy

98 Versions

1.24.1

1 month ago
NumPy 1.24.1 Release Notes

NumPy 1.24.1 is a maintenance release that fixes bugs and regressions discovered after the 1.24.0 release. The Python versions supported by this release are 3.8-3.11.

Contributors

A total of 12 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Andrew Nelson
  • Ben Greiner +
  • Charles Harris
  • Clément Robert
  • Matteo Raso
  • Matti Picus
  • Melissa Weber Mendonça
  • Miles Cranmer
  • Ralf Gommers
  • Rohit Goswami
  • Sayed Adel
  • Sebastian Berg
Pull requests merged

A total of 18 pull requests were merged for this release.

  • #22820: BLD: add workaround in setup.py for newer setuptools
  • #22830: BLD: CIRRUS_TAG redux
  • #22831: DOC: fix a couple typos in 1.23 notes
  • #22832: BUG: Fix refcounting errors found using pytest-leaks
  • #22834: BUG, SIMD: Fix invalid value encountered in several ufuncs
  • #22837: TST: ignore more np.distutils.log imports
  • #22839: BUG: Do not use getdata() in np.ma.masked_invalid
  • #22847: BUG: Ensure correct behavior for rows ending in delimiter in...
  • #22848: BUG, SIMD: Fix the bitmask of the boolean comparison
  • #22857: BLD: Help raspian arm + clang 13 about __builtin_mul_overflow
  • #22858: API: Ensure a full mask is returned for masked_invalid
  • #22866: BUG: Polynomials now copy properly (#22669)
  • #22867: BUG, SIMD: Fix memory overlap in ufunc comparison loops
  • #22868: BUG: Fortify string casts against floating point warnings
  • #22875: TST: Ignore nan-warnings in randomized out tests
  • #22883: MAINT: restore npymath implementations needed for freebsd
  • #22884: BUG: Fix integer overflow in in1d for mixed integer dtypes #22877
  • #22887: BUG: Use whole file for encoding checks with charset_normalizer.
Checksums MD5
9e543db90493d6a00939bd54c2012085  numpy-1.24.1-cp310-cp310-macosx_10_9_x86_64.whl
4ebd7af622bf617b4876087e500d7586  numpy-1.24.1-cp310-cp310-macosx_11_0_arm64.whl
0c0a3012b438bb455a6c2fadfb1be76a  numpy-1.24.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0bddb527345449df624d3cb9aa0e1b75  numpy-1.24.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b246beb773689d97307f7b4c2970f061  numpy-1.24.1-cp310-cp310-win32.whl
1f3823999fce821a28dee10ac6fdd721  numpy-1.24.1-cp310-cp310-win_amd64.whl
8eedcacd6b096a568e4cb393d43b3ae5  numpy-1.24.1-cp311-cp311-macosx_10_9_x86_64.whl
50bddb05acd54b4396100a70522496dd  numpy-1.24.1-cp311-cp311-macosx_11_0_arm64.whl
2a76bd9da8a78b44eb816bd70fa3aee3  numpy-1.24.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9e86658a414272f9749bde39344f9b76  numpy-1.24.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
915dfb89054e1631574a22a9b53a2b25  numpy-1.24.1-cp311-cp311-win32.whl
ab7caa2c6c20e1fab977e1a94dede976  numpy-1.24.1-cp311-cp311-win_amd64.whl
8246de961f813f5aad89bca3d12f81e7  numpy-1.24.1-cp38-cp38-macosx_10_9_x86_64.whl
58366b1a559baa0547ce976e416ed76d  numpy-1.24.1-cp38-cp38-macosx_11_0_arm64.whl
a96f29bf106a64f82b9ba412635727d1  numpy-1.24.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4c32a43bdb85121614ab3e99929e33c7  numpy-1.24.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
09b20949ed21683ad7c9cbdf9ebb2439  numpy-1.24.1-cp38-cp38-win32.whl
9e9f1577f874286a8bdff8dc5551eb9f  numpy-1.24.1-cp38-cp38-win_amd64.whl
4383c1137f0287df67c364fbdba2bc72  numpy-1.24.1-cp39-cp39-macosx_10_9_x86_64.whl
987f22c49b2be084b5d72f88f347d31e  numpy-1.24.1-cp39-cp39-macosx_11_0_arm64.whl
848ad020bba075ed8f19072c64dcd153  numpy-1.24.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
864b159e644848bc25f881907dbcf062  numpy-1.24.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
db339ec0b2693cac2d7cf9ca75c334b1  numpy-1.24.1-cp39-cp39-win32.whl
fec91d4c85066ad8a93816d71b627701  numpy-1.24.1-cp39-cp39-win_amd64.whl
619af9cd4f33b668822ae2350f446a15  numpy-1.24.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
46f19b4b147f8836c2bd34262fabfffa  numpy-1.24.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e85b245c57a10891b3025579bf0cf298  numpy-1.24.1-pp38-pypy38_pp73-win_amd64.whl
dd3aaeeada8e95cc2edf9a3a4aa8b5af  numpy-1.24.1.tar.gz
SHA256
179a7ef0889ab769cc03573b6217f54c8bd8e16cef80aad369e1e8185f994cd7  numpy-1.24.1-cp310-cp310-macosx_10_9_x86_64.whl
b09804ff570b907da323b3d762e74432fb07955701b17b08ff1b5ebaa8cfe6a9  numpy-1.24.1-cp310-cp310-macosx_11_0_arm64.whl
f1b739841821968798947d3afcefd386fa56da0caf97722a5de53e07c4ccedc7  numpy-1.24.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0e3463e6ac25313462e04aea3fb8a0a30fb906d5d300f58b3bc2c23da6a15398  numpy-1.24.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b31da69ed0c18be8b77bfce48d234e55d040793cebb25398e2a7d84199fbc7e2  numpy-1.24.1-cp310-cp310-win32.whl
b07b40f5fb4fa034120a5796288f24c1fe0e0580bbfff99897ba6267af42def2  numpy-1.24.1-cp310-cp310-win_amd64.whl
7094891dcf79ccc6bc2a1f30428fa5edb1e6fb955411ffff3401fb4ea93780a8  numpy-1.24.1-cp311-cp311-macosx_10_9_x86_64.whl
28e418681372520c992805bb723e29d69d6b7aa411065f48216d8329d02ba032  numpy-1.24.1-cp311-cp311-macosx_11_0_arm64.whl
e274f0f6c7efd0d577744f52032fdd24344f11c5ae668fe8d01aac0422611df1  numpy-1.24.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0044f7d944ee882400890f9ae955220d29b33d809a038923d88e4e01d652acd9  numpy-1.24.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
442feb5e5bada8408e8fcd43f3360b78683ff12a4444670a7d9e9824c1817d36  numpy-1.24.1-cp311-cp311-win32.whl
de92efa737875329b052982e37bd4371d52cabf469f83e7b8be9bb7752d67e51  numpy-1.24.1-cp311-cp311-win_amd64.whl
b162ac10ca38850510caf8ea33f89edcb7b0bb0dfa5592d59909419986b72407  numpy-1.24.1-cp38-cp38-macosx_10_9_x86_64.whl
26089487086f2648944f17adaa1a97ca6aee57f513ba5f1c0b7ebdabbe2b9954  numpy-1.24.1-cp38-cp38-macosx_11_0_arm64.whl
caf65a396c0d1f9809596be2e444e3bd4190d86d5c1ce21f5fc4be60a3bc5b36  numpy-1.24.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b0677a52f5d896e84414761531947c7a330d1adc07c3a4372262f25d84af7bf7  numpy-1.24.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
dae46bed2cb79a58d6496ff6d8da1e3b95ba09afeca2e277628171ca99b99db1  numpy-1.24.1-cp38-cp38-win32.whl
6ec0c021cd9fe732e5bab6401adea5a409214ca5592cd92a114f7067febcba0c  numpy-1.24.1-cp38-cp38-win_amd64.whl
28bc9750ae1f75264ee0f10561709b1462d450a4808cd97c013046073ae64ab6  numpy-1.24.1-cp39-cp39-macosx_10_9_x86_64.whl
84e789a085aabef2f36c0515f45e459f02f570c4b4c4c108ac1179c34d475ed7  numpy-1.24.1-cp39-cp39-macosx_11_0_arm64.whl
8e669fbdcdd1e945691079c2cae335f3e3a56554e06bbd45d7609a6cf568c700  numpy-1.24.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ef85cf1f693c88c1fd229ccd1055570cb41cdf4875873b7728b6301f12cd05bf  numpy-1.24.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
87a118968fba001b248aac90e502c0b13606721b1343cdaddbc6e552e8dfb56f  numpy-1.24.1-cp39-cp39-win32.whl
ddc7ab52b322eb1e40521eb422c4e0a20716c271a306860979d450decbb51b8e  numpy-1.24.1-cp39-cp39-win_amd64.whl
ed5fb71d79e771ec930566fae9c02626b939e37271ec285e9efaf1b5d4370e7d  numpy-1.24.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
ad2925567f43643f51255220424c23d204024ed428afc5aad0f86f3ffc080086  numpy-1.24.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cfa1161c6ac8f92dea03d625c2d0c05e084668f4a06568b77a25a89111621566  numpy-1.24.1-pp38-pypy38_pp73-win_amd64.whl
2386da9a471cc00a1f47845e27d916d5ec5346ae9696e01a8a34760858fe9dd2  numpy-1.24.1.tar.gz

1.24.0

2 months ago
NumPy 1.24 Release Notes

The NumPy 1.24.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, and clarify the documentation. There are also a large number of new and expired deprecations due to changes in promotion and cleanups. This might be called a deprecation release. Highlights are

  • Many new deprecations, check them out.
  • Many expired deprecations,
  • New F2PY features and fixes.
  • New \"dtype\" and \"casting\" keywords for stacking functions.

See below for the details,

This release supports Python versions 3.8-3.11.

Deprecations Deprecate fastCopyAndTranspose and PyArray_CopyAndTranspose

The numpy.fastCopyAndTranspose function has been deprecated. Use the corresponding copy and transpose methods directly:

arr.T.copy()

The underlying C function PyArray_CopyAndTranspose has also been deprecated from the NumPy C-API.

(gh-22313)

Conversion of out-of-bound Python integers

Attempting a conversion from a Python integer to a NumPy value will now always check whether the result can be represented by NumPy. This means the following examples will fail in the future and give a DeprecationWarning now:

np.uint8(-1)
np.array([3000], dtype=np.int8)

Many of these did succeed before. Such code was mainly useful for unsigned integers with negative values such as np.uint8(-1) giving np.iinfo(np.uint8).max.

Note that conversion between NumPy integers is unaffected, so that np.array(-1).astype(np.uint8) continues to work and use C integer overflow logic. For negative values, it will also work to view the array: np.array(-1, dtype=np.int8).view(np.uint8). In some cases, using np.iinfo(np.uint8).max or val % 2**8 may also work well.

In rare cases input data may mix both negative values and very large unsigned values (i.e. -1 and 2**63). There it is unfortunately necessary to use % on the Python value or use signed or unsigned conversion depending on whether negative values are expected.

(gh-22385)

Deprecate msort

The numpy.msort function is deprecated. Use np.sort(a, axis=0) instead.

(gh-22456)

np.str0 and similar are now deprecated

The scalar type aliases ending in a 0 bit size: np.object0, np.str0, np.bytes0, np.void0, np.int0, np.uint0 as well as np.bool8 are now deprecated and will eventually be removed.

(gh-22607)

Expired deprecations
  • The normed keyword argument has been removed from [np.histogram]{.title-ref}, [np.histogram2d]{.title-ref}, and [np.histogramdd]{.title-ref}. Use density instead. If normed was passed by position, density is now used.

    (gh-21645)

  • Ragged array creation will now always raise a ValueError unless dtype=object is passed. This includes very deeply nested sequences.

    (gh-22004)

  • Support for Visual Studio 2015 and earlier has been removed.

  • Support for the Windows Interix POSIX interop layer has been removed.

    (gh-22139)

  • Support for Cygwin \< 3.3 has been removed.

    (gh-22159)

  • The mini() method of np.ma.MaskedArray has been removed. Use either np.ma.MaskedArray.min() or np.ma.minimum.reduce().

  • The single-argument form of np.ma.minimum and np.ma.maximum has been removed. Use np.ma.minimum.reduce() or np.ma.maximum.reduce() instead.

    (gh-22228)

  • Passing dtype instances other than the canonical (mainly native byte-order) ones to dtype= or signature= in ufuncs will now raise a TypeError. We recommend passing the strings "int8" or scalar types np.int8 since the byte-order, datetime/timedelta unit, etc. are never enforced. (Initially deprecated in NumPy 1.21.)

    (gh-22540)

  • The dtype= argument to comparison ufuncs is now applied correctly. That means that only bool and object are valid values and dtype=object is enforced.

    (gh-22541)

  • The deprecation for the aliases np.object, np.bool, np.float, np.complex, np.str, and np.int is expired (introduces NumPy 1.20). Some of these will now give a FutureWarning in addition to raising an error since they will be mapped to the NumPy scalars in the future.

    (gh-22607)

Compatibility notes array.fill(scalar) may behave slightly different

numpy.ndarray.fill may in some cases behave slightly different now due to the fact that the logic is aligned with item assignment:

arr = np.array([1])  # with any dtype/value
arr.fill(scalar)
# is now identical to:
arr[0] = scalar

Previously casting may have produced slightly different answers when using values that could not be represented in the target dtype or when the target had object dtype.

(gh-20924)

Subarray to object cast now copies

Casting a dtype that includes a subarray to an object will now ensure a copy of the subarray. Previously an unsafe view was returned:

arr = np.ones(3, dtype=[("f", "i", 3)])
subarray_fields = arr.astype(object)[0]
subarray = subarray_fields[0]  # "f" field

np.may_share_memory(subarray, arr)

Is now always false. While previously it was true for the specific cast.

(gh-21925)

Returned arrays respect uniqueness of dtype kwarg objects

When the dtype keyword argument is used with :pynp.array(){.interpreted-text role="func"} or :pyasarray(){.interpreted-text role="func"}, the dtype of the returned array now always exactly matches the dtype provided by the caller.

In some cases this change means that a view rather than the input array is returned. The following is an example for this on 64bit Linux where long and longlong are the same precision but different dtypes:

>>> arr = np.array([1, 2, 3], dtype="long")
>>> new_dtype = np.dtype("longlong")
>>> new = np.asarray(arr, dtype=new_dtype)
>>> new.dtype is new_dtype
True
>>> new is arr
False

Before the change, the dtype did not match because new is arr was True.

(gh-21995)

DLPack export raises BufferError

When an array buffer cannot be exported via DLPack a BufferError is now always raised where previously TypeError or RuntimeError was raised. This allows falling back to the buffer protocol or __array_interface__ when DLPack was tried first.

(gh-22542)

NumPy builds are no longer tested on GCC-6

Ubuntu 18.04 is deprecated for GitHub actions and GCC-6 is not available on Ubuntu 20.04, so builds using that compiler are no longer tested. We still test builds using GCC-7 and GCC-8.

(gh-22598)

New Features New attribute symbol added to polynomial classes

The polynomial classes in the numpy.polynomial package have a new symbol attribute which is used to represent the indeterminate of the polynomial. This can be used to change the value of the variable when printing:

>>> P_y = np.polynomial.Polynomial([1, 0, -1], symbol="y")
>>> print(P_y)
1.0 + 0.0·y¹ - 1.0·y²

Note that the polynomial classes only support 1D polynomials, so operations that involve polynomials with different symbols are disallowed when the result would be multivariate:

>>> P = np.polynomial.Polynomial([1, -1])  # default symbol is "x"
>>> P_z = np.polynomial.Polynomial([1, 1], symbol="z")
>>> P * P_z
Traceback (most recent call last)
   ...
ValueError: Polynomial symbols differ

The symbol can be any valid Python identifier. The default is symbol=x, consistent with existing behavior.

(gh-16154)

F2PY support for Fortran character strings

F2PY now supports wrapping Fortran functions with:

  • character (e.g. character x)
  • character array (e.g. character, dimension(n) :: x)
  • character string (e.g. character(len=10) x)
  • and character string array (e.g. character(len=10), dimension(n, m) :: x)

arguments, including passing Python unicode strings as Fortran character string arguments.

(gh-19388)

New function np.show_runtime

A new function numpy.show_runtime has been added to display the runtime information of the machine in addition to numpy.show_config which displays the build-related information.

(gh-21468)

strict option for testing.assert_array_equal

The strict option is now available for testing.assert_array_equal. Setting strict=True will disable the broadcasting behaviour for scalars and ensure that input arrays have the same data type.

(gh-21595)

New parameter equal_nan added to np.unique

np.unique was changed in 1.21 to treat all NaN values as equal and return a single NaN. Setting equal_nan=False will restore pre-1.21 behavior to treat NaNs as unique. Defaults to True.

(gh-21623)

casting and dtype keyword arguments for numpy.stack

The casting and dtype keyword arguments are now available for numpy.stack. To use them, write np.stack(..., dtype=None, casting='same_kind').

casting and dtype keyword arguments for numpy.vstack

The casting and dtype keyword arguments are now available for numpy.vstack. To use them, write np.vstack(..., dtype=None, casting='same_kind').

casting and dtype keyword arguments for numpy.hstack

The casting and dtype keyword arguments are now available for numpy.hstack. To use them, write np.hstack(..., dtype=None, casting='same_kind').

(gh-21627)

The bit generator underlying the singleton RandomState can be changed

The singleton RandomState instance exposed in the numpy.random module is initialized at startup with the MT19937 bit generator. The new function set_bit_generator allows the default bit generator to be replaced with a user-provided bit generator. This function has been introduced to provide a method allowing seamless integration of a high-quality, modern bit generator in new code with existing code that makes use of the singleton-provided random variate generating functions. The companion function get_bit_generator returns the current bit generator being used by the singleton RandomState. This is provided to simplify restoring the original source of randomness if required.

The preferred method to generate reproducible random numbers is to use a modern bit generator in an instance of Generator. The function default_rng simplifies instantiation:

>>> rg = np.random.default_rng(3728973198)
>>> rg.random()

The same bit generator can then be shared with the singleton instance so that calling functions in the random module will use the same bit generator:

>>> orig_bit_gen = np.random.get_bit_generator()
>>> np.random.set_bit_generator(rg.bit_generator)
>>> np.random.normal()

The swap is permanent (until reversed) and so any call to functions in the random module will use the new bit generator. The original can be restored if required for code to run correctly:

>>> np.random.set_bit_generator(orig_bit_gen)

(gh-21976)

np.void now has a dtype argument

NumPy now allows constructing structured void scalars directly by passing the dtype argument to np.void.

(gh-22316)

Improvements F2PY Improvements
  • The generated extension modules don\'t use the deprecated NumPy-C API anymore
  • Improved f2py generated exception messages
  • Numerous bug and flake8 warning fixes
  • various CPP macros that one can use within C-expressions of signature files are prefixed with f2py_. For example, one should use f2py_len(x) instead of len(x)
  • A new construct character(f2py_len=...) is introduced to support returning assumed length character strings (e.g. character(len=*)) from wrapper functions

A hook to support rewriting f2py internal data structures after reading all its input files is introduced. This is required, for instance, for BC of SciPy support where character arguments are treated as character strings arguments in C expressions.

(gh-19388)

IBM zSystems Vector Extension Facility (SIMD)

Added support for SIMD extensions of zSystem (z13, z14, z15), through the universal intrinsics interface. This support leads to performance improvements for all SIMD kernels implemented using the universal intrinsics, including the following operations: rint, floor, trunc, ceil, sqrt, absolute, square, reciprocal, tanh, sin, cos, equal, not_equal, greater, greater_equal, less, less_equal, maximum, minimum, fmax, fmin, argmax, argmin, add, subtract, multiply, divide.

(gh-20913)

NumPy now gives floating point errors in casts

In most cases, NumPy previously did not give floating point warnings or errors when these happened during casts. For examples, casts like:

np.array([2e300]).astype(np.float32)  # overflow for float32
np.array([np.inf]).astype(np.int64)

Should now generally give floating point warnings. These warnings should warn that floating point overflow occurred. For errors when converting floating point values to integers users should expect invalid value warnings.

Users can modify the behavior of these warnings using np.errstate.

Note that for float to int casts, the exact warnings that are given may be platform dependent. For example:

arr = np.full(100, value=1000, dtype=np.float64)
arr.astype(np.int8)

May give a result equivalent to (the intermediate cast means no warning is given):

arr.astype(np.int64).astype(np.int8)

May return an undefined result, with a warning set:

RuntimeWarning: invalid value encountered in cast

The precise behavior is subject to the C99 standard and its implementation in both software and hardware.

(gh-21437)

F2PY supports the value attribute

The Fortran standard requires that variables declared with the value attribute must be passed by value instead of reference. F2PY now supports this use pattern correctly. So integer, intent(in), value :: x in Fortran codes will have correct wrappers generated.

(gh-21807)

Added pickle support for third-party BitGenerators

The pickle format for bit generators was extended to allow each bit generator to supply its own constructor when during pickling. Previous versions of NumPy only supported unpickling Generator instances created with one of the core set of bit generators supplied with NumPy. Attempting to unpickle a Generator that used a third-party bit generators would fail since the constructor used during the unpickling was only aware of the bit generators included in NumPy.

(gh-22014)

arange() now explicitly fails with dtype=str

Previously, the np.arange(n, dtype=str) function worked for n=1 and n=2, but would raise a non-specific exception message for other values of n. Now, it raises a [TypeError]{.title-ref} informing that arange does not support string dtypes:

>>> np.arange(2, dtype=str)
Traceback (most recent call last)
   ...
TypeError: arange() not supported for inputs with DType <class 'numpy.dtype[str_]'>.

(gh-22055)

numpy.typing protocols are now runtime checkable

The protocols used in numpy.typing.ArrayLike and numpy.typing.DTypeLike are now properly marked as runtime checkable, making them easier to use for runtime type checkers.

(gh-22357)

Performance improvements and changes Faster version of np.isin and np.in1d for integer arrays

np.in1d (used by np.isin) can now switch to a faster algorithm (up to >10x faster) when it is passed two integer arrays. This is often automatically used, but you can use kind="sort" or kind="table" to force the old or new method, respectively.

(gh-12065)

Faster comparison operators

The comparison functions (numpy.equal, numpy.not_equal, numpy.less, numpy.less_equal, numpy.greater and numpy.greater_equal) are now much faster as they are now vectorized with universal intrinsics. For a CPU with SIMD extension AVX512BW, the performance gain is up to 2.57x, 1.65x and 19.15x for integer, float and boolean data types, respectively (with N=50000).

(gh-21483)

Changes Better reporting of integer division overflow

Integer division overflow of scalars and arrays used to provide a RuntimeWarning and the return value was undefined leading to crashes at rare occasions:

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: divide by zero encountered in floor_divide
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0], dtype=int32)

Integer division overflow now returns the input dtype\'s minimum value and raise the following RuntimeWarning:

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: overflow encountered in floor_divide
array([-2147483648, -2147483648, -2147483648, -2147483648, -2147483648,
       -2147483648, -2147483648, -2147483648, -2147483648, -2147483648],
      dtype=int32)

(gh-21506)

masked_invalid now modifies the mask in-place

When used with copy=False, numpy.ma.masked_invalid now modifies the input masked array in-place. This makes it behave identically to masked_where and better matches the documentation.

(gh-22046)

nditer/NpyIter allows all allocating all operands

The NumPy iterator available through np.nditer in Python and as NpyIter in C now supports allocating all arrays. The iterator shape defaults to () in this case. The operands dtype must be provided, since a \"common dtype\" cannot be inferred from the other inputs.

(gh-22457)

Checksums MD5
d60311246bd71b177258ce06e2a4ec57  numpy-1.24.0-cp310-cp310-macosx_10_9_x86_64.whl
02022b335938af55cb83bbaebdbff8e1  numpy-1.24.0-cp310-cp310-macosx_11_0_arm64.whl
02b35d6612369fcc614c6223aaec0119  numpy-1.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7b8ad389a9619db3e1f8243fc0cfe63d  numpy-1.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
6ff4acbb7b1258ccbd528c151eb0fe84  numpy-1.24.0-cp310-cp310-win32.whl
d194c96601222db97b0af54fce1cfb1d  numpy-1.24.0-cp310-cp310-win_amd64.whl
5fe4eb551a9312e37492da9f5bfb8545  numpy-1.24.0-cp311-cp311-macosx_10_9_x86_64.whl
a8e836a768f73e9f509b11c3873c7e09  numpy-1.24.0-cp311-cp311-macosx_11_0_arm64.whl
10404d6d1a5a9624f85018f61110b2be  numpy-1.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
cfdb0cb844f1db9be2cde998be54d65f  numpy-1.24.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
73bc66ad3ae8656ba18d64db98feb5e1  numpy-1.24.0-cp311-cp311-win32.whl
4bbc30a53009c48d364d4dc2c612af95  numpy-1.24.0-cp311-cp311-win_amd64.whl
94ce5f6a09605a9675a0d464b1ec6597  numpy-1.24.0-cp38-cp38-macosx_10_9_x86_64.whl
e5e42b69a209eda7e6895dda39ea8610  numpy-1.24.0-cp38-cp38-macosx_11_0_arm64.whl
36eb6143d1e2aac3c618275edf636983  numpy-1.24.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
712c3718e8b53ff04c626cc4c78492aa  numpy-1.24.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0a1a48a8e458bd4ce581169484c17e4f  numpy-1.24.0-cp38-cp38-win32.whl
c8ab7e4b919548663568a5b5a8b5eab4  numpy-1.24.0-cp38-cp38-win_amd64.whl
1783a5d769566111d93c474c79892c01  numpy-1.24.0-cp39-cp39-macosx_10_9_x86_64.whl
c9e77130674372c73f8209d58396624d  numpy-1.24.0-cp39-cp39-macosx_11_0_arm64.whl
14c0f2f52f20f13a81bba7df27f30145  numpy-1.24.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
c106393b46fa0302dbac49b14a4dfed4  numpy-1.24.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c83e6d6946f32820f166c3f1ff010ab6  numpy-1.24.0-cp39-cp39-win32.whl
acd5a4737d1094d5f40afa584dbd6d79  numpy-1.24.0-cp39-cp39-win_amd64.whl
26e32f942c9fd62f64fd9bf6df95b5b1  numpy-1.24.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
4f027df0cc313ca626b106849999de13  numpy-1.24.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ac58db9a90d0bec95bc7850b9e462f34  numpy-1.24.0-pp38-pypy38_pp73-win_amd64.whl
1ca41c84ad9a116402a025d21e35bc64  numpy-1.24.0.tar.gz
SHA256
6e73a1f4f5b74a42abb55bc2b3d869f1b38cbc8776da5f8b66bf110284f7a437  numpy-1.24.0-cp310-cp310-macosx_10_9_x86_64.whl
9387c7d6d50e8f8c31e7bfc034241e9c6f4b3eb5db8d118d6487047b922f82af  numpy-1.24.0-cp310-cp310-macosx_11_0_arm64.whl
7ad6a024a32ee61d18f5b402cd02e9c0e22c0fb9dc23751991b3a16d209d972e  numpy-1.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
73cf2c5b5a07450f20a0c8e04d9955491970177dce8df8d6903bf253e53268e0  numpy-1.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cec79ff3984b2d1d103183fc4a3361f5b55bbb66cb395cbf5a920a4bb1fd588d  numpy-1.24.0-cp310-cp310-win32.whl
4f5e78b8b710cd7cd1a8145994cfffc6ddd5911669a437777d8cedfce6c83a98  numpy-1.24.0-cp310-cp310-win_amd64.whl
4445f472b246cad6514cc09fbb5ecb7aab09ca2acc3c16f29f8dca6c468af501  numpy-1.24.0-cp311-cp311-macosx_10_9_x86_64.whl
ec3e5e8172a0a6a4f3c2e7423d4a8434c41349141b04744b11a90e017a95bad5  numpy-1.24.0-cp311-cp311-macosx_11_0_arm64.whl
f9168790149f917ad8e3cf5047b353fefef753bd50b07c547da0bdf30bc15d91  numpy-1.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ada6c1e9608ceadaf7020e1deea508b73ace85560a16f51bef26aecb93626a72  numpy-1.24.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f3c4a9a9f92734a4728ddbd331e0124eabbc968a0359a506e8e74a9b0d2d419b  numpy-1.24.0-cp311-cp311-win32.whl
90075ef2c6ac6397d0035bcd8b298b26e481a7035f7a3f382c047eb9c3414db0  numpy-1.24.0-cp311-cp311-win_amd64.whl
0885d9a7666cafe5f9876c57bfee34226e2b2847bfb94c9505e18d81011e5401  numpy-1.24.0-cp38-cp38-macosx_10_9_x86_64.whl
e63d2157f9fc98cc178870db83b0e0c85acdadd598b134b00ebec9e0db57a01f  numpy-1.24.0-cp38-cp38-macosx_11_0_arm64.whl
cf8960f72997e56781eb1c2ea256a70124f92a543b384f89e5fb3503a308b1d3  numpy-1.24.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
2f8e0df2ecc1928ef7256f18e309c9d6229b08b5be859163f5caa59c93d53646  numpy-1.24.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
fe44e925c68fb5e8db1334bf30ac1a1b6b963b932a19cf41d2e899cf02f36aab  numpy-1.24.0-cp38-cp38-win32.whl
d7f223554aba7280e6057727333ed357b71b7da7422d02ff5e91b857888c25d1  numpy-1.24.0-cp38-cp38-win_amd64.whl
ab11f6a7602cf8ea4c093e091938207de3068c5693a0520168ecf4395750f7ea  numpy-1.24.0-cp39-cp39-macosx_10_9_x86_64.whl
12bba5561d8118981f2f1ff069ecae200c05d7b6c78a5cdac0911f74bc71cbd1  numpy-1.24.0-cp39-cp39-macosx_11_0_arm64.whl
9af91f794d2d3007d91d749ebc955302889261db514eb24caef30e03e8ec1e41  numpy-1.24.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8b1ddfac6a82d4f3c8e99436c90b9c2c68c0bb14658d1684cdd00f05fab241f5  numpy-1.24.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ac4fe68f1a5a18136acebd4eff91aab8bed00d1ef2fdb34b5d9192297ffbbdfc  numpy-1.24.0-cp39-cp39-win32.whl
667b5b1f6a352419e340f6475ef9930348ae5cb7fca15f2cc3afcb530823715e  numpy-1.24.0-cp39-cp39-win_amd64.whl
4d01f7832fa319a36fd75ba10ea4027c9338ede875792f7bf617f4b45056fc3a  numpy-1.24.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
dbb0490f0a880700a6cc4d000384baf19c1f4df59fff158d9482d4dbbca2b239  numpy-1.24.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0104d8adaa3a4cc60c2777cab5196593bf8a7f416eda133be1f3803dd0838886  numpy-1.24.0-pp38-pypy38_pp73-win_amd64.whl
c4ab7c9711fe6b235e86487ca74c1b092a6dd59a3cb45b63241ea0a148501853  numpy-1.24.0.tar.gz

1.24.0rc2

2 months ago
NumPy 1.24 Release Notes

The NumPy 1.24.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, and clarify the documentation. There are also a large number of new and expired deprecations due to changes in promotion and cleanups. This might be called a deprecation release. Highlights are

  • Many new deprecations, check them out.
  • Many expired deprecations,
  • New F2PY features and fixes.
  • New \"dtype\" and \"casting\" keywords for stacking functions.

See below for the details,

Deprecations Deprecate fastCopyAndTranspose and PyArray_CopyAndTranspose

The numpy.fastCopyAndTranspose function has been deprecated. Use the corresponding copy and transpose methods directly:

arr.T.copy()

The underlying C function PyArray_CopyAndTranspose has also been deprecated from the NumPy C-API.

(gh-22313)

Conversion of out-of-bound Python integers

Attempting a conversion from a Python integer to a NumPy value will now always check whether the result can be represented by NumPy. This means the following examples will fail in the future and give a DeprecationWarning now:

np.uint8(-1)
np.array([3000], dtype=np.int8)

Many of these did succeed before. Such code was mainly useful for unsigned integers with negative values such as np.uint8(-1) giving np.iinfo(np.uint8).max.

Note that conversion between NumPy integers is unaffected, so that np.array(-1).astype(np.uint8) continues to work and use C integer overflow logic.

(gh-22393)

Deprecate msort

The numpy.msort function is deprecated. Use np.sort(a, axis=0) instead.

(gh-22456)

np.str0 and similar are now deprecated

The scalar type aliases ending in a 0 bit size: np.object0, np.str0, np.bytes0, np.void0, np.int0, np.uint0 as well as np.bool8 are now deprecated and will eventually be removed.

(gh-22607)

Expired deprecations
  • The normed keyword argument has been removed from [np.histogram]{.title-ref}, [np.histogram2d]{.title-ref}, and [np.histogramdd]{.title-ref}. Use density instead. If normed was passed by position, density is now used.

    (gh-21645)

  • Ragged array creation will now always raise a ValueError unless dtype=object is passed. This includes very deeply nested sequences.

    (gh-22004)

  • Support for Visual Studio 2015 and earlier has been removed.

  • Support for the Windows Interix POSIX interop layer has been removed.

    (gh-22139)

  • Support for cygwin \< 3.3 has been removed.

    (gh-22159)

  • The mini() method of np.ma.MaskedArray has been removed. Use either np.ma.MaskedArray.min() or np.ma.minimum.reduce().

  • The single-argument form of np.ma.minimum and np.ma.maximum has been removed. Use np.ma.minimum.reduce() or np.ma.maximum.reduce() instead.

    (gh-22228)

  • Passing dtype instances other than the canonical (mainly native byte-order) ones to dtype= or signature= in ufuncs will now raise a TypeError. We recommend passing the strings "int8" or scalar types np.int8 since the byte-order, datetime/timedelta unit, etc. are never enforced. (Initially deprecated in NumPy 1.21.)

    (gh-22540)

  • The dtype= argument to comparison ufuncs is now applied correctly. That means that only bool and object are valid values and dtype=object is enforced.

    (gh-22541)

  • The deprecation for the aliases np.object, np.bool, np.float, np.complex, np.str, and np.int is expired (introduces NumPy 1.20). Some of these will now give a FutureWarning in addition to raising an error since they will be mapped to the NumPy scalars in the future.

    (gh-22607)

Compatibility notes array.fill(scalar) may behave slightly different

numpy.ndarray.fill may in some cases behave slightly different now due to the fact that the logic is aligned with item assignment:

arr = np.array([1])  # with any dtype/value
arr.fill(scalar)
# is now identical to:
arr[0] = scalar

Previously casting may have produced slightly different answers when using values that could not be represented in the target dtype or when the target had object dtype.

(gh-20924)

Subarray to object cast now copies

Casting a dtype that includes a subarray to an object will now ensure a copy of the subarray. Previously an unsafe view was returned:

arr = np.ones(3, dtype=[("f", "i", 3)])
subarray_fields = arr.astype(object)[0]
subarray = subarray_fields[0]  # "f" field

np.may_share_memory(subarray, arr)

Is now always false. While previously it was true for the specific cast.

(gh-21925)

Returned arrays respect uniqueness of dtype kwarg objects

When the dtype keyword argument is used with :pynp.array(){.interpreted-text role="func"} or :pyasarray(){.interpreted-text role="func"}, the dtype of the returned array now always exactly matches the dtype provided by the caller.

In some cases this change means that a view rather than the input array is returned. The following is an example for this on 64bit Linux where long and longlong are the same precision but different dtypes:

>>> arr = np.array([1, 2, 3], dtype="long")
>>> new_dtype = np.dtype("longlong")
>>> new = np.asarray(arr, dtype=new_dtype)
>>> new.dtype is new_dtype
True
>>> new is arr
False

Before the change, the dtype did not match because new is arr was True.

(gh-21995)

DLPack export raises BufferError

When an array buffer cannot be exported via DLPack a BufferError is now always raised where previously TypeError or RuntimeError was raised. This allows falling back to the buffer protocol or __array_interface__ when DLPack was tried first.

(gh-22542)

NumPy builds are no longer tested on GCC-6

Ubuntu 18.04 is deprecated for GitHub actions and GCC-6 is not available on Ubuntu 20.04, so builds using that compiler are no longer tested. We still test builds using GCC-7 and GCC-8.

(gh-22598)

New Features New attribute symbol added to polynomial classes

The polynomial classes in the numpy.polynomial package have a new symbol attribute which is used to represent the indeterminate of the polynomial. This can be used to change the value of the variable when printing:

>>> P_y = np.polynomial.Polynomial([1, 0, -1], symbol="y")
>>> print(P_y)
1.0 + 0.0·y¹ - 1.0·y²

Note that the polynomial classes only support 1D polynomials, so operations that involve polynomials with different symbols are disallowed when the result would be multivariate:

>>> P = np.polynomial.Polynomial([1, -1])  # default symbol is "x"
>>> P_z = np.polynomial.Polynomial([1, 1], symbol="z")
>>> P * P_z
Traceback (most recent call last)
   ...
ValueError: Polynomial symbols differ

The symbol can be any valid Python identifier. The default is symbol=x, consistent with existing behavior.

(gh-16154)

F2PY support for Fortran character strings

F2PY now supports wrapping Fortran functions with:

  • character (e.g. character x)
  • character array (e.g. character, dimension(n) :: x)
  • character string (e.g. character(len=10) x)
  • and character string array (e.g. character(len=10), dimension(n, m) :: x)

arguments, including passing Python unicode strings as Fortran character string arguments.

(gh-19388)

New function np.show_runtime

A new function numpy.show_runtime has been added to display the runtime information of the machine in addition to numpy.show_config which displays the build-related information.

(gh-21468)

strict option for testing.assert_array_equal

The strict option is now available for testing.assert_array_equal. Setting strict=True will disable the broadcasting behaviour for scalars and ensure that input arrays have the same data type.

(gh-21595)

New parameter equal_nan added to np.unique

np.unique was changed in 1.21 to treat all NaN values as equal and return a single NaN. Setting equal_nan=False will restore pre-1.21 behavior to treat NaNs as unique. Defaults to True.

(gh-21623)

casting and dtype keyword arguments for numpy.stack

The casting and dtype keyword arguments are now available for numpy.stack. To use them, write np.stack(..., dtype=None, casting='same_kind').

casting and dtype keyword arguments for numpy.vstack

The casting and dtype keyword arguments are now available for numpy.vstack. To use them, write np.vstack(..., dtype=None, casting='same_kind').

casting and dtype keyword arguments for numpy.hstack

The casting and dtype keyword arguments are now available for numpy.hstack. To use them, write np.hstack(..., dtype=None, casting='same_kind').

(gh-21627)

The bit generator underlying the singleton RandomState can be changed

The singleton RandomState instance exposed in the numpy.random module is initialized at startup with the MT19937 bit generator. The new function set_bit_generator allows the default bit generator to be replaced with a user-provided bit generator. This function has been introduced to provide a method allowing seamless integration of a high-quality, modern bit generator in new code with existing code that makes use of the singleton-provided random variate generating functions. The companion function get_bit_generator returns the current bit generator being used by the singleton RandomState. This is provided to simplify restoring the original source of randomness if required.

The preferred method to generate reproducible random numbers is to use a modern bit generator in an instance of Generator. The function default_rng simplifies instantiation:

>>> rg = np.random.default_rng(3728973198)
>>> rg.random()

The same bit generator can then be shared with the singleton instance so that calling functions in the random module will use the same bit generator:

>>> orig_bit_gen = np.random.get_bit_generator()
>>> np.random.set_bit_generator(rg.bit_generator)
>>> np.random.normal()

The swap is permanent (until reversed) and so any call to functions in the random module will use the new bit generator. The original can be restored if required for code to run correctly:

>>> np.random.set_bit_generator(orig_bit_gen)

(gh-21976)

np.void now has a dtype argument

NumPy now allows constructing structured void scalars directly by passing the dtype argument to np.void.

(gh-22316)

Improvements F2PY Improvements
  • The generated extension modules don\'t use the deprecated NumPy-C API anymore
  • Improved f2py generated exception messages
  • Numerous bug and flake8 warning fixes
  • various CPP macros that one can use within C-expressions of signature files are prefixed with f2py_. For example, one should use f2py_len(x) instead of len(x)
  • A new construct character(f2py_len=...) is introduced to support returning assumed length character strings (e.g. character(len=*)) from wrapper functions

A hook to support rewriting f2py internal data structures after reading all its input files is introduced. This is required, for instance, for BC of SciPy support where character arguments are treated as character strings arguments in C expressions.

(gh-19388)

IBM zSystems Vector Extension Facility (SIMD)

Added support for SIMD extensions of zSystem (z13, z14, z15), through the universal intrinsics interface. This support leads to performance improvements for all SIMD kernels implemented using the universal intrinsics, including the following operations: rint, floor, trunc, ceil, sqrt, absolute, square, reciprocal, tanh, sin, cos, equal, not_equal, greater, greater_equal, less, less_equal, maximum, minimum, fmax, fmin, argmax, argmin, add, subtract, multiply, divide.

(gh-20913)

NumPy now gives floating point errors in casts

In most cases, NumPy previously did not give floating point warnings or errors when these happened during casts. For examples, casts like:

np.array([2e300]).astype(np.float32)  # overflow for float32
np.array([np.inf]).astype(np.int64)

Should now generally give floating point warnings. These warnings should warn that floating point overflow occurred. For errors when converting floating point values to integers users should expect invalid value warnings.

Users can modify the behavior of these warnings using np.errstate.

Note that for float to int casts, the exact warnings that are given may be platform dependent. For example:

arr = np.full(100, value=1000, dtype=np.float64)
arr.astype(np.int8)

May give a result equivalent to (the intermediate cast means no warning is given):

arr.astype(np.int64).astype(np.int8)

May return an undefined result, with a warning set:

RuntimeWarning: invalid value encountered in cast

The precise behavior is subject to the C99 standard and its implementation in both software and hardware.

(gh-21437)

F2PY supports the value attribute

The Fortran standard requires that variables declared with the value attribute must be passed by value instead of reference. F2PY now supports this use pattern correctly. So integer, intent(in), value :: x in Fortran codes will have correct wrappers generated.

(gh-21807)

Added pickle support for third-party BitGenerators

The pickle format for bit generators was extended to allow each bit generator to supply its own constructor when during pickling. Previous versions of NumPy only supported unpickling Generator instances created with one of the core set of bit generators supplied with NumPy. Attempting to unpickle a Generator that used a third-party bit generators would fail since the constructor used during the unpickling was only aware of the bit generators included in NumPy.

(gh-22014)

arange() now explicitly fails with dtype=str

Previously, the np.arange(n, dtype=str) function worked for n=1 and n=2, but would raise a non-specific exception message for other values of n. Now, it raises a [TypeError]{.title-ref} informing that arange does not support string dtypes:

>>> np.arange(2, dtype=str)
Traceback (most recent call last)
   ...
TypeError: arange() not supported for inputs with DType <class 'numpy.dtype[str_]'>.

(gh-22055)

numpy.typing protocols are now runtime checkable

The protocols used in numpy.typing.ArrayLike and numpy.typing.DTypeLike are now properly marked as runtime checkable, making them easier to use for runtime type checkers.

(gh-22357)

Performance improvements and changes Faster version of np.isin and np.in1d for integer arrays

np.in1d (used by np.isin) can now switch to a faster algorithm (up to >10x faster) when it is passed two integer arrays. This is often automatically used, but you can use kind="sort" or kind="table" to force the old or new method, respectively.

(gh-12065)

Faster comparison operators

The comparison functions (numpy.equal, numpy.not_equal, numpy.less, numpy.less_equal, numpy.greater and numpy.greater_equal) are now much faster as they are now vectorized with universal intrinsics. For a CPU with SIMD extension AVX512BW, the performance gain is up to 2.57x, 1.65x and 19.15x for integer, float and boolean data types, respectively (with N=50000).

(gh-21483)

Changes Better reporting of integer division overflow

Integer division overflow of scalars and arrays used to provide a RuntimeWarning and the return value was undefined leading to crashes at rare occasions:

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: divide by zero encountered in floor_divide
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0], dtype=int32)

Integer division overflow now returns the input dtype\'s minimum value and raise the following RuntimeWarning:

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: overflow encountered in floor_divide
array([-2147483648, -2147483648, -2147483648, -2147483648, -2147483648,
       -2147483648, -2147483648, -2147483648, -2147483648, -2147483648],
      dtype=int32)

(gh-21506)

masked_invalid now modifies the mask in-place

When used with copy=False, numpy.ma.masked_invalid now modifies the input masked array in-place. This makes it behave identically to masked_where and better matches the documentation.

(gh-22046)

nditer/NpyIter allows all allocating all operands

The NumPy iterator available through np.nditer in Python and as NpyIter in C now supports allocating all arrays. The iterator shape defaults to () in this case. The operands dtype must be provided, since a \"common dtype\" cannot be inferred from the other inputs.

(gh-22457)

Checksums MD5
0f45cfebcb56027a7c9fc14577082789  numpy-1.24.0rc2-cp310-cp310-macosx_10_9_x86_64.whl
c895f8af0f548ba2bbb948119a151cf7  numpy-1.24.0rc2-cp310-cp310-macosx_11_0_arm64.whl
4552d324786e3c05732135c59a73fbc6  numpy-1.24.0rc2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
99e4634eb1474e8c443cd6cee5dbc39e  numpy-1.24.0rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f0304cb2aa708dfe1e0aa16cdfa3046d  numpy-1.24.0rc2-cp310-cp310-win32.whl
501424e62329ac7996be850a2fc58963  numpy-1.24.0rc2-cp310-cp310-win_amd64.whl
2b6a65ea122eaffb2f3b5643b1ce1ec4  numpy-1.24.0rc2-cp311-cp311-macosx_10_9_x86_64.whl
865bbc90494b6e9e845ac1eb08ba0377  numpy-1.24.0rc2-cp311-cp311-macosx_11_0_arm64.whl
faa4f8e5050cb7c4319d2c2df23eca05  numpy-1.24.0rc2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
509fbe04ec7941baaedc6502d003b864  numpy-1.24.0rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
2eb1e8cd4c53ee4046fb0cd858daef80  numpy-1.24.0rc2-cp311-cp311-win32.whl
f5bd22dee1273898598f373b72e40f84  numpy-1.24.0rc2-cp311-cp311-win_amd64.whl
6a7b14b0fcbb33a8a415e27afc856544  numpy-1.24.0rc2-cp38-cp38-macosx_10_9_x86_64.whl
8a26467d235710d2db2bc68ef639318f  numpy-1.24.0rc2-cp38-cp38-macosx_11_0_arm64.whl
e6f08e32041c4e3ca64b8714f2c1f1c8  numpy-1.24.0rc2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7112b8e3f9a46953b0a1e9a670008ed4  numpy-1.24.0rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
9a7155f0a4a39e17bd70c17331c7e765  numpy-1.24.0rc2-cp38-cp38-win32.whl
cb10d074bf1977d2257209f96465e639  numpy-1.24.0rc2-cp38-cp38-win_amd64.whl
0fa5a0f9dfbb817061bd3b438a0e0b19  numpy-1.24.0rc2-cp39-cp39-macosx_10_9_x86_64.whl
39bd8e522bf703f0be585a7b30861fd0  numpy-1.24.0rc2-cp39-cp39-macosx_11_0_arm64.whl
a8907c987c7b5f66891cf294dbba4347  numpy-1.24.0rc2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7a5f46715e8b93c7b86f275c7ae3f160  numpy-1.24.0rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
04daa21b43702b1bf5431731d16a59d6  numpy-1.24.0rc2-cp39-cp39-win32.whl
046ebc9bb672392443280192e8c71a6d  numpy-1.24.0rc2-cp39-cp39-win_amd64.whl
e44b5d937de603499ccf29d96e308cd7  numpy-1.24.0rc2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
6a0c0372e7d4db195dd8e889d70de00b  numpy-1.24.0rc2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
946e249ee0dab46c57b5b913ccfe80cd  numpy-1.24.0rc2-pp38-pypy38_pp73-win_amd64.whl
0974533ba76def71daa78cd0df753e1e  numpy-1.24.0rc2.tar.gz
SHA256
dce26877ad77c9722e35c9ca82e9272cb6d10aa0a4f95e633b13511dcf549b5f  numpy-1.24.0rc2-cp310-cp310-macosx_10_9_x86_64.whl
0983fb5b475406cd6aa2f4f364768fb388e1211fd94fb496ad49e214d5c79792  numpy-1.24.0rc2-cp310-cp310-macosx_11_0_arm64.whl
df9a9c28ad95c87b4047e1acd45715eb430fb5f6df39556279b3f36ce75c697b  numpy-1.24.0rc2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
bdd44d3133c800792f2beda0e24f86b3ae06a8a31172395c650d13e4c05d1d5b  numpy-1.24.0rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ab18e29ad73ce560747de10ebe75f145be3026b7480e76d7a5314c2bef0fc831  numpy-1.24.0rc2-cp310-cp310-win32.whl
1651a59e5d8dbb09b84254e358aa2fe10431df5a92ddefb1ac20208c75bd2fa2  numpy-1.24.0rc2-cp310-cp310-win_amd64.whl
146d7e5ee04433ce8eb504d0dcffff524a5ba759bd1fb9c73189c3436b04d59c  numpy-1.24.0rc2-cp311-cp311-macosx_10_9_x86_64.whl
a68647adc9945eac88f4fce96195177c2a81577baa448c1c1bbd5751c550e8b5  numpy-1.24.0rc2-cp311-cp311-macosx_11_0_arm64.whl
50346a0d81444f420518c7d6996524d7e559cdfa2e41886381442f012593590e  numpy-1.24.0rc2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8bc069b085289f3b7a578519504962330fab91459a847195b914f69b9170b75c  numpy-1.24.0rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
07c0f3b174970054c613c33e90627fbafbc5d9115adf8829658b833278e7017c  numpy-1.24.0rc2-cp311-cp311-win32.whl
1d6198ee7eb45e5d9cc8a5c9102b734f0c5683c0e440ae7cfad90ad8cb9316d2  numpy-1.24.0rc2-cp311-cp311-win_amd64.whl
e948367a0b9aa68a081c4cf817751c6d0d589a37ce6bb40fea39a882b4858834  numpy-1.24.0rc2-cp38-cp38-macosx_10_9_x86_64.whl
e4909946cf43ff713f95780d483793d8fb23c1559686a8221e91f89e5ecceea0  numpy-1.24.0rc2-cp38-cp38-macosx_11_0_arm64.whl
0704c94f89bf8d5d4f5722b305a29cbb1ad91c7f3dcdcda61cb80d6e5443365b  numpy-1.24.0rc2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
748285bca9fb0f06a16034d4b9c6dce77997d2ccddf769aaeb4760fea4752ea2  numpy-1.24.0rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b6e807f59c1f71e74603a2a88b0b997d7f43e002f6e5f7f55649c6e07738f1ad  numpy-1.24.0rc2-cp38-cp38-win32.whl
0a5c85f625751b77a6f613db2de5f62514024a7ea6d3be534421746e094b2121  numpy-1.24.0rc2-cp38-cp38-win_amd64.whl
5db5f7a8f150614684c34449010c15b61df8d8e5fc0cd79ce30e82f493598599  numpy-1.24.0rc2-cp39-cp39-macosx_10_9_x86_64.whl
6f34b8f2996ebad781cd878276e03d247f0129640fb0ae76bb16addc4df822d1  numpy-1.24.0rc2-cp39-cp39-macosx_11_0_arm64.whl
e30689dd418f2db3d2d3039cb08011047d27708fdc24c592d56fa58aaeb01672  numpy-1.24.0rc2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
925d39290878d680eb8dd690f969faa0a4956b7bd77daf3573486eb39d8e5724  numpy-1.24.0rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a2495e48db12f546e4e3f9ea1f665390828098344bf63bca50309a68d713d302  numpy-1.24.0rc2-cp39-cp39-win32.whl
ea9ca0989fdd42d3320a94f540f317fb615be9ceab75a07078a84b9933582da5  numpy-1.24.0rc2-cp39-cp39-win_amd64.whl
c9ff51e627e7584eb7ee09f6fe494862e45f796e53b5ee7267d3d5633a79dac6  numpy-1.24.0rc2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
b4eca15593bec5ef3e2e05c157ff1be3990d04a862f49fd46b4e527ff390b778  numpy-1.24.0rc2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b45bdcde72ce02a92ae183ef211bcf7f04e15d5e3df6714866de66d8ec8cc822  numpy-1.24.0rc2-pp38-pypy38_pp73-win_amd64.whl
c943c61fa708a6225e199aff755b2c3f5a353a2bbb726e10334a05b8e1fc030b  numpy-1.24.0rc2.tar.gz

1.24.0rc1

2 months ago
NumPy 1.24 Release Notes

The NumPy 1.24.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, and clarify the documentation. There are also a large number of new and expired deprecations due to changes in promotion and cleanups. This might be called a deprecation release. Highlights are

  • Many new deprecations, check them out.
  • Many expired deprecations,
  • New F2PY features and fixes.
  • New \"dtype\" and \"casting\" keywords for stacking functions.

See below for the details,

Deprecations Deprecate fastCopyAndTranspose and PyArray_CopyAndTranspose

The numpy.fastCopyAndTranspose function has been deprecated. Use the corresponding copy and transpose methods directly:

arr.T.copy()

The underlying C function PyArray_CopyAndTranspose has also been deprecated from the NumPy C-API.

(gh-22313)

Conversion of out-of-bound Python integers

Attempting a conversion from a Python integer to a NumPy value will now always check whether the result can be represented by NumPy. This means the following examples will fail in the future and give a DeprecationWarning now:

np.uint8(-1)
np.array([3000], dtype=np.int8)

Many of these did succeed before. Such code was mainly useful for unsigned integers with negative values such as np.uint8(-1) giving np.iinfo(np.uint8).max.

Note that conversion between NumPy integers is unaffected, so that np.array(-1).astype(np.uint8) continues to work and use C integer overflow logic.

(gh-22393)

Deprecate msort

The numpy.msort function is deprecated. Use np.sort(a, axis=0) instead.

(gh-22456)

np.str0 and similar are now deprecated

The scalar type aliases ending in a 0 bit size: np.object0, np.str0, np.bytes0, np.void0, np.int0, np.uint0 as well as np.bool8 are now deprecated and will eventually be removed.

(gh-22607)

Expired deprecations
  • The normed keyword argument has been removed from [np.histogram]{.title-ref}, [np.histogram2d]{.title-ref}, and [np.histogramdd]{.title-ref}. Use density instead. If normed was passed by position, density is now used.

    (gh-21645)

  • Ragged array creation will now always raise a ValueError unless dtype=object is passed. This includes very deeply nested sequences.

    (gh-22004)

  • Support for Visual Studio 2015 and earlier has been removed.

  • Support for the Windows Interix POSIX interop layer has been removed.

    (gh-22139)

  • Support for cygwin \< 3.3 has been removed.

    (gh-22159)

  • The mini() method of np.ma.MaskedArray has been removed. Use either np.ma.MaskedArray.min() or np.ma.minimum.reduce().

  • The single-argument form of np.ma.minimum and np.ma.maximum has been removed. Use np.ma.minimum.reduce() or np.ma.maximum.reduce() instead.

    (gh-22228)

  • Passing dtype instances other than the canonical (mainly native byte-order) ones to dtype= or signature= in ufuncs will now raise a TypeError. We recommend passing the strings "int8" or scalar types np.int8 since the byte-order, datetime/timedelta unit, etc. are never enforced. (Initially deprecated in NumPy 1.21.)

    (gh-22540)

  • The dtype= argument to comparison ufuncs is now applied correctly. That means that only bool and object are valid values and dtype=object is enforced.

    (gh-22541)

  • The deprecation for the aliases np.object, np.bool, np.float, np.complex, np.str, and np.int is expired (introduces NumPy 1.20). Some of these will now give a FutureWarning in addition to raising an error since they will be mapped to the NumPy scalars in the future.

    (gh-22607)

Compatibility notes array.fill(scalar) may behave slightly different

numpy.ndarray.fill may in some cases behave slightly different now due to the fact that the logic is aligned with item assignment:

arr = np.array([1])  # with any dtype/value
arr.fill(scalar)
# is now identical to:
arr[0] = scalar

Previously casting may have produced slightly different answers when using values that could not be represented in the target dtype or when the target had object dtype.

(gh-20924)

Subarray to object cast now copies

Casting a dtype that includes a subarray to an object will now ensure a copy of the subarray. Previously an unsafe view was returned:

arr = np.ones(3, dtype=[("f", "i", 3)])
subarray_fields = arr.astype(object)[0]
subarray = subarray_fields[0]  # "f" field

np.may_share_memory(subarray, arr)

Is now always false. While previously it was true for the specific cast.

(gh-21925)

Returned arrays respect uniqueness of dtype kwarg objects

When the dtype keyword argument is used with :pynp.array(){.interpreted-text role="func"} or :pyasarray(){.interpreted-text role="func"}, the dtype of the returned array now always exactly matches the dtype provided by the caller.

In some cases this change means that a view rather than the input array is returned. The following is an example for this on 64bit Linux where long and longlong are the same precision but different dtypes:

>>> arr = np.array([1, 2, 3], dtype="long")
>>> new_dtype = np.dtype("longlong")
>>> new = np.asarray(arr, dtype=new_dtype)
>>> new.dtype is new_dtype
True
>>> new is arr
False

Before the change, the dtype did not match because new is arr was True.

(gh-21995)

DLPack export raises BufferError

When an array buffer cannot be exported via DLPack a BufferError is now always raised where previously TypeError or RuntimeError was raised. This allows falling back to the buffer protocol or __array_interface__ when DLPack was tried first.

(gh-22542)

NumPy builds are no longer tested on GCC-6

Ubuntu 18.04 is deprecated for GitHub actions and GCC-6 is not available on Ubuntu 20.04, so builds using that compiler are no longer tested. We still test builds using GCC-7 and GCC-8.

(gh-22598)

New Features New attribute symbol added to polynomial classes

The polynomial classes in the numpy.polynomial package have a new symbol attribute which is used to represent the indeterminate of the polynomial. This can be used to change the value of the variable when printing:

>>> P_y = np.polynomial.Polynomial([1, 0, -1], symbol="y")
>>> print(P_y)
1.0 + 0.0·y¹ - 1.0·y²

Note that the polynomial classes only support 1D polynomials, so operations that involve polynomials with different symbols are disallowed when the result would be multivariate:

>>> P = np.polynomial.Polynomial([1, -1])  # default symbol is "x"
>>> P_z = np.polynomial.Polynomial([1, 1], symbol="z")
>>> P * P_z
Traceback (most recent call last)
   ...
ValueError: Polynomial symbols differ

The symbol can be any valid Python identifier. The default is symbol=x, consistent with existing behavior.

(gh-16154)

F2PY support for Fortran character strings

F2PY now supports wrapping Fortran functions with:

  • character (e.g. character x)
  • character array (e.g. character, dimension(n) :: x)
  • character string (e.g. character(len=10) x)
  • and character string array (e.g. character(len=10), dimension(n, m) :: x)

arguments, including passing Python unicode strings as Fortran character string arguments.

(gh-19388)

New function np.show_runtime

A new function numpy.show_runtime has been added to display the runtime information of the machine in addition to numpy.show_config which displays the build-related information.

(gh-21468)

strict option for testing.assert_array_equal

The strict option is now available for testing.assert_array_equal. Setting strict=True will disable the broadcasting behaviour for scalars and ensure that input arrays have the same data type.

(gh-21595)

New parameter equal_nan added to np.unique

np.unique was changed in 1.21 to treat all NaN values as equal and return a single NaN. Setting equal_nan=False will restore pre-1.21 behavior to treat NaNs as unique. Defaults to True.

(gh-21623)

casting and dtype keyword arguments for numpy.stack

The casting and dtype keyword arguments are now available for numpy.stack. To use them, write np.stack(..., dtype=None, casting='same_kind').

casting and dtype keyword arguments for numpy.vstack

The casting and dtype keyword arguments are now available for numpy.vstack. To use them, write np.vstack(..., dtype=None, casting='same_kind').

casting and dtype keyword arguments for numpy.hstack

The casting and dtype keyword arguments are now available for numpy.hstack. To use them, write np.hstack(..., dtype=None, casting='same_kind').

(gh-21627)

The bit generator underlying the singleton RandomState can be changed

The singleton RandomState instance exposed in the numpy.random module is initialized at startup with the MT19937 bit generator. The new function set_bit_generator allows the default bit generator to be replaced with a user-provided bit generator. This function has been introduced to provide a method allowing seamless integration of a high-quality, modern bit generator in new code with existing code that makes use of the singleton-provided random variate generating functions. The companion function get_bit_generator returns the current bit generator being used by the singleton RandomState. This is provided to simplify restoring the original source of randomness if required.

The preferred method to generate reproducible random numbers is to use a modern bit generator in an instance of Generator. The function default_rng simplifies instantiation:

>>> rg = np.random.default_rng(3728973198)
>>> rg.random()

The same bit generator can then be shared with the singleton instance so that calling functions in the random module will use the same bit generator:

>>> orig_bit_gen = np.random.get_bit_generator()
>>> np.random.set_bit_generator(rg.bit_generator)
>>> np.random.normal()

The swap is permanent (until reversed) and so any call to functions in the random module will use the new bit generator. The original can be restored if required for code to run correctly:

>>> np.random.set_bit_generator(orig_bit_gen)

(gh-21976)

np.void now has a dtype argument

NumPy now allows constructing structured void scalars directly by passing the dtype argument to np.void.

(gh-22316)

Improvements F2PY Improvements
  • The generated extension modules don\'t use the deprecated NumPy-C API anymore
  • Improved f2py generated exception messages
  • Numerous bug and flake8 warning fixes
  • various CPP macros that one can use within C-expressions of signature files are prefixed with f2py_. For example, one should use f2py_len(x) instead of len(x)
  • A new construct character(f2py_len=...) is introduced to support returning assumed length character strings (e.g. character(len=*)) from wrapper functions

A hook to support rewriting f2py internal data structures after reading all its input files is introduced. This is required, for instance, for BC of SciPy support where character arguments are treated as character strings arguments in C expressions.

(gh-19388)

IBM zSystems Vector Extension Facility (SIMD)

Added support for SIMD extensions of zSystem (z13, z14, z15), through the universal intrinsics interface. This support leads to performance improvements for all SIMD kernels implemented using the universal intrinsics, including the following operations: rint, floor, trunc, ceil, sqrt, absolute, square, reciprocal, tanh, sin, cos, equal, not_equal, greater, greater_equal, less, less_equal, maximum, minimum, fmax, fmin, argmax, argmin, add, subtract, multiply, divide.

(gh-20913)

NumPy now gives floating point errors in casts

In most cases, NumPy previously did not give floating point warnings or errors when these happened during casts. For examples, casts like:

np.array([2e300]).astype(np.float32)  # overflow for float32
np.array([np.inf]).astype(np.int64)

Should now generally give floating point warnings. These warnings should warn that floating point overflow occurred. For errors when converting floating point values to integers users should expect invalid value warnings.

Users can modify the behavior of these warnings using np.errstate.

Note that for float to int casts, the exact warnings that are given may be platform dependent. For example:

arr = np.full(100, value=1000, dtype=np.float64)
arr.astype(np.int8)

May give a result equivalent to (the intermediate cast means no warning is given):

arr.astype(np.int64).astype(np.int8)

May return an undefined result, with a warning set:

RuntimeWarning: invalid value encountered in cast

The precise behavior is subject to the C99 standard and its implementation in both software and hardware.

(gh-21437)

F2PY supports the value attribute

The Fortran standard requires that variables declared with the value attribute must be passed by value instead of reference. F2PY now supports this use pattern correctly. So integer, intent(in), value :: x in Fortran codes will have correct wrappers generated.

(gh-21807)

Added pickle support for third-party BitGenerators

The pickle format for bit generators was extended to allow each bit generator to supply its own constructor when during pickling. Previous versions of NumPy only supported unpickling Generator instances created with one of the core set of bit generators supplied with NumPy. Attempting to unpickle a Generator that used a third-party bit generators would fail since the constructor used during the unpickling was only aware of the bit generators included in NumPy.

(gh-22014)

arange() now explicitly fails with dtype=str

Previously, the np.arange(n, dtype=str) function worked for n=1 and n=2, but would raise a non-specific exception message for other values of n. Now, it raises a [TypeError]{.title-ref} informing that arange does not support string dtypes:

>>> np.arange(2, dtype=str)
Traceback (most recent call last)
   ...
TypeError: arange() not supported for inputs with DType <class 'numpy.dtype[str_]'>.

(gh-22055)

numpy.typing protocols are now runtime checkable

The protocols used in numpy.typing.ArrayLike and numpy.typing.DTypeLike are now properly marked as runtime checkable, making them easier to use for runtime type checkers.

(gh-22357)

Performance improvements and changes Faster version of np.isin and np.in1d for integer arrays

np.in1d (used by np.isin) can now switch to a faster algorithm (up to >10x faster) when it is passed two integer arrays. This is often automatically used, but you can use kind="sort" or kind="table" to force the old or new method, respectively.

(gh-12065)

Faster comparison operators

The comparison functions (numpy.equal, numpy.not_equal, numpy.less, numpy.less_equal, numpy.greater and numpy.greater_equal) are now much faster as they are now vectorized with universal intrinsics. For a CPU with SIMD extension AVX512BW, the performance gain is up to 2.57x, 1.65x and 19.15x for integer, float and boolean data types, respectively (with N=50000).

(gh-21483)

Changes Better reporting of integer division overflow

Integer division overflow of scalars and arrays used to provide a RuntimeWarning and the return value was undefined leading to crashes at rare occasions:

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: divide by zero encountered in floor_divide
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0], dtype=int32)

Integer division overflow now returns the input dtype\'s minimum value and raise the following RuntimeWarning:

>>> np.array([np.iinfo(np.int32).min]*10, dtype=np.int32) // np.int32(-1)
<stdin>:1: RuntimeWarning: overflow encountered in floor_divide
array([-2147483648, -2147483648, -2147483648, -2147483648, -2147483648,
       -2147483648, -2147483648, -2147483648, -2147483648, -2147483648],
      dtype=int32)

(gh-21506)

masked_invalid now modifies the mask in-place

When used with copy=False, numpy.ma.masked_invalid now modifies the input masked array in-place. This makes it behave identically to masked_where and better matches the documentation.

(gh-22046)

nditer/NpyIter allows all allocating all operands

The NumPy iterator available through np.nditer in Python and as NpyIter in C now supports allocating all arrays. The iterator shape defaults to () in this case. The operands dtype must be provided, since a \"common dtype\" cannot be inferred from the other inputs.

(gh-22457)

Checksums MD5
1f08c901040ebe1324d16cfc71fe3cd2  numpy-1.24.0rc1-cp310-cp310-macosx_10_9_x86_64.whl
d35a59a1ccf1542d690860ad85fbb0f0  numpy-1.24.0rc1-cp310-cp310-macosx_11_0_arm64.whl
c7db37964986d7b9756fd1aa077b7e72  numpy-1.24.0rc1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
72c2dad61fc86c4d87e23d0de975e0b6  numpy-1.24.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
3c769f1089253266d7a522144696bde3  numpy-1.24.0rc1-cp310-cp310-win32.whl
96226a2045063b9caff40fe2a2098e72  numpy-1.24.0rc1-cp310-cp310-win_amd64.whl
b20897446f52e7fcde80e12c7cc1dc1e  numpy-1.24.0rc1-cp311-cp311-macosx_10_9_x86_64.whl
9cafe21759e90c705533d1f3201d35aa  numpy-1.24.0rc1-cp311-cp311-macosx_11_0_arm64.whl
0e8621d07dae7ffaba6cfe83f7288042  numpy-1.24.0rc1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0c67808eed6ba6f9e9074e6f11951f09  numpy-1.24.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1065bea5d0670360353e698093954e35  numpy-1.24.0rc1-cp311-cp311-win32.whl
fe2122ec86b45e00b648071ee2931fbc  numpy-1.24.0rc1-cp311-cp311-win_amd64.whl
ab3e8424a04338d43ed466ade66de7a8  numpy-1.24.0rc1-cp38-cp38-macosx_10_9_x86_64.whl
fc6eac08a59c4efb3962d990ff94f2b7  numpy-1.24.0rc1-cp38-cp38-macosx_11_0_arm64.whl
3498ac93ae6abba813e5d76f86ae5356  numpy-1.24.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
629ce4b8cb011ff735ebd482fbf51702  numpy-1.24.0rc1-cp38-cp38-win32.whl
cb503a78e27f0f46b6b43d211275dc58  numpy-1.24.0rc1-cp38-cp38-win_amd64.whl
ffccdb9750336f5e55ab90c8eb7c1a8d  numpy-1.24.0rc1-cp39-cp39-macosx_10_9_x86_64.whl
9751b9f833238a7309ad4e6b43fa8cb5  numpy-1.24.0rc1-cp39-cp39-macosx_11_0_arm64.whl
cb8a10f411773f0ac5e06df067599d45  numpy-1.24.0rc1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8d670816134824972afb512498b95ede  numpy-1.24.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
60687b97ab720f6be9e3542e5761769f  numpy-1.24.0rc1-cp39-cp39-win32.whl
11fd99748acc0726ac164034c32bb3cd  numpy-1.24.0rc1-cp39-cp39-win_amd64.whl
09e1d6f6d75facaf84d2b87a33874d4b  numpy-1.24.0rc1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
2da9ad07343b410aca4edf1285e4266b  numpy-1.24.0rc1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
9a0e466a55632cc1d67db119f586cd05  numpy-1.24.0rc1-pp38-pypy38_pp73-win_amd64.whl
abc863895b02cdcc436474f6cdf2d14d  numpy-1.24.0rc1.tar.gz
SHA256
36acf6043b94a0e8af75d0a1931678d20e673b83fd79798c805ebc995e233cff  numpy-1.24.0rc1-cp310-cp310-macosx_10_9_x86_64.whl
244c2c22f776e168e1060112f87717d73df2462e0eba4095a7673fe87db49b7a  numpy-1.24.0rc1-cp310-cp310-macosx_11_0_arm64.whl
730112e692c165e8ad69071c70653522ee19d8c8af2da839339de01013eeef24  numpy-1.24.0rc1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
960b0d980adfa5c37fea89fc556bb482f9d957a3188be46d03a00fa1bd8f617b  numpy-1.24.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f54788f1a6941cb1b57bcf5ff09a281e5db75bbf9f2ac9534a626128ded0244f  numpy-1.24.0rc1-cp310-cp310-win32.whl
07fef63a5113969d7897589928870c57dd3e28671d617f688486f12c3a3b466a  numpy-1.24.0rc1-cp310-cp310-win_amd64.whl
aea88e02d9335052172f4d6c8163721c3edd086ea3bf3bc9b6d5c55661540f1b  numpy-1.24.0rc1-cp311-cp311-macosx_10_9_x86_64.whl
3950be11c03d250ea780280ce37a6fe7bd21dafcb478e08190c72b6c58ed7d18  numpy-1.24.0rc1-cp311-cp311-macosx_11_0_arm64.whl
743c30cda228f8be9fe552453870b412b38ac232972c617a0f18765dedf395a5  numpy-1.24.0rc1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
cab1335b70e24e88ef2b9f727b9f5fc6e0d31d9fe9da0213f6c28cf615b65db0  numpy-1.24.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5283759f0dd905f9e62ed55775345fbb233a53146ceaf2f75e96d939f564ee79  numpy-1.24.0rc1-cp311-cp311-win32.whl
427bd9c45777e8baf782b6b33ebc26a88716c2d9b76b0474987660c2c066dca0  numpy-1.24.0rc1-cp311-cp311-win_amd64.whl
20edfad312395d1cb8ad6ca5d2c42d2dab057f5d1920af3f94c7a72103335d8a  numpy-1.24.0rc1-cp38-cp38-macosx_10_9_x86_64.whl
79134b92e1fb86915369753b3e64a359416cd98ea2329d270eb4e1d0ab300c0d  numpy-1.24.0rc1-cp38-cp38-macosx_11_0_arm64.whl
6f00858573e2316ac5d190cf81dc178d94579969f827ac34c7a53110428e6f72  numpy-1.24.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a8d6f78be3ad0bd9b4adecba2fda570ef491ae69f8c7cc84acd382802a81e242  numpy-1.24.0rc1-cp38-cp38-win32.whl
f1f5fa912df64dd48ec55352b72f4b036ab7b3911e996703f436e17baca780f9  numpy-1.24.0rc1-cp38-cp38-win_amd64.whl
8d149b3c3062dc68e29bdb244edc30c5d80e2c654b5c27c32773bf7354452b48  numpy-1.24.0rc1-cp39-cp39-macosx_10_9_x86_64.whl
d177fbd4d22248640d73f07c3aac2cc1f79c412f61564452abd08606ee5e3713  numpy-1.24.0rc1-cp39-cp39-macosx_11_0_arm64.whl
05faa4ecb98d7bc593afc5b10c25f0e7dd65244b653756b083c605fbf60b9b67  numpy-1.24.0rc1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
06d8827c6fa511b61047376efc3a677d447193bf88e6bbde35b4e5223a4b58d6  numpy-1.24.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
15605b92bf10b10e110a9c0f1c4ef6cd58246532c62a0c3d3188c05e69cdcdb6  numpy-1.24.0rc1-cp39-cp39-win32.whl
8046f5c23769791be8432a592b9881984e0e4abc7f552c7e5c349420a27323e7  numpy-1.24.0rc1-cp39-cp39-win_amd64.whl
aa9c4a2f65d669e6559123154da944ad6bd7605cbba5cce81bf6794617870510  numpy-1.24.0rc1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
e44fd1bdfa50979ddec76318e21abc82ee3858e5f45dfc5153b6f660d9d29851  numpy-1.24.0rc1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1802199d70d9f8ac11eb63a1ef50d33915b78a84bacacaadb2896175005103d4  numpy-1.24.0rc1-pp38-pypy38_pp73-win_amd64.whl
d601180710004799acb8f80e564b84e71490fac9d84e115e2f5b0f6709754f16  numpy-1.24.0rc1.tar.gz

1.23.5

3 months ago
NumPy 1.23.5 Release Notes

NumPy 1.23.5 is a maintenance release that fixes bugs discovered after the 1.23.4 release and keeps the build infrastructure current. The Python versions supported for this release are 3.8-3.11.

Contributors

A total of 7 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • \@DWesl
  • Aayush Agrawal +
  • Adam Knapp +
  • Charles Harris
  • Navpreet Singh +
  • Sebastian Berg
  • Tania Allard
Pull requests merged

A total of 10 pull requests were merged for this release.

  • #22489: TST, MAINT: Replace most setup with setup_method (also teardown)
  • #22490: MAINT, CI: Switch to cygwin/cygwin-install-action@v2
  • #22494: TST: Make test_partial_iteration_cleanup robust but require leak...
  • #22592: MAINT: Ensure graceful handling of large header sizes
  • #22593: TYP: Spelling alignment for array flag literal
  • #22594: BUG: Fix bounds checking for random.logseries
  • #22595: DEV: Update GH actions and Dockerfile for Gitpod
  • #22596: CI: Only fetch in actions/checkout
  • #22597: BUG: Decrement ref count in gentype_reduce if allocated memory...
  • #22625: BUG: Histogramdd breaks on big arrays in Windows
Checksums MD5
8a412b79d975199cefadb465279fd569  numpy-1.23.5-cp310-cp310-macosx_10_9_x86_64.whl
1b56e8e6a0516c78473657abf0710538  numpy-1.23.5-cp310-cp310-macosx_11_0_arm64.whl
c787f4763c9a5876e86a17f1651ba458  numpy-1.23.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
db07645022e56747ba3f00c2d742232e  numpy-1.23.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c63a6fb7cc16a13aabc82ec57ac6bb4d  numpy-1.23.5-cp310-cp310-win32.whl
3fea9247e1d812600015641941fa273f  numpy-1.23.5-cp310-cp310-win_amd64.whl
4222cfb36e5ac9aec348c81b075e2c05  numpy-1.23.5-cp311-cp311-macosx_10_9_x86_64.whl
6c7102f185b310ac70a62c13d46f04e6  numpy-1.23.5-cp311-cp311-macosx_11_0_arm64.whl
6b7319f66bf7ac01b49e2a32470baf28  numpy-1.23.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
3c60928ddb1f55163801f06ac2229eb0  numpy-1.23.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
6936b6bcfd6474acc7a8c162a9393b3c  numpy-1.23.5-cp311-cp311-win32.whl
6c9af68b7b56c12c913678cafbdc44d6  numpy-1.23.5-cp311-cp311-win_amd64.whl
699daeac883260d3f182ae4bbbd9bbd2  numpy-1.23.5-cp38-cp38-macosx_10_9_x86_64.whl
6c233a36339de0652139e78ef91504d4  numpy-1.23.5-cp38-cp38-macosx_11_0_arm64.whl
57d5439556ab5078c91bdeffd9c0036e  numpy-1.23.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a8045b59187f2e0ccd4294851adbbb8a  numpy-1.23.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
7f38f7e560e4bf41490372ab84aa7a38  numpy-1.23.5-cp38-cp38-win32.whl
76095726ba459d7f761b44acf2e56bd1  numpy-1.23.5-cp38-cp38-win_amd64.whl
174befd584bc1b03ed87c8f0d149a58e  numpy-1.23.5-cp39-cp39-macosx_10_9_x86_64.whl
9cbac793d77278f5d27a7979b64f6b5b  numpy-1.23.5-cp39-cp39-macosx_11_0_arm64.whl
6e417b087044e90562183b33f3049b09  numpy-1.23.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
54fa63341eaa6da346d824399e8237f6  numpy-1.23.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cc14d62a158e99c57f925c86551e45f0  numpy-1.23.5-cp39-cp39-win32.whl
bad36b81e7e84bd7a028affa0659d235  numpy-1.23.5-cp39-cp39-win_amd64.whl
b4d17d6b79a8354a2834047669651963  numpy-1.23.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
89f6dc4a4ff63fca6af1223111cd888d  numpy-1.23.5-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
633d574a35b8592bab502ef569b0731e  numpy-1.23.5-pp38-pypy38_pp73-win_amd64.whl
8b2692a511a3795f3af8af2cd7566a15  numpy-1.23.5.tar.gz
SHA256
9c88793f78fca17da0145455f0d7826bcb9f37da4764af27ac945488116efe63  numpy-1.23.5-cp310-cp310-macosx_10_9_x86_64.whl
e9f4c4e51567b616be64e05d517c79a8a22f3606499941d97bb76f2ca59f982d  numpy-1.23.5-cp310-cp310-macosx_11_0_arm64.whl
7903ba8ab592b82014713c491f6c5d3a1cde5b4a3bf116404e08f5b52f6daf43  numpy-1.23.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5e05b1c973a9f858c74367553e236f287e749465f773328c8ef31abe18f691e1  numpy-1.23.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
522e26bbf6377e4d76403826ed689c295b0b238f46c28a7251ab94716da0b280  numpy-1.23.5-cp310-cp310-win32.whl
dbee87b469018961d1ad79b1a5d50c0ae850000b639bcb1b694e9981083243b6  numpy-1.23.5-cp310-cp310-win_amd64.whl
ce571367b6dfe60af04e04a1834ca2dc5f46004ac1cc756fb95319f64c095a96  numpy-1.23.5-cp311-cp311-macosx_10_9_x86_64.whl
56e454c7833e94ec9769fa0f86e6ff8e42ee38ce0ce1fa4cbb747ea7e06d56aa  numpy-1.23.5-cp311-cp311-macosx_11_0_arm64.whl
5039f55555e1eab31124a5768898c9e22c25a65c1e0037f4d7c495a45778c9f2  numpy-1.23.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
58f545efd1108e647604a1b5aa809591ccd2540f468a880bedb97247e72db387  numpy-1.23.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b2a9ab7c279c91974f756c84c365a669a887efa287365a8e2c418f8b3ba73fb0  numpy-1.23.5-cp311-cp311-win32.whl
0cbe9848fad08baf71de1a39e12d1b6310f1d5b2d0ea4de051058e6e1076852d  numpy-1.23.5-cp311-cp311-win_amd64.whl
f063b69b090c9d918f9df0a12116029e274daf0181df392839661c4c7ec9018a  numpy-1.23.5-cp38-cp38-macosx_10_9_x86_64.whl
0aaee12d8883552fadfc41e96b4c82ee7d794949e2a7c3b3a7201e968c7ecab9  numpy-1.23.5-cp38-cp38-macosx_11_0_arm64.whl
92c8c1e89a1f5028a4c6d9e3ccbe311b6ba53694811269b992c0b224269e2398  numpy-1.23.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
d208a0f8729f3fb790ed18a003f3a57895b989b40ea4dce4717e9cf4af62c6bb  numpy-1.23.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
06005a2ef6014e9956c09ba07654f9837d9e26696a0470e42beedadb78c11b07  numpy-1.23.5-cp38-cp38-win32.whl
ca51fcfcc5f9354c45f400059e88bc09215fb71a48d3768fb80e357f3b457e1e  numpy-1.23.5-cp38-cp38-win_amd64.whl
8969bfd28e85c81f3f94eb4a66bc2cf1dbdc5c18efc320af34bffc54d6b1e38f  numpy-1.23.5-cp39-cp39-macosx_10_9_x86_64.whl
a7ac231a08bb37f852849bbb387a20a57574a97cfc7b6cabb488a4fc8be176de  numpy-1.23.5-cp39-cp39-macosx_11_0_arm64.whl
bf837dc63ba5c06dc8797c398db1e223a466c7ece27a1f7b5232ba3466aafe3d  numpy-1.23.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
33161613d2269025873025b33e879825ec7b1d831317e68f4f2f0f84ed14c719  numpy-1.23.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
af1da88f6bc3d2338ebbf0e22fe487821ea4d8e89053e25fa59d1d79786e7481  numpy-1.23.5-cp39-cp39-win32.whl
09b7847f7e83ca37c6e627682f145856de331049013853f344f37b0c9690e3df  numpy-1.23.5-cp39-cp39-win_amd64.whl
abdde9f795cf292fb9651ed48185503a2ff29be87770c3b8e2a14b0cd7aa16f8  numpy-1.23.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
f9a909a8bae284d46bbfdefbdd4a262ba19d3bc9921b1e76126b1d21c3c34135  numpy-1.23.5-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
01dd17cbb340bf0fc23981e52e1d18a9d4050792e8fb8363cecbf066a84b827d  numpy-1.23.5-pp38-pypy38_pp73-win_amd64.whl
1b1766d6f397c18153d40015ddfc79ddb715cabadc04d2d228d4e5a8bc4ded1a  numpy-1.23.5.tar.gz

1.23.4

4 months ago
NumPy 1.23.4 Release Notes

NumPy 1.23.4 is a maintenance release that fixes bugs discovered after the 1.23.3 release and keeps the build infrastructure current. The main improvements are fixes for some annotation corner cases, a fix for a long time nested_iters memory leak, and a fix of complex vector dot for very large arrays. The Python versions supported for this release are 3.8-3.11.

Note that the mypy version needs to be 0.981+ if you test using Python 3.10.7, otherwise the typing tests will fail.

Contributors

A total of 8 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Bas van Beek
  • Charles Harris
  • Matthew Barber
  • Matti Picus
  • Ralf Gommers
  • Ross Barnowski
  • Sebastian Berg
  • Sicheng Zeng +
Pull requests merged

A total of 13 pull requests were merged for this release.

  • #22368: BUG: Add __array_api_version__ to numpy.array_api namespace
  • #22370: MAINT: update sde toolkit to 9.0, fix download link
  • #22382: BLD: use macos-11 image on azure, macos-1015 is deprecated
  • #22383: MAINT: random: remove get_info from \"extending with Cython\"...
  • #22384: BUG: Fix complex vector dot with more than NPY_CBLAS_CHUNK elements
  • #22387: REV: Loosen lookfor\'s import try/except again
  • #22388: TYP,ENH: Mark numpy.typing protocols as runtime checkable
  • #22389: TYP,MAINT: Change more overloads to play nice with pyright
  • #22390: TST,TYP: Bump mypy to 0.981
  • #22391: DOC: Update delimiter param description.
  • #22392: BUG: Memory leaks in numpy.nested_iters
  • #22413: REL: Prepare for the NumPy 1.23.4 release.
  • #22424: TST: Fix failing aarch64 wheel builds.
Checksums MD5
90a3d95982490cfeeef22c0f7cbd874f  numpy-1.23.4-cp310-cp310-macosx_10_9_x86_64.whl
c3cae63394db6c82fd2cb5700fc5917d  numpy-1.23.4-cp310-cp310-macosx_11_0_arm64.whl
b3ff0878de205f56c38fd7dcab80081f  numpy-1.23.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
e2b086ca2229209f2f996c2f9a38bf9c  numpy-1.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
44cc8bb112ca737520cf986fff92dfb0  numpy-1.23.4-cp310-cp310-win32.whl
21c8e5fdfba2ff953e446189379cf0c9  numpy-1.23.4-cp310-cp310-win_amd64.whl
27445a9c85977cb8efa682a4b993347f  numpy-1.23.4-cp311-cp311-macosx_10_9_x86_64.whl
11ef4b7dfdaa37604cb881f3ca4459db  numpy-1.23.4-cp311-cp311-macosx_11_0_arm64.whl
b3c77344274f91514f728a454fd471fa  numpy-1.23.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
43aef7f984cd63d95c11fb74dd59ef0b  numpy-1.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
637fe21b585228c9670d6e002bf8047f  numpy-1.23.4-cp311-cp311-win32.whl
f529edf9b849d6e3b8cdb5120ae5b81a  numpy-1.23.4-cp311-cp311-win_amd64.whl
76c61ce36317a7e509663829c6844fd9  numpy-1.23.4-cp38-cp38-macosx_10_9_x86_64.whl
2133f6893eef41cd9331c7d0271044c4  numpy-1.23.4-cp38-cp38-macosx_11_0_arm64.whl
5ccb3aa6fb8cb9e20ec336e315d01dec  numpy-1.23.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
da71f34a4df0b98e4d9e17906dd57b07  numpy-1.23.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a318978f51fb80a17c2381e39194e906  numpy-1.23.4-cp38-cp38-win32.whl
eac810d6bc43830bf151ea55cd0ded93  numpy-1.23.4-cp38-cp38-win_amd64.whl
4cf0a6007abe42564c7380dbf92a26ce  numpy-1.23.4-cp39-cp39-macosx_10_9_x86_64.whl
2e005bedf129ce8bafa6f550537f3740  numpy-1.23.4-cp39-cp39-macosx_11_0_arm64.whl
10aa210311fcd19a03f6c5495824a306  numpy-1.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
6301298a67999657a0878b64eeed09f2  numpy-1.23.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
76144e575a3c3863ea22e03cdf022d8a  numpy-1.23.4-cp39-cp39-win32.whl
8291dd66ef5451b4db2da55c21535757  numpy-1.23.4-cp39-cp39-win_amd64.whl
7cc095b18690071828b5b620d5ec40e7  numpy-1.23.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
63742f15e8bfa215c893136bbfc6444f  numpy-1.23.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
4ed382e55abc09c89a34db047692f6a6  numpy-1.23.4-pp38-pypy38_pp73-win_amd64.whl
d9ffd2c189633486ec246e61d4b947a0  numpy-1.23.4.tar.gz
SHA256
95d79ada05005f6f4f337d3bb9de8a7774f259341c70bc88047a1f7b96a4bcb2  numpy-1.23.4-cp310-cp310-macosx_10_9_x86_64.whl
926db372bc4ac1edf81cfb6c59e2a881606b409ddc0d0920b988174b2e2a767f  numpy-1.23.4-cp310-cp310-macosx_11_0_arm64.whl
c237129f0e732885c9a6076a537e974160482eab8f10db6292e92154d4c67d71  numpy-1.23.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a8365b942f9c1a7d0f0dc974747d99dd0a0cdfc5949a33119caf05cb314682d3  numpy-1.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
2341f4ab6dba0834b685cce16dad5f9b6606ea8a00e6da154f5dbded70fdc4dd  numpy-1.23.4-cp310-cp310-win32.whl
d331afac87c92373826af83d2b2b435f57b17a5c74e6268b79355b970626e329  numpy-1.23.4-cp310-cp310-win_amd64.whl
488a66cb667359534bc70028d653ba1cf307bae88eab5929cd707c761ff037db  numpy-1.23.4-cp311-cp311-macosx_10_9_x86_64.whl
ce03305dd694c4873b9429274fd41fc7eb4e0e4dea07e0af97a933b079a5814f  numpy-1.23.4-cp311-cp311-macosx_11_0_arm64.whl
8981d9b5619569899666170c7c9748920f4a5005bf79c72c07d08c8a035757b0  numpy-1.23.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7a70a7d3ce4c0e9284e92285cba91a4a3f5214d87ee0e95928f3614a256a1488  numpy-1.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5e13030f8793e9ee42f9c7d5777465a560eb78fa7e11b1c053427f2ccab90c79  numpy-1.23.4-cp311-cp311-win32.whl
7607b598217745cc40f751da38ffd03512d33ec06f3523fb0b5f82e09f6f676d  numpy-1.23.4-cp311-cp311-win_amd64.whl
7ab46e4e7ec63c8a5e6dbf5c1b9e1c92ba23a7ebecc86c336cb7bf3bd2fb10e5  numpy-1.23.4-cp38-cp38-macosx_10_9_x86_64.whl
a8aae2fb3180940011b4862b2dd3756616841c53db9734b27bb93813cd79fce6  numpy-1.23.4-cp38-cp38-macosx_11_0_arm64.whl
8c053d7557a8f022ec823196d242464b6955a7e7e5015b719e76003f63f82d0f  numpy-1.23.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a0882323e0ca4245eb0a3d0a74f88ce581cc33aedcfa396e415e5bba7bf05f68  numpy-1.23.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
dada341ebb79619fe00a291185bba370c9803b1e1d7051610e01ed809ef3a4ba  numpy-1.23.4-cp38-cp38-win32.whl
0fe563fc8ed9dc4474cbf70742673fc4391d70f4363f917599a7fa99f042d5a8  numpy-1.23.4-cp38-cp38-win_amd64.whl
c67b833dbccefe97cdd3f52798d430b9d3430396af7cdb2a0c32954c3ef73894  numpy-1.23.4-cp39-cp39-macosx_10_9_x86_64.whl
f76025acc8e2114bb664294a07ede0727aa75d63a06d2fae96bf29a81747e4a7  numpy-1.23.4-cp39-cp39-macosx_11_0_arm64.whl
12ac457b63ec8ded85d85c1e17d85efd3c2b0967ca39560b307a35a6703a4735  numpy-1.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
95de7dc7dc47a312f6feddd3da2500826defdccbc41608d0031276a24181a2c0  numpy-1.23.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f2f390aa4da44454db40a1f0201401f9036e8d578a25f01a6e237cea238337ef  numpy-1.23.4-cp39-cp39-win32.whl
f260da502d7441a45695199b4e7fd8ca87db659ba1c78f2bbf31f934fe76ae0e  numpy-1.23.4-cp39-cp39-win_amd64.whl
61be02e3bf810b60ab74e81d6d0d36246dbfb644a462458bb53b595791251911  numpy-1.23.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
296d17aed51161dbad3c67ed6d164e51fcd18dbcd5dd4f9d0a9c6055dce30810  numpy-1.23.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
4d52914c88b4930dafb6c48ba5115a96cbab40f45740239d9f4159c4ba779962  numpy-1.23.4-pp38-pypy38_pp73-win_amd64.whl
ed2cc92af0efad20198638c69bb0fc2870a58dabfba6eb722c933b48556c686c  numpy-1.23.4.tar.gz

1.23.3

5 months ago
NumPy 1.23.3 Release Notes

NumPy 1.23.3 is a maintenance release that fixes bugs discovered after the 1.23.2 release. There is no major theme for this release, the main improvements are for some downstream builds and some annotation corner cases. The Python versions supported for this release are 3.8-3.11.

Note that we will move to MacOS 11 for the NumPy 1.23.4 release, the 10.15 version currently used will no longer be supported by our build infrastructure at that point.

Contributors

A total of 16 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Aaron Meurer
  • Bas van Beek
  • Charles Harris
  • Ganesh Kathiresan
  • Gavin Zhang +
  • Iantra Solari+
  • Jyn Spring 琴春 +
  • Matti Picus
  • Rafael Cardoso Fernandes Sousa
  • Rafael Sousa +
  • Ralf Gommers
  • Rin Cat (鈴猫) +
  • Saransh Chopra +
  • Sayed Adel
  • Sebastian Berg
  • Serge Guelton
Pull requests merged

A total of 14 pull requests were merged for this release.

  • #22136: BLD: Add Python 3.11 wheels to aarch64 build
  • #22148: MAINT: Update setup.py for Python 3.11.
  • #22155: CI: Test NumPy build against old versions of GCC(6, 7, 8)
  • #22156: MAINT: support IBM i system
  • #22195: BUG: Fix circleci build
  • #22214: BUG: Expose heapsort algorithms in a shared header
  • #22215: BUG: Support using libunwind for backtrack
  • #22216: MAINT: fix an incorrect pointer type usage in f2py
  • #22220: BUG: change overloads to play nice with pyright.
  • #22221: TST,BUG: Use fork context to fix MacOS savez test
  • #22222: TYP,BUG: Reduce argument validation in C-based __class_getitem__
  • #22223: TST: ensure np.equal.reduce raises a TypeError
  • #22224: BUG: Fix the implementation of numpy.array_api.vecdot
  • #22230: BUG: Better report integer division overflow (backport)
Checksums MD5
a60bf0b1d440bf18d87c49409036d05a  numpy-1.23.3-cp310-cp310-macosx_10_9_x86_64.whl
59b43423a692f5351c6a43b852b210d7  numpy-1.23.3-cp310-cp310-macosx_11_0_arm64.whl
f482a4be6954b1b606320f0ffc1995dd  numpy-1.23.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a82e2ecc4060a37dae5424e624eabfe3  numpy-1.23.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
84916178e5f4d073d0008754cba7f300  numpy-1.23.3-cp310-cp310-win32.whl
605da65b9b66dfce8b62d847cb3841f7  numpy-1.23.3-cp310-cp310-win_amd64.whl
57cf29f781be955a9cd0de8d07fbce56  numpy-1.23.3-cp311-cp311-macosx_10_9_x86_64.whl
f395dcf622dff0ba44777cbae0442189  numpy-1.23.3-cp311-cp311-macosx_11_0_arm64.whl
55d6a6439913ba84ad89268e0ad59fa0  numpy-1.23.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
202bc3a8617f479ebe60ca0dec29964b  numpy-1.23.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a42c3d058bcef47b26841bf9472a89bf  numpy-1.23.3-cp311-cp311-win32.whl
237dbd94e5529065c0c5cc4e47ceeb7e  numpy-1.23.3-cp311-cp311-win_amd64.whl
d0587d5b28d3fa7e0ec8fd3df76e4bd4  numpy-1.23.3-cp38-cp38-macosx_10_9_x86_64.whl
054234695ed3d955fb01f661db2c14fc  numpy-1.23.3-cp38-cp38-macosx_11_0_arm64.whl
4e75ac61e34f1bf23e7cbd6e2bfc7a32  numpy-1.23.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
29ccb3a732027ee1abe23a9562c32d0c  numpy-1.23.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
12817838edc1e1bea27df79f3a83da5d  numpy-1.23.3-cp38-cp38-win32.whl
ef430e830a9fea7d8db0218b901671f6  numpy-1.23.3-cp38-cp38-win_amd64.whl
b001f7e17df798f9b949bbe259924c77  numpy-1.23.3-cp39-cp39-macosx_10_9_x86_64.whl
bc1782f5d79187d63d14ed69a6a411e9  numpy-1.23.3-cp39-cp39-macosx_11_0_arm64.whl
f8fb0178bc34a198d5ce4e166076e1fc  numpy-1.23.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
fb80d38c37aae1e4d416cd4de068ff0a  numpy-1.23.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
318d0a2a27b7e361295c0382a0ff4a94  numpy-1.23.3-cp39-cp39-win32.whl
880dc73de09fccda0650e9404fa83608  numpy-1.23.3-cp39-cp39-win_amd64.whl
3b5a51f78718a1a82d2750ec159f9acf  numpy-1.23.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
56a0c90a303979d5bf8fc57e86e57ccb  numpy-1.23.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5338d997a3178750834e742a257dfa4a  numpy-1.23.3-pp38-pypy38_pp73-win_amd64.whl
6efc60a3f6c1b74c849d53fbcc07807b  numpy-1.23.3.tar.gz
SHA256
c9f707b5bb73bf277d812ded9896f9512a43edff72712f31667d0a8c2f8e71ee  numpy-1.23.3-cp310-cp310-macosx_10_9_x86_64.whl
ffcf105ecdd9396e05a8e58e81faaaf34d3f9875f137c7372450baa5d77c9a54  numpy-1.23.3-cp310-cp310-macosx_11_0_arm64.whl
0ea3f98a0ffce3f8f57675eb9119f3f4edb81888b6874bc1953f91e0b1d4f440  numpy-1.23.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
004f0efcb2fe1c0bd6ae1fcfc69cc8b6bf2407e0f18be308612007a0762b4089  numpy-1.23.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
98dcbc02e39b1658dc4b4508442a560fe3ca5ca0d989f0df062534e5ca3a5c1a  numpy-1.23.3-cp310-cp310-win32.whl
39a664e3d26ea854211867d20ebcc8023257c1800ae89773cbba9f9e97bae036  numpy-1.23.3-cp310-cp310-win_amd64.whl
1f27b5322ac4067e67c8f9378b41c746d8feac8bdd0e0ffede5324667b8a075c  numpy-1.23.3-cp311-cp311-macosx_10_9_x86_64.whl
2ad3ec9a748a8943e6eb4358201f7e1c12ede35f510b1a2221b70af4bb64295c  numpy-1.23.3-cp311-cp311-macosx_11_0_arm64.whl
bdc9febce3e68b697d931941b263c59e0c74e8f18861f4064c1f712562903411  numpy-1.23.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
301c00cf5e60e08e04d842fc47df641d4a181e651c7135c50dc2762ffe293dbd  numpy-1.23.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
7cd1328e5bdf0dee621912f5833648e2daca72e3839ec1d6695e91089625f0b4  numpy-1.23.3-cp311-cp311-win32.whl
8355fc10fd33a5a70981a5b8a0de51d10af3688d7a9e4a34fcc8fa0d7467bb7f  numpy-1.23.3-cp311-cp311-win_amd64.whl
bc6e8da415f359b578b00bcfb1d08411c96e9a97f9e6c7adada554a0812a6cc6  numpy-1.23.3-cp38-cp38-macosx_10_9_x86_64.whl
22d43376ee0acd547f3149b9ec12eec2f0ca4a6ab2f61753c5b29bb3e795ac4d  numpy-1.23.3-cp38-cp38-macosx_11_0_arm64.whl
a64403f634e5ffdcd85e0b12c08f04b3080d3e840aef118721021f9b48fc1460  numpy-1.23.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
efd9d3abe5774404becdb0748178b48a218f1d8c44e0375475732211ea47c67e  numpy-1.23.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f8c02ec3c4c4fcb718fdf89a6c6f709b14949408e8cf2a2be5bfa9c49548fd85  numpy-1.23.3-cp38-cp38-win32.whl
e868b0389c5ccfc092031a861d4e158ea164d8b7fdbb10e3b5689b4fc6498df6  numpy-1.23.3-cp38-cp38-win_amd64.whl
09f6b7bdffe57fc61d869a22f506049825d707b288039d30f26a0d0d8ea05164  numpy-1.23.3-cp39-cp39-macosx_10_9_x86_64.whl
8c79d7cf86d049d0c5089231a5bcd31edb03555bd93d81a16870aa98c6cfb79d  numpy-1.23.3-cp39-cp39-macosx_11_0_arm64.whl
e5d5420053bbb3dd64c30e58f9363d7a9c27444c3648e61460c1237f9ec3fa14  numpy-1.23.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
d5422d6a1ea9b15577a9432e26608c73a78faf0b9039437b075cf322c92e98e7  numpy-1.23.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c1ba66c48b19cc9c2975c0d354f24058888cdc674bebadceb3cdc9ec403fb5d1  numpy-1.23.3-cp39-cp39-win32.whl
78a63d2df1d947bd9d1b11d35564c2f9e4b57898aae4626638056ec1a231c40c  numpy-1.23.3-cp39-cp39-win_amd64.whl
17c0e467ade9bda685d5ac7f5fa729d8d3e76b23195471adae2d6a6941bd2c18  numpy-1.23.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
91b8d6768a75247026e951dce3b2aac79dc7e78622fc148329135ba189813584  numpy-1.23.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
94c15ca4e52671a59219146ff584488907b1f9b3fc232622b47e2cf832e94fb8  numpy-1.23.3-pp38-pypy38_pp73-win_amd64.whl
51bf49c0cd1d52be0a240aa66f3458afc4b95d8993d2d04f0d91fa60c10af6cd  numpy-1.23.3.tar.gz

1.23.2

6 months ago
NumPy 1.23.2 Release Notes

NumPy 1.23.2 is a maintenance release that fixes bugs discovered after the 1.23.1 release. Notable features are:

  • Typing changes needed for Python 3.11
  • Wheels for Python 3.11.0rc1

The Python versions supported for this release are 3.8-3.11.

Contributors

A total of 9 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Alexander Grund +
  • Bas van Beek
  • Charles Harris
  • Jon Cusick +
  • Matti Picus
  • Michael Osthege +
  • Pal Barta +
  • Ross Barnowski
  • Sebastian Berg
Pull requests merged

A total of 15 pull requests were merged for this release.

  • #22030: ENH: Add __array_ufunc__ typing support to the nin=1 ufuncs
  • #22031: MAINT, TYP: Fix np.angle dtype-overloads
  • #22032: MAINT: Do not let _GenericAlias wrap the underlying classes\'...
  • #22033: TYP,MAINT: Allow einsum subscripts to be passed via integer...
  • #22034: MAINT,TYP: Add object-overloads for the np.generic rich comparisons
  • #22035: MAINT,TYP: Allow the squeeze and transpose method to...
  • #22036: BUG: Fix subarray to object cast ownership details
  • #22037: BUG: Use Popen to silently invoke f77 -v
  • #22038: BUG: Avoid errors on NULL during deepcopy
  • #22039: DOC: Add versionchanged for converter callable behavior.
  • #22057: MAINT: Quiet the anaconda uploads.
  • #22078: ENH: reorder includes for testing on top of system installations...
  • #22106: TST: fix test_linear_interpolation_formula_symmetric
  • #22107: BUG: Fix skip condition for test_loss_of_precision[complex256]
  • #22115: BLD: Build python3.11.0rc1 wheels.
Checksums MD5
fe1e3480ea8c417c8f7b05f543c1448d  numpy-1.23.2-cp310-cp310-macosx_10_9_x86_64.whl
0ab14b1afd0a55a374ca69b3b39cab3c  numpy-1.23.2-cp310-cp310-macosx_11_0_arm64.whl
df059e5405bfe75c0ac77b01abbdb237  numpy-1.23.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4ed412c4c078e96edf11ca3b11eef76b  numpy-1.23.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0caad53d9a5e3c5e8cd29f19a9f0c014  numpy-1.23.2-cp310-cp310-win32.whl
01e508b8b4f591daff128da1cfde8e1f  numpy-1.23.2-cp310-cp310-win_amd64.whl
8ecdb7e2a87255878b748550d91cfbe0  numpy-1.23.2-cp311-cp311-macosx_10_9_x86_64.whl
e3004aae46cec9e234f78eaf473272e0  numpy-1.23.2-cp311-cp311-macosx_11_0_arm64.whl
ec23c73caf581867d5ca9255b802f144  numpy-1.23.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9b8389f528fe113247954248f0b78ce1  numpy-1.23.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a54b136daa2fbb483909f08eecbfa3c5  numpy-1.23.2-cp311-cp311-win32.whl
ead32e141857c5ef33b1a6cd88aefc0f  numpy-1.23.2-cp311-cp311-win_amd64.whl
df1f18e52d0a2840d101fdc9c2c6af84  numpy-1.23.2-cp38-cp38-macosx_10_9_x86_64.whl
04c986880bb24fac2f44face75eab914  numpy-1.23.2-cp38-cp38-macosx_11_0_arm64.whl
edeba58edb214390112810f7ead903a8  numpy-1.23.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
c26ea699d94d7f1009c976c66cc4def3  numpy-1.23.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c246a78b09f8893d998d449dcab0fac3  numpy-1.23.2-cp38-cp38-win32.whl
b5c5a2f961402259e301c49b8b05de55  numpy-1.23.2-cp38-cp38-win_amd64.whl
d156dfae94d33eeff7fb9c6e5187e049  numpy-1.23.2-cp39-cp39-macosx_10_9_x86_64.whl
7f2ad7867c577eab925a31de76486765  numpy-1.23.2-cp39-cp39-macosx_11_0_arm64.whl
76262a8e5d7a4d945446467467300a10  numpy-1.23.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8ee105f4574d61a2d494418b55f63fcb  numpy-1.23.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
2b7c79cae66023f8e716150223201981  numpy-1.23.2-cp39-cp39-win32.whl
d7af57dd070ccb165f3893412eb602e3  numpy-1.23.2-cp39-cp39-win_amd64.whl
355a231dbd87a0f2125cc23eb8f97075  numpy-1.23.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
4ab13c35056f67981d03f9ceec41db42  numpy-1.23.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
3a6f1e1256ee9be10d8cdf6be578fe52  numpy-1.23.2-pp38-pypy38_pp73-win_amd64.whl
9bf2a361509797de14ceee607387fe0f  numpy-1.23.2.tar.gz
SHA256
e603ca1fb47b913942f3e660a15e55a9ebca906857edfea476ae5f0fe9b457d5  numpy-1.23.2-cp310-cp310-macosx_10_9_x86_64.whl
633679a472934b1c20a12ed0c9a6c9eb167fbb4cb89031939bfd03dd9dbc62b8  numpy-1.23.2-cp310-cp310-macosx_11_0_arm64.whl
17e5226674f6ea79e14e3b91bfbc153fdf3ac13f5cc54ee7bc8fdbe820a32da0  numpy-1.23.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
bdc02c0235b261925102b1bd586579b7158e9d0d07ecb61148a1799214a4afd5  numpy-1.23.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
df28dda02c9328e122661f399f7655cdcbcf22ea42daa3650a26bce08a187450  numpy-1.23.2-cp310-cp310-win32.whl
8ebf7e194b89bc66b78475bd3624d92980fca4e5bb86dda08d677d786fefc414  numpy-1.23.2-cp310-cp310-win_amd64.whl
dc76bca1ca98f4b122114435f83f1fcf3c0fe48e4e6f660e07996abf2f53903c  numpy-1.23.2-cp311-cp311-macosx_10_9_x86_64.whl
ecfdd68d334a6b97472ed032b5b37a30d8217c097acfff15e8452c710e775524  numpy-1.23.2-cp311-cp311-macosx_11_0_arm64.whl
5593f67e66dea4e237f5af998d31a43e447786b2154ba1ad833676c788f37cde  numpy-1.23.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ac987b35df8c2a2eab495ee206658117e9ce867acf3ccb376a19e83070e69418  numpy-1.23.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
d98addfd3c8728ee8b2c49126f3c44c703e2b005d4a95998e2167af176a9e722  numpy-1.23.2-cp311-cp311-win32.whl
8ecb818231afe5f0f568c81f12ce50f2b828ff2b27487520d85eb44c71313b9e  numpy-1.23.2-cp311-cp311-win_amd64.whl
909c56c4d4341ec8315291a105169d8aae732cfb4c250fbc375a1efb7a844f8f  numpy-1.23.2-cp38-cp38-macosx_10_9_x86_64.whl
8247f01c4721479e482cc2f9f7d973f3f47810cbc8c65e38fd1bbd3141cc9842  numpy-1.23.2-cp38-cp38-macosx_11_0_arm64.whl
b8b97a8a87cadcd3f94659b4ef6ec056261fa1e1c3317f4193ac231d4df70215  numpy-1.23.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
bd5b7ccae24e3d8501ee5563e82febc1771e73bd268eef82a1e8d2b4d556ae66  numpy-1.23.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
9b83d48e464f393d46e8dd8171687394d39bc5abfe2978896b77dc2604e8635d  numpy-1.23.2-cp38-cp38-win32.whl
dec198619b7dbd6db58603cd256e092bcadef22a796f778bf87f8592b468441d  numpy-1.23.2-cp38-cp38-win_amd64.whl
4f41f5bf20d9a521f8cab3a34557cd77b6f205ab2116651f12959714494268b0  numpy-1.23.2-cp39-cp39-macosx_10_9_x86_64.whl
806cc25d5c43e240db709875e947076b2826f47c2c340a5a2f36da5bb10c58d6  numpy-1.23.2-cp39-cp39-macosx_11_0_arm64.whl
8f9d84a24889ebb4c641a9b99e54adb8cab50972f0166a3abc14c3b93163f074  numpy-1.23.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
c403c81bb8ffb1c993d0165a11493fd4bf1353d258f6997b3ee288b0a48fce77  numpy-1.23.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cf8c6aed12a935abf2e290860af8e77b26a042eb7f2582ff83dc7ed5f963340c  numpy-1.23.2-cp39-cp39-win32.whl
5e28cd64624dc2354a349152599e55308eb6ca95a13ce6a7d5679ebff2962913  numpy-1.23.2-cp39-cp39-win_amd64.whl
806970e69106556d1dd200e26647e9bee5e2b3f1814f9da104a943e8d548ca38  numpy-1.23.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
2bd879d3ca4b6f39b7770829f73278b7c5e248c91d538aab1e506c628353e47f  numpy-1.23.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
be6b350dfbc7f708d9d853663772a9310783ea58f6035eec649fb9c4371b5389  numpy-1.23.2-pp38-pypy38_pp73-win_amd64.whl
b78d00e48261fbbd04aa0d7427cf78d18401ee0abd89c7559bbf422e5b1c7d01  numpy-1.23.2.tar.gz

1.23.1

7 months ago
NumPy 1.23.1 Release Notes

The NumPy 1.23.1 is a maintenance release that fixes bugs discovered after the 1.23.0 release. Notable fixes are:

  • Fix searchsorted for float16 NaNs
  • Fix compilation on Apple M1
  • Fix KeyError in crackfortran operator support (Slycot)

The Python version supported for this release are 3.8-3.10.

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
  • Matthias Koeppe +
  • Pranab Das +
  • Rohit Goswami
  • Sebastian Berg
  • Serge Guelton
  • Srimukh Sripada +
Pull requests merged

A total of 8 pull requests were merged for this release.

  • #21866: BUG: Fix discovered MachAr (still used within valgrind)
  • #21867: BUG: Handle NaNs correctly for float16 during sorting
  • #21868: BUG: Use keepdims during normalization in np.average and...
  • #21869: DOC: mention changes to max_rows behaviour in np.loadtxt
  • #21870: BUG: Reject non integer array-likes with size 1 in delete
  • #21949: BLD: Make can_link_svml return False for 32bit builds on x86_64
  • #21951: BUG: Reorder extern \"C\" to only apply to function declarations...
  • #21952: BUG: Fix KeyError in crackfortran operator support
Checksums MD5
79f0d8c114f282b834b49209d6955f98  numpy-1.23.1-cp310-cp310-macosx_10_9_x86_64.whl
42a89a88ef26b768e8933ce46b1cc2bd  numpy-1.23.1-cp310-cp310-macosx_11_0_arm64.whl
1c1d68b3483eaf99b9a3583c8ac8bf47  numpy-1.23.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9d3e9f7f9b3dce6cf15209e4f25f346e  numpy-1.23.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a9afb7c34b48d08fc50427ae6516b42d  numpy-1.23.1-cp310-cp310-win32.whl
a0e02823883bdfcec49309e108f65e13  numpy-1.23.1-cp310-cp310-win_amd64.whl
f40cdf4ec7bb0cf31a90a4fa294323c2  numpy-1.23.1-cp38-cp38-macosx_10_9_x86_64.whl
80115a959f0fe30d6c401b2650a61c70  numpy-1.23.1-cp38-cp38-macosx_11_0_arm64.whl
1cf199b3a93960c4f269853a56a8d8eb  numpy-1.23.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
aa6f0f192312c79cd770c2c395e9982a  numpy-1.23.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
d07bee0ea3142a96cb5e4e16aca273ca  numpy-1.23.1-cp38-cp38-win32.whl
02d0734ae8ad5e18a40c6c6de18486a0  numpy-1.23.1-cp38-cp38-win_amd64.whl
e1ca14acd7d83bc74bdf6ab0bb4bd195  numpy-1.23.1-cp39-cp39-macosx_10_9_x86_64.whl
c9152c62b2f31e742e24bfdc97b28666  numpy-1.23.1-cp39-cp39-macosx_11_0_arm64.whl
05b0b37c92f7a7e7c01afac0a5322b40  numpy-1.23.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
d9810bb71a0ef9837e87ea5c44fcab5e  numpy-1.23.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
4255577f857e838f7a94e3a614ddc5eb  numpy-1.23.1-cp39-cp39-win32.whl
787486e3cd87b98024ffe1c969c4db7a  numpy-1.23.1-cp39-cp39-win_amd64.whl
5c7b2d1471b1b9ec6ff1cb3fe1f8ac14  numpy-1.23.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
40d5b2ff869707b0d97325ce44631135  numpy-1.23.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
44ce1e07927cc09415df9898857792da  numpy-1.23.1-pp38-pypy38_pp73-win_amd64.whl
4f8636a9c1a77ca0fb923ba55378891f  numpy-1.23.1.tar.gz
SHA256
b15c3f1ed08df4980e02cc79ee058b788a3d0bef2fb3c9ca90bb8cbd5b8a3a04  numpy-1.23.1-cp310-cp310-macosx_10_9_x86_64.whl
9ce242162015b7e88092dccd0e854548c0926b75c7924a3495e02c6067aba1f5  numpy-1.23.1-cp310-cp310-macosx_11_0_arm64.whl
e0d7447679ae9a7124385ccf0ea990bb85bb869cef217e2ea6c844b6a6855073  numpy-1.23.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
3119daed207e9410eaf57dcf9591fdc68045f60483d94956bee0bfdcba790953  numpy-1.23.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
3ab67966c8d45d55a2bdf40701536af6443763907086c0a6d1232688e27e5447  numpy-1.23.1-cp310-cp310-win32.whl
1865fdf51446839ca3fffaab172461f2b781163f6f395f1aed256b1ddc253622  numpy-1.23.1-cp310-cp310-win_amd64.whl
aeba539285dcf0a1ba755945865ec61240ede5432df41d6e29fab305f4384db2  numpy-1.23.1-cp38-cp38-macosx_10_9_x86_64.whl
7e8229f3687cdadba2c4faef39204feb51ef7c1a9b669247d49a24f3e2e1617c  numpy-1.23.1-cp38-cp38-macosx_11_0_arm64.whl
68b69f52e6545af010b76516f5daaef6173e73353e3295c5cb9f96c35d755641  numpy-1.23.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
1408c3527a74a0209c781ac82bde2182b0f0bf54dea6e6a363fe0cc4488a7ce7  numpy-1.23.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
47f10ab202fe4d8495ff484b5561c65dd59177949ca07975663f4494f7269e3e  numpy-1.23.1-cp38-cp38-win32.whl
37e5ebebb0eb54c5b4a9b04e6f3018e16b8ef257d26c8945925ba8105008e645  numpy-1.23.1-cp38-cp38-win_amd64.whl
173f28921b15d341afadf6c3898a34f20a0569e4ad5435297ba262ee8941e77b  numpy-1.23.1-cp39-cp39-macosx_10_9_x86_64.whl
876f60de09734fbcb4e27a97c9a286b51284df1326b1ac5f1bf0ad3678236b22  numpy-1.23.1-cp39-cp39-macosx_11_0_arm64.whl
35590b9c33c0f1c9732b3231bb6a72d1e4f77872390c47d50a615686ae7ed3fd  numpy-1.23.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a35c4e64dfca659fe4d0f1421fc0f05b8ed1ca8c46fb73d9e5a7f175f85696bb  numpy-1.23.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c2f91f88230042a130ceb1b496932aa717dcbd665350beb821534c5c7e15881c  numpy-1.23.1-cp39-cp39-win32.whl
37ece2bd095e9781a7156852e43d18044fd0d742934833335599c583618181b9  numpy-1.23.1-cp39-cp39-win_amd64.whl
8002574a6b46ac3b5739a003b5233376aeac5163e5dcd43dd7ad062f3e186129  numpy-1.23.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
5d732d17b8a9061540a10fda5bfeabca5785700ab5469a5e9b93aca5e2d3a5fb  numpy-1.23.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
55df0f7483b822855af67e38fb3a526e787adf189383b4934305565d71c4b148  numpy-1.23.1-pp38-pypy38_pp73-win_amd64.whl
d748ef349bfef2e1194b59da37ed5a29c19ea8d7e6342019921ba2ba4fd8b624  numpy-1.23.1.tar.gz

1.23.0

7 months ago
NumPy 1.23.0 Release Notes

The NumPy 1.23.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, clarify the documentation, and expire old deprecations. The highlights are:

  • Implementation of loadtxt in C, greatly improving its performance.
  • Exposing DLPack at the Python level for easy data exchange.
  • Changes to the promotion and comparisons of structured dtypes.
  • Improvements to f2py.

See below for the details,

New functions
  • A masked array specialization of ndenumerate is now available as numpy.ma.ndenumerate. It provides an alternative to numpy.ndenumerate and skips masked values by default.

    (gh-20020)

  • numpy.from_dlpack has been added to allow easy exchange of data using the DLPack protocol. It accepts Python objects that implement the __dlpack__ and __dlpack_device__ methods and returns a ndarray object which is generally the view of the data of the input object.

    (gh-21145)

Deprecations
  • Setting __array_finalize__ to None is deprecated. It must now be a method and may wish to call super().__array_finalize__(obj) after checking for None or if the NumPy version is sufficiently new.

    (gh-20766)

  • Using axis=32 (axis=np.MAXDIMS) in many cases had the same meaning as axis=None. This is deprecated and axis=None must be used instead.

    (gh-20920)

  • The hook function PyDataMem_SetEventHook has been deprecated and the demonstration of its use in tool/allocation_tracking has been removed. The ability to track allocations is now built-in to python via tracemalloc.

    (gh-20394)

  • numpy.distutils has been deprecated, as a result of distutils itself being deprecated. It will not be present in NumPy for Python >= 3.12, and will be removed completely 2 years after the release of Python 3.12 For more details, see distutils-status-migration{.interpreted-text role="ref"}.

    (gh-20875)

  • numpy.loadtxt will now give a DeprecationWarning when an integer dtype is requested but the value is formatted as a floating point number.

    (gh-21663)

Expired deprecations
  • The NpzFile.iteritems() and NpzFile.iterkeys() methods have been removed as part of the continued removal of Python 2 compatibility. This concludes the deprecation from 1.15.

    (gh-16830)

  • The alen and asscalar functions have been removed.

    (gh-20414)

  • The UPDATEIFCOPY array flag has been removed together with the enum NPY_ARRAY_UPDATEIFCOPY. The associated (and deprecated) PyArray_XDECREF_ERR was also removed. These were all deprecated in 1.14. They are replaced by WRITEBACKIFCOPY, that requires calling PyArray_ResoveWritebackIfCopy before the array is deallocated.

    (gh-20589)

  • Exceptions will be raised during array-like creation. When an object raised an exception during access of the special attributes __array__ or __array_interface__, this exception was usually ignored. This behaviour was deprecated in 1.21, and the exception will now be raised.

    (gh-20835)

  • Multidimensional indexing with non-tuple values is not allowed. Previously, code such as arr[ind] where ind = [[0, 1], [0, 1]] produced a FutureWarning and was interpreted as a multidimensional index (i.e., arr[tuple(ind)]). Now this example is treated like an array index over a single dimension (arr[array(ind)]). Multidimensional indexing with anything but a tuple was deprecated in NumPy 1.15.

    (gh-21029)

  • Changing to a dtype of different size in F-contiguous arrays is no longer permitted. Deprecated since Numpy 1.11.0. See below for an extended explanation of the effects of this change.

    (gh-20722)

New Features crackfortran has support for operator and assignment overloading

crackfortran parser now understands operator and assignment definitions in a module. They are added in the body list of the module which contains a new key implementedby listing the names of the subroutines or functions implementing the operator or assignment.

(gh-15006)

f2py supports reading access type attributes from derived type statements

As a result, one does not need to use public or private statements to specify derived type access properties.

(gh-15844)

New parameter ndmin added to genfromtxt

This parameter behaves the same as ndmin from numpy.loadtxt.

(gh-20500)

np.loadtxt now supports quote character and single converter function

numpy.loadtxt now supports an additional quotechar keyword argument which is not set by default. Using quotechar='"' will read quoted fields as used by the Excel CSV dialect.

Further, it is now possible to pass a single callable rather than a dictionary for the converters argument.

(gh-20580)

Changing to dtype of a different size now requires contiguity of only the last axis

Previously, viewing an array with a dtype of a different item size required that the entire array be C-contiguous. This limitation would unnecessarily force the user to make contiguous copies of non-contiguous arrays before being able to change the dtype.

This change affects not only ndarray.view, but other construction mechanisms, including the discouraged direct assignment to ndarray.dtype.

This change expires the deprecation regarding the viewing of F-contiguous arrays, described elsewhere in the release notes.

(gh-20722)

Deterministic output files for F2PY

For F77 inputs, f2py will generate modname-f2pywrappers.f unconditionally, though these may be empty. For free-form inputs, modname-f2pywrappers.f, modname-f2pywrappers2.f90 will both be generated unconditionally, and may be empty. This allows writing generic output rules in cmake or meson and other build systems. Older behavior can be restored by passing --skip-empty-wrappers to f2py. f2py-meson{.interpreted-text role="ref"} details usage.

(gh-21187)

keepdims parameter for average

The parameter keepdims was added to the functions numpy.average and numpy.ma.average. The parameter has the same meaning as it does in reduction functions such as numpy.sum or numpy.mean.

(gh-21485)

New parameter equal_nan added to np.unique

np.unique was changed in 1.21 to treat all NaN values as equal and return a single NaN. Setting equal_nan=False will restore pre-1.21 behavior to treat NaNs as unique. Defaults to True.

(gh-21623)

Compatibility notes 1D np.linalg.norm preserves float input types, even for scalar results

Previously, this would promote to float64 when the ord argument was not one of the explicitly listed values, e.g. ord=3:

>>> f32 = np.float32([1, 2])
>>> np.linalg.norm(f32, 2).dtype
dtype('float32')
>>> np.linalg.norm(f32, 3)
dtype('float64')  # numpy 1.22
dtype('float32')  # numpy 1.23

This change affects only float32 and float16 vectors with ord other than -Inf, 0, 1, 2, and Inf.

(gh-17709)

Changes to structured (void) dtype promotion and comparisons

In general, NumPy now defines correct, but slightly limited, promotion for structured dtypes by promoting the subtypes of each field instead of raising an exception:

>>> np.result_type(np.dtype("i,i"), np.dtype("i,d"))
dtype([('f0', '<i4'), ('f1', '<f8')])

For promotion matching field names, order, and titles are enforced, however padding is ignored. Promotion involving structured dtypes now always ensures native byte-order for all fields (which may change the result of np.concatenate) and ensures that the result will be \"packed\", i.e. all fields are ordered contiguously and padding is removed. See structured_dtype_comparison_and_promotion{.interpreted-text role="ref"} for further details.

The repr of aligned structures will now never print the long form including offsets and itemsize unless the structure includes padding not guaranteed by align=True.

In alignment with the above changes to the promotion logic, the casting safety has been updated:

  • "equiv" enforces matching names and titles. The itemsize is allowed to differ due to padding.
  • "safe" allows mismatching field names and titles
  • The cast safety is limited by the cast safety of each included field.
  • The order of fields is used to decide cast safety of each individual field. Previously, the field names were used and only unsafe casts were possible when names mismatched.

The main important change here is that name mismatches are now considered \"safe\" casts.

(gh-19226)

NPY_RELAXED_STRIDES_CHECKING has been removed

NumPy cannot be compiled with NPY_RELAXED_STRIDES_CHECKING=0 anymore. Relaxed strides have been the default for many years and the option was initially introduced to allow a smoother transition.

(gh-20220)

np.loadtxt has recieved several changes

The row counting of numpy.loadtxt was fixed. loadtxt ignores fully empty lines in the file, but counted them towards max_rows. When max_rows is used and the file contains empty lines, these will now not be counted. Previously, it was possible that the result contained fewer than max_rows rows even though more data was available to be read. If the old behaviour is required, itertools.islice may be used:

import itertools
lines = itertools.islice(open("file"), 0, max_rows)
result = np.loadtxt(lines, ...)

While generally much faster and improved, numpy.loadtxt may now fail to converter certain strings to numbers that were previously successfully read. The most important cases for this are:

  • Parsing floating point values such as 1.0 into integers is now deprecated.
  • Parsing hexadecimal floats such as 0x3p3 will fail
  • An _ was previously accepted as a thousands delimiter 100_000. This will now result in an error.

If you experience these limitations, they can all be worked around by passing appropriate converters=. NumPy now supports passing a single converter to be used for all columns to make this more convenient. For example, converters=float.fromhex can read hexadecimal float numbers and converters=int will be able to read 100_000.

Further, the error messages have been generally improved. However, this means that error types may differ. In particularly, a ValueError is now always raised when parsing of a single entry fails.

(gh-20580)

Improvements ndarray.__array_finalize__ is now callable

This means subclasses can now use super().__array_finalize__(obj) without worrying whether ndarray is their superclass or not. The actual call remains a no-op.

(gh-20766)

Add support for VSX4/Power10

With VSX4/Power10 enablement, the new instructions available in Power ISA 3.1 can be used to accelerate some NumPy operations, e.g., floor_divide, modulo, etc.

(gh-20821)

np.fromiter now accepts objects and subarrays

The numpy.fromiter function now supports object and subarray dtypes. Please see he function documentation for examples.

(gh-20993)

Math C library feature detection now uses correct signatures

Compiling is preceded by a detection phase to determine whether the underlying libc supports certain math operations. Previously this code did not respect the proper signatures. Fixing this enables compilation for the wasm-ld backend (compilation for web assembly) and reduces the number of warnings.

(gh-21154)

np.kron now maintains subclass information

np.kron maintains subclass information now such as masked arrays while computing the Kronecker product of the inputs

>>> x = ma.array([[1, 2], [3, 4]], mask=[[0, 1], [1, 0]])
>>> np.kron(x,x)
masked_array(
  data=[[1, --, --, --],
        [--, 4, --, --],
        [--, --, 4, --],
        [--, --, --, 16]],
  mask=[[False,  True,  True,  True],
        [ True, False,  True,  True],
        [ True,  True, False,  True],
        [ True,  True,  True, False]],
  fill_value=999999)

⚠️ Warning, np.kron output now follows ufunc ordering (multiply) to determine the output class type

>>> class myarr(np.ndarray):
>>>    __array_priority__ = -1
>>> a = np.ones([2, 2])
>>> ma = myarray(a.shape, a.dtype, a.data)
>>> type(np.kron(a, ma)) == np.ndarray
False # Before it was True
>>> type(np.kron(a, ma)) == myarr
True

(gh-21262)

Performance improvements and changes Faster np.loadtxt

numpy.loadtxt is now generally much faster than previously as most of it is now implemented in C.

(gh-20580)

Faster reduction operators

Reduction operations like numpy.sum, numpy.prod, numpy.add.reduce, numpy.logical_and.reduce on contiguous integer-based arrays are now much faster.

(gh-21001)

Faster np.where

numpy.where is now much faster than previously on unpredictable/random input data.

(gh-21130)

Faster operations on NumPy scalars

Many operations on NumPy scalars are now significantly faster, although rare operations (e.g. with 0-D arrays rather than scalars) may be slower in some cases. However, even with these improvements users who want the best performance for their scalars, may want to convert a known NumPy scalar into a Python one using scalar.item().

(gh-21188)

Faster np.kron

numpy.kron is about 80% faster as the product is now computed using broadcasting.

(gh-21354)

Checksums MD5
21839aaeab3088e685d7c8d0e1856a23  numpy-1.23.0-cp310-cp310-macosx_10_9_x86_64.whl
e657684ea521c50de0197aabfb44e78d  numpy-1.23.0-cp310-cp310-macosx_11_0_arm64.whl
219017660861fdec59b852630e3fef2a  numpy-1.23.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
03c3df83b8327910482a7d24ebe9213b  numpy-1.23.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b8f06ce4054acc147845a9643bd36082  numpy-1.23.0-cp310-cp310-win32.whl
877322db5a62634eef4e351db99a070d  numpy-1.23.0-cp310-cp310-win_amd64.whl
7bb54f95e74306eff733466b6343695f  numpy-1.23.0-cp38-cp38-macosx_10_9_x86_64.whl
5514a0030e5cf065e916950737d6d129  numpy-1.23.0-cp38-cp38-macosx_11_0_arm64.whl
22d43465791814fe50e03ded430bd80c  numpy-1.23.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
771a1f7e488327645bac5b54dd2f6286  numpy-1.23.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
449bfa2d55aff3e722d2fc85a7549620  numpy-1.23.0-cp38-cp38-win32.whl
60c7d27cf92dadb6d206df6e65b1032f  numpy-1.23.0-cp38-cp38-win_amd64.whl
dc2a5c5d2223f7b45a45f7f760d0f2db  numpy-1.23.0-cp39-cp39-macosx_10_9_x86_64.whl
ba5729353c3521ed7ee72c796e77a546  numpy-1.23.0-cp39-cp39-macosx_11_0_arm64.whl
06d5cd49de096482944dead2eb92d783  numpy-1.23.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
6ff50a994f6006349b5f1415e4da6f45  numpy-1.23.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
49185f219512403ef23d43d6f2adbefd  numpy-1.23.0-cp39-cp39-win32.whl
ff126a84dcf91700f9ca13ff606d109f  numpy-1.23.0-cp39-cp39-win_amd64.whl
e1462428487dc599cdffb723dec642c4  numpy-1.23.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
fef1d20265135737fbc0f91ca4441990  numpy-1.23.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
4f8142288202a32c682d01921d6c2c78  numpy-1.23.0-pp38-pypy38_pp73-win_amd64.whl
513e4241d06b8fae5732cd049cdf3b57  numpy-1.23.0.tar.gz
SHA256
58bfd40eb478f54ff7a5710dd61c8097e169bc36cc68333d00a9bcd8def53b38  numpy-1.23.0-cp310-cp310-macosx_10_9_x86_64.whl
196cd074c3f97c4121601790955f915187736f9cf458d3ee1f1b46aff2b1ade0  numpy-1.23.0-cp310-cp310-macosx_11_0_arm64.whl
f1d88ef79e0a7fa631bb2c3dda1ea46b32b1fe614e10fedd611d3d5398447f2f  numpy-1.23.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
d54b3b828d618a19779a84c3ad952e96e2c2311b16384e973e671aa5be1f6187  numpy-1.23.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
2b2da66582f3a69c8ce25ed7921dcd8010d05e59ac8d89d126a299be60421171  numpy-1.23.0-cp310-cp310-win32.whl
97a76604d9b0e79f59baeca16593c711fddb44936e40310f78bfef79ee9a835f  numpy-1.23.0-cp310-cp310-win_amd64.whl
d8cc87bed09de55477dba9da370c1679bd534df9baa171dd01accbb09687dac3  numpy-1.23.0-cp38-cp38-macosx_10_9_x86_64.whl
f0f18804df7370571fb65db9b98bf1378172bd4e962482b857e612d1fec0f53e  numpy-1.23.0-cp38-cp38-macosx_11_0_arm64.whl
ac86f407873b952679f5f9e6c0612687e51547af0e14ddea1eedfcb22466babd  numpy-1.23.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ae8adff4172692ce56233db04b7ce5792186f179c415c37d539c25de7298d25d  numpy-1.23.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
fe8b9683eb26d2c4d5db32cd29b38fdcf8381324ab48313b5b69088e0e355379  numpy-1.23.0-cp38-cp38-win32.whl
5043bcd71fcc458dfb8a0fc5509bbc979da0131b9d08e3d5f50fb0bbb36f169a  numpy-1.23.0-cp38-cp38-win_amd64.whl
1c29b44905af288b3919803aceb6ec7fec77406d8b08aaa2e8b9e63d0fe2f160  numpy-1.23.0-cp39-cp39-macosx_10_9_x86_64.whl
98e8e0d8d69ff4d3fa63e6c61e8cfe2d03c29b16b58dbef1f9baa175bbed7860  numpy-1.23.0-cp39-cp39-macosx_11_0_arm64.whl
79a506cacf2be3a74ead5467aee97b81fca00c9c4c8b3ba16dbab488cd99ba10  numpy-1.23.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
092f5e6025813e64ad6d1b52b519165d08c730d099c114a9247c9bb635a2a450  numpy-1.23.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
d6ca8dabe696c2785d0c8c9b0d8a9b6e5fdbe4f922bde70d57fa1a2848134f95  numpy-1.23.0-cp39-cp39-win32.whl
fc431493df245f3c627c0c05c2bd134535e7929dbe2e602b80e42bf52ff760bc  numpy-1.23.0-cp39-cp39-win_amd64.whl
f9c3fc2adf67762c9fe1849c859942d23f8d3e0bee7b5ed3d4a9c3eeb50a2f07  numpy-1.23.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
d0d2094e8f4d760500394d77b383a1b06d3663e8892cdf5df3c592f55f3bff66  numpy-1.23.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
94b170b4fa0168cd6be4becf37cb5b127bd12a795123984385b8cd4aca9857e5  numpy-1.23.0-pp38-pypy38_pp73-win_amd64.whl
bd3fa4fe2e38533d5336e1272fc4e765cabbbde144309ccee8675509d5cd7b05  numpy-1.23.0.tar.gz

1.23.0rc3

8 months ago
NumPy 1.23.0 Release Notes

The NumPy 1.23.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, clarify the documentation, and expire old deprecations. The highlights are:

  • Implementation of loadtxt in C, greatly improving its performance.
  • Exposing DLPack at the Python level for easy data exchange.
  • Changes to the promotion and comparisons of structured dtypes.
  • Improvements to f2py.

See below for the details,

New functions
  • A masked array specialization of ndenumerate is now available as numpy.ma.ndenumerate. It provides an alternative to numpy.ndenumerate and skips masked values by default.

    (gh-20020)

  • numpy.from_dlpack has been added to allow easy exchange of data using the DLPack protocol. It accepts Python objects that implement the __dlpack__ and __dlpack_device__ methods and returns a ndarray object which is generally the view of the data of the input object.

    (gh-21145)

Deprecations
  • Setting __array_finalize__ to None is deprecated. It must now be a method and may wish to call super().__array_finalize__(obj) after checking for None or if the NumPy version is sufficiently new.

    (gh-20766)

  • Using axis=32 (axis=np.MAXDIMS) in many cases had the same meaning as axis=None. This is deprecated and axis=None must be used instead.

    (gh-20920)

  • The hook function PyDataMem_SetEventHook has been deprecated and the demonstration of its use in tool/allocation_tracking has been removed. The ability to track allocations is now built-in to python via tracemalloc.

    (gh-20394)

  • numpy.distutils has been deprecated, as a result of distutils itself being deprecated. It will not be present in NumPy for Python >= 3.12, and will be removed completely 2 years after the release of Python 3.12 For more details, see distutils-status-migration{.interpreted-text role="ref"}.

    (gh-20875)

  • numpy.loadtxt will now give a DeprecationWarning when an integer dtype is requested but the value is formatted as a floating point number.

    (gh-21663)

Expired deprecations
  • The NpzFile.iteritems() and NpzFile.iterkeys() methods have been removed as part of the continued removal of Python 2 compatibility. This concludes the deprecation from 1.15.

    (gh-16830)

  • The alen and asscalar functions have been removed.

    (gh-20414)

  • The UPDATEIFCOPY array flag has been removed together with the enum NPY_ARRAY_UPDATEIFCOPY. The associated (and deprecated) PyArray_XDECREF_ERR was also removed. These were all deprecated in 1.14. They are replaced by WRITEBACKIFCOPY, that requires calling PyArray_ResoveWritebackIfCopy before the array is deallocated.

    (gh-20589)

  • Exceptions will be raised during array-like creation. When an object raised an exception during access of the special attributes __array__ or __array_interface__, this exception was usually ignored. This behaviour was deprecated in 1.21, and the exception will now be raised.

    (gh-20835)

  • Multidimensional indexing with non-tuple values is not allowed. Previously, code such as arr[ind] where ind = [[0, 1], [0, 1]] produced a FutureWarning and was interpreted as a multidimensional index (i.e., arr[tuple(ind)]). Now this example is treated like an array index over a single dimension (arr[array(ind)]). Multidimensional indexing with anything but a tuple was deprecated in NumPy 1.15.

    (gh-21029)

  • Changing to a dtype of different size in F-contiguous arrays is no longer permitted. Deprecated since Numpy 1.11.0. See below for an extended explanation of the effects of this change.

    (gh-20722)

New Features crackfortran has support for operator and assignment overloading

crackfortran parser now understands operator and assignment definitions in a module. They are added in the body list of the module which contains a new key implementedby listing the names of the subroutines or functions implementing the operator or assignment.

(gh-15006)

f2py supports reading access type attributes from derived type statements

As a result, one does not need to use public or private statements to specify derived type access properties.

(gh-15844)

New parameter ndmin added to genfromtxt

This parameter behaves the same as ndmin from numpy.loadtxt.

(gh-20500)

np.loadtxt now supports quote character and single converter function

numpy.loadtxt now supports an additional quotechar keyword argument which is not set by default. Using quotechar='"' will read quoted fields as used by the Excel CSV dialect.

Further, it is now possible to pass a single callable rather than a dictionary for the converters argument.

(gh-20580)

Changing to dtype of a different size now requires contiguity of only the last axis

Previously, viewing an array with a dtype of a different item size required that the entire array be C-contiguous. This limitation would unnecessarily force the user to make contiguous copies of non-contiguous arrays before being able to change the dtype.

This change affects not only ndarray.view, but other construction mechanisms, including the discouraged direct assignment to ndarray.dtype.

This change expires the deprecation regarding the viewing of F-contiguous arrays, described elsewhere in the release notes.

(gh-20722)

Deterministic output files for F2PY

For F77 inputs, f2py will generate modname-f2pywrappers.f unconditionally, though these may be empty. For free-form inputs, modname-f2pywrappers.f, modname-f2pywrappers2.f90 will both be generated unconditionally, and may be empty. This allows writing generic output rules in cmake or meson and other build systems. Older behavior can be restored by passing --skip-empty-wrappers to f2py. f2py-meson{.interpreted-text role="ref"} details usage.

(gh-21187)

keepdims parameter for average

The parameter keepdims was added to the functions numpy.average and numpy.ma.average. The parameter has the same meaning as it does in reduction functions such as numpy.sum or numpy.mean.

(gh-21485)

New parameter equal_nan added to np.unique

np.unique was changed in 1.21 to treat all NaN values as equal and return a single NaN. Setting equal_nan=False will restore pre-1.21 behavior to treat NaNs as unique. Defaults to True.

(gh-21623)

Compatibility notes 1D np.linalg.norm preserves float input types, even for scalar results

Previously, this would promote to float64 when the ord argument was not one of the explicitly listed values, e.g. ord=3:

>>> f32 = np.float32([1, 2])
>>> np.linalg.norm(f32, 2).dtype
dtype('float32')
>>> np.linalg.norm(f32, 3)
dtype('float64')  # numpy 1.22
dtype('float32')  # numpy 1.23

This change affects only float32 and float16 vectors with ord other than -Inf, 0, 1, 2, and Inf.

(gh-17709)

Changes to structured (void) dtype promotion and comparisons

In general, NumPy now defines correct, but slightly limited, promotion for structured dtypes by promoting the subtypes of each field instead of raising an exception:

>>> np.result_type(np.dtype("i,i"), np.dtype("i,d"))
dtype([('f0', '<i4'), ('f1', '<f8')])

For promotion matching field names, order, and titles are enforced, however padding is ignored. Promotion involving structured dtypes now always ensures native byte-order for all fields (which may change the result of np.concatenate) and ensures that the result will be \"packed\", i.e. all fields are ordered contiguously and padding is removed. See structured_dtype_comparison_and_promotion{.interpreted-text role="ref"} for further details.

The repr of aligned structures will now never print the long form including offsets and itemsize unless the structure includes padding not guaranteed by align=True.

In alignment with the above changes to the promotion logic, the casting safety has been updated:

  • "equiv" enforces matching names and titles. The itemsize is allowed to differ due to padding.
  • "safe" allows mismatching field names and titles
  • The cast safety is limited by the cast safety of each included field.
  • The order of fields is used to decide cast safety of each individual field. Previously, the field names were used and only unsafe casts were possible when names mismatched.

The main important change here is that name mismatches are now considered \"safe\" casts.

(gh-19226)

NPY_RELAXED_STRIDES_CHECKING has been removed

NumPy cannot be compiled with NPY_RELAXED_STRIDES_CHECKING=0 anymore. Relaxed strides have been the default for many years and the option was initially introduced to allow a smoother transition.

(gh-20220)

np.loadtxt has recieved several changes

The row counting of numpy.loadtxt was fixed. loadtxt ignores fully empty lines in the file, but counted them towards max_rows. When max_rows is used and the file contains empty lines, these will now not be counted. Previously, it was possible that the result contained fewer than max_rows rows even though more data was available to be read. If the old behaviour is required, itertools.islice may be used:

import itertools
lines = itertools.islice(open("file"), 0, max_rows)
result = np.loadtxt(lines, ...)

While generally much faster and improved, numpy.loadtxt may now fail to converter certain strings to numbers that were previously successfully read. The most important cases for this are:

  • Parsing floating point values such as 1.0 into integers is now deprecated.
  • Parsing hexadecimal floats such as 0x3p3 will fail
  • An _ was previously accepted as a thousands delimiter 100_000. This will now result in an error.

If you experience these limitations, they can all be worked around by passing appropriate converters=. NumPy now supports passing a single converter to be used for all columns to make this more convenient. For example, converters=float.fromhex can read hexadecimal float numbers and converters=int will be able to read 100_000.

Further, the error messages have been generally improved. However, this means that error types may differ. In particularly, a ValueError is now always raised when parsing of a single entry fails.

(gh-20580)

Improvements ndarray.__array_finalize__ is now callable

This means subclasses can now use super().__array_finalize__(obj) without worrying whether ndarray is their superclass or not. The actual call remains a no-op.

(gh-20766)

Add support for VSX4/Power10

With VSX4/Power10 enablement, the new instructions available in Power ISA 3.1 can be used to accelerate some NumPy operations, e.g., floor_divide, modulo, etc.

(gh-20821)

np.fromiter now accepts objects and subarrays

The numpy.fromiter function now supports object and subarray dtypes. Please see he function documentation for examples.

(gh-20993)

Math C library feature detection now uses correct signatures

Compiling is preceded by a detection phase to determine whether the underlying libc supports certain math operations. Previously this code did not respect the proper signatures. Fixing this enables compilation for the wasm-ld backend (compilation for web assembly) and reduces the number of warnings.

(gh-21154)

np.kron now maintains subclass information

np.kron maintains subclass information now such as masked arrays while computing the Kronecker product of the inputs

>>> x = ma.array([[1, 2], [3, 4]], mask=[[0, 1], [1, 0]])
>>> np.kron(x,x)
masked_array(
  data=[[1, --, --, --],
        [--, 4, --, --],
        [--, --, 4, --],
        [--, --, --, 16]],
  mask=[[False,  True,  True,  True],
        [ True, False,  True,  True],
        [ True,  True, False,  True],
        [ True,  True,  True, False]],
  fill_value=999999)

⚠️ Warning, np.kron output now follows ufunc ordering (multiply) to determine the output class type

>>> class myarr(np.ndarray):
>>>    __array_priority__ = -1
>>> a = np.ones([2, 2])
>>> ma = myarray(a.shape, a.dtype, a.data)
>>> type(np.kron(a, ma)) == np.ndarray
False # Before it was True
>>> type(np.kron(a, ma)) == myarr
True

(gh-21262)

String comparisons now supported in ufuncs

The comparison ufuncs [np.equal]{.title-ref}, [np.greater]{.title-ref}, etc. now support unicode and byte string inputs (dtypes S and U). Due to this change a FutureWarning is now given when comparing unicode to byte strings. Such comparisons always returned False and continue to do so at this time.

(gh-21716)

Performance improvements and changes Faster np.loadtxt

numpy.loadtxt is now generally much faster than previously as most of it is now implemented in C.

(gh-20580)

Faster reduction operators

Reduction operations like numpy.sum, numpy.prod, numpy.add.reduce, numpy.logical_and.reduce on contiguous integer-based arrays are now much faster.

(gh-21001)

Faster np.where

numpy.where is now much faster than previously on unpredictable/random input data.

(gh-21130)

Faster operations on NumPy scalars

Many operations on NumPy scalars are now significantly faster, although rare operations (e.g. with 0-D arrays rather than scalars) may be slower in some cases. However, even with these improvements users who want the best performance for their scalars, may want to convert a known NumPy scalar into a Python one using scalar.item().

(gh-21188)

Faster np.kron

numpy.kron is about 80% faster as the product is now computed using broadcasting.

(gh-21354)

Checksums MD5
527ffa92c1e964bfcfd09497a319090e  numpy-1.23.0rc3-cp310-cp310-macosx_10_9_x86_64.whl
14538d5c5a9f07c7c54b8f27ffcfcdf8  numpy-1.23.0rc3-cp310-cp310-macosx_11_0_arm64.whl
2914affc99c1d00a1e31689dfe8200c1  numpy-1.23.0rc3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a72038b74d0fe5d43967fa3c3f44a71a  numpy-1.23.0rc3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b1c01a974cf10fdefe7c346aa09bc20a  numpy-1.23.0rc3-cp310-cp310-win32.whl
b1ae6d311ad01f15a7cf28dbb906d2a4  numpy-1.23.0rc3-cp310-cp310-win_amd64.whl
ea734f44ae2b10c9cf1530eece6c58d6  numpy-1.23.0rc3-cp38-cp38-macosx_10_9_x86_64.whl
8bc2051b1172627cbb7ca503a75fcdd8  numpy-1.23.0rc3-cp38-cp38-macosx_11_0_arm64.whl
495efaf5566fd119a0f0b4c9339449ed  numpy-1.23.0rc3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
1b93121d0c339b35dc83b92fa67a3545  numpy-1.23.0rc3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
50433ef3beaab89d5485d0fe7cbbaaaa  numpy-1.23.0rc3-cp38-cp38-win32.whl
9014a7e33d01fd4d36298836b3199eac  numpy-1.23.0rc3-cp38-cp38-win_amd64.whl
13661a5d83fd2bb423514681d0d00de4  numpy-1.23.0rc3-cp39-cp39-macosx_10_9_x86_64.whl
11386871be967bcb5331d8289b1186a6  numpy-1.23.0rc3-cp39-cp39-macosx_11_0_arm64.whl
43e6fa27b8ab7cb367103d1b890ca7c5  numpy-1.23.0rc3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b9aa6e6cb2ad37993ea4c70e7edeec4c  numpy-1.23.0rc3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
030669015597201aca83e8cb2d2f82ed  numpy-1.23.0rc3-cp39-cp39-win32.whl
ffab9ff64e6a08784dfb0eab430d4158  numpy-1.23.0rc3-cp39-cp39-win_amd64.whl
758408262bfc96942193e22cbfdab6dc  numpy-1.23.0rc3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
27fb60bd1cd54e785aa63b1a29b32fb1  numpy-1.23.0rc3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b8819d1885f39a67917faf131e716a16  numpy-1.23.0rc3-pp38-pypy38_pp73-win_amd64.whl
b6e3a4784ce0ab3d1a9d850fde5049a3  numpy-1.23.0rc3.tar.gz
SHA256
5716acbd372407b046d168228217533d48f46b1fb76a788a01ce7b446d85e054  numpy-1.23.0rc3-cp310-cp310-macosx_10_9_x86_64.whl
65ac805918a4793aa50a0f366f0a31aa67e85a3e9a28fbdc49bec076ea9d59dd  numpy-1.23.0rc3-cp310-cp310-macosx_11_0_arm64.whl
3947ff9ea7f50d44a0c278fb9c9b43109e6b2e02273b4b3341f3eea9fe31cc76  numpy-1.23.0rc3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8635887a615e8d3cf0ce35c401b30ccf7818eb58c9ac282561b2363d85729150  numpy-1.23.0rc3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
68d6f3794c78b37faf015c9d60207aaf156edfaf96b1d8c01a2694953b979b8f  numpy-1.23.0rc3-cp310-cp310-win32.whl
c3237a338d59e271145e9773020b49dfb77314b749bde67783c45d946346a13f  numpy-1.23.0rc3-cp310-cp310-win_amd64.whl
db5a2b42d09cc0661fec75b4e3daabff91a4858e67ee106fb793ebcd02ebd7b6  numpy-1.23.0rc3-cp38-cp38-macosx_10_9_x86_64.whl
fd999d0b503dce88fd97153986c3970154c965cfd1c9835f610e89f0dda3bda3  numpy-1.23.0rc3-cp38-cp38-macosx_11_0_arm64.whl
bc58787ee33ff7828be36b656b08ddaefb7b24339aacd2e21fb28fc49b44008c  numpy-1.23.0rc3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
fae0b80e6b85e3a72a8f7dab8af91199da31b6d0d86fab36529945f23f806d35  numpy-1.23.0rc3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ca12e7773b4f76addf2f91dad61307426f9c1fdf8da5c00b49080af56a9eeff8  numpy-1.23.0rc3-cp38-cp38-win32.whl
f403bea354d3c892ab1da29ab9d14d51149491a32731b32a94608e3dcd514533  numpy-1.23.0rc3-cp38-cp38-win_amd64.whl
849e7aa12c1df7e9f26d1936029710bb6050bc31c9cc9772d83c30e3fc7cf8e9  numpy-1.23.0rc3-cp39-cp39-macosx_10_9_x86_64.whl
e9ad17a823c106dbed8675f4d831381fe99e9df9945485792d8762c186259dcd  numpy-1.23.0rc3-cp39-cp39-macosx_11_0_arm64.whl
03d5111e85d6371ffc3678824542a8df69ea206f16f83de76ac10231d40c006b  numpy-1.23.0rc3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b757b22fab2a3ff1f41d0f2cb69bed337eda211db7a2c981b3f93180e4aa68ea  numpy-1.23.0rc3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
87fd874392c7f8ee23829b4ac6737b19a20aeff2418169afc3e6da00c0e23bc1  numpy-1.23.0rc3-cp39-cp39-win32.whl
f159357529470285dff46e69d97e3c9694b0bd75229e4592edb02f8b812c7a4c  numpy-1.23.0rc3-cp39-cp39-win_amd64.whl
a0be42a51fbb6087049dfa9b036568e9674a25fb4615f2bf60f189f435691aa4  numpy-1.23.0rc3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
da170cde43519e5490a1887898719e881575d0f0924ef35fe66d990246db6f0e  numpy-1.23.0rc3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
33aa550e001817c8075c56a3b350fb3687cba66ee55dfbb09085d0d0fd63f6e9  numpy-1.23.0rc3-pp38-pypy38_pp73-win_amd64.whl
6a8fc5573cc8cb8108cec555bca5745d2798c54eef107d478b4320c1f6542102  numpy-1.23.0rc3.tar.gz

1.23.0rc2

8 months ago
NumPy 1.23.0 Release Notes

The NumPy 1.23.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, clarify the documentation, and expire old deprecations. The highlights are:

  • Implementation of loadtxt in C, greatly improving its performance.
  • Exposing DLPack at the Python level for easy data exchange.
  • Changes to the promotion and comparisons of structured dtypes.
  • Improvements to f2py.

See below for the details,

New functions
  • A masked array specialization of ndenumerate is now available as numpy.ma.ndenumerate. It provides an alternative to numpy.ndenumerate and skips masked values by default.

    (gh-20020)

  • numpy.from_dlpack has been added to allow easy exchange of data using the DLPack protocol. It accepts Python objects that implement the __dlpack__ and __dlpack_device__ methods and returns a ndarray object which is generally the view of the data of the input object.

    (gh-21145)

Deprecations
  • Setting __array_finalize__ to None is deprecated. It must now be a method and may wish to call super().__array_finalize__(obj) after checking for None or if the NumPy version is sufficiently new.

    (gh-20766)

  • Using axis=32 (axis=np.MAXDIMS) in many cases had the same meaning as axis=None. This is deprecated and axis=None must be used instead.

    (gh-20920)

  • The hook function PyDataMem_SetEventHook has been deprecated and the demonstration of its use in tool/allocation_tracking has been removed. The ability to track allocations is now built-in to python via tracemalloc.

    (gh-20394)

  • numpy.distutils has been deprecated, as a result of distutils itself being deprecated. It will not be present in NumPy for Python >= 3.12, and will be removed completely 2 years after the release of Python 3.12 For more details, see distutils-status-migration{.interpreted-text role="ref"}.

    (gh-20875)

Expired deprecations
  • The NpzFile.iteritems() and NpzFile.iterkeys() methods have been removed as part of the continued removal of Python 2 compatibility. This concludes the deprecation from 1.15.

    (gh-16830)

  • The alen and asscalar functions have been removed.

    (gh-20414)

  • The UPDATEIFCOPY array flag has been removed together with the enum NPY_ARRAY_UPDATEIFCOPY. The associated (and deprecated) PyArray_XDECREF_ERR was also removed. These were all deprecated in 1.14. They are replaced by WRITEBACKIFCOPY, that requires calling PyArray_ResoveWritebackIfCopy before the array is deallocated.

    (gh-20589)

  • Exceptions will be raised during array-like creation. When an object raised an exception during access of the special attributes __array__ or __array_interface__, this exception was usually ignored. This behaviour was deprecated in 1.21, and the exception will now be raised.

    (gh-20835)

  • Multidimensional indexing with non-tuple values is not allowed. Previously, code such as arr[ind] where ind = [[0, 1], [0, 1]] produced a FutureWarning and was interpreted as a multidimensional index (i.e., arr[tuple(ind)]). Now this example is treated like an array index over a single dimension (arr[array(ind)]). Multidimensional indexing with anything but a tuple was deprecated in NumPy 1.15.

    (gh-21029)

  • Changing to a dtype of different size in F-contiguous arrays is no longer permitted. Deprecated since Numpy 1.11.0. See below for an extended explanation of the effects of this change.

    (gh-20722)

New Features crackfortran has support for operator and assignment overloading

crackfortran parser now understands operator and assignment definitions in a module. They are added in the body list of the module which contains a new key implementedby listing the names of the subroutines or functions implementing the operator or assignment.

(gh-15006)

f2py supports reading access type attributes from derived type statements

As a result, one does not need to use public or private statements to specify derived type access properties.

(gh-15844)

New parameter ndmin added to genfromtxt

This parameter behaves the same as ndmin from numpy.loadtxt.

(gh-20500)

np.loadtxt now supports quote character and single converter function

numpy.loadtxt now supports an additional quotechar keyword argument which is not set by default. Using quotechar='"' will read quoted fields as used by the Excel CSV dialect.

Further, it is now possible to pass a single callable rather than a dictionary for the converters argument.

(gh-20580)

Changing to dtype of a different size now requires contiguity of only the last axis

Previously, viewing an array with a dtype of a different item size required that the entire array be C-contiguous. This limitation would unnecessarily force the user to make contiguous copies of non-contiguous arrays before being able to change the dtype.

This change affects not only ndarray.view, but other construction mechanisms, including the discouraged direct assignment to ndarray.dtype.

This change expires the deprecation regarding the viewing of F-contiguous arrays, described elsewhere in the release notes.

(gh-20722)

Deterministic output files for F2PY

For F77 inputs, f2py will generate modname-f2pywrappers.f unconditionally, though these may be empty. For free-form inputs, modname-f2pywrappers.f, modname-f2pywrappers2.f90 will both be generated unconditionally, and may be empty. This allows writing generic output rules in cmake or meson and other build systems. Older behavior can be restored by passing --skip-empty-wrappers to f2py. f2py-meson{.interpreted-text role="ref"} details usage.

(gh-21187)

keepdims parameter for average

The parameter keepdims was added to the functions numpy.average and numpy.ma.average. The parameter has the same meaning as it does in reduction functions such as numpy.sum or numpy.mean.

(gh-21485)

Compatibility notes 1D np.linalg.norm preserves float input types, even for scalar results

Previously, this would promote to float64 when the ord argument was not one of the explicitly listed values, e.g. ord=3:

>>> f32 = np.float32([1, 2])
>>> np.linalg.norm(f32, 2).dtype
dtype('float32')
>>> np.linalg.norm(f32, 3)
dtype('float64')  # numpy 1.22
dtype('float32')  # numpy 1.23

This change affects only float32 and float16 vectors with ord other than -Inf, 0, 1, 2, and Inf.

(gh-17709)

Changes to structured (void) dtype promotion and comparisons

In general, NumPy now defines correct, but slightly limited, promotion for structured dtypes by promoting the subtypes of each field instead of raising an exception:

>>> np.result_type(np.dtype("i,i"), np.dtype("i,d"))
dtype([('f0', '<i4'), ('f1', '<f8')])

For promotion matching field names, order, and titles are enforced, however padding is ignored. Promotion involving structured dtypes now always ensures native byte-order for all fields (which may change the result of np.concatenate) and ensures that the result will be \"packed\", i.e. all fields are ordered contiguously and padding is removed. See structured_dtype_comparison_and_promotion{.interpreted-text role="ref"} for further details.

The repr of aligned structures will now never print the long form including offsets and itemsize unless the structure includes padding not guaranteed by align=True.

In alignment with the above changes to the promotion logic, the casting safety has been updated:

  • "equiv" enforces matching names and titles. The itemsize is allowed to differ due to padding.
  • "safe" allows mismatching field names and titles
  • The cast safety is limited by the cast safety of each included field.
  • The order of fields is used to decide cast safety of each individual field. Previously, the field names were used and only unsafe casts were possible when names mismatched.

The main important change here is that name mismatches are now considered \"safe\" casts.

(gh-19226)

NPY_RELAXED_STRIDES_CHECKING has been removed

NumPy cannot be compiled with NPY_RELAXED_STRIDES_CHECKING=0 anymore. Relaxed strides have been the default for many years and the option was initially introduced to allow a smoother transition.

(gh-20220)

np.loadtxt has recieved several changes

The row counting of numpy.loadtxt was fixed. loadtxt ignores fully empty lines in the file, but counted them towards max_rows. When max_rows is used and the file contains empty lines, these will now not be counted. Previously, it was possible that the result contained fewer than max_rows rows even though more data was available to be read. If the old behaviour is required, itertools.islice may be used:

import itertools
lines = itertools.islice(open("file"), 0, max_rows)
result = np.loadtxt(lines, ...)

While generally much faster and improved, numpy.loadtxt may now fail to converter certain strings to numbers that were previously successfully read. The most important cases for this are:

  • Parsing floating point values such as 1.0 into integers will now fail
  • Parsing hexadecimal floats such as 0x3p3 will fail
  • An _ was previously accepted as a thousands delimiter 100_000. This will now result in an error.

If you experience these limitations, they can all be worked around by passing appropriate converters=. NumPy now supports passing a single converter to be used for all columns to make this more convenient. For example, converters=float.fromhex can read hexadecimal float numbers and converters=int will be able to read 100_000.

Further, the error messages have been generally improved. However, this means that error types may differ. In particularly, a ValueError is now always raised when parsing of a single entry fails.

(gh-20580)

Improvements ndarray.__array_finalize__ is now callable

This means subclasses can now use super().__array_finalize__(obj) without worrying whether ndarray is their superclass or not. The actual call remains a no-op.

(gh-20766)

Add support for VSX4/Power10

With VSX4/Power10 enablement, the new instructions available in Power ISA 3.1 can be used to accelerate some NumPy operations, e.g., floor_divide, modulo, etc.

(gh-20821)

np.fromiter now accepts objects and subarrays

The numpy.fromiter function now supports object and subarray dtypes. Please see he function documentation for examples.

(gh-20993)

Math C library feature detection now uses correct signatures

Compiling is preceded by a detection phase to determine whether the underlying libc supports certain math operations. Previously this code did not respect the proper signatures. Fixing this enables compilation for the wasm-ld backend (compilation for web assembly) and reduces the number of warnings.

(gh-21154)

np.kron now maintains subclass information

np.kron maintains subclass information now such as masked arrays while computing the Kronecker product of the inputs

>>> x = ma.array([[1, 2], [3, 4]], mask=[[0, 1], [1, 0]])
>>> np.kron(x,x)
masked_array(
  data=[[1, --, --, --],
        [--, 4, --, --],
        [--, --, 4, --],
        [--, --, --, 16]],
  mask=[[False,  True,  True,  True],
        [ True, False,  True,  True],
        [ True,  True, False,  True],
        [ True,  True,  True, False]],
  fill_value=999999)

⚠️ Warning, np.kron output now follows ufunc ordering (multiply) to determine the output class type

>>> class myarr(np.ndarray):
>>>    __array_priority__ = -1
>>> a = np.ones([2, 2])
>>> ma = myarray(a.shape, a.dtype, a.data)
>>> type(np.kron(a, ma)) == np.ndarray
False # Before it was True
>>> type(np.kron(a, ma)) == myarr
True

(gh-21262)

Performance improvements and changes Faster np.loadtxt

numpy.loadtxt is now generally much faster than previously as most of it is now implemented in C.

(gh-20580)

Faster reduction operators

Reduction operations like numpy.sum, numpy.prod, numpy.add.reduce, numpy.logical_and.reduce on contiguous integer-based arrays are now much faster.

(gh-21001)

Faster np.where

numpy.where is now much faster than previously on unpredictable/random input data.

(gh-21130)

Faster operations on NumPy scalars

Many operations on NumPy scalars are now significantly faster, although rare operations (e.g. with 0-D arrays rather than scalars) may be slower in some cases. However, even with these improvements users who want the best performance for their scalars, may want to convert a known NumPy scalar into a Python one using scalar.item().

(gh-21188)

Faster np.kron

numpy.kron is about 80% faster as the product is now computed using broadcasting.

(gh-21354)

Checksums MD5
e82b403f04ff9696804199b727c76a16  numpy-1.23.0rc2-cp310-cp310-macosx_10_9_x86_64.whl
8c54a8d758645f3cc4cd38d3e8749b53  numpy-1.23.0rc2-cp310-cp310-macosx_11_0_arm64.whl
9cb69a99ecc262a0618d1022abefddf3  numpy-1.23.0rc2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
fdc8f769f9d7f49621810dd6e93c4b7b  numpy-1.23.0rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b4e4780b9893cafb7fdf9e77a917621a  numpy-1.23.0rc2-cp310-cp310-win32.whl
72522edc1356681cb2282c0ab846e185  numpy-1.23.0rc2-cp310-cp310-win_amd64.whl
e41ddd480f1a4df9fbd19613e8fe0279  numpy-1.23.0rc2-cp38-cp38-macosx_10_9_x86_64.whl
c072a129bed27a890f40fe4ae92c85d1  numpy-1.23.0rc2-cp38-cp38-macosx_11_0_arm64.whl
3403871b2b11afb71e157da8b5e77bde  numpy-1.23.0rc2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4bfc243c9d418c3012790c916821b1a1  numpy-1.23.0rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
71da5294cd1c7787c502b5dd3868e810  numpy-1.23.0rc2-cp38-cp38-win32.whl
82050d9ffdd0c949bdbb431cadd1e594  numpy-1.23.0rc2-cp38-cp38-win_amd64.whl
ba5b01751b659d1d7db38ebd98c43230  numpy-1.23.0rc2-cp39-cp39-macosx_10_9_x86_64.whl
3f135b3b0e0bb45739c422c3a7eaf71d  numpy-1.23.0rc2-cp39-cp39-macosx_11_0_arm64.whl
d4c2891a953d0bbc746aaaf21e3b39b2  numpy-1.23.0rc2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
cd9afa01451169e5b09037db846948fb  numpy-1.23.0rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e58528377aabfde966bb965fc4df24d3  numpy-1.23.0rc2-cp39-cp39-win32.whl
b07488787ebc63d8ba7885625231f14a  numpy-1.23.0rc2-cp39-cp39-win_amd64.whl
11c6aa572a7337e0245043bd7e442db1  numpy-1.23.0rc2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
9ab414aa7e01e45faf2e28c7312d16e6  numpy-1.23.0rc2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
d1f5b0c80a9eea0b57df5a5b03d2a981  numpy-1.23.0rc2-pp38-pypy38_pp73-win_amd64.whl
00884782fc17920a470641ae5c19ad31  numpy-1.23.0rc2.tar.gz
SHA256
2e66decdea13ae8091ba480209dd5ce31261fa3b021ec06b30bd2f4a304861b7  numpy-1.23.0rc2-cp310-cp310-macosx_10_9_x86_64.whl
fde47931544086a648b12ee7c9ccf30edd6c6db776005fb07e4a019a04980042  numpy-1.23.0rc2-cp310-cp310-macosx_11_0_arm64.whl
c308afc8ec782badd073999385a6c93c27ee68e6c0991697394d4fd56566af1f  numpy-1.23.0rc2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
1f22f6f3cb7094ad77c8d352e4bfd2c1db1c38bc08d0b6c74e9b46343c53b052  numpy-1.23.0rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
279dce16b143bc50d49bab52dc279d6ab5b0edc7f4d2cc7edaf6a547586bda7e  numpy-1.23.0rc2-cp310-cp310-win32.whl
04e4dbe6b777e977813e7ff5f43aa030ef4f6f75cbc1a4504d3135942b5c12fe  numpy-1.23.0rc2-cp310-cp310-win_amd64.whl
9793feff4758c68502f7652fab08e5ec427d9973d26014767cc15c1b1d885f56  numpy-1.23.0rc2-cp38-cp38-macosx_10_9_x86_64.whl
804293d9bdf33f9c9fb0b4a753f9e84114bb0ad538d184fc579b30782326c827  numpy-1.23.0rc2-cp38-cp38-macosx_11_0_arm64.whl
c335800064f04e0b474b64779ab234ae23c0a5b2f5a06284bb07d297d73692bd  numpy-1.23.0rc2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9810b840a751b6f0c73c21fb2a50e306d7d0be4114cded4c7d069e142ce488cf  numpy-1.23.0rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
dbc987d14f46ae4c476068543d3ad2a20e7ebcb06b211eb4292224dc136eb01d  numpy-1.23.0rc2-cp38-cp38-win32.whl
020218fc82390f1d537cb193d6f1449a919ec97df69b5a64c0a1d017486e0032  numpy-1.23.0rc2-cp38-cp38-win_amd64.whl
785d6520f7bf10ff188762bc460579d6a31c11f960976b2a29efc383b0346572  numpy-1.23.0rc2-cp39-cp39-macosx_10_9_x86_64.whl
ae7e8801b93124a6b0becedc06285ddbaca2daab2d30e35ea413d3bec252717a  numpy-1.23.0rc2-cp39-cp39-macosx_11_0_arm64.whl
1c881827ff0ad7d607047c19a075a7d7c7125cc103fb969a9200bad26175fb9d  numpy-1.23.0rc2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
6fbd492bead87ab83240c56b3490ac301595ab1399ace3e3c1b7c130e3529358  numpy-1.23.0rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
82e69890c394a4e1cbcaf12b47d8477bbac4635866fc46a77670abbe4bb4085d  numpy-1.23.0rc2-cp39-cp39-win32.whl
f5a1c7c45ff29db501f9e38a360aedd833e355c14c75155ba2bd46ee3799e30a  numpy-1.23.0rc2-cp39-cp39-win_amd64.whl
b7be00b0a76384490845395714e62f597e64bc6dc8f8a14be0e96034dde3667c  numpy-1.23.0rc2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
d17f7feb2cca596daa4b3dae86b611a13e9ace061e6583a8db21841f529ca891  numpy-1.23.0rc2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
548f4d86aa259a448f2da0c07df070bf1f71b68c1f84b1356d4a2ed832598758  numpy-1.23.0rc2-pp38-pypy38_pp73-win_amd64.whl
8e8a88657c028b8b77f3df6f266a5e6ffb4419cbc3dfb525cbbb80ba710f5da2  numpy-1.23.0rc2.tar.gz

1.23.0rc1

8 months ago
NumPy 1.23.0 Release Notes

The NumPy 1.23.0 release continues the ongoing work to improve the handling and promotion of dtypes, increase the execution speed, clarify the documentation, and expire old deprecations. The highlights are:

  • Implementation of loadtxt in C, greatly improving its performance.
  • Exposing DLPack at the Python level for easy data exchange.
  • Changes to the promotion and comparisons of structured dtypes.
  • Improvements to f2py.

See below for the details,

New functions
  • A masked array specialization of ndenumerate is now available as numpy.ma.ndenumerate. It provides an alternative to numpy.ndenumerate and skips masked values by default.

    (gh-20020)

  • numpy.from_dlpack has been added to allow easy exchange of data using the DLPack protocol. It accepts Python objects that implement the __dlpack__ and __dlpack_device__ methods and returns a ndarray object which is generally the view of the data of the input object.

    (gh-21145)

Deprecations
  • Setting __array_finalize__ to None is deprecated. It must now be a method and may wish to call super().__array_finalize__(obj) after checking for None or if the NumPy version is sufficiently new.

    (gh-20766)

  • Using axis=32 (axis=np.MAXDIMS) in many cases had the same meaning as axis=None. This is deprecated and axis=None must be used instead.

    (gh-20920)

  • The hook function PyDataMem_SetEventHook has been deprecated and the demonstration of its use in tool/allocation_tracking has been removed. The ability to track allocations is now built-in to python via tracemalloc.

    (gh-20394)

  • numpy.distutils has been deprecated, as a result of distutils itself being deprecated. It will not be present in NumPy for Python >= 3.12, and will be removed completely 2 years after the release of Python 3.12 For more details, see distutils-status-migration{.interpreted-text role="ref"}.

    (gh-20875)

Expired deprecations
  • The NpzFile.iteritems() and NpzFile.iterkeys() methods have been removed as part of the continued removal of Python 2 compatibility. This concludes the deprecation from 1.15.

    (gh-16830)

  • The alen and asscalar functions have been removed.

    (gh-20414)

  • The UPDATEIFCOPY array flag has been removed together with the enum NPY_ARRAY_UPDATEIFCOPY. The associated (and deprecated) PyArray_XDECREF_ERR was also removed. These were all deprecated in 1.14. They are replaced by WRITEBACKIFCOPY, that requires calling PyArray_ResoveWritebackIfCopy before the array is deallocated.

    (gh-20589)

  • Exceptions will be raised during array-like creation. When an object raised an exception during access of the special attributes __array__ or __array_interface__, this exception was usually ignored. This behaviour was deprecated in 1.21, and the exception will now be raised.

    (gh-20835)

  • Multidimensional indexing with non-tuple values is not allowed. Previously, code such as arr[ind] where ind = [[0, 1], [0, 1]] produced a FutureWarning and was interpreted as a multidimensional index (i.e., arr[tuple(ind)]). Now this example is treated like an array index over a single dimension (arr[array(ind)]). Multidimensional indexing with anything but a tuple was deprecated in NumPy 1.15.

    (gh-21029)

  • Changing to a dtype of different size in F-contiguous arrays is no longer permitted. Deprecated since Numpy 1.11.0. See below for an extended explanation of the effects of this change.

    (gh-20722)

New Features crackfortran has support for operator and assignment overloading

crackfortran parser now understands operator and assignment definitions in a module. They are added in the body list of the module which contains a new key implementedby listing the names of the subroutines or functions implementing the operator or assignment.

(gh-15006)

f2py supports reading access type attributes from derived type statements

As a result, one does not need to use public or private statements to specify derived type access properties.

(gh-15844)

New parameter ndmin added to genfromtxt

This parameter behaves the same as ndmin from numpy.loadtxt.

(gh-20500)

np.loadtxt now supports quote character and single converter function

numpy.loadtxt now supports an additional quotechar keyword argument which is not set by default. Using quotechar='"' will read quoted fields as used by the Excel CSV dialect.

Further, it is now possible to pass a single callable rather than a dictionary for the converters argument.

(gh-20580)

Changing to dtype of a different size now requires contiguity of only the last axis

Previously, viewing an array with a dtype of a different item size required that the entire array be C-contiguous. This limitation would unnecessarily force the user to make contiguous copies of non-contiguous arrays before being able to change the dtype.

This change affects not only ndarray.view, but other construction mechanisms, including the discouraged direct assignment to ndarray.dtype.

This change expires the deprecation regarding the viewing of F-contiguous arrays, described elsewhere in the release notes.

(gh-20722)

Deterministic output files for F2PY

For F77 inputs, f2py will generate modname-f2pywrappers.f unconditionally, though these may be empty. For free-form inputs, modname-f2pywrappers.f, modname-f2pywrappers2.f90 will both be generated unconditionally, and may be empty. This allows writing generic output rules in cmake or meson and other build systems. Older behavior can be restored by passing --skip-empty-wrappers to f2py. f2py-meson{.interpreted-text role="ref"} details usage.

(gh-21187)

keepdims parameter for average

The parameter keepdims was added to the functions numpy.average and numpy.ma.average. The parameter has the same meaning as it does in reduction functions such as numpy.sum or numpy.mean.

(gh-21485)

Compatibility notes 1D np.linalg.norm preserves float input types, even for scalar results

Previously, this would promote to float64 when the ord argument was not one of the explicitly listed values, e.g. ord=3:

>>> f32 = np.float32([1, 2])
>>> np.linalg.norm(f32, 2).dtype
dtype('float32')
>>> np.linalg.norm(f32, 3)
dtype('float64')  # numpy 1.22
dtype('float32')  # numpy 1.23

This change affects only float32 and float16 vectors with ord other than -Inf, 0, 1, 2, and Inf.

(gh-17709)

Changes to structured (void) dtype promotion and comparisons

In general, NumPy now defines correct, but slightly limited, promotion for structured dtypes by promoting the subtypes of each field instead of raising an exception:

>>> np.result_type(np.dtype("i,i"), np.dtype("i,d"))
dtype([('f0', '<i4'), ('f1', '<f8')])

For promotion matching field names, order, and titles are enforced, however padding is ignored. Promotion involving structured dtypes now always ensures native byte-order for all fields (which may change the result of np.concatenate) and ensures that the result will be \"packed\", i.e. all fields are ordered contiguously and padding is removed. See structured_dtype_comparison_and_promotion{.interpreted-text role="ref"} for further details.

The repr of aligned structures will now never print the long form including offsets and itemsize unless the structure includes padding not guaranteed by align=True.

In alignment with the above changes to the promotion logic, the casting safety has been updated:

  • "equiv" enforces matching names and titles. The itemsize is allowed to differ due to padding.
  • "safe" allows mismatching field names and titles
  • The cast safety is limited by the cast safety of each included field.
  • The order of fields is used to decide cast safety of each individual field. Previously, the field names were used and only unsafe casts were possible when names mismatched.

The main important change here is that name mismatches are now considered \"safe\" casts.

(gh-19226)

NPY_RELAXED_STRIDES_CHECKING has been removed

NumPy cannot be compiled with NPY_RELAXED_STRIDES_CHECKING=0 anymore. Relaxed strides have been the default for many years and the option was initially introduced to allow a smoother transition.

(gh-20220)

np.loadtxt has recieved several changes

The row counting of numpy.loadtxt was fixed. loadtxt ignores fully empty lines in the file, but counted them towards max_rows. When max_rows is used and the file contains empty lines, these will now not be counted. Previously, it was possible that the result contained fewer than max_rows rows even though more data was available to be read. If the old behaviour is required, itertools.islice may be used:

import itertools
lines = itertools.islice(open("file"), 0, max_rows)
result = np.loadtxt(lines, ...)

While generally much faster and improved, numpy.loadtxt may now fail to converter certain strings to numbers that were previously successfully read. The most important cases for this are:

  • Parsing floating point values such as 1.0 into integers will now fail
  • Parsing hexadecimal floats such as 0x3p3 will fail
  • An _ was previously accepted as a thousands delimiter 100_000. This will now result in an error.

If you experience these limitations, they can all be worked around by passing appropriate converters=. NumPy now supports passing a single converter to be used for all columns to make this more convenient. For example, converters=float.fromhex can read hexadecimal float numbers and converters=int will be able to read 100_000.

Further, the error messages have been generally improved. However, this means that error types may differ. In particularly, a ValueError is now always raised when parsing of a single entry fails.

(gh-20580)

Improvements ndarray.__array_finalize__ is now callable

This means subclasses can now use super().__array_finalize__(obj) without worrying whether ndarray is their superclass or not. The actual call remains a no-op.

(gh-20766)

Add support for VSX4/Power10

With VSX4/Power10 enablement, the new instructions available in Power ISA 3.1 can be used to accelerate some NumPy operations, e.g., floor_divide, modulo, etc.

(gh-20821)

np.fromiter now accepts objects and subarrays

The numpy.fromiter function now supports object and subarray dtypes. Please see he function documentation for examples.

(gh-20993)

Math C library feature detection now uses correct signatures

Compiling is preceded by a detection phase to determine whether the underlying libc supports certain math operations. Previously this code did not respect the proper signatures. Fixing this enables compilation for the wasm-ld backend (compilation for web assembly) and reduces the number of warnings.

(gh-21154)

np.kron now maintains subclass information

np.kron maintains subclass information now such as masked arrays while computing the Kronecker product of the inputs

>>> x = ma.array([[1, 2], [3, 4]], mask=[[0, 1], [1, 0]])
>>> np.kron(x,x)
masked_array(
  data=[[1, --, --, --],
        [--, 4, --, --],
        [--, --, 4, --],
        [--, --, --, 16]],
  mask=[[False,  True,  True,  True],
        [ True, False,  True,  True],
        [ True,  True, False,  True],
        [ True,  True,  True, False]],
  fill_value=999999)

⚠️ Warning, np.kron output now follows ufunc ordering (multiply) to determine the output class type

>>> class myarr(np.ndarray):
>>>    __array_priority__ = -1
>>> a = np.ones([2, 2])
>>> ma = myarray(a.shape, a.dtype, a.data)
>>> type(np.kron(a, ma)) == np.ndarray
False # Before it was True
>>> type(np.kron(a, ma)) == myarr
True

(gh-21262)

Performance improvements and changes Faster np.loadtxt

numpy.loadtxt is now generally much faster than previously as most of it is now implemented in C.

(gh-20580)

Faster reduction operators

Reduction operations like numpy.sum, numpy.prod, numpy.add.reduce, numpy.logical_and.reduce on contiguous integer-based arrays are now much faster.

(gh-21001)

Faster np.where

numpy.where is now much faster than previously on unpredictable/random input data.

(gh-21130)

Faster operations on NumPy scalars

Many operations on NumPy scalars are now significantly faster, although rare operations (e.g. with 0-D arrays rather than scalars) may be slower in some cases. However, even with these improvements users who want the best performance for their scalars, may want to convert a known NumPy scalar into a Python one using scalar.item().

(gh-21188)

Faster np.kron

numpy.kron is about 80% faster as the product is now computed using broadcasting.

(gh-21354)

Checksums MD5
c67b4cc1de8a0753bc65765a508aa0e3  numpy-1.23.0rc1-cp310-cp310-macosx_10_9_x86_64.whl
9daceb162c46298986b5fceb13f10e54  numpy-1.23.0rc1-cp310-cp310-macosx_11_0_arm64.whl
ac07046b70001710d8d3243d9b5d0389  numpy-1.23.0rc1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
14269d197cd6aac02655d43aa10ba108  numpy-1.23.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ba5fc5cd776549afc353e0043f6c6f5a  numpy-1.23.0rc1-cp310-cp310-win32.whl
0e1b00f156f32aabde1e29607c709a24  numpy-1.23.0rc1-cp310-cp310-win_amd64.whl
34b5a9f3abeb9f6e9c6fbd494305d53d  numpy-1.23.0rc1-cp38-cp38-macosx_10_9_x86_64.whl
bb825cf372822daad1e440577e324042  numpy-1.23.0rc1-cp38-cp38-macosx_11_0_arm64.whl
45296e6b41691c4265c90562c94254aa  numpy-1.23.0rc1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b10b131e5c0576629ab99829301d6fba  numpy-1.23.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
bc6210254087b73715d8c6a79dafa3b8  numpy-1.23.0rc1-cp38-cp38-win32.whl
d9b7fb5a539a738309a717051f13e41a  numpy-1.23.0rc1-cp38-cp38-win_amd64.whl
d2cec33489c96dfc489bb00353d351fe  numpy-1.23.0rc1-cp39-cp39-macosx_10_9_x86_64.whl
e4982f3bf3d4acab67cb61d3d0e2f85b  numpy-1.23.0rc1-cp39-cp39-macosx_11_0_arm64.whl
781a79ea9f1683a579a1ef27d809a8e0  numpy-1.23.0rc1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8c03ea50c2baa172e8252d10dea73498  numpy-1.23.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
61829dec0785cf72b8f5bc92dc44d828  numpy-1.23.0rc1-cp39-cp39-win32.whl
94c7c971ed5eedb1b61a09bcfc123617  numpy-1.23.0rc1-cp39-cp39-win_amd64.whl
b5c6f674b468e7fc513882563391efec  numpy-1.23.0rc1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
41ab4b757478c8e244018c37bcb52bb3  numpy-1.23.0rc1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f2082734772a6a7afbe3568e7b2ad458  numpy-1.23.0rc1-pp38-pypy38_pp73-win_amd64.whl
faf6a08cda5696b96acb670c433495e5  numpy-1.23.0rc1.tar.gz
SHA256
a72607e12891615a314a892f8d21301b930f211841f0084d269baa1eb31710b4  numpy-1.23.0rc1-cp310-cp310-macosx_10_9_x86_64.whl
4784a81089c75a941dcc013b09290dfb22768780a1f3525667328d09a3338116  numpy-1.23.0rc1-cp310-cp310-macosx_11_0_arm64.whl
d4ebdeb0e2a57bbd28c3258a562ee011775127427eea833613744af1a66c3e11  numpy-1.23.0rc1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a2dfb54cb1c6470918a3c02da77706f28977cb7eac4b76cc40b14942c8634615  numpy-1.23.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1567c488f9ef97341c5937b4140a45ac37e0592c43ba2c59d3e49ff7d5da90b0  numpy-1.23.0rc1-cp310-cp310-win32.whl
78df1fc2ddf543508b5358dd24ac68ee693599e5df0d136062b9ec21ba7643cf  numpy-1.23.0rc1-cp310-cp310-win_amd64.whl
020c6d8476fced48f42629f46996af8a07bc725cb821081205c4422eacaa2283  numpy-1.23.0rc1-cp38-cp38-macosx_10_9_x86_64.whl
efd26eecd1ada0c8dadc5b221c52086ccc72e4cb0707e451889ef3b62c14163c  numpy-1.23.0rc1-cp38-cp38-macosx_11_0_arm64.whl
8cf3f61984777a830eef452d8b04338795691949214e6cafc46c5236900cd1f5  numpy-1.23.0rc1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
96738ae39db010502564325ce2f4aff4f42b75adf64f3ccb2b19214e9be1c01c  numpy-1.23.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
33b233f59d9430a27c2a58a056f32259eadf9584f41c6ec02c493c3aeb90f844  numpy-1.23.0rc1-cp38-cp38-win32.whl
edf0a82d285e18418e3915fece2cf0f4f31e84fe62271331fbaafbbc7d57e9ee  numpy-1.23.0rc1-cp38-cp38-win_amd64.whl
a71f1602bf84d0a2fb5d586a2d8c31f29fbca9253ae1eecf46b7059fa265eb79  numpy-1.23.0rc1-cp39-cp39-macosx_10_9_x86_64.whl
05000d27fd135dd0aab90acaf96652991c070dda688739097ac2dea92189f9f0  numpy-1.23.0rc1-cp39-cp39-macosx_11_0_arm64.whl
ebe07758ac3e7402290f43d379f6d79d81a247488561743490cf2e5b64351ba6  numpy-1.23.0rc1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
3cd05784cdcd09114c2f6186bb99af7f5ee65ffd720dae9990722a94309b17ea  numpy-1.23.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
6ccb79435d4501b35ed3d807e1bf7345e42f68b25fbf720ade9c74c7196360f9  numpy-1.23.0rc1-cp39-cp39-win32.whl
a8fbe61e09565fa2f7bca076627ea0efbf50ab689c35af5082c5d94fb24b30ee  numpy-1.23.0rc1-cp39-cp39-win_amd64.whl
7a45352476e92c1958ce513fa84b508d59dd8e6ffe0e6f6cceebfc0f3c06d086  numpy-1.23.0rc1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
4f15768493ecf23c5d82e5542642a36764e551c7744781268c7c221f26c7ffd6  numpy-1.23.0rc1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
edf0b720c8ba3d35b23c71c0cd13df34290be87b42f0e10d0ec2f1639cda2692  numpy-1.23.0rc1-pp38-pypy38_pp73-win_amd64.whl
3a09d0f564f59b6da54f592909d3fdbd50b492ef9fbe6d699043c992538ba0e0  numpy-1.23.0rc1.tar.gz

1.22.4

9 months ago
NumPy 1.22.4 Release Notes

NumPy 1.22.4 is a maintenance release that fixes bugs discovered after the 1.22.3 release. In addition, the wheels for this release are built using the recently released Cython 0.29.30, which should fix the reported problems with debugging.

The Python versions supported for this release are 3.8-3.10. Note that the Mac wheels are now based on OS X 10.15 rather than 10.6 that was used in previous NumPy release cycles.

Contributors

A total of 12 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Alexander Shadchin
  • Bas van Beek
  • Charles Harris
  • Hood Chatham
  • Jarrod Millman
  • John-Mark Gurney +
  • Junyan Ou +
  • Mariusz Felisiak +
  • Ross Barnowski
  • Sebastian Berg
  • Serge Guelton
  • Stefan van der Walt
Pull requests merged

A total of 22 pull requests were merged for this release.

  • #21191: TYP, BUG: Fix np.lib.stride_tricks re-exported under the...
  • #21192: TST: Bump mypy from 0.931 to 0.940
  • #21243: MAINT: Explicitly re-export the types in numpy._typing
  • #21245: MAINT: Specify sphinx, numpydoc versions for CI doc builds
  • #21275: BUG: Fix typos
  • #21277: ENH, BLD: Fix math feature detection for wasm
  • #21350: MAINT: Fix failing simd and cygwin tests.
  • #21438: MAINT: Fix failing Python 3.8 32-bit Windows test.
  • #21444: BUG: add linux guard per #21386
  • #21445: BUG: Allow legacy dtypes to cast to datetime again
  • #21446: BUG: Make mmap handling safer in frombuffer
  • #21447: BUG: Stop using PyBytesObject.ob_shash deprecated in Python 3.11.
  • #21448: ENH: Introduce numpy.core.setup_common.NPY_CXX_FLAGS
  • #21472: BUG: Ensure compile errors are raised correclty
  • #21473: BUG: Fix segmentation fault
  • #21474: MAINT: Update doc requirements
  • #21475: MAINT: Mark npy_memchr with no_sanitize("alignment") on clang
  • #21512: DOC: Proposal - make the doc landing page cards more similar...
  • #21525: MAINT: Update Cython version to 0.29.30.
  • #21536: BUG: Fix GCC error during build configuration
  • #21541: REL: Prepare for the NumPy 1.22.4 release.
  • #21547: MAINT: Skip tests that fail on PyPy.
Checksums MD5
a19351fd3dc0b3bbc733495ed18b8f24  numpy-1.22.4-cp310-cp310-macosx_10_14_x86_64.whl
0730f9e196f70ad89f246bf95ccf05d5  numpy-1.22.4-cp310-cp310-macosx_10_15_x86_64.whl
63c74e5395a2b31d8adc5b1aa0c62471  numpy-1.22.4-cp310-cp310-macosx_11_0_arm64.whl
f99778023770c12f896768c90f7712e5  numpy-1.22.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
757d68b0cdb4e28ffce8574b6a2f3c5e  numpy-1.22.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
50becf2e048e54dc5227dfe8378aae1e  numpy-1.22.4-cp310-cp310-win32.whl
79dfdc29a4730e44d6df33dbea5b35b0  numpy-1.22.4-cp310-cp310-win_amd64.whl
8fd8f04d71ead55c2773d1b46668ca67  numpy-1.22.4-cp38-cp38-macosx_10_15_x86_64.whl
41a7c6240081010824cc0d5c02900fe6  numpy-1.22.4-cp38-cp38-macosx_11_0_arm64.whl
6bc066d3f61da3304c82d92f3f900a4f  numpy-1.22.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
86d959605c66ccba11c6504f25fff0d7  numpy-1.22.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ae0405894c065349a511e4575b919e2a  numpy-1.22.4-cp38-cp38-win32.whl
c9a731d08081396b7a1b66977734d2ac  numpy-1.22.4-cp38-cp38-win_amd64.whl
4d9b97d74799e5fc48860f0b4a3b255a  numpy-1.22.4-cp39-cp39-macosx_10_14_x86_64.whl
c99fa7e04cb7cc23f1713f2023b4e489  numpy-1.22.4-cp39-cp39-macosx_10_15_x86_64.whl
dda3815df12b8a99c6c3069f69997521  numpy-1.22.4-cp39-cp39-macosx_11_0_arm64.whl
9b7c5b39d5611d92b66eb545d44b25db  numpy-1.22.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
90fc45eaf8b8c4fac3f3ebd105a5a856  numpy-1.22.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
9562153d4a83d773c20eb626cbd65cde  numpy-1.22.4-cp39-cp39-win32.whl
711b23acce54a18ce74fc80f48f48062  numpy-1.22.4-cp39-cp39-win_amd64.whl
ab803b24ea557452e828adba1b986af3  numpy-1.22.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
09b3a41ea0b9bc20bd1691cf88f0b0d3  numpy-1.22.4.tar.gz
b44849506fbb54cdef9dbb435b2b1987  numpy-1.22.4.zip
SHA256
ba9ead61dfb5d971d77b6c131a9dbee62294a932bf6a356e48c75ae684e635b3  numpy-1.22.4-cp310-cp310-macosx_10_14_x86_64.whl
1ce7ab2053e36c0a71e7a13a7475bd3b1f54750b4b433adc96313e127b870887  numpy-1.22.4-cp310-cp310-macosx_10_15_x86_64.whl
7228ad13744f63575b3a972d7ee4fd61815b2879998e70930d4ccf9ec721dce0  numpy-1.22.4-cp310-cp310-macosx_11_0_arm64.whl
43a8ca7391b626b4c4fe20aefe79fec683279e31e7c79716863b4b25021e0e74  numpy-1.22.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a911e317e8c826ea632205e63ed8507e0dc877dcdc49744584dfc363df9ca08c  numpy-1.22.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
9ce7df0abeabe7fbd8ccbf343dc0db72f68549856b863ae3dd580255d009648e  numpy-1.22.4-cp310-cp310-win32.whl
3e1ffa4748168e1cc8d3cde93f006fe92b5421396221a02f2274aab6ac83b077  numpy-1.22.4-cp310-cp310-win_amd64.whl
59d55e634968b8f77d3fd674a3cf0b96e85147cd6556ec64ade018f27e9479e1  numpy-1.22.4-cp38-cp38-macosx_10_15_x86_64.whl
c1d937820db6e43bec43e8d016b9b3165dcb42892ea9f106c70fb13d430ffe72  numpy-1.22.4-cp38-cp38-macosx_11_0_arm64.whl
d4c5d5eb2ec8da0b4f50c9a843393971f31f1d60be87e0fb0917a49133d257d6  numpy-1.22.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
64f56fc53a2d18b1924abd15745e30d82a5782b2cab3429aceecc6875bd5add0  numpy-1.22.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
fb7a980c81dd932381f8228a426df8aeb70d59bbcda2af075b627bbc50207cba  numpy-1.22.4-cp38-cp38-win32.whl
e96d7f3096a36c8754207ab89d4b3282ba7b49ea140e4973591852c77d09eb76  numpy-1.22.4-cp38-cp38-win_amd64.whl
4c6036521f11a731ce0648f10c18ae66d7143865f19f7299943c985cdc95afb5  numpy-1.22.4-cp39-cp39-macosx_10_14_x86_64.whl
b89bf9b94b3d624e7bb480344e91f68c1c6c75f026ed6755955117de00917a7c  numpy-1.22.4-cp39-cp39-macosx_10_15_x86_64.whl
2d487e06ecbf1dc2f18e7efce82ded4f705f4bd0cd02677ffccfb39e5c284c7e  numpy-1.22.4-cp39-cp39-macosx_11_0_arm64.whl
f3eb268dbd5cfaffd9448113539e44e2dd1c5ca9ce25576f7c04a5453edc26fa  numpy-1.22.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
37431a77ceb9307c28382c9773da9f306435135fae6b80b62a11c53cfedd8802  numpy-1.22.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cc7f00008eb7d3f2489fca6f334ec19ca63e31371be28fd5dad955b16ec285bd  numpy-1.22.4-cp39-cp39-win32.whl
f0725df166cf4785c0bc4cbfb320203182b1ecd30fee6e541c8752a92df6aa32  numpy-1.22.4-cp39-cp39-win_amd64.whl
0791fbd1e43bf74b3502133207e378901272f3c156c4df4954cad833b1380207  numpy-1.22.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b4308198d0e41efaa108e57d69973398439c7299a9d551680cdd603cf6d20709  numpy-1.22.4.tar.gz
425b390e4619f58d8526b3dcf656dde069133ae5c240229821f01b5f44ea07af  numpy-1.22.4.zip

1.21.6

10 months ago
NumPy 1.21.6 Release Notes

NumPy 1.21.6 is a very small release that achieves two things:

  • Backs out the mistaken backport of C++ code into 1.21.5.
  • Provides a 32 bit Windows wheel for Python 3.10.

The provision of the 32 bit wheel is intended to make life easier for oldest-supported-numpy.

Checksums MD5
5a3e5d7298056bcfbc3246597af474d4  numpy-1.21.6-cp310-cp310-macosx_10_9_universal2.whl
d981d2859842e7b62dc93e24808c7bac  numpy-1.21.6-cp310-cp310-macosx_10_9_x86_64.whl
171313893c26529404d09fadb3537ed3  numpy-1.21.6-cp310-cp310-macosx_11_0_arm64.whl
5a7a6dfdd43069f9b29d3fe6b7f3a2ce  numpy-1.21.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a9e25375a72725c5d74442eda53af405  numpy-1.21.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
6f9a782477380b2cdb7606f6f7634c00  numpy-1.21.6-cp310-cp310-win32.whl
32a73a348864700a3fa510d2fc4350b7  numpy-1.21.6-cp310-cp310-win_amd64.whl
0db8941ebeb0a02cd839d9cd3c5c20bb  numpy-1.21.6-cp37-cp37m-macosx_10_9_x86_64.whl
67882155be9592850861f4ad8ba36623  numpy-1.21.6-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
c70e30e1ff9ab49f898c19e7a6492ae6  numpy-1.21.6-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
e32dbd291032c7554a742f1bb9b2f7a3  numpy-1.21.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
689bf804c2cd16cb241fd943e3833ffd  numpy-1.21.6-cp37-cp37m-win32.whl
0062a7b0231a07cb5b9f3d7c495e6fe4  numpy-1.21.6-cp37-cp37m-win_amd64.whl
0d08809980ab497659e7aa0df9ce120e  numpy-1.21.6-cp38-cp38-macosx_10_9_universal2.whl
3c67d14ea2009069844b27bfbf74304d  numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl
5f0e773745cb817313232ac1bf4c7eee  numpy-1.21.6-cp38-cp38-macosx_11_0_arm64.whl
fa8011e065f1964d3eb870bb3926fc99  numpy-1.21.6-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
486cf9d4daab59aad253aa5b84a5aa83  numpy-1.21.6-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
88509abab303c076dfb26f00e455180d  numpy-1.21.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
f7234e2ef837f5f6ddbde8db246fd05b  numpy-1.21.6-cp38-cp38-win32.whl
e1063e01fb44ea7a49adea0c33548217  numpy-1.21.6-cp38-cp38-win_amd64.whl
61c4caad729e3e0e688accbc1424ed45  numpy-1.21.6-cp39-cp39-macosx_10_9_universal2.whl
67488d8ccaeff798f2e314aae7c4c3d6  numpy-1.21.6-cp39-cp39-macosx_10_9_x86_64.whl
128c3713b5d1de45a0f522562bac5263  numpy-1.21.6-cp39-cp39-macosx_11_0_arm64.whl
50e79cd0610b4ed726b3bf08c3716dab  numpy-1.21.6-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
bd0c9e3c0e488faac61daf3227fb95af  numpy-1.21.6-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
aa5e9baf1dec16b15e481c23f8a23214  numpy-1.21.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a2405b0e5d3f775ad30177296a997092  numpy-1.21.6-cp39-cp39-win32.whl
f0d20eda8c78f957ea70c5527954303e  numpy-1.21.6-cp39-cp39-win_amd64.whl
9682abbcc38cccb7f56e48aacca7de23  numpy-1.21.6-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
6aa3c2e8ea2886bf593bd8e0a1425c64  numpy-1.21.6.tar.gz
04aea95dcb1d256d13a45df42173aa1e  numpy-1.21.6.zip
SHA256
8737609c3bbdd48e380d463134a35ffad3b22dc56295eff6f79fd85bd0eeeb25  numpy-1.21.6-cp310-cp310-macosx_10_9_universal2.whl
fdffbfb6832cd0b300995a2b08b8f6fa9f6e856d562800fea9182316d99c4e8e  numpy-1.21.6-cp310-cp310-macosx_10_9_x86_64.whl
3820724272f9913b597ccd13a467cc492a0da6b05df26ea09e78b171a0bb9da6  numpy-1.21.6-cp310-cp310-macosx_11_0_arm64.whl
f17e562de9edf691a42ddb1eb4a5541c20dd3f9e65b09ded2beb0799c0cf29bb  numpy-1.21.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5f30427731561ce75d7048ac254dbe47a2ba576229250fb60f0fb74db96501a1  numpy-1.21.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
d4bf4d43077db55589ffc9009c0ba0a94fa4908b9586d6ccce2e0b164c86303c  numpy-1.21.6-cp310-cp310-win32.whl
d136337ae3cc69aa5e447e78d8e1514be8c3ec9b54264e680cf0b4bd9011574f  numpy-1.21.6-cp310-cp310-win_amd64.whl
6aaf96c7f8cebc220cdfc03f1d5a31952f027dda050e5a703a0d1c396075e3e7  numpy-1.21.6-cp37-cp37m-macosx_10_9_x86_64.whl
67c261d6c0a9981820c3a149d255a76918278a6b03b6a036800359aba1256d46  numpy-1.21.6-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
a6be4cb0ef3b8c9250c19cc122267263093eee7edd4e3fa75395dfda8c17a8e2  numpy-1.21.6-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
7c4068a8c44014b2d55f3c3f574c376b2494ca9cc73d2f1bd692382b6dffe3db  numpy-1.21.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7c7e5fa88d9ff656e067876e4736379cc962d185d5cd808014a8a928d529ef4e  numpy-1.21.6-cp37-cp37m-win32.whl
bcb238c9c96c00d3085b264e5c1a1207672577b93fa666c3b14a45240b14123a  numpy-1.21.6-cp37-cp37m-win_amd64.whl
82691fda7c3f77c90e62da69ae60b5ac08e87e775b09813559f8901a88266552  numpy-1.21.6-cp38-cp38-macosx_10_9_universal2.whl
643843bcc1c50526b3a71cd2ee561cf0d8773f062c8cbaf9ffac9fdf573f83ab  numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl
357768c2e4451ac241465157a3e929b265dfac85d9214074985b1786244f2ef3  numpy-1.21.6-cp38-cp38-macosx_11_0_arm64.whl
9f411b2c3f3d76bba0865b35a425157c5dcf54937f82bbeb3d3c180789dd66a6  numpy-1.21.6-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
4aa48afdce4660b0076a00d80afa54e8a97cd49f457d68a4342d188a09451c1a  numpy-1.21.6-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
d6a96eef20f639e6a97d23e57dd0c1b1069a7b4fd7027482a4c5c451cd7732f4  numpy-1.21.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5c3c8def4230e1b959671eb959083661b4a0d2e9af93ee339c7dada6759a9470  numpy-1.21.6-cp38-cp38-win32.whl
bf2ec4b75d0e9356edea834d1de42b31fe11f726a81dfb2c2112bc1eaa508fcf  numpy-1.21.6-cp38-cp38-win_amd64.whl
4391bd07606be175aafd267ef9bea87cf1b8210c787666ce82073b05f202add1  numpy-1.21.6-cp39-cp39-macosx_10_9_universal2.whl
67f21981ba2f9d7ba9ade60c9e8cbaa8cf8e9ae51673934480e45cf55e953673  numpy-1.21.6-cp39-cp39-macosx_10_9_x86_64.whl
ee5ec40fdd06d62fe5d4084bef4fd50fd4bb6bfd2bf519365f569dc470163ab0  numpy-1.21.6-cp39-cp39-macosx_11_0_arm64.whl
1dbe1c91269f880e364526649a52eff93ac30035507ae980d2fed33aaee633ac  numpy-1.21.6-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
d9caa9d5e682102453d96a0ee10c7241b72859b01a941a397fd965f23b3e016b  numpy-1.21.6-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
58459d3bad03343ac4b1b42ed14d571b8743dc80ccbf27444f266729df1d6f5b  numpy-1.21.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7f5ae4f304257569ef3b948810816bc87c9146e8c446053539947eedeaa32786  numpy-1.21.6-cp39-cp39-win32.whl
e31f0bb5928b793169b87e3d1e070f2342b22d5245c755e2b81caa29756246c3  numpy-1.21.6-cp39-cp39-win_amd64.whl
dd1c8f6bd65d07d3810b90d02eba7997e32abbdf1277a481d698969e921a3be0  numpy-1.21.6-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
d4efc6491a1cdc00f9eca9bf2c1aa13671776f6941c7321ddf75b45c862f0c2c  numpy-1.21.6.tar.gz
ecb55251139706669fdec2ff073c98ef8e9a84473e51e716211b41aa0f18e656  numpy-1.21.6.zip

1.22.3

1 year ago
NumPy 1.22.3 Release Notes

NumPy 1.22.3 is a maintenance release that fixes bugs discovered after the 1.22.2 release. The most noticeable fixes may be those for DLPack. One that may cause some problems is disallowing strings as inputs to logical ufuncs. It is still undecided how strings should be treated in those functions and it was thought best to simply disallow them until a decision was reached. That should not cause problems with older code.

The Python versions supported for this release are 3.8-3.10. Note that the Mac wheels are now based on OS X 10.14 rather than 10.9 that was used in previous NumPy release cycles. 10.14 is the oldest release supported by Apple.

Contributors

A total of 9 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • \@GalaxySnail +
  • Alexandre de Siqueira
  • Bas van Beek
  • Charles Harris
  • Melissa Weber Mendonça
  • Ross Barnowski
  • Sebastian Berg
  • Tirth Patel
  • Matthieu Darbois
Pull requests merged

A total of 10 pull requests were merged for this release.

  • #21048: MAINT: Use \"3.10\" instead of \"3.10-dev\" on travis.
  • #21106: TYP,MAINT: Explicitly allow sequences of array-likes in np.concatenate
  • #21137: BLD,DOC: skip broken ipython 8.1.0
  • #21138: BUG, ENH: np._from_dlpack: export correct device information
  • #21139: BUG: Fix numba DUFuncs added loops getting picked up
  • #21140: BUG: Fix unpickling an empty ndarray with a non-zero dimension...
  • #21141: BUG: use ThreadPoolExecutor instead of ThreadPool
  • #21142: API: Disallow strings in logical ufuncs
  • #21143: MAINT, DOC: Fix SciPy intersphinx link
  • #21148: BUG,ENH: np._from_dlpack: export arrays with any strided size-1...
Checksums MD5
14f1872bbab050b0579e5fcd8b341b81  numpy-1.22.3-cp310-cp310-macosx_10_14_x86_64.whl
c673faa3ac8745ad10ed0428a21a77aa  numpy-1.22.3-cp310-cp310-macosx_11_0_arm64.whl
d925fff720561673fd7ee8ead0e94935  numpy-1.22.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
319f97f5ee26b9c3c06f7a2a3df412a3  numpy-1.22.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
866eae5dba934cad50eb38c8505c8449  numpy-1.22.3-cp310-cp310-win32.whl
e4c512437a6d4eb4a384225861067ad8  numpy-1.22.3-cp310-cp310-win_amd64.whl
a28052af37037f0d5c3b47f4a7040135  numpy-1.22.3-cp38-cp38-macosx_10_14_x86_64.whl
d22dc074bde64f6e91a2d1990345f821  numpy-1.22.3-cp38-cp38-macosx_11_0_arm64.whl
e8a01c2ca1474aff142366a0a2fe0812  numpy-1.22.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4fe6e71e7871cb31ffc4122aa5707be7  numpy-1.22.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1273fb3c77383ab28f2fb05192751340  numpy-1.22.3-cp38-cp38-win32.whl
001244a6bafa640d7509c85661a4e98e  numpy-1.22.3-cp38-cp38-win_amd64.whl
b8694b880a1a68d1716f60a9c9e82b38  numpy-1.22.3-cp39-cp39-macosx_10_14_x86_64.whl
ba122eaa0988801e250f8674e3dd612e  numpy-1.22.3-cp39-cp39-macosx_11_0_arm64.whl
3641825aca07cb26732425e52d034daf  numpy-1.22.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
f92412e4273c2580abcc1b75c56e9651  numpy-1.22.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b38604778ffd0a17931c06738c3ce9ed  numpy-1.22.3-cp39-cp39-win32.whl
644e0b141fa36a1baf0338032254cc9a  numpy-1.22.3-cp39-cp39-win_amd64.whl
99d2dfb943327b108b2c3b923bd42000  numpy-1.22.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
3305c27e5bdf7f19247a7eee00ac053e  numpy-1.22.3.tar.gz
b56530be068796a50bf5a09105c8011e  numpy-1.22.3.zip
SHA256
92bfa69cfbdf7dfc3040978ad09a48091143cffb778ec3b03fa170c494118d75  numpy-1.22.3-cp310-cp310-macosx_10_14_x86_64.whl
8251ed96f38b47b4295b1ae51631de7ffa8260b5b087808ef09a39a9d66c97ab  numpy-1.22.3-cp310-cp310-macosx_11_0_arm64.whl
48a3aecd3b997bf452a2dedb11f4e79bc5bfd21a1d4cc760e703c31d57c84b3e  numpy-1.22.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a3bae1a2ed00e90b3ba5f7bd0a7c7999b55d609e0c54ceb2b076a25e345fa9f4  numpy-1.22.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f950f8845b480cffe522913d35567e29dd381b0dc7e4ce6a4a9f9156417d2430  numpy-1.22.3-cp310-cp310-win32.whl
08d9b008d0156c70dc392bb3ab3abb6e7a711383c3247b410b39962263576cd4  numpy-1.22.3-cp310-cp310-win_amd64.whl
201b4d0552831f7250a08d3b38de0d989d6f6e4658b709a02a73c524ccc6ffce  numpy-1.22.3-cp38-cp38-macosx_10_14_x86_64.whl
f8c1f39caad2c896bc0018f699882b345b2a63708008be29b1f355ebf6f933fe  numpy-1.22.3-cp38-cp38-macosx_11_0_arm64.whl
568dfd16224abddafb1cbcce2ff14f522abe037268514dd7e42c6776a1c3f8e5  numpy-1.22.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
3ca688e1b9b95d80250bca34b11a05e389b1420d00e87a0d12dc45f131f704a1  numpy-1.22.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e7927a589df200c5e23c57970bafbd0cd322459aa7b1ff73b7c2e84d6e3eae62  numpy-1.22.3-cp38-cp38-win32.whl
07a8c89a04997625236c5ecb7afe35a02af3896c8aa01890a849913a2309c676  numpy-1.22.3-cp38-cp38-win_amd64.whl
2c10a93606e0b4b95c9b04b77dc349b398fdfbda382d2a39ba5a822f669a0123  numpy-1.22.3-cp39-cp39-macosx_10_14_x86_64.whl
fade0d4f4d292b6f39951b6836d7a3c7ef5b2347f3c420cd9820a1d90d794802  numpy-1.22.3-cp39-cp39-macosx_11_0_arm64.whl
5bfb1bb598e8229c2d5d48db1860bcf4311337864ea3efdbe1171fb0c5da515d  numpy-1.22.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
97098b95aa4e418529099c26558eeb8486e66bd1e53a6b606d684d0c3616b168  numpy-1.22.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
fdf3c08bce27132395d3c3ba1503cac12e17282358cb4bddc25cc46b0aca07aa  numpy-1.22.3-cp39-cp39-win32.whl
639b54cdf6aa4f82fe37ebf70401bbb74b8508fddcf4797f9fe59615b8c5813a  numpy-1.22.3-cp39-cp39-win_amd64.whl
c34ea7e9d13a70bf2ab64a2532fe149a9aced424cd05a2c4ba662fd989e3e45f  numpy-1.22.3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a906c0b4301a3d62ccf66d058fe779a65c1c34f6719ef2058f96e1856f48bca5  numpy-1.22.3.tar.gz
dbc7601a3b7472d559dc7b933b18b4b66f9aa7452c120e87dfb33d02008c8a18  numpy-1.22.3.zip

1.22.2

1 year ago
NumPy 1.22.2 Release Notes

The NumPy 1.22.2 is maintenance release that fixes bugs discovered after the 1.22.1 release. Notable fixes are:

  • Several build related fixes for downstream projects and other platforms.
  • Various Annotation fixes/additions.
  • Numpy wheels for Windows will use the 1.41 tool chain, fixing downstream link problems for projects using NumPy provided libraries on Windows.
  • Deal with CVE-2021-41495 complaint.

The Python versions supported for this release are 3.8-3.10.

Contributors

A total of 14 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Andrew J. Hesford +
  • Bas van Beek
  • Brénainn Woodsend +
  • Charles Harris
  • Hood Chatham
  • Janus Heide +
  • Leo Singer
  • Matti Picus
  • Mukulika Pahari
  • Niyas Sait
  • Pearu Peterson
  • Ralf Gommers
  • Sebastian Berg
  • Serge Guelton
Pull requests merged

A total of 21 pull requests were merged for this release.

  • #20842: BLD: Add NPY_DISABLE_SVML env var to opt out of SVML
  • #20843: BUG: Fix build of third party extensions with Py_LIMITED_API
  • #20844: TYP: Fix pyright being unable to infer the real and imag...
  • #20845: BUG: Fix comparator function signatures
  • #20906: BUG: Avoid importing numpy.distutils on import numpy.testing
  • #20907: MAINT: remove outdated mingw32 fseek support
  • #20908: TYP: Relax the return type of np.vectorize
  • #20909: BUG: fix f2py\'s define for threading when building with Mingw
  • #20910: BUG: distutils: fix building mixed C/Fortran extensions
  • #20912: DOC,TST: Fix Pandas code example as per new release
  • #20935: TYP, MAINT: Add annotations for flatiter.__setitem__
  • #20936: MAINT, TYP: Added missing where typehints in fromnumeric.pyi
  • #20937: BUG: Fix build_ext interaction with non numpy extensions
  • #20938: BUG: Fix missing intrinsics for windows/arm64 target
  • #20945: REL: Prepare for the NumPy 1.22.2 release.
  • #20982: MAINT: f2py: don\'t generate code that triggers -Wsometimes-uninitialized.
  • #20983: BUG: Fix incorrect return type in reduce without initial value
  • #20984: ENH: review return values for PyArray_DescrNew
  • #20985: MAINT: be more tolerant of setuptools >= 60
  • #20986: BUG: Fix misplaced return.
  • #20992: MAINT: Further small return value validation fixes
Checksums MD5
2319f8d7c629d0ba3d3d3b1d5605d494  numpy-1.22.2-cp310-cp310-macosx_10_14_x86_64.whl
023c01a6d3aa528f8e88b0837dcab7ed  numpy-1.22.2-cp310-cp310-macosx_11_0_arm64.whl
84b36e8893b811d17a19404c68db7ce6  numpy-1.22.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
744da9614e8272a384b542d129cd17a9  numpy-1.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ee012ed5e7c98c6f48026dfa818b2274  numpy-1.22.2-cp310-cp310-win_amd64.whl
73e4fdcf398327bc4241dc38b6d10211  numpy-1.22.2-cp38-cp38-macosx_10_14_x86_64.whl
9fcbca2a614af3b9a37456643ab1c99d  numpy-1.22.2-cp38-cp38-macosx_11_0_arm64.whl
b7e0d4a19867d33765c7187d1390eef4  numpy-1.22.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
dc8d79d75588737ea77fe85a4f05365a  numpy-1.22.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
05906141c095148c53c043c381e6fabe  numpy-1.22.2-cp38-cp38-win32.whl
05d3b6d34c0fa031e69ec0476e8d4c9c  numpy-1.22.2-cp38-cp38-win_amd64.whl
1449889d856de0e88437fa76d3284e00  numpy-1.22.2-cp39-cp39-macosx_10_14_x86_64.whl
e25666ab6ec0692368f328b7b98c27a3  numpy-1.22.2-cp39-cp39-macosx_11_0_arm64.whl
59e3013894bcc6267054c746d9339cf8  numpy-1.22.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7606b9898c20d2b2aa7fc7018bc9c5cd  numpy-1.22.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
2686a1495c620e85842967bf8a5f1b2f  numpy-1.22.2-cp39-cp39-win32.whl
54432a84807ab69ac3432e6090d5a169  numpy-1.22.2-cp39-cp39-win_amd64.whl
4dbecace42595742485b854b213341b6  numpy-1.22.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5b506b01ef454f39272ca75de1c7f61c  numpy-1.22.2.tar.gz
a903008d992b77cb68129173c0f61f60  numpy-1.22.2.zip
SHA256
515a8b6edbb904594685da6e176ac9fbea8f73a5ebae947281de6613e27f1956  numpy-1.22.2-cp310-cp310-macosx_10_14_x86_64.whl
76a4f9bce0278becc2da7da3b8ef854bed41a991f4226911a24a9711baad672c  numpy-1.22.2-cp310-cp310-macosx_11_0_arm64.whl
168259b1b184aa83a514f307352c25c56af111c269ffc109d9704e81f72e764b  numpy-1.22.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
3556c5550de40027d3121ebbb170f61bbe19eb639c7ad0c7b482cd9b560cd23b  numpy-1.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
aafa46b5a39a27aca566198d3312fb3bde95ce9677085efd02c86f7ef6be4ec7  numpy-1.22.2-cp310-cp310-win_amd64.whl
55535c7c2f61e2b2fc817c5cbe1af7cb907c7f011e46ae0a52caa4be1f19afe2  numpy-1.22.2-cp38-cp38-macosx_10_14_x86_64.whl
60cb8e5933193a3cc2912ee29ca331e9c15b2da034f76159b7abc520b3d1233a  numpy-1.22.2-cp38-cp38-macosx_11_0_arm64.whl
0b536b6840e84c1c6a410f3a5aa727821e6108f3454d81a5cd5900999ef04f89  numpy-1.22.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
2638389562bda1635b564490d76713695ff497242a83d9b684d27bb4a6cc9d7a  numpy-1.22.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
6767ad399e9327bfdbaa40871be4254d1995f4a3ca3806127f10cec778bd9896  numpy-1.22.2-cp38-cp38-win32.whl
03ae5850619abb34a879d5f2d4bb4dcd025d6d8fb72f5e461dae84edccfe129f  numpy-1.22.2-cp38-cp38-win_amd64.whl
d76a26c5118c4d96e264acc9e3242d72e1a2b92e739807b3b69d8d47684b6677  numpy-1.22.2-cp39-cp39-macosx_10_14_x86_64.whl
15efb7b93806d438e3bc590ca8ef2f953b0ce4f86f337ef4559d31ec6cf9d7dd  numpy-1.22.2-cp39-cp39-macosx_11_0_arm64.whl
badca914580eb46385e7f7e4e426fea6de0a37b9e06bec252e481ae7ec287082  numpy-1.22.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
94dd11d9f13ea1be17bac39c1942f527cbf7065f94953cf62dfe805653da2f8f  numpy-1.22.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
8cf33634b60c9cef346663a222d9841d3bbbc0a2f00221d6bcfd0d993d5543f6  numpy-1.22.2-cp39-cp39-win32.whl
59153979d60f5bfe9e4c00e401e24dfe0469ef8da6d68247439d3278f30a180f  numpy-1.22.2-cp39-cp39-win_amd64.whl
4a176959b6e7e00b5a0d6f549a479f869829bfd8150282c590deee6d099bbb6e  numpy-1.22.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
093d513a460fd94f94c16193c3ef29b2d69a33e482071e3d6d6e561a700587a6  numpy-1.22.2.tar.gz
076aee5a3763d41da6bef9565fdf3cb987606f567cd8b104aded2b38b7b47abf  numpy-1.22.2.zip

1.22.1

1 year ago
NumPy 1.22.1 Release Notes

The NumPy 1.22.1 is maintenance release that fixes bugs discovered after the 1.22.0 release. Notable fixes are:

  • Fix f2PY docstring problems (SciPy)
  • Fix reduction type problems (AstroPy)
  • Fix various typing bugs.

The Python versions supported for this release are 3.8-3.10.

Contributors

A total of 14 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Arryan Singh
  • Bas van Beek
  • Charles Harris
  • Denis Laxalde
  • Isuru Fernando
  • Kevin Sheppard
  • Matthew Barber
  • Matti Picus
  • Melissa Weber Mendonça
  • Mukulika Pahari
  • Omid Rajaei +
  • Pearu Peterson
  • Ralf Gommers
  • Sebastian Berg
Pull requests merged

A total of 20 pull requests were merged for this release.

  • #20702: MAINT, DOC: Post 1.22.0 release fixes.
  • #20703: DOC, BUG: Use pngs instead of svgs.
  • #20704: DOC: Fixed the link on user-guide landing page
  • #20714: BUG: Restore vc141 support
  • #20724: BUG: Fix array dimensions solver for multidimensional arguments...
  • #20725: TYP: change type annotation for __array_namespace__ to ModuleType
  • #20726: TYP, MAINT: Allow ndindex to accept integer tuples
  • #20757: BUG: Relax dtype identity check in reductions
  • #20763: TYP: Allow time manipulation functions to accept date and timedelta...
  • #20768: TYP: Relax the type of ndarray.__array_finalize__
  • #20795: MAINT: Raise RuntimeError if setuptools version is too recent.
  • #20796: BUG, DOC: Fixes SciPy docs build warnings
  • #20797: DOC: fix OpenBLAS version in release note
  • #20798: PERF: Optimize array check for bounded 0,1 values
  • #20805: BUG: Fix that reduce-likes honor out always (and live in the...
  • #20806: BUG: array_api.argsort(descending=True) respects relative...
  • #20807: BUG: Allow integer inputs for pow-related functions in array_api
  • #20814: DOC: Refer to NumPy, not pandas, in main page
  • #20815: DOC: Update Copyright to 2022 [License]
  • #20819: BUG: Return correctly shaped inverse indices in array_api set...
Checksums MD5
8edd68c8998cb694e244ce793b2d088c  numpy-1.22.1-cp310-cp310-macosx_10_9_universal2.whl
e4858aafd41cdba76cd14161bfc512c3  numpy-1.22.1-cp310-cp310-macosx_10_9_x86_64.whl
96f4fc3f321625278ca3807c7c8c789c  numpy-1.22.1-cp310-cp310-macosx_11_0_arm64.whl
2ddc25b9c9d7b517610689055f9f553a  numpy-1.22.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8d40c6fd64389c05646b5ef95cded6e5  numpy-1.22.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1a8359c6436d1bcfe84a094337903a48  numpy-1.22.1-cp310-cp310-win_amd64.whl
033f9aa72a732646f3fb4563226320ee  numpy-1.22.1-cp38-cp38-macosx_10_9_universal2.whl
59e13abecdf4194f75b654f1d853b244  numpy-1.22.1-cp38-cp38-macosx_10_9_x86_64.whl
3ce885a0c10e95f5756d7c1878eaa246  numpy-1.22.1-cp38-cp38-macosx_11_0_arm64.whl
546b2a0866561673d5b7eadcc086af24  numpy-1.22.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
200c0a7bc3a24cfa6f4358d7274b5535  numpy-1.22.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
defe48b3b5f44c3991e830f7cde0a79c  numpy-1.22.1-cp38-cp38-win32.whl
15557a847a78bcbf651ca6689ae37935  numpy-1.22.1-cp38-cp38-win_amd64.whl
067e734594c67d8141190b7eabb979ee  numpy-1.22.1-cp39-cp39-macosx_10_9_universal2.whl
1458d42b26da341baaee134d85e3fd70  numpy-1.22.1-cp39-cp39-macosx_10_9_x86_64.whl
463b365c80efffd807194c78b4796235  numpy-1.22.1-cp39-cp39-macosx_11_0_arm64.whl
58d8dc02dd884898c1b7ee1bee1dd216  numpy-1.22.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
48e2d2905822f78a96d400c78bd16cbb  numpy-1.22.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c5059bd82d8f2c509c889fba09251307  numpy-1.22.1-cp39-cp39-win32.whl
eb9a0655d16897f0adf6ea53b9f3bda4  numpy-1.22.1-cp39-cp39-win_amd64.whl
74cb5dba2f37dc445ffd3068eb1d58fe  numpy-1.22.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
90fff1ee7c7f843fc7a234addc70c71c  numpy-1.22.1.tar.gz
c25dad73053350dd0278605d8ed8a5c7  numpy-1.22.1.zip
SHA256
3d62d6b0870b53799204515145935608cdeb4cebb95a26800b6750e48884cc5b  numpy-1.22.1-cp310-cp310-macosx_10_9_universal2.whl
831f2df87bd3afdfc77829bc94bd997a7c212663889d56518359c827d7113b1f  numpy-1.22.1-cp310-cp310-macosx_10_9_x86_64.whl
8d1563060e77096367952fb44fca595f2b2f477156de389ce7c0ade3aef29e21  numpy-1.22.1-cp310-cp310-macosx_11_0_arm64.whl
69958735d5e01f7b38226a6c6e7187d72b7e4d42b6b496aca5860b611ca0c193  numpy-1.22.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
45a7dfbf9ed8d68fd39763940591db7637cf8817c5bce1a44f7b56c97cbe211e  numpy-1.22.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
7e957ca8112c689b728037cea9c9567c27cf912741fabda9efc2c7d33d29dfa1  numpy-1.22.1-cp310-cp310-win_amd64.whl
800dfeaffb2219d49377da1371d710d7952c9533b57f3d51b15e61c4269a1b5b  numpy-1.22.1-cp38-cp38-macosx_10_9_universal2.whl
65f5e257987601fdfc63f1d02fca4d1c44a2b85b802f03bd6abc2b0b14648dd2  numpy-1.22.1-cp38-cp38-macosx_10_9_x86_64.whl
632e062569b0fe05654b15ef0e91a53c0a95d08ffe698b66f6ba0f927ad267c2  numpy-1.22.1-cp38-cp38-macosx_11_0_arm64.whl
0d245a2bf79188d3f361137608c3cd12ed79076badd743dc660750a9f3074f7c  numpy-1.22.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
26b4018a19d2ad9606ce9089f3d52206a41b23de5dfe8dc947d2ec49ce45d015  numpy-1.22.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f8ad59e6e341f38266f1549c7c2ec70ea0e3d1effb62a44e5c3dba41c55f0187  numpy-1.22.1-cp38-cp38-win32.whl
60f19c61b589d44fbbab8ff126640ae712e163299c2dd422bfe4edc7ec51aa9b  numpy-1.22.1-cp38-cp38-win_amd64.whl
2db01d9838a497ba2aa9a87515aeaf458f42351d72d4e7f3b8ddbd1eba9479f2  numpy-1.22.1-cp39-cp39-macosx_10_9_universal2.whl
bcd19dab43b852b03868796f533b5f5561e6c0e3048415e675bec8d2e9d286c1  numpy-1.22.1-cp39-cp39-macosx_10_9_x86_64.whl
78bfbdf809fc236490e7e65715bbd98377b122f329457fffde206299e163e7f3  numpy-1.22.1-cp39-cp39-macosx_11_0_arm64.whl
c51124df17f012c3b757380782ae46eee85213a3215e51477e559739f57d9bf6  numpy-1.22.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
88d54b7b516f0ca38a69590557814de2dd638d7d4ed04864826acaac5ebb8f01  numpy-1.22.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b5ec9a5eaf391761c61fd873363ef3560a3614e9b4ead17347e4deda4358bca4  numpy-1.22.1-cp39-cp39-win32.whl
4ac4d7c9f8ea2a79d721ebfcce81705fc3cd61a10b731354f1049eb8c99521e8  numpy-1.22.1-cp39-cp39-win_amd64.whl
e60ef82c358ded965fdd3132b5738eade055f48067ac8a5a8ac75acc00cad31f  numpy-1.22.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
dd1968402ae20dfd59b34acd799b494be340c774f6295e9bf1c2b9842a5e416d  numpy-1.22.1.tar.gz
e348ccf5bc5235fc405ab19d53bec215bb373300e5523c7b476cc0da8a5e9973  numpy-1.22.1.zip

1.22.0

1 year ago
NumPy 1.22.0 Release Notes

NumPy 1.22.0 is a big release featuring the work of 153 contributors spread over 609 pull requests. There have been many improvements, highlights are:

  • Annotations of the main namespace are essentially complete. Upstream is a moving target, so there will likely be further improvements, but the major work is done. This is probably the most user visible enhancement in this release.
  • A preliminary version of the proposed Array-API is provided. This is a step in creating a standard collection of functions that can be used across application such as CuPy and JAX.
  • NumPy now has a DLPack backend. DLPack provides a common interchange format for array (tensor) data.
  • New methods for quantile, percentile, and related functions. The new methods provide a complete set of the methods commonly found in the literature.
  • A new configurable allocator for use by downstream projects.

These are in addition to the ongoing work to provide SIMD support for commonly used functions, improvements to F2PY, and better documentation.

The Python versions supported in this release are 3.8-3.10, Python 3.7 has been dropped. Note that 32 bit wheels are only provided for Python 3.8 and 3.9 on Windows, all other wheels are 64 bits on account of Ubuntu, Fedora, and other Linux distributions dropping 32 bit support. All 64 bit wheels are also linked with 64 bit integer OpenBLAS, which should fix the occasional problems encountered by folks using truly huge arrays.

Expired deprecations Deprecated numeric style dtype strings have been removed

Using the strings "Bytes0", "Datetime64", "Str0", "Uint32", and "Uint64" as a dtype will now raise a TypeError.

(gh-19539)

Expired deprecations for loads, ndfromtxt, and mafromtxt in npyio

numpy.loads was deprecated in v1.15, with the recommendation that users use pickle.loads instead. ndfromtxt and mafromtxt were both deprecated in v1.17 - users should use numpy.genfromtxt instead with the appropriate value for the usemask parameter.

(gh-19615)

Deprecations Use delimiter rather than delimitor as kwarg in mrecords

The misspelled keyword argument delimitor of numpy.ma.mrecords.fromtextfile() has been changed to delimiter, using it will emit a deprecation warning.

(gh-19921)

Passing boolean kth values to (arg-)partition has been deprecated

numpy.partition and numpy.argpartition would previously accept boolean values for the kth parameter, which would subsequently be converted into integers. This behavior has now been deprecated.

(gh-20000)

The np.MachAr class has been deprecated

The numpy.MachAr class and finfo.machar <numpy.finfo> attribute have been deprecated. Users are encouraged to access the property if interest directly from the corresponding numpy.finfo attribute.

(gh-20201)

Compatibility notes Distutils forces strict floating point model on clang

NumPy now sets the -ftrapping-math option on clang to enforce correct floating point error handling for universal functions. Clang defaults to non-IEEE and C99 conform behaviour otherwise. This change (using the equivalent but newer -ffp-exception-behavior=strict) was attempted in NumPy 1.21, but was effectively never used.

(gh-19479)

Removed floor division support for complex types

Floor division of complex types will now result in a TypeError

>>> a = np.arange(10) + 1j* np.arange(10)
>>> a // 1
TypeError: ufunc 'floor_divide' not supported for the input types...

(gh-19135)

numpy.vectorize functions now produce the same output class as the base function

When a function that respects numpy.ndarray subclasses is vectorized using numpy.vectorize, the vectorized function will now be subclass-safe also for cases that a signature is given (i.e., when creating a gufunc): the output class will be the same as that returned by the first call to the underlying function.

(gh-19356)

Python 3.7 is no longer supported

Python support has been dropped. This is rather strict, there are changes that require Python >= 3.8.

(gh-19665)

str/repr of complex dtypes now include space after punctuation

The repr of np.dtype({"names": ["a"], "formats": [int], "offsets": [2]}) is now dtype({'names': ['a'], 'formats': ['<i8'], 'offsets': [2], 'itemsize': 10}), whereas spaces where previously omitted after colons and between fields.

The old behavior can be restored via np.set_printoptions(legacy="1.21").

(gh-19687)

Corrected advance in PCG64DSXM and PCG64

Fixed a bug in the advance method of PCG64DSXM and PCG64. The bug only affects results when the step was larger than $2^{64}$ on platforms that do not support 128-bit integers(e.g., Windows and 32-bit Linux).

(gh-20049)

Change in generation of random 32 bit floating point variates

There was bug in the generation of 32 bit floating point values from the uniform distribution that would result in the least significant bit of the random variate always being 0. This has been fixed.

This change affects the variates produced by the random.Generator methods random, standard_normal, standard_exponential, and standard_gamma, but only when the dtype is specified as numpy.float32.

(gh-20314)

C API changes Masked inner-loops cannot be customized anymore

The masked inner-loop selector is now never used. A warning will be given in the unlikely event that it was customized.

We do not expect that any code uses this. If you do use it, you must unset the selector on newer NumPy version. Please also contact the NumPy developers, we do anticipate providing a new, more specific, mechanism.

The customization was part of a never-implemented feature to allow for faster masked operations.

(gh-19259)

New Features NEP 49 configurable allocators

As detailed in NEP 49, the function used for allocation of the data segment of a ndarray can be changed. The policy can be set globally or in a context. For more information see the NEP and the data_memory{.interpreted-text role="ref"} reference docs. Also add a NUMPY_WARN_IF_NO_MEM_POLICY override to warn on dangerous use of transfering ownership by setting NPY_ARRAY_OWNDATA.

(gh-17582)

Implementation of the NEP 47 (adopting the array API standard)

An initial implementation of NEP47, adoption of the array API standard, has been added as numpy.array_api. The implementation is experimental and will issue a UserWarning on import, as the array API standard is still in draft state. numpy.array_api is a conforming implementation of the array API standard, which is also minimal, meaning that only those functions and behaviors that are required by the standard are implemented (see the NEP for more info). Libraries wishing to make use of the array API standard are encouraged to use numpy.array_api to check that they are only using functionality that is guaranteed to be present in standard conforming implementations.

(gh-18585)

Generate C/C++ API reference documentation from comments blocks is now possible

This feature depends on Doxygen in the generation process and on Breathe to integrate it with Sphinx.

(gh-18884)

Assign the platform-specific c_intp precision via a mypy plugin

The mypy plugin, introduced in numpy/numpy#17843, has again been expanded: the plugin now is now responsible for setting the platform-specific precision of numpy.ctypeslib.c_intp, the latter being used as data type for various numpy.ndarray.ctypes attributes.

Without the plugin, aforementioned type will default to ctypes.c_int64.

To enable the plugin, one must add it to their mypy configuration file:

[mypy]
plugins = numpy.typing.mypy_plugin

(gh-19062)

Add NEP 47-compatible dlpack support

Add a ndarray.__dlpack__() method which returns a dlpack C structure wrapped in a PyCapsule. Also add a np._from_dlpack(obj) function, where obj supports __dlpack__(), and returns an ndarray.

(gh-19083)

keepdims optional argument added to numpy.argmin, numpy.argmax

keepdims argument is added to numpy.argmin, numpy.argmax. If set to True, the axes which are reduced are left in the result as dimensions with size one. The resulting array has the same number of dimensions and will broadcast with the input array.

(gh-19211)

bit_count to compute the number of 1-bits in an integer

Computes the number of 1-bits in the absolute value of the input. This works on all the numpy integer types. Analogous to the builtin int.bit_count or popcount in C++.

>>> np.uint32(1023).bit_count()
10
>>> np.int32(-127).bit_count()
7

(gh-19355)

The ndim and axis attributes have been added to numpy.AxisError

The ndim and axis parameters are now also stored as attributes within each numpy.AxisError instance.

(gh-19459)

Preliminary support for windows/arm64 target

numpy added support for windows/arm64 target. Please note OpenBLAS support is not yet available for windows/arm64 target.

(gh-19513)

Added support for LoongArch

LoongArch is a new instruction set, numpy compilation failure on LoongArch architecture, so add the commit.

(gh-19527)

A .clang-format file has been added

Clang-format is a C/C++ code formatter, together with the added .clang-format file, it produces code close enough to the NumPy C_STYLE_GUIDE for general use. Clang-format version 12+ is required due to the use of several new features, it is available in Fedora 34 and Ubuntu Focal among other distributions.

(gh-19754)

is_integer is now available to numpy.floating and numpy.integer

Based on its counterpart in Python float and int, the numpy floating point and integer types now support float.is_integer. Returns True if the number is finite with integral value, and False otherwise.

>>> np.float32(-2.0).is_integer()
True
>>> np.float64(3.2).is_integer()
False
>>> np.int32(-2).is_integer()
True

(gh-19803)

Symbolic parser for Fortran dimension specifications

A new symbolic parser has been added to f2py in order to correctly parse dimension specifications. The parser is the basis for future improvements and provides compatibility with Draft Fortran 202x.

(gh-19805)

ndarray, dtype and number are now runtime-subscriptable

Mimicking PEP-585, the numpy.ndarray, numpy.dtype and numpy.number classes are now subscriptable for python 3.9 and later. Consequently, expressions that were previously only allowed in .pyi stub files or with the help of from __future__ import annotations are now also legal during runtime.

>>> import numpy as np
>>> from typing import Any

>>> np.ndarray[Any, np.dtype[np.float64]]
numpy.ndarray[typing.Any, numpy.dtype[numpy.float64]]

(gh-19879)

Improvements ctypeslib.load_library can now take any path-like object

All parameters in the can now take any python:path-like object{.interpreted-text role="term"}. This includes the likes of strings, bytes and objects implementing the __fspath__<os.PathLike.__fspath__>{.interpreted-text role="meth"} protocol.

(gh-17530)

Add smallest_normal and smallest_subnormal attributes to finfo

The attributes smallest_normal and smallest_subnormal are available as an extension of finfo class for any floating-point data type. To use these new attributes, write np.finfo(np.float64).smallest_normal or np.finfo(np.float64).smallest_subnormal.

(gh-18536)

numpy.linalg.qr accepts stacked matrices as inputs

numpy.linalg.qr is able to produce results for stacked matrices as inputs. Moreover, the implementation of QR decomposition has been shifted to C from Python.

(gh-19151)

numpy.fromregex now accepts os.PathLike implementations

numpy.fromregex now accepts objects implementing the __fspath__<os.PathLike> protocol, e.g. pathlib.Path.

(gh-19680)

Add new methods for quantile and percentile

quantile and percentile now have have a method= keyword argument supporting 13 different methods. This replaces the interpolation= keyword argument.

The methods are now aligned with nine methods which can be found in scientific literature and the R language. The remaining methods are the previous discontinuous variations of the default \"linear\" one.

Please see the documentation of numpy.percentile for more information.

(gh-19857)

Missing parameters have been added to the nan<x> functions

A number of the nan<x> functions previously lacked parameters that were present in their <x>-based counterpart, e.g. the where parameter was present in numpy.mean but absent from numpy.nanmean.

The following parameters have now been added to the nan<x> functions:

  • nanmin: initial & where
  • nanmax: initial & where
  • nanargmin: keepdims & out
  • nanargmax: keepdims & out
  • nansum: initial & where
  • nanprod: initial & where
  • nanmean: where
  • nanvar: where
  • nanstd: where

(gh-20027)

Annotating the main Numpy namespace

Starting from the 1.20 release, PEP 484 type annotations have been included for parts of the NumPy library; annotating the remaining functions being a work in progress. With the release of 1.22 this process has been completed for the main NumPy namespace, which is now fully annotated.

Besides the main namespace, a limited number of sub-packages contain annotations as well. This includes, among others, numpy.testing, numpy.linalg and numpy.random (available since 1.21).

(gh-20217)

Vectorize umath module using AVX-512

By leveraging Intel Short Vector Math Library (SVML), 18 umath functions (exp2, log2, log10, expm1, log1p, cbrt, sin, cos, tan, arcsin, arccos, arctan, sinh, cosh, tanh, arcsinh, arccosh, arctanh) are vectorized using AVX-512 instruction set for both single and double precision implementations. This change is currently enabled only for Linux users and on processors with AVX-512 instruction set. It provides an average speed up of 32x and 14x for single and double precision functions respectively.

(gh-19478)

OpenBLAS v0.3.18

Update the OpenBLAS used in testing and in wheels to v0.3.18

(gh-20058)

Checksums MD5
66757b963ad5835038b9a2a9df852c84  numpy-1.22.0-cp310-cp310-macosx_10_9_universal2.whl
86b7f3a94c09dbd6869614c4d7f9ba5e  numpy-1.22.0-cp310-cp310-macosx_10_9_x86_64.whl
5184db17d8e5e6ecdc53e2f0a6964c35  numpy-1.22.0-cp310-cp310-macosx_11_0_arm64.whl
6643e9a076cce736cfbe15face4db9db  numpy-1.22.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
6efef45bf63594703c094b2ad729e648  numpy-1.22.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
7a1a21bb0958a3eb920deeef9e745935  numpy-1.22.0-cp310-cp310-win_amd64.whl
45241fb5f31ea46e2b6f1321a63c8e1c  numpy-1.22.0-cp38-cp38-macosx_10_9_universal2.whl
472f24a5d35116634fcc57e9bda899bc  numpy-1.22.0-cp38-cp38-macosx_10_9_x86_64.whl
6c15cf7847b20101ae281ade6121b79e  numpy-1.22.0-cp38-cp38-macosx_11_0_arm64.whl
313f0fd99a899a7465511c1418e1031f  numpy-1.22.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9ae6ecde0cbeadd2a9d7b8ae54285863  numpy-1.22.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0f31a7b9e128b0cdafecf98cf1301fc0  numpy-1.22.0-cp38-cp38-win32.whl
f4b45579cf532ea632b890b1df387081  numpy-1.22.0-cp38-cp38-win_amd64.whl
2cb27112b11c16f700e6019f5fd36408  numpy-1.22.0-cp39-cp39-macosx_10_9_universal2.whl
4554a5797a4cb787b5169a8f5482fb95  numpy-1.22.0-cp39-cp39-macosx_10_9_x86_64.whl
3780decd94837da6f0816f2feaace9c2  numpy-1.22.0-cp39-cp39-macosx_11_0_arm64.whl
6e519dd5205510dfebcadc6f7fdf9738  numpy-1.22.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
89d455bf290f459a70c57620f02d5b69  numpy-1.22.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
6425f8d7dc779a54b8074e198cea43c9  numpy-1.22.0-cp39-cp39-win32.whl
1b5c670328146975b21b54fa5ef8ec4c  numpy-1.22.0-cp39-cp39-win_amd64.whl
05d842127ca85cca12fed3a26b0f5177  numpy-1.22.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
ab751b8d4195f91ae61a402184d16d18  numpy-1.22.0.tar.gz
252de134862a27bd66705d29622edbfe  numpy-1.22.0.zip
SHA256
3d22662b4b10112c545c91a0741f2436f8ca979ab3d69d03d19322aa970f9695  numpy-1.22.0-cp310-cp310-macosx_10_9_universal2.whl
11a1f3816ea82eed4178102c56281782690ab5993251fdfd75039aad4d20385f  numpy-1.22.0-cp310-cp310-macosx_10_9_x86_64.whl
5dc65644f75a4c2970f21394ad8bea1a844104f0fe01f278631be1c7eae27226  numpy-1.22.0-cp310-cp310-macosx_11_0_arm64.whl
42c16cec1c8cf2728f1d539bd55aaa9d6bb48a7de2f41eb944697293ef65a559  numpy-1.22.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a97e82c39d9856fe7d4f9b86d8a1e66eff99cf3a8b7ba48202f659703d27c46f  numpy-1.22.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e41e8951749c4b5c9a2dc5fdbc1a4eec6ab2a140fdae9b460b0f557eed870f4d  numpy-1.22.0-cp310-cp310-win_amd64.whl
bece0a4a49e60e472a6d1f70ac6cdea00f9ab80ff01132f96bd970cdd8a9e5a9  numpy-1.22.0-cp38-cp38-macosx_10_9_universal2.whl
818b9be7900e8dc23e013a92779135623476f44a0de58b40c32a15368c01d471  numpy-1.22.0-cp38-cp38-macosx_10_9_x86_64.whl
47ee7a839f5885bc0c63a74aabb91f6f40d7d7b639253768c4199b37aede7982  numpy-1.22.0-cp38-cp38-macosx_11_0_arm64.whl
a024181d7aef0004d76fb3bce2a4c9f2e67a609a9e2a6ff2571d30e9976aa383  numpy-1.22.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
f71d57cc8645f14816ae249407d309be250ad8de93ef61d9709b45a0ddf4050c  numpy-1.22.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
283d9de87c0133ef98f93dfc09fad3fb382f2a15580de75c02b5bb36a5a159a5  numpy-1.22.0-cp38-cp38-win32.whl
2762331de395739c91f1abb88041f94a080cb1143aeec791b3b223976228af3f  numpy-1.22.0-cp38-cp38-win_amd64.whl
76ba7c40e80f9dc815c5e896330700fd6e20814e69da9c1267d65a4d051080f1  numpy-1.22.0-cp39-cp39-macosx_10_9_universal2.whl
0cfe07133fd00b27edee5e6385e333e9eeb010607e8a46e1cd673f05f8596595  numpy-1.22.0-cp39-cp39-macosx_10_9_x86_64.whl
6ed0d073a9c54ac40c41a9c2d53fcc3d4d4ed607670b9e7b0de1ba13b4cbfe6f  numpy-1.22.0-cp39-cp39-macosx_11_0_arm64.whl
41388e32e40b41dd56eb37fcaa7488b2b47b0adf77c66154d6b89622c110dfe9  numpy-1.22.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b55b953a1bdb465f4dc181758570d321db4ac23005f90ffd2b434cc6609a63dd  numpy-1.22.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
5a311ee4d983c487a0ab546708edbdd759393a3dc9cd30305170149fedd23c88  numpy-1.22.0-cp39-cp39-win32.whl
a97a954a8c2f046d3817c2bce16e3c7e9a9c2afffaf0400f5c16df5172a67c9c  numpy-1.22.0-cp39-cp39-win_amd64.whl
bb02929b0d6bfab4c48a79bd805bd7419114606947ec8284476167415171f55b  numpy-1.22.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f2be14ba396780a6f662b8ba1a24466c9cf18a6a386174f614668e58387a13d7  numpy-1.22.0.tar.gz
a955e4128ac36797aaffd49ab44ec74a71c11d6938df83b1285492d277db5397  numpy-1.22.0.zip

1.21.5

1 year ago
NumPy 1.21.5 Release Notes

NumPy 1.21.5 is a maintenance release that fixes a few bugs discovered after the 1.21.4 release and does some maintenance to extend the 1.21.x lifetime. The Python versions supported in this release are 3.7-3.10. If you want to compile your own version using gcc-11, you will need to use gcc-11.2+ to avoid problems.

Contributors

A total of 7 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Bas van Beek
  • Charles Harris
  • Matti Picus
  • Rohit Goswami
  • Ross Barnowski
  • Sayed Adel
  • Sebastian Berg
Pull requests merged

A total of 11 pull requests were merged for this release.

  • #20357: MAINT: Do not forward __(deep)copy__ calls of _GenericAlias...
  • #20462: BUG: Fix float16 einsum fastpaths using wrong tempvar
  • #20463: BUG, DIST: Print os error message when the executable not exist
  • #20464: BLD: Verify the ability to compile C++ sources before initiating...
  • #20465: BUG: Force npymath to respect npy_longdouble
  • #20466: BUG: Fix failure to create aligned, empty structured dtype
  • #20467: ENH: provide a convenience function to replace npy_load_module
  • #20495: MAINT: update wheel to version that supports python3.10
  • #20497: BUG: Clear errors correctly in F2PY conversions
  • #20613: DEV: add a warningfilter to fix pytest workflow.
  • #20618: MAINT: Help boost::python libraries at least not crash
Checksums MD5
e00a3c2e1461dd2920ab4af6b753d3da  numpy-1.21.5-cp310-cp310-macosx_10_9_universal2.whl
50e0526fa29110fb6033fa8285fba4e1  numpy-1.21.5-cp310-cp310-macosx_10_9_x86_64.whl
bdbb19e7656d66250aa67bd1c7924764  numpy-1.21.5-cp310-cp310-macosx_11_0_arm64.whl
c5c982a07797c8963b8fec44aae6db09  numpy-1.21.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8b27b622f58caeeb7f14472651d655e3  numpy-1.21.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e545f6f85f950f57606efcaeeac2e50a  numpy-1.21.5-cp310-cp310-win_amd64.whl
5c36eefdcb039c0d4db8882fddbeb695  numpy-1.21.5-cp37-cp37m-macosx_10_9_x86_64.whl
b5d080e0fd8b658419b3636f1cf5dc3a  numpy-1.21.5-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
ec1a9a1333a2bf61897f105ecd9f212a  numpy-1.21.5-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
d5ab050300748f20cdc9c6e17ba8ffd4  numpy-1.21.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b7498a1d0ea7273ef1af56d58e02a550  numpy-1.21.5-cp37-cp37m-win32.whl
f55c7ecfd35769fb3f6a408c0c123372  numpy-1.21.5-cp37-cp37m-win_amd64.whl
843e3431ba4b56d3fc36b7c4cb6fc10c  numpy-1.21.5-cp38-cp38-macosx_10_9_universal2.whl
4721e71bdc5697d310cd3a6b6cd60741  numpy-1.21.5-cp38-cp38-macosx_10_9_x86_64.whl
2169fb8ed40046e1e33d187fc85b91bb  numpy-1.21.5-cp38-cp38-macosx_11_0_arm64.whl
52de43977749109509ee708a142a7d97  numpy-1.21.5-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
703c0f54c5ede8cc0c648ef66cafac47  numpy-1.21.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
50432f9cf1d5b2278ceb7a96890353ed  numpy-1.21.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
0c4c5336136e045d02c60ba8115eb6a2  numpy-1.21.5-cp38-cp38-win32.whl
c2e0744164f8255be70725ef42bc3f5b  numpy-1.21.5-cp38-cp38-win_amd64.whl
b16dd7103117d051cb6c3b6c4434f7d2  numpy-1.21.5-cp39-cp39-macosx_10_9_universal2.whl
220dd07273aeb0b2ca8f0e4f543e43c3  numpy-1.21.5-cp39-cp39-macosx_10_9_x86_64.whl
1dd09ad75eff93b274f650871e0b9287  numpy-1.21.5-cp39-cp39-macosx_11_0_arm64.whl
6801263f51d3b13420b59ff84c716869  numpy-1.21.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
035bde3955ae2f62ada65084d71a7421  numpy-1.21.5-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
09f202576cbd0ed6121cff10cdea831a  numpy-1.21.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
c6a44c90c2d5124fea6cedbbf575e252  numpy-1.21.5-cp39-cp39-win32.whl
bbc11e31406a9fc48c18a41259bc8866  numpy-1.21.5-cp39-cp39-win_amd64.whl
5be2b6f6cf6fb3a3d98231e891260624  numpy-1.21.5-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
8bc9ff24bac9bf4268372cefea8f0b6b  numpy-1.21.5.tar.gz
88b5438ded7992fa2e6a810d43cd32a1  numpy-1.21.5.zip
SHA256
301e408a052fdcda5cdcf03021ebafc3c6ea093021bf9d1aa47c54d48bdad166  numpy-1.21.5-cp310-cp310-macosx_10_9_universal2.whl
a7e8f6216f180f3fd4efb73de5d1eaefb5f5a1ee5b645c67333033e39440e63a  numpy-1.21.5-cp310-cp310-macosx_10_9_x86_64.whl
fc7a7d7b0ed72589fd8b8486b9b42a564f10b8762be8bd4d9df94b807af4a089  numpy-1.21.5-cp310-cp310-macosx_11_0_arm64.whl
58ca1d7c8aef6e996112d0ce873ac9dfa1eaf4a1196b4ff7ff73880a09923ba7  numpy-1.21.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
dc4b2fb01f1b4ddbe2453468ea0719f4dbb1f5caa712c8b21bb3dd1480cd30d9  numpy-1.21.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cc1b30205d138d1005adb52087ff45708febbef0e420386f58664f984ef56954  numpy-1.21.5-cp310-cp310-win_amd64.whl
08de8472d9f7571f9d51b27b75e827f5296295fa78817032e84464be8bb905bc  numpy-1.21.5-cp37-cp37m-macosx_10_9_x86_64.whl
4fe6a006557b87b352c04596a6e3f12a57d6e5f401d804947bd3188e6b0e0e76  numpy-1.21.5-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
3d893b0871322eaa2f8c7072cdb552d8e2b27645b7875a70833c31e9274d4611  numpy-1.21.5-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
341dddcfe3b7b6427a28a27baa59af5ad51baa59bfec3264f1ab287aa3b30b13  numpy-1.21.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ca9c23848292c6fe0a19d212790e62f398fd9609aaa838859be8459bfbe558aa  numpy-1.21.5-cp37-cp37m-win32.whl
025b497014bc33fc23897859350f284323f32a2fff7654697f5a5fc2a19e9939  numpy-1.21.5-cp37-cp37m-win_amd64.whl
3a5098df115340fb17fc93867317a947e1dcd978c3888c5ddb118366095851f8  numpy-1.21.5-cp38-cp38-macosx_10_9_universal2.whl
311283acf880cfcc20369201bd75da907909afc4666966c7895cbed6f9d2c640  numpy-1.21.5-cp38-cp38-macosx_10_9_x86_64.whl
b545ebadaa2b878c8630e5bcdb97fc4096e779f335fc0f943547c1c91540c815  numpy-1.21.5-cp38-cp38-macosx_11_0_arm64.whl
c5562bcc1a9b61960fc8950ade44d00e3de28f891af0acc96307c73613d18f6e  numpy-1.21.5-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
eed2afaa97ec33b4411995be12f8bdb95c87984eaa28d76cf628970c8a2d689a  numpy-1.21.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
61bada43d494515d5b122f4532af226fdb5ee08fe5b5918b111279843dc6836a  numpy-1.21.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7b9d6b14fc9a4864b08d1ba57d732b248f0e482c7b2ff55c313137e3ed4d8449  numpy-1.21.5-cp38-cp38-win32.whl
dbce7adeb66b895c6aaa1fad796aaefc299ced597f6fbd9ceddb0dd735245354  numpy-1.21.5-cp38-cp38-win_amd64.whl
507c05c7a37b3683eb08a3ff993bd1ee1e6c752f77c2f275260533b265ecdb6c  numpy-1.21.5-cp39-cp39-macosx_10_9_universal2.whl
00c9fa73a6989895b8815d98300a20ac993c49ac36c8277e8ffeaa3631c0dbbb  numpy-1.21.5-cp39-cp39-macosx_10_9_x86_64.whl
69a5a8d71c308d7ef33ef72371c2388a90e3495dbb7993430e674006f94797d5  numpy-1.21.5-cp39-cp39-macosx_11_0_arm64.whl
2d8adfca843bc46ac199a4645233f13abf2011a0b2f4affc5c37cd552626f27b  numpy-1.21.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
c293d3c0321996cd8ffe84215ffe5d269fd9d1d12c6f4ffe2b597a7c30d3e593  numpy-1.21.5-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
3c978544be9e04ed12016dd295a74283773149b48f507d69b36f91aa90a643e5  numpy-1.21.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
2a9add27d7fc0fdb572abc3b2486eb3b1395da71e0254c5552b2aad2a18b5441  numpy-1.21.5-cp39-cp39-win32.whl
1964db2d4a00348b7a60ee9d013c8cb0c566644a589eaa80995126eac3b99ced  numpy-1.21.5-cp39-cp39-win_amd64.whl
a7c4b701ca418cd39e28ec3b496e6388fe06de83f5f0cb74794fa31cfa384c02  numpy-1.21.5-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
1a7ee0ffb35dc7489aebe5185a483f4c43b0d2cf784c3c9940f975a7dde56506  numpy-1.21.5.tar.gz
6a5928bc6241264dce5ed509e66f33676fc97f464e7a919edc672fb5532221ee  numpy-1.21.5.zip

1.21.4

1 year ago
NumPy 1.21.4 Release Notes

The NumPy 1.21.4 is a maintenance release that fixes a few bugs discovered after 1.21.3. The most important fix here is a fix for the NumPy header files to make them work for both x86_64 and M1 hardware when included in the Mac universal2 wheels. Previously, the header files only worked for M1 and this caused problems for folks building x86_64 extensions. This problem was not seen before Python 3.10 because there were thin wheels for x86_64 that had precedence. This release also provides thin x86_64 Mac wheels for Python 3.10.

The Python versions supported in this release are 3.7-3.10. If you want to compile your own version using gcc-11, you will need to use gcc-11.2+ to avoid problems.

Contributors

A total of 7 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Bas van Beek
  • Charles Harris
  • Isuru Fernando
  • Matthew Brett
  • Sayed Adel
  • Sebastian Berg
  • 傅立业(Chris Fu) +
Pull requests merged

A total of 9 pull requests were merged for this release.

  • #20278: BUG: Fix shadowed reference of dtype in type stub
  • #20293: BUG: Fix headers for universal2 builds
  • #20294: BUG: VOID_nonzero could sometimes mutate alignment flag
  • #20295: BUG: Do not use nonzero fastpath on unaligned arrays
  • #20296: BUG: Distutils patch to allow for 2 as a minor version (!)
  • #20297: BUG, SIMD: Fix 64-bit/8-bit integer division by a scalar
  • #20298: BUG, SIMD: Workaround broadcasting SIMD 64-bit integers on MSVC...
  • #20300: REL: Prepare for the NumPy 1.21.4 release.
  • #20302: TST: Fix a Arrayterator typing test failure
Checksums MD5
95486a3ed027c926fb3fc279db6d843e  numpy-1.21.4-cp310-cp310-macosx_10_9_universal2.whl
9f57fad74762f7665669af33583a3dc9  numpy-1.21.4-cp310-cp310-macosx_10_9_x86_64.whl
719a9053aef01a067ce44ede2281eef9  numpy-1.21.4-cp310-cp310-macosx_11_0_arm64.whl
72035d101774fd03beff391927f59aa9  numpy-1.21.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5813e7a378a6e3f5c269c23f61eff4d9  numpy-1.21.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b88a1bc4f08dfb154d5a07d15e387af6  numpy-1.21.4-cp310-cp310-win_amd64.whl
f0cc946d2f4ab4df7cc7e0cc8cfd429e  numpy-1.21.4-cp37-cp37m-macosx_10_9_x86_64.whl
1234643306ce481f0e5f801ddf3f1099  numpy-1.21.4-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
b9208ce1695ba61ab2932c7ce7285d1d  numpy-1.21.4-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
9804fe2011618bf2d7b8d92f6860b2e3  numpy-1.21.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
2ad3a06f974acd61326fd66c098df5bc  numpy-1.21.4-cp37-cp37m-win32.whl
172301389f1532b2d9130362580e1e22  numpy-1.21.4-cp37-cp37m-win_amd64.whl
a037bf88979ae0d4699a0cdce92bbab3  numpy-1.21.4-cp38-cp38-macosx_10_9_universal2.whl
ba94609688f575cc8dce84f1512db116  numpy-1.21.4-cp38-cp38-macosx_10_9_x86_64.whl
c78edc0ae8c9a5d8d0f9e3eb6dabd0b3  numpy-1.21.4-cp38-cp38-macosx_11_0_arm64.whl
d683b6f6af46806391579d528a040451  numpy-1.21.4-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
df631f776716aeb3fd705f3659599b9e  numpy-1.21.4-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b1cbca49d24c7ba43d377feb425afdce  numpy-1.21.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8b5c214bc0f060dbb0287c15dde4673d  numpy-1.21.4-cp38-cp38-win32.whl
2307cf9f3c02f6cdad448a681c272974  numpy-1.21.4-cp38-cp38-win_amd64.whl
fc02b5a068e29b2dd2de19c7ddd69926  numpy-1.21.4-cp39-cp39-macosx_10_9_universal2.whl
f16068540001de8a3d8f096830c97ea2  numpy-1.21.4-cp39-cp39-macosx_10_9_x86_64.whl
80562c39cfbdf1af9bb43b2ea5e45b6d  numpy-1.21.4-cp39-cp39-macosx_11_0_arm64.whl
6c103bec3085e5a6ea92cf7f6e4189ab  numpy-1.21.4-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
9d715ba5f7596a39eb631f2dae85d203  numpy-1.21.4-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
8b8cf8c7b093419ff75ed1dd2eaa18ae  numpy-1.21.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
404200b858b7addd03f6cdd5a484d30a  numpy-1.21.4-cp39-cp39-win32.whl
cdab6a1bf1b86021526d08a60219a6ad  numpy-1.21.4-cp39-cp39-win_amd64.whl
70ca6b591e844fdcb8c22175f094d3b4  numpy-1.21.4-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
06019c1116b3e2791bd507f898257e7f  numpy-1.21.4.tar.gz
b3c4477a027d5b6fba5e1065064fd076  numpy-1.21.4.zip
SHA256
8890b3360f345e8360133bc078d2dacc2843b6ee6059b568781b15b97acbe39f  numpy-1.21.4-cp310-cp310-macosx_10_9_universal2.whl
69077388c5a4b997442b843dbdc3a85b420fb693ec8e33020bb24d647c164fa5  numpy-1.21.4-cp310-cp310-macosx_10_9_x86_64.whl
e89717274b41ebd568cd7943fc9418eeb49b1785b66031bc8a7f6300463c5898  numpy-1.21.4-cp310-cp310-macosx_11_0_arm64.whl
0b78ecfa070460104934e2caf51694ccd00f37d5e5dbe76f021b1b0b0d221823  numpy-1.21.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
615d4e328af7204c13ae3d4df7615a13ff60a49cb0d9106fde07f541207883ca  numpy-1.21.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1403b4e2181fc72664737d848b60e65150f272fe5a1c1cbc16145ed43884065a  numpy-1.21.4-cp310-cp310-win_amd64.whl
74b85a17528ca60cf98381a5e779fc0264b4a88b46025e6bcbe9621f46bb3e63  numpy-1.21.4-cp37-cp37m-macosx_10_9_x86_64.whl
92aafa03da8658609f59f18722b88f0a73a249101169e28415b4fa148caf7e41  numpy-1.21.4-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
5d95668e727c75b3f5088ec7700e260f90ec83f488e4c0aaccb941148b2cd377  numpy-1.21.4-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
f5162ec777ba7138906c9c274353ece5603646c6965570d82905546579573f73  numpy-1.21.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
81225e58ef5fce7f1d80399575576fc5febec79a8a2742e8ef86d7b03beef49f  numpy-1.21.4-cp37-cp37m-win32.whl
32fe5b12061f6446adcbb32cf4060a14741f9c21e15aaee59a207b6ce6423469  numpy-1.21.4-cp37-cp37m-win_amd64.whl
c449eb870616a7b62e097982c622d2577b3dbc800aaf8689254ec6e0197cbf1e  numpy-1.21.4-cp38-cp38-macosx_10_9_universal2.whl
2e4ed57f45f0aa38beca2a03b6532e70e548faf2debbeb3291cfc9b315d9be8f  numpy-1.21.4-cp38-cp38-macosx_10_9_x86_64.whl
1247ef28387b7bb7f21caf2dbe4767f4f4175df44d30604d42ad9bd701ebb31f  numpy-1.21.4-cp38-cp38-macosx_11_0_arm64.whl
34f3456f530ae8b44231c63082c8899fe9c983fd9b108c997c4b1c8c2d435333  numpy-1.21.4-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
4c9c23158b87ed0e70d9a50c67e5c0b3f75bcf2581a8e34668d4e9d7474d76c6  numpy-1.21.4-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
e4799be6a2d7d3c33699a6f77201836ac975b2e1b98c2a07f66a38f499cb50ce  numpy-1.21.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
bc988afcea53e6156546e5b2885b7efab089570783d9d82caf1cfd323b0bb3dd  numpy-1.21.4-cp38-cp38-win32.whl
170b2a0805c6891ca78c1d96ee72e4c3ed1ae0a992c75444b6ab20ff038ba2cd  numpy-1.21.4-cp38-cp38-win_amd64.whl
fde96af889262e85aa033f8ee1d3241e32bf36228318a61f1ace579df4e8170d  numpy-1.21.4-cp39-cp39-macosx_10_9_universal2.whl
c885bfc07f77e8fee3dc879152ba993732601f1f11de248d4f357f0ffea6a6d4  numpy-1.21.4-cp39-cp39-macosx_10_9_x86_64.whl
9e6f5f50d1eff2f2f752b3089a118aee1ea0da63d56c44f3865681009b0af162  numpy-1.21.4-cp39-cp39-macosx_11_0_arm64.whl
ad010846cdffe7ec27e3f933397f8a8d6c801a48634f419e3d075db27acf5880  numpy-1.21.4-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
c74c699b122918a6c4611285cc2cad4a3aafdb135c22a16ec483340ef97d573c  numpy-1.21.4-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
9864424631775b0c052f3bd98bc2712d131b3e2cd95d1c0c68b91709170890b0  numpy-1.21.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b1e2312f5b8843a3e4e8224b2b48fe16119617b8fc0a54df8f50098721b5bed2  numpy-1.21.4-cp39-cp39-win32.whl
e3c3e990274444031482a31280bf48674441e0a5b55ddb168f3a6db3e0c38ec8  numpy-1.21.4-cp39-cp39-win_amd64.whl
a3deb31bc84f2b42584b8c4001c85d1934dbfb4030827110bc36bfd11509b7bf  numpy-1.21.4-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
5d412381aa489b8be82ac5c6a9e99c3eb3f754245ad3f90ab5c339d92f25fb47  numpy-1.21.4.tar.gz
e6c76a87633aa3fa16614b61ccedfae45b91df2767cf097aa9c933932a7ed1e0  numpy-1.21.4.zip

1.21.3

1 year ago
NumPy 1.21.3 Release Notes

The NumPy 1.21.3 is a maintenance release the fixes a few bugs discovered after 1.21.2. It also provides 64 bit Python 3.10.0 wheels. Note a few oddities about Python 3.10:

  • There are no 32 bit wheels for Windows, Mac, or Linux.
  • The Mac Intel builds are only available in universal2 wheels.

The Python versions supported in this release are 3.7-3.10. If you want to compile your own version using gcc-11 you will need to use gcc-11.2+ to avoid problems.

Contributors

A total of 7 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Aaron Meurer
  • Bas van Beek
  • Charles Harris
  • Developer-Ecosystem-Engineering +
  • Kevin Sheppard
  • Sebastian Berg
  • Warren Weckesser
Pull requests merged

A total of 8 pull requests were merged for this release.

  • #19745: ENH: Add dtype-support to 3 `generic/ndarray methods
  • #19955: BUG: Resolve Divide by Zero on Apple silicon + test failures...
  • #19958: MAINT: Mark type-check-only ufunc subclasses as ufunc aliases...
  • #19994: BUG: np.tan(np.inf) test failure
  • #20080: BUG: Correct incorrect advance in PCG with emulated int128
  • #20081: BUG: Fix NaT handling in the PyArray_CompareFunc for datetime...
  • #20082: DOC: Ensure that we add documentation also as to the dict for...
  • #20106: BUG: core: result_type(0, np.timedelta64(4)) would seg. fault.
Checksums MD5
9acea9630856659ba48fdb582ecc37b4  numpy-1.21.3-cp310-cp310-macosx_10_9_universal2.whl
a70f80a4e74a3153a8307c4f0ea8d13d  numpy-1.21.3-cp310-cp310-macosx_11_0_arm64.whl
13cfe83efd261ea1c3d1eb02c1d3af83  numpy-1.21.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8576bfd867834182269f72abbaa2e81e  numpy-1.21.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
8ac48f503f1e22c0c2b5d056772aca27  numpy-1.21.3-cp310-cp310-win_amd64.whl
cbe0d0d7623de3c2c7593f673d1a880a  numpy-1.21.3-cp37-cp37m-macosx_10_9_x86_64.whl
0967b18baba13e511c7eb48902a62b39  numpy-1.21.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
da54c9566f3e3f8c7d60efebfdf7e1ae  numpy-1.21.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
0aa000f3c10cf74bf47770577384b5c8  numpy-1.21.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5683501bf91be25c53c52e3b083098c3  numpy-1.21.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
89e15d979533f8a314e0ab0648ee7153  numpy-1.21.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
a093fea475b5ed18bd21b3c79e68e388  numpy-1.21.3-cp37-cp37m-win32.whl
f906001213ed0902b1aecfaa12224e94  numpy-1.21.3-cp37-cp37m-win_amd64.whl
88a2cd378412220d618473dd273baf04  numpy-1.21.3-cp38-cp38-macosx_10_9_universal2.whl
1bc55202f604e30f338bc2ed27b561bc  numpy-1.21.3-cp38-cp38-macosx_10_9_x86_64.whl
9555dc6de8748958434e8f2feba98494  numpy-1.21.3-cp38-cp38-macosx_11_0_arm64.whl
93ad32cc87866e9242156bdadc61e5f5  numpy-1.21.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
7cb0b7dd6aee667ecdccae1829260186  numpy-1.21.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
34e6f5f9e9534ef8772f024170c2bd2d  numpy-1.21.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
54e6abfb8f600de2ccd1649b1fca820b  numpy-1.21.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
260ba58f2dc64e779eac7318ec92f36c  numpy-1.21.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
889202c6bdaf8c1ae0803925e9e1a8f7  numpy-1.21.3-cp38-cp38-win32.whl
980303a7e6317faf9a56ba8fc80795d9  numpy-1.21.3-cp38-cp38-win_amd64.whl
44d6bd26fb910710ab4002d0028c9020  numpy-1.21.3-cp39-cp39-macosx_10_9_universal2.whl
6f5b02152bd0b08a77b79657788ce59c  numpy-1.21.3-cp39-cp39-macosx_10_9_x86_64.whl
ad05d5c412d15e7880cd65cc6cdd4aac  numpy-1.21.3-cp39-cp39-macosx_11_0_arm64.whl
5b61a91221931af4a78c3bd20925a91f  numpy-1.21.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
df7344ae04c5a54249fa1b63a256ce61  numpy-1.21.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
c653a096da47b64b42e8f1536a21f7d4  numpy-1.21.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
e0d35451ba1c37f96e032bc6f75ccdf7  numpy-1.21.3-cp39-cp39-win32.whl
b2e1dc59b6fa224ce11728d94be740a6  numpy-1.21.3-cp39-cp39-win_amd64.whl
8ce925a0fcbc1062985026215d369276  numpy-1.21.3-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b8e6b7165f105bde0b45cd9ae34bfe20  numpy-1.21.3.tar.gz
59d986f5ccf3edfb7d4d14949c6666ed  numpy-1.21.3.zip
SHA256
508b0b513fa1266875524ba8a9ecc27b02ad771fe1704a16314dc1a816a68737  numpy-1.21.3-cp310-cp310-macosx_10_9_universal2.whl
5dfe9d6a4c39b8b6edd7990091fea4f852888e41919d0e6722fe78dd421db0eb  numpy-1.21.3-cp310-cp310-macosx_11_0_arm64.whl
8a10968963640e75cc0193e1847616ab4c718e83b6938ae74dea44953950f6b7  numpy-1.21.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
49c6249260890e05b8111ebfc391ed58b3cb4b33e63197b2ec7f776e45330721  numpy-1.21.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
f8f4625536926a155b80ad2bbff44f8cc59e9f2ad14cdda7acf4c135b4dc8ff2  numpy-1.21.3-cp310-cp310-win_amd64.whl
e54af82d68ef8255535a6cdb353f55d6b8cf418a83e2be3569243787a4f4866f  numpy-1.21.3-cp37-cp37m-macosx_10_9_x86_64.whl
f41b018f126aac18583956c54544db437f25c7ee4794bcb23eb38bef8e5e192a  numpy-1.21.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
50cd26b0cf6664cb3b3dd161ba0a09c9c1343db064e7c69f9f8b551f5104d654  numpy-1.21.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
4cc9b512e9fb590797474f58b7f6d1f1b654b3a94f4fa8558b48ca8b3cfc97cf  numpy-1.21.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
88a5d6b268e9ad18f3533e184744acdaa2e913b13148160b1152300c949bbb5f  numpy-1.21.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
3c09418a14471c7ae69ba682e2428cae5b4420a766659605566c0fa6987f6b7e  numpy-1.21.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
90bec6a86b348b4559b6482e2b684db4a9a7eed1fa054b86115a48d58fbbf62a  numpy-1.21.3-cp37-cp37m-win32.whl
043e83bfc274649c82a6f09836943e4a4aebe5e33656271c7dbf9621dd58b8ec  numpy-1.21.3-cp37-cp37m-win_amd64.whl
75621882d2230ab77fb6a03d4cbccd2038511491076e7964ef87306623aa5272  numpy-1.21.3-cp38-cp38-macosx_10_9_universal2.whl
188031f833bbb623637e66006cf75e933e00e7231f67e2b45cf8189612bb5dc3  numpy-1.21.3-cp38-cp38-macosx_10_9_x86_64.whl
160ccc1bed3a8371bf0d760971f09bfe80a3e18646620e9ded0ad159d9749baa  numpy-1.21.3-cp38-cp38-macosx_11_0_arm64.whl
29fb3dcd0468b7715f8ce2c0c2d9bbbaf5ae686334951343a41bd8d155c6ea27  numpy-1.21.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
32437f0b275c1d09d9c3add782516413e98cd7c09e6baf4715cbce781fc29912  numpy-1.21.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
e606e6316911471c8d9b4618e082635cfe98876007556e89ce03d52ff5e8fcf0  numpy-1.21.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
a99a6b067e5190ac6d12005a4d85aa6227c5606fa93211f86b1dafb16233e57d  numpy-1.21.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
dde972a1e11bb7b702ed0e447953e7617723760f420decb97305e66fb4afc54f  numpy-1.21.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
fe52dbe47d9deb69b05084abd4b0df7abb39a3c51957c09f635520abd49b29dd  numpy-1.21.3-cp38-cp38-win32.whl
75eb7cadc8da49302f5b659d40ba4f6d94d5045fbd9569c9d058e77b0514c9e4  numpy-1.21.3-cp38-cp38-win_amd64.whl
2a6ee9620061b2a722749b391c0d80a0e2ae97290f1b32e28d5a362e21941ee4  numpy-1.21.3-cp39-cp39-macosx_10_9_universal2.whl
5c4193f70f8069550a1788bd0cd3268ab7d3a2b70583dfe3b2e7f421e9aace06  numpy-1.21.3-cp39-cp39-macosx_10_9_x86_64.whl
28f15209fb535dd4c504a7762d3bc440779b0e37d50ed810ced209e5cea60d96  numpy-1.21.3-cp39-cp39-macosx_11_0_arm64.whl
c6c2d535a7beb1f8790aaa98fd089ceab2e3dd7ca48aca0af7dc60e6ef93ffe1  numpy-1.21.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
bffa2eee3b87376cc6b31eee36d05349571c236d1de1175b804b348dc0941e3f  numpy-1.21.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
cc14e7519fab2a4ed87d31f99c31a3796e4e1fe63a86ebdd1c5a1ea78ebd5896  numpy-1.21.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
dd0482f3fc547f1b1b5d6a8b8e08f63fdc250c58ce688dedd8851e6e26cff0f3  numpy-1.21.3-cp39-cp39-win32.whl
300321e3985c968e3ae7fbda187237b225f3ffe6528395a5b7a5407f73cf093e  numpy-1.21.3-cp39-cp39-win_amd64.whl
98339aa9911853f131de11010f6dd94c8cec254d3d1f7261528c3b3e3219f139  numpy-1.21.3-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
d0bba24083c01ae43457514d875f10d9ce4c1125d55b1e2573277b2410f2d068  numpy-1.21.3.tar.gz
63571bb7897a584ca3249c86dd01c10bcb5fe4296e3568b2e9c1a55356b6410e  numpy-1.21.3.zip

1.21.2

1 year ago
NumPy 1.21.2 Release Notes

The NumPy 1.21.2 is maintenance release that fixes bugs discovered after 1.21.1. It also provides 64 bit manylinux Python 3.10.0rc1 wheels for downstream testing. Note that Python 3.10 is not yet final. There is also preliminary support for Windows on ARM64 builds, but there is no OpenBLAS for that platform and no wheels are available.

The Python versions supported for this release are 3.7-3.9. The 1.21.x series is compatible with Python 3.10.0rc1 and Python 3.10 will be officially supported after it is released. The previous problems with gcc-11.1 have been fixed by gcc-11.2, check your version if you are using gcc-11.

Contributors

A total of 10 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Bas van Beek
  • Carl Johnsen +
  • Charles Harris
  • Gwyn Ciesla +
  • Matthieu Dartiailh
  • Matti Picus
  • Niyas Sait +
  • Ralf Gommers
  • Sayed Adel
  • Sebastian Berg
Pull requests merged

A total of 18 pull requests were merged for this release.

  • #19497: MAINT: set Python version for 1.21.x to <3.11
  • #19533: BUG: Fix an issue wherein importing numpy.typing could raise
  • #19646: MAINT: Update Cython version for Python 3.10.
  • #19648: TST: Bump the python 3.10 test version from beta4 to rc1
  • #19651: TST: avoid distutils.sysconfig in runtests.py
  • #19652: MAINT: add missing dunder method to nditer type hints
  • #19656: BLD, SIMD: Fix testing extra checks when -Werror isn\'t applicable...
  • #19657: BUG: Remove logical object ufuncs with bool output
  • #19658: MAINT: Include .coveragerc in source distributions to support...
  • #19659: BUG: Fix bad write in masked iterator output copy paths
  • #19660: ENH: Add support for windows on arm targets
  • #19661: BUG: add base to templated arguments for platlib
  • #19662: BUG,DEP: Non-default UFunc signature/dtype usage should be deprecated
  • #19666: MAINT: Add Python 3.10 to supported versions.
  • #19668: TST,BUG: Sanitize path-separators when running runtest.py
  • #19671: BLD: load extra flags when checking for libflame
  • #19676: BLD: update circleCI docker image
  • #19677: REL: Prepare for 1.21.2 release.
Checksums MD5
c4d72c5f8aff59b5e48face558441e9f  numpy-1.21.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
eb09d0bfc0bc39ce3e323182ae779fcb  numpy-1.21.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e0bb19ea8cc13a5152085aa42d850077  numpy-1.21.2-cp37-cp37m-macosx_10_9_x86_64.whl
af7d21992179dfa3669a2a238b94a980  numpy-1.21.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
9acbaf0074af75d66ca8676b16cec03a  numpy-1.21.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
86b755c7ece248e5586a6a58259aa432  numpy-1.21.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
b45fbbb0ffabcabcc6dc4cf957713d45  numpy-1.21.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
6f23a3050b1482f9708d36928348d75d  numpy-1.21.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
ee45e263e6700b745c43511297385fe1  numpy-1.21.2-cp37-cp37m-win32.whl
6f587dc9ee9ec8700e77df4f3f987911  numpy-1.21.2-cp37-cp37m-win_amd64.whl
e500c1eae3903b7498886721b835d086  numpy-1.21.2-cp38-cp38-macosx_10_9_universal2.whl
ddef2b45ff5526e6314205108f2e3524  numpy-1.21.2-cp38-cp38-macosx_10_9_x86_64.whl
66b5a212ee2fe747cfc19f13dbfc2d15  numpy-1.21.2-cp38-cp38-macosx_11_0_arm64.whl
3ebfe9bcd744c57d3d189394fbbf04de  numpy-1.21.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
155a35f990b2e673cb7b361c83fa2313  numpy-1.21.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
89e2268d8607b6b363337fafde9fe6c9  numpy-1.21.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
e13968b5f61a3b2f33d4053da8ceaaf1  numpy-1.21.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
5bede1a84624d538d97513006f97fc06  numpy-1.21.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
351b5115ee56f1b598bfa9b479a2492c  numpy-1.21.2-cp38-cp38-win32.whl
8a36334d9d183b1ef3e4d3d23b7d0cb8  numpy-1.21.2-cp38-cp38-win_amd64.whl
b6aee8cf57f84da10b38566bde93056c  numpy-1.21.2-cp39-cp39-macosx_10_9_universal2.whl
20beaff42d793cb148621e0230d1b650  numpy-1.21.2-cp39-cp39-macosx_10_9_x86_64.whl
6e348361f3b8b75267dc27f3a6530944  numpy-1.21.2-cp39-cp39-macosx_11_0_arm64.whl
809bcd25dc485f31e2c13903d6ac748e  numpy-1.21.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
ff4256d8940c6bdce48364af37f99072  numpy-1.21.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b8b19e6667e39feef9f7f2e030945199  numpy-1.21.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
eedae53f1929779387476e7842dc5cb3  numpy-1.21.2-cp39-cp39-win32.whl
704f66b7ede6778283c33eea7a5b8b95  numpy-1.21.2-cp39-cp39-win_amd64.whl
8c5d2a0172f6f6861833a355b1bc57b0  numpy-1.21.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
55c11984b0a0ae28baa118052983f355  numpy-1.21.2.tar.gz
5638d5dae3ca387be562912312db842e  numpy-1.21.2.zip
SHA256
52a664323273c08f3b473548bf87c8145b7513afd63e4ebba8496ecd3853df13  numpy-1.21.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
51a7b9db0a2941434cd930dacaafe0fc9da8f3d6157f9d12f761bbde93f46218  numpy-1.21.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
9f2dc79c093f6c5113718d3d90c283f11463d77daa4e83aeeac088ec6a0bda52  numpy-1.21.2-cp37-cp37m-macosx_10_9_x86_64.whl
a55e4d81c4260386f71d22294795c87609164e22b28ba0d435850fbdf82fc0c5  numpy-1.21.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
426a00b68b0d21f2deb2ace3c6d677e611ad5a612d2c76494e24a562a930c254  numpy-1.21.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
298156f4d3d46815eaf0fcf0a03f9625fc7631692bd1ad851517ab93c3168fc6  numpy-1.21.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
09858463db6dd9f78b2a1a05c93f3b33d4f65975771e90d2cf7aadb7c2f66edf  numpy-1.21.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
805459ad8baaf815883d0d6f86e45b3b0b67d823a8f3fa39b1ed9c45eaf5edf1  numpy-1.21.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
f545c082eeb09ae678dd451a1b1dbf17babd8a0d7adea02897a76e639afca310  numpy-1.21.2-cp37-cp37m-win32.whl
b160b9a99ecc6559d9e6d461b95c8eec21461b332f80267ad2c10394b9503496  numpy-1.21.2-cp37-cp37m-win_amd64.whl
a5109345f5ce7ddb3840f5970de71c34a0ff7fceb133c9441283bb8250f532a3  numpy-1.21.2-cp38-cp38-macosx_10_9_universal2.whl
209666ce9d4a817e8a4597cd475b71b4878a85fa4b8db41d79fdb4fdee01dde2  numpy-1.21.2-cp38-cp38-macosx_10_9_x86_64.whl
c01b59b33c7c3ba90744f2c695be571a3bd40ab2ba7f3d169ffa6db3cfba614f  numpy-1.21.2-cp38-cp38-macosx_11_0_arm64.whl
e42029e184008a5fd3d819323345e25e2337b0ac7f5c135b7623308530209d57  numpy-1.21.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
7fdc7689daf3b845934d67cb221ba8d250fdca20ac0334fea32f7091b93f00d3  numpy-1.21.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
550564024dc5ceee9421a86fc0fb378aa9d222d4d0f858f6669eff7410c89bef  numpy-1.21.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
bf75d5825ef47aa51d669b03ce635ecb84d69311e05eccea083f31c7570c9931  numpy-1.21.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
a9da45b748caad72ea4a4ed57e9cd382089f33c5ec330a804eb420a496fa760f  numpy-1.21.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
e167b9805de54367dcb2043519382be541117503ce99e3291cc9b41ca0a83557  numpy-1.21.2-cp38-cp38-win32.whl
466e682264b14982012887e90346d33435c984b7fead7b85e634903795c8fdb0  numpy-1.21.2-cp38-cp38-win_amd64.whl
dd0e3651d210068d13e18503d75aaa45656eef51ef0b261f891788589db2cc38  numpy-1.21.2-cp39-cp39-macosx_10_9_universal2.whl
92a0ab128b07799dd5b9077a9af075a63467d03ebac6f8a93e6440abfea4120d  numpy-1.21.2-cp39-cp39-macosx_10_9_x86_64.whl
fde50062d67d805bc96f1a9ecc0d37bfc2a8f02b937d2c50824d186aa91f2419  numpy-1.21.2-cp39-cp39-macosx_11_0_arm64.whl
640c1ccfd56724f2955c237b6ccce2e5b8607c3bc1cc51d3933b8c48d1da3723  numpy-1.21.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
5de64950137f3a50b76ce93556db392e8f1f954c2d8207f78a92d1f79aa9f737  numpy-1.21.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b342064e647d099ca765f19672696ad50c953cac95b566af1492fd142283580f  numpy-1.21.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
30fc68307c0155d2a75ad19844224be0f2c6f06572d958db4e2053f816b859ad  numpy-1.21.2-cp39-cp39-win32.whl
b5e8590b9245803c849e09bae070a8e1ff444f45e3f0bed558dd722119eea724  numpy-1.21.2-cp39-cp39-win_amd64.whl
d96a6a7d74af56feb11e9a443150216578ea07b7450f7c05df40eec90af7f4a7  numpy-1.21.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
76af194fbc117934ec5bbe2ff15177adbd05aeed23f18ee209ed88edcd777e05  numpy-1.21.2.tar.gz
423216d8afc5923b15df86037c6053bf030d15cc9e3224206ef868c2d63dd6dc  numpy-1.21.2.zip

1.21.1

2 years ago
NumPy 1.21.1 Release Notes

The NumPy 1.21.1 is maintenance release that fixes bugs discovered after the 1.21.0 release and updates OpenBLAS to v0.3.17 to deal with problems on arm64.

The Python versions supported for this release are 3.7-3.9. The 1.21.x series is compatible with development Python 3.10. Python 3.10 will be officially supported after it is released.

⚠️ There are unresolved problems compiling NumPy 1.20.0 with gcc-11.1.

  • Optimization level -O3 results in many incorrect warnings when running the tests.
  • On some hardware NumPY will hang in an infinite loop.
Contributors

A total of 11 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Bas van Beek
  • Charles Harris
  • Ganesh Kathiresan
  • Gregory R. Lee
  • Hugo Defois +
  • Kevin Sheppard
  • Matti Picus
  • Ralf Gommers
  • Sayed Adel
  • Sebastian Berg
  • Thomas J. Fan
Pull requests merged

A total of 26 pull requests were merged for this release.

  • #19311: REV,BUG: Replace NotImplemented with typing.Any
  • #19324: MAINT: Fixed the return-dtype of ndarray.real and imag
  • #19330: MAINT: Replace "dtype[Any]" with dtype in the definiton of...
  • #19342: DOC: Fix some docstrings that crash pdf generation.
  • #19343: MAINT: bump scipy-mathjax
  • #19347: BUG: Fix arr.flat.index for large arrays and big-endian machines
  • #19348: ENH: add numpy.f2py.get_include function
  • #19349: BUG: Fix reference count leak in ufunc dtype handling
  • #19350: MAINT: Annotate missing attributes of np.number subclasses
  • #19351: BUG: Fix cast safety and comparisons for zero sized voids
  • #19352: BUG: Correct Cython declaration in random
  • #19353: BUG: protect against accessing base attribute of a NULL subarray
  • #19365: BUG, SIMD: Fix detecting AVX512 features on Darwin
  • #19366: MAINT: remove print()\'s in distutils template handling
  • #19390: ENH: SIMD architectures to show_config
  • #19391: BUG: Do not raise deprecation warning for all nans in unique...
  • #19392: BUG: Fix NULL special case in object-to-any cast code
  • #19430: MAINT: Use arm64-graviton2 for testing on travis
  • #19495: BUILD: update OpenBLAS to v0.3.17
  • #19496: MAINT: Avoid unicode characters in division SIMD code comments
  • #19499: BUG, SIMD: Fix infinite loop during count non-zero on GCC-11
  • #19500: BUG: fix a numpy.npiter leak in npyiter_multi_index_set
  • #19501: TST: Fix a GenericAlias test failure for python 3.9.0
  • #19502: MAINT: Start testing with Python 3.10.0b3.
  • #19503: MAINT: Add missing dtype overloads for object- and ctypes-based...
  • #19510: REL: Prepare for NumPy 1.21.1 release.
Checksums MD5
d88af78c155cb92ce5535724ed13ed73  numpy-1.21.1-cp37-cp37m-macosx_10_9_x86_64.whl
946e54ec9d174ec90db8ae07a4c4ae2f  numpy-1.21.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
84d7f8534fa3ce1a8c2e2eab18e514de  numpy-1.21.1-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
2e256d7862047967f2a7dbff8b8e9d6c  numpy-1.21.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4887ff09cc0652f3f1d9e0f40d1add63  numpy-1.21.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
bbe00679ce0ae484bb46776f64e00e32  numpy-1.21.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
b8eff5ba6bb920f3e65409abcfe7a55e  numpy-1.21.1-cp37-cp37m-win32.whl
d6ab781ad4537a818663a37392bdf647  numpy-1.21.1-cp37-cp37m-win_amd64.whl
f974f7a90567e082b16817e1218eb059  numpy-1.21.1-cp38-cp38-macosx_10_9_universal2.whl
37fb814042195516db4c5eedc23f65ef  numpy-1.21.1-cp38-cp38-macosx_10_9_x86_64.whl
2840e0ed51c8ebfb6fded7f1acfed810  numpy-1.21.1-cp38-cp38-macosx_11_0_arm64.whl
d87ed548450f324a3a6a3a230991e90a  numpy-1.21.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
e5e0e271fb18986887920f24b9ad8ec3  numpy-1.21.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
f060727f195388df3f3c1e2c43a8d247  numpy-1.21.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
26b0cc05d6f59241f401c16a6fe9300e  numpy-1.21.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
dac4489fdaeffd24d402a555e61b4087  numpy-1.21.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
c248a8f07bb458660274eab769dcc1e2  numpy-1.21.1-cp38-cp38-win32.whl
52386872b66b108de80b5447d0e3f6b1  numpy-1.21.1-cp38-cp38-win_amd64.whl
1a730aa7303421f31c2bca5a343010bb  numpy-1.21.1-cp39-cp39-macosx_10_9_universal2.whl
141701393752d472456d4a15f9a554e4  numpy-1.21.1-cp39-cp39-macosx_10_9_x86_64.whl
33a9c001675f708aebc06f0a653378c1  numpy-1.21.1-cp39-cp39-macosx_11_0_arm64.whl
6b9482c5090f532285313ad2cf48d319  numpy-1.21.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
94fa7591ad4e51a85cb17bcec170b986  numpy-1.21.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
f580b2ce2fb9cead163bab3f1d88fba7  numpy-1.21.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
238930d877b5d8a012b5b1bbc994ebb1  numpy-1.21.1-cp39-cp39-win32.whl
4014c63ac2a1c3e1df95f76feb14816e  numpy-1.21.1-cp39-cp39-win_amd64.whl
7cff22c1a04fdee710d38bd9468edbf1  numpy-1.21.1-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
033726e7ec59eea6b23307dcec35a37b  numpy-1.21.1.tar.gz
1d016e05851a4ba85307f3246eb569aa  numpy-1.21.1.zip
SHA256
38e8648f9449a549a7dfe8d8755a5979b45b3538520d1e735637ef28e8c2dc50  numpy-1.21.1-cp37-cp37m-macosx_10_9_x86_64.whl
fd7d7409fa643a91d0a05c7554dd68aa9c9bb16e186f6ccfe40d6e003156e33a  numpy-1.21.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
a75b4498b1e93d8b700282dc8e655b8bd559c0904b3910b144646dbbbc03e062  numpy-1.21.1-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
1412aa0aec3e00bc23fbb8664d76552b4efde98fb71f60737c83efbac24112f1  numpy-1.21.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
e46ceaff65609b5399163de5893d8f2a82d3c77d5e56d976c8b5fb01faa6b671  numpy-1.21.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
c6a2324085dd52f96498419ba95b5777e40b6bcbc20088fddb9e8cbb58885e8e  numpy-1.21.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
73101b2a1fef16602696d133db402a7e7586654682244344b8329cdcbbb82172  numpy-1.21.1-cp37-cp37m-win32.whl
7a708a79c9a9d26904d1cca8d383bf869edf6f8e7650d85dbc77b041e8c5a0f8  numpy-1.21.1-cp37-cp37m-win_amd64.whl
95b995d0c413f5d0428b3f880e8fe1660ff9396dcd1f9eedbc311f37b5652e16  numpy-1.21.1-cp38-cp38-macosx_10_9_universal2.whl
635e6bd31c9fb3d475c8f44a089569070d10a9ef18ed13738b03049280281267  numpy-1.21.1-cp38-cp38-macosx_10_9_x86_64.whl
4a3d5fb89bfe21be2ef47c0614b9c9c707b7362386c9a3ff1feae63e0267ccb6  numpy-1.21.1-cp38-cp38-macosx_11_0_arm64.whl
8a326af80e86d0e9ce92bcc1e65c8ff88297de4fa14ee936cb2293d414c9ec63  numpy-1.21.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
791492091744b0fe390a6ce85cc1bf5149968ac7d5f0477288f78c89b385d9af  numpy-1.21.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
0318c465786c1f63ac05d7c4dbcecd4d2d7e13f0959b01b534ea1e92202235c5  numpy-1.21.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9a513bd9c1551894ee3d31369f9b07460ef223694098cf27d399513415855b68  numpy-1.21.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
91c6f5fc58df1e0a3cc0c3a717bb3308ff850abdaa6d2d802573ee2b11f674a8  numpy-1.21.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
978010b68e17150db8765355d1ccdd450f9fc916824e8c4e35ee620590e234cd  numpy-1.21.1-cp38-cp38-win32.whl
9749a40a5b22333467f02fe11edc98f022133ee1bfa8ab99bda5e5437b831214  numpy-1.21.1-cp38-cp38-win_amd64.whl
d7a4aeac3b94af92a9373d6e77b37691b86411f9745190d2c351f410ab3a791f  numpy-1.21.1-cp39-cp39-macosx_10_9_universal2.whl
d9e7912a56108aba9b31df688a4c4f5cb0d9d3787386b87d504762b6754fbb1b  numpy-1.21.1-cp39-cp39-macosx_10_9_x86_64.whl
25b40b98ebdd272bc3020935427a4530b7d60dfbe1ab9381a39147834e985eac  numpy-1.21.1-cp39-cp39-macosx_11_0_arm64.whl
8a92c5aea763d14ba9d6475803fc7904bda7decc2a0a68153f587ad82941fec1  numpy-1.21.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
05a0f648eb28bae4bcb204e6fd14603de2908de982e761a2fc78efe0f19e96e1  numpy-1.21.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
f01f28075a92eede918b965e86e8f0ba7b7797a95aa8d35e1cc8821f5fc3ad6a  numpy-1.21.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
88c0b89ad1cc24a5efbb99ff9ab5db0f9a86e9cc50240177a571fbe9c2860ac2  numpy-1.21.1-cp39-cp39-win32.whl
01721eefe70544d548425a07c80be8377096a54118070b8a62476866d5208e33  numpy-1.21.1-cp39-cp39-win_amd64.whl
2d4d1de6e6fb3d28781c73fbde702ac97f03d79e4ffd6598b880b2d95d62ead4  numpy-1.21.1-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
504ced5d900fd5724c74ebf5dbb03572c04074bec9baa24b5646c66a2450e654  numpy-1.21.1.tar.gz
dff4af63638afcc57a3dfb9e4b26d434a7a602d225b42d746ea7fe2edf1342fd  numpy-1.21.1.zip

1.21.0

2 years ago
NumPy 1.21.0 Release Notes

The NumPy 1.21.0 release highlights are

  • continued SIMD work covering more functions and platforms,
  • initial work on the new dtype infrastructure and casting,
  • universal2 wheels for Python 3.8 and Python 3.9 on Mac,
  • improved documentation,
  • improved annotations,
  • new PCG64DXSM bitgenerator for random numbers.

In addition there are the usual large number of bug fixes and other improvements.

The Python versions supported for this release are 3.7-3.9. Official support for Python 3.10 will be added when it is released.

⚠️ Warning: there are unresolved problems compiling NumPy 1.21.0 with gcc-11.1 .

  • Optimization level -O3 results in many wrong warnings when running the tests.
  • On some hardware NumPy will hang in an infinite loop.
New functions Add PCG64DXSM BitGenerator

Uses of the PCG64 BitGenerator in a massively-parallel context have been shown to have statistical weaknesses that were not apparent at the first release in numpy 1.17. Most users will never observe this weakness and are safe to continue to use PCG64. We have introduced a new PCG64DXSM BitGenerator that will eventually become the new default BitGenerator implementation used by default_rng in future releases. PCG64DXSM solves the statistical weakness while preserving the performance and the features of PCG64.

See upgrading-pcg64 for more details.

(gh-18906)

Expired deprecations
  • The shape argument numpy.unravel_index cannot be passed as dims keyword argument anymore. (Was deprecated in NumPy 1.16.)

    (gh-17900)

  • The function PyUFunc_GenericFunction has been disabled. It was deprecated in NumPy 1.19. Users should call the ufunc directly using the Python API.

    (gh-18697)

  • The function PyUFunc_SetUsesArraysAsData has been disabled. It was deprecated in NumPy 1.19.

    (gh-18697)

  • The class PolyBase has been removed (deprecated in numpy 1.9.0). Please use the abstract ABCPolyBase class instead.

    (gh-18963)

  • The unused PolyError and PolyDomainError exceptions are removed.

    (gh-18963)

Deprecations The .dtype attribute must return a dtype

A DeprecationWarning is now given if the .dtype attribute of an object passed into np.dtype or as a dtype=obj argument is not a dtype. NumPy will stop attempting to recursively coerce the result of .dtype.

(gh-13578)

Inexact matches for numpy.convolve and numpy.correlate are deprecated

numpy.convolve and numpy.correlate now emit a warning when there are case insensitive and/or inexact matches found for mode argument in the functions. Pass full "same", "valid", "full" strings instead of "s", "v", "f" for the mode argument.

(gh-17492)

np.typeDict has been formally deprecated

np.typeDict is a deprecated alias for np.sctypeDict and has been so for over 14 years (6689502). A deprecation warning will now be issued whenever getting np.typeDict.

(gh-17586)

Exceptions will be raised during array-like creation

When an object raised an exception during access of the special attributes __array__ or __array_interface__, this exception was usually ignored. A warning is now given when the exception is anything but AttributeError. To silence the warning, the type raising the exception has to be adapted to raise an AttributeError.

(gh-19001)

Four ndarray.ctypes methods have been deprecated

Four methods of the ndarray.ctypes object have been deprecated, as they are (undocumentated) implementation artifacts of their respective properties.

The methods in question are:

  • _ctypes.get_data (use _ctypes.data instead)
  • _ctypes.get_shape (use _ctypes.shape instead)
  • _ctypes.get_strides (use _ctypes.strides instead)
  • _ctypes.get_as_parameter (use _ctypes._as_parameter_ instead)

(gh-19031)

Expired deprecations
  • The shape argument numpy.unravel_index] cannot be passed as dims keyword argument anymore. (Was deprecated in NumPy 1.16.)

    (gh-17900)

  • The function PyUFunc_GenericFunction has been disabled. It was deprecated in NumPy 1.19. Users should call the ufunc directly using the Python API.

    (gh-18697)

  • The function PyUFunc_SetUsesArraysAsData has been disabled. It was deprecated in NumPy 1.19.

    (gh-18697)

Remove deprecated PolyBase and unused PolyError and PolyDomainError

The class PolyBase has been removed (deprecated in numpy 1.9.0). Please use the abstract ABCPolyBase class instead.

Furthermore, the unused PolyError and PolyDomainError exceptions are removed from the numpy.polynomial.

(gh-18963)

Compatibility notes Error type changes in universal functions

The universal functions may now raise different errors on invalid input in some cases. The main changes should be that a RuntimeError was replaced with a more fitting TypeError. When multiple errors were present in the same call, NumPy may now raise a different one.

(gh-15271)

__array_ufunc__ argument validation

NumPy will now partially validate arguments before calling __array_ufunc__. Previously, it was possible to pass on invalid arguments (such as a non-existing keyword argument) when dispatch was known to occur.

(gh-15271)

__array_ufunc__ and additional positional arguments

Previously, all positionally passed arguments were checked for __array_ufunc__ support. In the case of reduce, accumulate, and reduceat all arguments may be passed by position. This means that when they were passed by position, they could previously have been asked to handle the ufunc call via __array_ufunc__. Since this depended on the way the arguments were passed (by position or by keyword), NumPy will now only dispatch on the input and output array. For example, NumPy will never dispatch on the where array in a reduction such as np.add.reduce.

(gh-15271)

Validate input values in Generator.uniform

Checked that high - low >= 0 in np.random.Generator.uniform. Raises ValueError if low > high. Previously out-of-order inputs were accepted and silently swapped, so that if low > high, the value generated was high + (low - high) * random().

(gh-17921)

/usr/include removed from default include paths

The default include paths when building a package with numpy.distutils no longer include /usr/include. This path is normally added by the compiler, and hardcoding it can be problematic. In case this causes a problem, please open an issue. A workaround is documented in PR 18658.

(gh-18658)

Changes to comparisons with dtype=...

When the dtype= (or signature) arguments to comparison ufuncs (equal, less, etc.) is used, this will denote the desired output dtype in the future. This means that:

np.equal(2, 3, dtype=object)

will give a FutureWarning that it will return an object array in the future, which currently happens for:

np.equal(None, None, dtype=object)

due to the fact that np.array(None) is already an object array. (This also happens for some other dtypes.)

Since comparisons normally only return boolean arrays, providing any other dtype will always raise an error in the future and give a DeprecationWarning now.

(gh-18718)

Changes to dtype and signature arguments in ufuncs

The universal function arguments dtype and signature which are also valid for reduction such as np.add.reduce (which is the implementation for np.sum) will now issue a warning when the dtype provided is not a \"basic\" dtype.

NumPy almost always ignored metadata, byteorder or time units on these inputs. NumPy will now always ignore it and raise an error if byteorder or time unit changed. The following are the most important examples of changes which will give the error. In some cases previously the information stored was not ignored, in all of these an error is now raised:

# Previously ignored the byte-order (affect if non-native)
np.add(3, 5, dtype=">i32")

# The biggest impact is for timedelta or datetimes:
arr = np.arange(10, dtype="m8[s]")

# The examples always ignored the time unit "ns":
np.add(arr, arr, dtype="m8[ns]")
np.maximum.reduce(arr, dtype="m8[ns]")

# The following previously did use "ns" (as opposed to `arr.dtype`)
np.add(3, 5, dtype="m8[ns]")  # Now return generic time units
np.maximum(arr, arr, dtype="m8[ns]")  # Now returns "s" (from `arr`)

The same applies for functions like np.sum which use these internally. This change is necessary to achieve consistent handling within NumPy.

If you run into these, in most cases pass for example dtype=np.timedelta64 which clearly denotes a general timedelta64 without any unit or byte-order defined. If you need to specify the output dtype precisely, you may do so by either casting the inputs or providing an output array using out=.

NumPy may choose to allow providing an exact output dtype here in the future, which would be preceded by a FutureWarning.

(gh-18718)

Ufunc signature=... and dtype= generalization and casting

The behaviour for np.ufunc(1.0, 1.0, signature=...) or np.ufunc(1.0, 1.0, dtype=...) can now yield different loops in 1.21 compared to 1.20 because of changes in promotion. When signature was previously used, the casting check on inputs was relaxed, which could lead to downcasting inputs unsafely especially if combined with casting="unsafe".

Casting is now guaranteed to be safe. If a signature is only partially provided, for example using signature=("float64", None, None), this could lead to no loop being found (an error). In that case, it is necessary to provide the complete signature to enforce casting the inputs. If dtype="float64" is used or only outputs are set (e.g. signature=(None, None, "float64") the is unchanged. We expect that very few users are affected by this change.

Further, the meaning of dtype="float64" has been slightly modified and now strictly enforces only the correct output (and not input) DTypes. This means it is now always equivalent to:

signature=(None, None, "float64")

(If the ufunc has two inputs and one output). Since this could lead to no loop being found in some cases, NumPy will normally also search for the loop:

signature=("float64", "float64", "float64")

if the first search failed. In the future, this behaviour may be customized to achieve the expected results for more complex ufuncs. (For some universal functions such as np.ldexp inputs can have different DTypes.)

(gh-18880)

Distutils forces strict floating point model on clang

NumPy distutils will now always add the -ffp-exception-behavior=strict compiler flag when compiling with clang. Clang defaults to a non-strict version, which allows the compiler to generate code that does not set floating point warnings/errors correctly.

(gh-19049)

C API changes Use of ufunc->type_resolver and \"type tuple\"

NumPy now normalizes the \"type tuple\" argument to the type resolver functions before calling it. Note that in the use of this type resolver is legacy behaviour and NumPy will not do so when possible. Calling ufunc->type_resolver or PyUFunc_DefaultTypeResolver is strongly discouraged and will now enforce a normalized type tuple if done. Note that this does not affect providing a type resolver, which is expected to keep working in most circumstances. If you have an unexpected use-case for calling the type resolver, please inform the NumPy developers so that a solution can be found.

(gh-18718)

New Features Added a mypy plugin for handling platform-specific numpy.number precisions

A mypy plugin is now available for automatically assigning the (platform-dependent) precisions of certain numpy.number subclasses, including the likes of numpy.int_, numpy.intp and numpy.longlong. See the documentation on scalar types <arrays.scalars.built-in> for a comprehensive overview of the affected classes.

Note that while usage of the plugin is completely optional, without it the precision of above-mentioned classes will be inferred as typing.Any.

To enable the plugin, one must add it to their mypy [configuration file] (https://mypy.readthedocs.io/en/stable/config_file.html):

[mypy]
plugins = numpy.typing.mypy_plugin

(gh-17843)

Let the mypy plugin manage extended-precision numpy.number subclasses

The mypy plugin, introduced in numpy/numpy#17843, has been expanded: the plugin now removes annotations for platform-specific extended-precision types that are not available to the platform in question. For example, it will remove numpy.float128 when not available.

Without the plugin all extended-precision types will, as far as mypy is concerned, be available on all platforms.

To enable the plugin, one must add it to their mypy configuration file:

[mypy]
plugins = numpy.typing.mypy_plugin
                                                                        cn

(gh-18322)

New min_digits argument for printing float values

A new min_digits argument has been added to the dragon4 float printing functions numpy.format_float_positional and numpy.format_float_scientific. This kwd guarantees that at least the given number of digits will be printed when printing in unique=True mode, even if the extra digits are unnecessary to uniquely specify the value. It is the counterpart to the precision argument which sets the maximum number of digits to be printed. When unique=False in fixed precision mode, it has no effect and the precision argument fixes the number of digits.

(gh-18629)

f2py now recognizes Fortran abstract interface blocks

numpy.f2py can now parse abstract interface blocks.

(gh-18695)

BLAS and LAPACK configuration via environment variables

Autodetection of installed BLAS and LAPACK libraries can be bypassed by using the NPY_BLAS_LIBS and NPY_LAPACK_LIBS environment variables. Instead, the link flags in these environment variables will be used directly, and the language is assumed to be F77. This is especially useful in automated builds where the BLAS and LAPACK that are installed are known exactly. A use case is replacing the actual implementation at runtime via stub library links.

If NPY_CBLAS_LIBS is set (optional in addition to NPY_BLAS_LIBS), this will be used as well, by defining HAVE_CBLAS and appending the environment variable content to the link flags.

(gh-18737)

A runtime-subcriptable alias has been added for ndarray

numpy.typing.NDArray has been added, a runtime-subscriptable alias for np.ndarray[Any, np.dtype[~Scalar]]. The new type alias can be used for annotating arrays with a given dtype and unspecified shape.

NumPy does not support the annotating of array shapes as of 1.21, this is expected to change in the future though (see 646{.interpreted-text role="pep"}).

Examples
>>> import numpy as np
>>> import numpy.typing as npt

>>> print(npt.NDArray)
numpy.ndarray[typing.Any, numpy.dtype[~ScalarType]]

>>> print(npt.NDArray[np.float64])
numpy.ndarray[typing.Any, numpy.dtype[numpy.float64]]

>>> NDArrayInt = npt.NDArray[np.int_]
>>> a: NDArrayInt = np.arange(10)

>>> def func(a: npt.ArrayLike) -> npt.NDArray[Any]:
...     return np.array(a)

(gh-18935)

Improvements Arbitrary period option for numpy.unwrap

The size of the interval over which phases are unwrapped is no longer restricted to 2 * pi. This is especially useful for unwrapping degrees, but can also be used for other intervals.

>>> phase_deg = np.mod(np.linspace(0,720,19), 360) - 180
>>> phase_deg
array([-180., -140., -100.,  -60.,  -20.,   20.,   60.,  100.,  140.,
       -180., -140., -100.,  -60.,  -20.,   20.,   60.,  100.,  140.,
       -180.])

>>> unwrap(phase_deg, period=360)
array([-180., -140., -100.,  -60.,  -20.,   20.,   60.,  100.,  140.,
        180.,  220.,  260.,  300.,  340.,  380.,  420.,  460.,  500.,
        540.])

(gh-16987)

np.unique now returns single NaN

When np.unique operated on an array with multiple NaN entries, its return included a NaN for each entry that was NaN in the original array. This is now improved such that the returned array contains just one NaN as the last element.

Also for complex arrays all NaN values are considered equivalent (no matter whether the NaN is in the real or imaginary part). As the representant for the returned array the smallest one in the lexicographical order is chosen - see np.sort for how the lexicographical order is defined for complex arrays.

(gh-18070)

Generator.rayleigh and Generator.geometric performance improved

The performance of Rayleigh and geometric random variate generation in Generator has improved. These are both transformation of exponential random variables and the slow log-based inverse cdf transformation has been replaced with the Ziggurat-based exponential variate generator.

This change breaks the stream of variates generated when variates from either of these distributions are produced.

(gh-18666)

Placeholder annotations have been improved

All placeholder annotations, that were previously annotated as typing.Any, have been improved. Where appropiate they have been replaced with explicit function definitions, classes or other miscellaneous objects.

(gh-18934)

Performance improvements Improved performance in integer division of NumPy arrays

Integer division of NumPy arrays now uses libdivide when the divisor is a constant. With the usage of libdivide and other minor optimizations, there is a large speedup. The // operator and np.floor_divide makes use of the new changes.

(gh-17727)

Improve performance of np.save and np.load for small arrays

np.save is now a lot faster for small arrays.

np.load is also faster for small arrays, but only when serializing with a version >= (3, 0).

Both are done by removing checks that are only relevant for Python 2, while still maintaining compatibility with arrays which might have been created by Python 2.

(gh-18657)

Changes numpy.piecewise output class now matches the input class

When numpy.ndarray subclasses are used on input to numpy.piecewise, they are passed on to the functions. The output will now be of the same subclass as well.

(gh-18110)

Enable Accelerate Framework

With the release of macOS 11.3, several different issues that numpy was encountering when using Accelerate Framework\'s implementation of BLAS and LAPACK should be resolved. This change enables the Accelerate Framework as an option on macOS. If additional issues are found, please file a bug report against Accelerate using the developer feedback assistant tool (https://developer.apple.com/bug-reporting/). We intend to address issues promptly and plan to continue supporting and updating our BLAS and LAPACK libraries.

(gh-18874)

Checksums MD5
e4b31fd5cb97e50238b3dbb3487b2cb7  numpy-1.21.0-cp37-cp37m-macosx_10_9_x86_64.whl
111e09f3fddd8e14540cf56493dd786a  numpy-1.21.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
e2fc116043d1b91c627f3c8884151f33  numpy-1.21.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
82e267da77628b96cdf8832e475f6ef3  numpy-1.21.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
baa416fe77b840a19556f5d808eb3165  numpy-1.21.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
aba24836f51bb0a855434c41de122e3d  numpy-1.21.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
aa9f94fa6eabfa193902676825934196  numpy-1.21.0-cp37-cp37m-win32.whl
6d771c7670b95adb62627e383c883804  numpy-1.21.0-cp37-cp37m-win_amd64.whl
e6d77cae6054b738603415faf9cb4358  numpy-1.21.0-cp38-cp38-macosx_10_9_universal2.whl
9589cfe5a22f54956101b7131be5cabd  numpy-1.21.0-cp38-cp38-macosx_10_9_x86_64.whl
5faa22dffa53cfe7d1d40d48aa817670  numpy-1.21.0-cp38-cp38-macosx_11_0_arm64.whl
b81545a2924a201817d433c3bad0bc7d  numpy-1.21.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
3e60589e3325a3583880bf6998cfaca6  numpy-1.21.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
baf409eb08b7462899d45c42a7c1d854  numpy-1.21.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4f311de7973503dde6ad3915f158fd63  numpy-1.21.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
1a79926ad8d3dda573f5c2d8d06e0e38  numpy-1.21.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
0b39eb396a1d5983f6eb2075a867a1a6  numpy-1.21.0-cp38-cp38-win32.whl
5c8c3e94f5a55123b1a0d3a4df14b505  numpy-1.21.0-cp38-cp38-win_amd64.whl
c6e9fa30e82e3ca1551d2f048d4a1dc4  numpy-1.21.0-cp39-cp39-macosx_10_9_universal2.whl
96d7d3a438296bfc68b819b3624936a5  numpy-1.21.0-cp39-cp39-macosx_10_9_x86_64.whl
31cf2152b4151912be9d165633a7d8eb  numpy-1.21.0-cp39-cp39-macosx_11_0_arm64.whl
e49cd2db6ec712b8b1d516154b5a034a  numpy-1.21.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
c10e13fef152ed1c64151c8b6f6d0799  numpy-1.21.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
a627acdfcd302807cf8592d5bd958d35  numpy-1.21.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
e2287cd16300b363d376b661646fded9  numpy-1.21.0-cp39-cp39-win32.whl
29d1bf596981d930bb1c95c944b4b3d8  numpy-1.21.0-cp39-cp39-win_amd64.whl
42d05fcbab6137a404be36f27fc254f0  numpy-1.21.0-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
003e34bd2cba06e7fe299a864964ea24  numpy-1.21.0.tar.gz
930ebfdffd10fed701a7823691f02983  numpy-1.21.0.zip
SHA256
d5caa946a9f55511e76446e170bdad1d12d6b54e17a2afe7b189112ed4412bb8  numpy-1.21.0-cp37-cp37m-macosx_10_9_x86_64.whl
ac4fd578322842dbda8d968e3962e9f22e862b6ec6e3378e7415625915e2da4d  numpy-1.21.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
598fe100b2948465cf3ed64b1a326424b5e4be2670552066e17dfaa67246011d  numpy-1.21.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
7c55407f739f0bfcec67d0df49103f9333edc870061358ac8a8c9e37ea02fcd2  numpy-1.21.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
75579acbadbf74e3afd1153da6177f846212ea2a0cc77de53523ae02c9256513  numpy-1.21.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
cc367c86eb87e5b7c9592935620f22d13b090c609f1b27e49600cd033b529f54  numpy-1.21.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
d89b0dc7f005090e32bb4f9bf796e1dcca6b52243caf1803fdd2b748d8561f63  numpy-1.21.0-cp37-cp37m-win32.whl
eda2829af498946c59d8585a9fd74da3f810866e05f8df03a86f70079c7531dd  numpy-1.21.0-cp37-cp37m-win_amd64.whl
1a784e8ff7ea2a32e393cc53eb0003eca1597c7ca628227e34ce34eb11645a0e  numpy-1.21.0-cp38-cp38-macosx_10_9_universal2.whl
bba474a87496d96e61461f7306fba2ebba127bed7836212c360f144d1e72ac54  numpy-1.21.0-cp38-cp38-macosx_10_9_x86_64.whl
fd0a359c1c17f00cb37de2969984a74320970e0ceef4808c32e00773b06649d9  numpy-1.21.0-cp38-cp38-macosx_11_0_arm64.whl
e4d5a86a5257843a18fb1220c5f1c199532bc5d24e849ed4b0289fb59fbd4d8f  numpy-1.21.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
620732f42259eb2c4642761bd324462a01cdd13dd111740ce3d344992dd8492f  numpy-1.21.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b9205711e5440954f861ceeea8f1b415d7dd15214add2e878b4d1cf2bcb1a914  numpy-1.21.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ad09f55cc95ed8d80d8ab2052f78cc21cb231764de73e229140d81ff49d8145e  numpy-1.21.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
a1f2fb2da242568af0271455b89aee0f71e4e032086ee2b4c5098945d0e11cf6  numpy-1.21.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
e58ddb53a7b4959932f5582ac455ff90dcb05fac3f8dcc8079498d43afbbde6c  numpy-1.21.0-cp38-cp38-win32.whl
d2910d0a075caed95de1a605df00ee03b599de5419d0b95d55342e9a33ad1fb3  numpy-1.21.0-cp38-cp38-win_amd64.whl
a290989cd671cd0605e9c91a70e6df660f73ae87484218e8285c6522d29f6e38  numpy-1.21.0-cp39-cp39-macosx_10_9_universal2.whl
3537b967b350ad17633b35c2f4b1a1bbd258c018910b518c30b48c8e41272717  numpy-1.21.0-cp39-cp39-macosx_10_9_x86_64.whl
ccc6c650f8700ce1e3a77668bb7c43e45c20ac06ae00d22bdf6760b38958c883  numpy-1.21.0-cp39-cp39-macosx_11_0_arm64.whl
709884863def34d72b183d074d8ba5cfe042bc3ff8898f1ffad0209161caaa99  numpy-1.21.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
bebab3eaf0641bba26039fb0b2c5bf9b99407924b53b1ea86e03c32c64ef5aef  numpy-1.21.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
cf680682ad0a3bef56dae200dbcbac2d57294a73e5b0f9864955e7dd7c2c2491  numpy-1.21.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
d95d16204cd51ff1a1c8d5f9958ce90ae190be81d348b514f9be39f878b8044a  numpy-1.21.0-cp39-cp39-win32.whl
2ba579dde0563f47021dcd652253103d6fd66165b18011dce1a0609215b2791e  numpy-1.21.0-cp39-cp39-win_amd64.whl
3c40e6b860220ed862e8097b8f81c9af6d7405b723f4a7af24a267b46f90e461  numpy-1.21.0-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b662c841b29848c04d9134f31dbaa7d4c8e673f45bb3a5f28d02f49c424d558a  numpy-1.21.0.tar.gz
e80fe25cba41c124d04c662f33f6364909b985f2eb5998aaa5ae4b9587242cce  numpy-1.21.0.zip

1.20.3

2 years ago
NumPy 1.20.3 Release Notes

NumPy 1.20.3 is a bugfix release containing several fixes merged to the main branch after the NumPy 1.20.2 release.

Contributors

A total of 7 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Anne Archibald
  • Bas van Beek
  • Charles Harris
  • Dong Keun Oh +
  • Kamil Choudhury +
  • Sayed Adel
  • Sebastian Berg
Pull requests merged

A total of 15 pull requests were merged for this release.

  • #18763: BUG: Correct datetime64 missing type overload for datetime.date...
  • #18764: MAINT: Remove __all__ in favor of explicit re-exports
  • #18768: BLD: Strip extra newline when dumping gfortran version on MacOS
  • #18769: BUG: fix segfault in object/longdouble operations
  • #18794: MAINT: Use towncrier build explicitly
  • #18887: MAINT: Relax certain integer-type constraints
  • #18915: MAINT: Remove unsafe unions and ABCs from return-annotations
  • #18921: MAINT: Allow more recursion depth for scalar tests.
  • #18922: BUG: Initialize the full nditer buffer in case of error
  • #18923: BLD: remove unnecessary flag -faltivec on macOS
  • #18924: MAINT, CI: treats _SIMD module build warnings as errors through...
  • #18925: BUG: for MINGW, threads.h existence test requires GLIBC > 2.12
  • #18941: BUG: Make changelog recognize gh- as a PR number prefix.
  • #18948: REL, DOC: Prepare for the NumPy 1.20.3 release.
  • #18953: BUG: Fix failing mypy test in 1.20.x.
Checksums MD5
702d0185042f1ff9a5d7e72a29f4e1c0  numpy-1.20.3-cp37-cp37m-macosx_10_9_x86_64.whl
3d0284b39b20c243b74f6690ad5ae27f  numpy-1.20.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
d1b42dd67dc228088cf822eaab86d424  numpy-1.20.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
126b1a5d46cc7d9b9b426f56d075a1e0  numpy-1.20.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5b0445346f08b610025dbd2064d4b482  numpy-1.20.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
02bd4a2c764882e8af353c16344cb633  numpy-1.20.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
0f6a36724d5477c8fca6c34e73683db6  numpy-1.20.3-cp37-cp37m-win32.whl
c7d3ae93743d6c0ea2c9dfcad1d42cb4  numpy-1.20.3-cp37-cp37m-win_amd64.whl
445da50ae14b3318170ccf996baca72c  numpy-1.20.3-cp38-cp38-macosx_10_9_x86_64.whl
c651fdb4829703e164bc78613c1a90a8  numpy-1.20.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
c9411ef729b8ebe9ed3b8e9dee3da4ac  numpy-1.20.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
ff69ad241598607fdfea24155625a6e3  numpy-1.20.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
9fd8d44d8a5f19e434e9dfb7738d954f  numpy-1.20.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
d144fdfe141442a7f362d498bc9a40c2  numpy-1.20.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
e7ffa27f1c75cf11529d90967fa15bbc  numpy-1.20.3-cp38-cp38-win32.whl
58c12a54d1b5bc14d36ed2b0d8617fef  numpy-1.20.3-cp38-cp38-win_amd64.whl
18efbadcb513054c765f826fc3bb1645  numpy-1.20.3-cp39-cp39-macosx_10_9_x86_64.whl
319300952bd42455cb2ad98188c74b5f  numpy-1.20.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
1d1451f9a5a2eeef666fc512a101a6ca  numpy-1.20.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
cdef3fb002bb5e3036f056ea0528c804  numpy-1.20.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
85e575735877094f3a76106e9d2a9cac  numpy-1.20.3-cp39-cp39-win32.whl
59f1dba95dedc7a1bebc58ee7e7a945a  numpy-1.20.3-cp39-cp39-win_amd64.whl
6abc979843929b41b099e4e6c0253063  numpy-1.20.3-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
802ddf90c7e226ba56ed0ea244f8b53d  numpy-1.20.3.tar.gz
949d9114af9accc25ede1daa359c4227  numpy-1.20.3.zip
SHA256
70eb5808127284c4e5c9e836208e09d685a7978b6a216db85960b1a112eeace8  numpy-1.20.3-cp37-cp37m-macosx_10_9_x86_64.whl
6ca2b85a5997dabc38301a22ee43c82adcb53ff660b89ee88dded6b33687e1d8  numpy-1.20.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
c5bf0e132acf7557fc9bb8ded8b53bbbbea8892f3c9a1738205878ca9434206a  numpy-1.20.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
db250fd3e90117e0312b611574cd1b3f78bec046783195075cbd7ba9c3d73f16  numpy-1.20.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
637d827248f447e63585ca3f4a7d2dfaa882e094df6cfa177cc9cf9cd6cdf6d2  numpy-1.20.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl
8b7bb4b9280da3b2856cb1fc425932f46fba609819ee1c62256f61799e6a51d2  numpy-1.20.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
67d44acb72c31a97a3d5d33d103ab06d8ac20770e1c5ad81bdb3f0c086a56cf6  numpy-1.20.3-cp37-cp37m-win32.whl
43909c8bb289c382170e0282158a38cf306a8ad2ff6dfadc447e90f9961bef43  numpy-1.20.3-cp37-cp37m-win_amd64.whl
f1452578d0516283c87608a5a5548b0cdde15b99650efdfd85182102ef7a7c17  numpy-1.20.3-cp38-cp38-macosx_10_9_x86_64.whl
6e51534e78d14b4a009a062641f465cfaba4fdcb046c3ac0b1f61dd97c861b1b  numpy-1.20.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
e515c9a93aebe27166ec9593411c58494fa98e5fcc219e47260d9ab8a1cc7f9f  numpy-1.20.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
c1c09247ccea742525bdb5f4b5ceeacb34f95731647fe55774aa36557dbb5fa4  numpy-1.20.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
66fbc6fed94a13b9801fb70b96ff30605ab0a123e775a5e7a26938b717c5d71a  numpy-1.20.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl
ea9cff01e75a956dbee133fa8e5b68f2f92175233de2f88de3a682dd94deda65  numpy-1.20.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
f39a995e47cb8649673cfa0579fbdd1cdd33ea497d1728a6cb194d6252268e48  numpy-1.20.3-cp38-cp38-win32.whl
1676b0a292dd3c99e49305a16d7a9f42a4ab60ec522eac0d3dd20cdf362ac010  numpy-1.20.3-cp38-cp38-win_amd64.whl
830b044f4e64a76ba71448fce6e604c0fc47a0e54d8f6467be23749ac2cbd2fb  numpy-1.20.3-cp39-cp39-macosx_10_9_x86_64.whl
55b745fca0a5ab738647d0e4db099bd0a23279c32b31a783ad2ccea729e632df  numpy-1.20.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
5d050e1e4bc9ddb8656d7b4f414557720ddcca23a5b88dd7cff65e847864c400  numpy-1.20.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
a9c65473ebc342715cb2d7926ff1e202c26376c0dcaaee85a1fd4b8d8c1d3b2f  numpy-1.20.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
16f221035e8bd19b9dc9a57159e38d2dd060b48e93e1d843c49cb370b0f415fd  numpy-1.20.3-cp39-cp39-win32.whl
6690080810f77485667bfbff4f69d717c3be25e5b11bb2073e76bb3f578d99b4  numpy-1.20.3-cp39-cp39-win_amd64.whl
4e465afc3b96dbc80cf4a5273e5e2b1e3451286361b4af70ce1adb2984d392f9  numpy-1.20.3-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
b7340f0628ce1823c151e3d2a2a8cba2a3ff1357fba4475a24b1816e75c21f90  numpy-1.20.3.tar.gz
e55185e51b18d788e49fe8305fd73ef4470596b33fc2c1ceb304566b99c71a69  numpy-1.20.3.zip

1.20.2

2 years ago
NumPy 1.20.2 Release Notes

NumPy 1,20.2 is a bugfix release containing several fixes merged to the main branch after the NumPy 1.20.1 release.

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
  • Bas van Beek
  • Charles Harris
  • Christoph Gohlke
  • Mateusz Sokół +
  • Michael Lamparski
  • Sebastian Berg
Pull requests merged

A total of 20 pull requests were merged for this release.

  • #18382: MAINT: Update f2py from master.
  • #18459: BUG: diagflat could overflow on windows or 32-bit platforms
  • #18460: BUG: Fix refcount leak in f2py complex_double_from_pyobj.
  • #18461: BUG: Fix tiny memory leaks when like= overrides are used
  • #18462: BUG: Remove temporary change of descr/flags in VOID functions
  • #18469: BUG: Segfault in nditer buffer dealloc for Object arrays
  • #18485: BUG: Remove suspicious type casting
  • #18486: BUG: remove nonsensical comparison of pointer \< 0
  • #18487: BUG: verify pointer against NULL before using it
  • #18488: BUG: check if PyArray_malloc succeeded
  • #18546: BUG: incorrect error fallthrough in nditer
  • #18559: CI: Backport CI fixes from main.
  • #18599: MAINT: Add annotations for __getitem__, __mul__ and...
  • #18611: BUG: NameError in numpy.distutils.fcompiler.compaq
  • #18612: BUG: Fixed where keyword for np.mean & np.var methods
  • #18617: CI: Update apt package list before Python install
  • #18636: MAINT: Ensure that re-exported sub-modules are properly annotated
  • #18638: BUG: Fix ma coercion list-of-ma-arrays if they do not cast to...
  • #18661: BUG: Fix small valgrind-found issues
  • #18671: BUG: Fix small issues found with pytest-leaks
Checksums MD5
a95718df123e0726a7dac5043050b251  numpy-1.20.2-cp37-cp37m-macosx_10_9_x86_64.whl
4cacfe903c60827c0e44d0bed7e3a760  numpy-1.20.2-cp37-cp37m-manylinux1_i686.whl
2879728d4f815f07c7d133347deefe45  numpy-1.20.2-cp37-cp37m-manylinux1_x86_64.whl
97546a3cf4ddcc9fcc7eb41b9558f1de  numpy-1.20.2-cp37-cp37m-manylinux2010_i686.whl
65ffbc38abe1c1b92eb3bebf3484f679  numpy-1.20.2-cp37-cp37m-manylinux2010_x86_64.whl
5746efbd42db03518a51adbacbc70fa7  numpy-1.20.2-cp37-cp37m-manylinux2014_aarch64.whl
e9b8e30a5c62f003835b374dbc1c9031  numpy-1.20.2-cp37-cp37m-win32.whl
b2d0fa9383776ab68a1bbefc84331fc1  numpy-1.20.2-cp37-cp37m-win_amd64.whl
321aa118fbd40fe53a7c82557f3f2772  numpy-1.20.2-cp38-cp38-macosx_10_9_x86_64.whl
518013677b05371bbe7e1d6fa4ef61aa  numpy-1.20.2-cp38-cp38-manylinux1_i686.whl
58c61ea025646c391788f7bc7f681fa5  numpy-1.20.2-cp38-cp38-manylinux1_x86_64.whl
e8ce1857f017bffeed46b003a0385b11  numpy-1.20.2-cp38-cp38-manylinux2010_i686.whl
8ed52b7194b0953d0b04b88fbabea1ac  numpy-1.20.2-cp38-cp38-manylinux2010_x86_64.whl
0a9202dfd47fb02c8eab9f71f084633c  numpy-1.20.2-cp38-cp38-manylinux2014_aarch64.whl
8c70e309be1ae43d2938895b56ffbdb7  numpy-1.20.2-cp38-cp38-win32.whl
8aaa91a51b79556643ad93cb1d55b7d3  numpy-1.20.2-cp38-cp38-win_amd64.whl
b1b03999df657ccd4e65ff6abcf7e042  numpy-1.20.2-cp39-cp39-macosx_10_9_x86_64.whl
139fef5109539031e570aee9aa3090bf  numpy-1.20.2-cp39-cp39-manylinux2010_i686.whl
2c9463187e6a1a0245ed4a2db8e8e656  numpy-1.20.2-cp39-cp39-manylinux2010_x86_64.whl
b6cb08e8f56accedc4fdc29720ffb380  numpy-1.20.2-cp39-cp39-manylinux2014_aarch64.whl
a3024059b52e7688d3c98b82e2f2688e  numpy-1.20.2-cp39-cp39-win32.whl
abcd17ffd3b29014ff15e93a74c2c3d6  numpy-1.20.2-cp39-cp39-win_amd64.whl
67704047e60c2b280f7e9f42400cca91  numpy-1.20.2-pp37-pypy37_pp73-manylinux2010_x86_64.whl
6fe93791438f9c1f69c9352680151002  numpy-1.20.2.tar.gz
5e1b381630af4d18db0fedd56b6d8da2  numpy-1.20.2.zip
SHA256
e9459f40244bb02b2f14f6af0cd0732791d72232bbb0dc4bab57ef88e75f6935  numpy-1.20.2-cp37-cp37m-macosx_10_9_x86_64.whl
a8e6859913ec8eeef3dbe9aed3bf475347642d1cdd6217c30f28dee8903528e6  numpy-1.20.2-cp37-cp37m-manylinux1_i686.whl
9cab23439eb1ebfed1aaec9cd42b7dc50fc96d5cd3147da348d9161f0501ada5  numpy-1.20.2-cp37-cp37m-manylinux1_x86_64.whl
9c0fab855ae790ca74b27e55240fe4f2a36a364a3f1ebcfd1fb5ac4088f1cec3  numpy-1.20.2-cp37-cp37m-manylinux2010_i686.whl
61d5b4cf73622e4d0c6b83408a16631b670fc045afd6540679aa35591a17fe6d  numpy-1.20.2-cp37-cp37m-manylinux2010_x86_64.whl
d15007f857d6995db15195217afdbddfcd203dfaa0ba6878a2f580eaf810ecd6  numpy-1.20.2-cp37-cp37m-manylinux2014_aarch64.whl
d76061ae5cab49b83a8cf3feacefc2053fac672728802ac137dd8c4123397677  numpy-1.20.2-cp37-cp37m-win32.whl
bad70051de2c50b1a6259a6df1daaafe8c480ca98132da98976d8591c412e737  numpy-1.20.2-cp37-cp37m-win_amd64.whl
719656636c48be22c23641859ff2419b27b6bdf844b36a2447cb39caceb00935  numpy-1.20.2-cp38-cp38-macosx_10_9_x86_64.whl
aa046527c04688af680217fffac61eec2350ef3f3d7320c07fd33f5c6e7b4d5f  numpy-1.20.2-cp38-cp38-manylinux1_i686.whl
2428b109306075d89d21135bdd6b785f132a1f5a3260c371cee1fae427e12727  numpy-1.20.2-cp38-cp38-manylinux1_x86_64.whl
e8e4fbbb7e7634f263c5b0150a629342cc19b47c5eba8d1cd4363ab3455ab576  numpy-1.20.2-cp38-cp38-manylinux2010_i686.whl
edb1f041a9146dcf02cd7df7187db46ab524b9af2515f392f337c7cbbf5b52cd  numpy-1.20.2-cp38-cp38-manylinux2010_x86_64.whl
c73a7975d77f15f7f68dacfb2bca3d3f479f158313642e8ea9058eea06637931  numpy-1.20.2-cp38-cp38-manylinux2014_aarch64.whl
6c915ee7dba1071554e70a3664a839fbc033e1d6528199d4621eeaaa5487ccd2  numpy-1.20.2-cp38-cp38-win32.whl
471c0571d0895c68da309dacee4e95a0811d0a9f9f532a48dc1bea5f3b7ad2b7  numpy-1.20.2-cp38-cp38-win_amd64.whl
4703b9e937df83f5b6b7447ca5912b5f5f297aba45f91dbbbc63ff9278c7aa98  numpy-1.20.2-cp39-cp39-macosx_10_9_x86_64.whl
abc81829c4039e7e4c30f7897938fa5d4916a09c2c7eb9b244b7a35ddc9656f4  numpy-1.20.2-cp39-cp39-manylinux2010_i686.whl
377751954da04d4a6950191b20539066b4e19e3b559d4695399c5e8e3e683bf6  numpy-1.20.2-cp39-cp39-manylinux2010_x86_64.whl
6e51e417d9ae2e7848314994e6fc3832c9d426abce9328cf7571eefceb43e6c9  numpy-1.20.2-cp39-cp39-manylinux2014_aarch64.whl
780ae5284cb770ade51d4b4a7dce4faa554eb1d88a56d0e8b9f35fca9b0270ff  numpy-1.20.2-cp39-cp39-win32.whl
924dc3f83de20437de95a73516f36e09918e9c9c18d5eac520062c49191025fb  numpy-1.20.2-cp39-cp39-win_amd64.whl
97ce8b8ace7d3b9288d88177e66ee75480fb79b9cf745e91ecfe65d91a856042  numpy-1.20.2-pp37-pypy37_pp73-manylinux2010_x86_64.whl
c049f410c78e76ffb0af830a8afbdf8baac09897b4152b97b1a3b8345ee338ff  numpy-1.20.2.tar.gz
878922bf5ad7550aa044aa9301d417e2d3ae50f0f577de92051d739ac6096cee  numpy-1.20.2.zip

1.20.1

2 years ago
NumPy 1.20.1 Release Notes

NumPy 1.20.1 is a rapid bugfix release fixing several bugs and regressions reported after the 1.20.0 release.

Highlights
  • The distutils bug that caused problems with downstream projects is fixed.
  • The random.shuffle regression is fixed.
Contributors

A total of 8 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Bas van Beek
  • Charles Harris
  • Nicholas McKibben +
  • Pearu Peterson
  • Ralf Gommers
  • Sebastian Berg
  • Tyler Reddy
  • \@Aerysv +
Pull requests merged

A total of 15 pull requests were merged for this release.

  • #18306: MAINT: Add missing placeholder annotations
  • #18310: BUG: Fix typo in numpy.__init__.py
  • #18326: BUG: don\'t mutate list of fake libraries while iterating over...
  • #18327: MAINT: gracefully shuffle memoryviews
  • #18328: BUG: Use C linkage for random distributions
  • #18336: CI: fix when GitHub Actions builds trigger, and allow ci skips
  • #18337: BUG: Allow unmodified use of isclose, allclose, etc. with timedelta
  • #18345: BUG: Allow pickling all relevant DType types/classes
  • #18351: BUG: Fix missing signed_char dependency. Closes #18335.
  • #18352: DOC: Change license date 2020 -> 2021
  • #18353: CI: CircleCI seems to occasionally time out, increase the limit
  • #18354: BUG: Fix f2py bugs when wrapping F90 subroutines.
  • #18356: MAINT: crackfortran regex simplify
  • #18357: BUG: threads.h existence test requires GLIBC > 2.12.
  • #18359: REL: Prepare for the NumPy 1.20.1 release.
Checksums MD5
c4748f4f8f703c5e96027407eca02b08  numpy-1.20.1-cp37-cp37m-macosx_10_9_x86_64.whl
f0bf3a78d6b3a169e5a7fb2637f7fd87  numpy-1.20.1-cp37-cp37m-manylinux1_i686.whl
493c17647c05ca5043bcbab1ac266a74  numpy-1.20.1-cp37-cp37m-manylinux1_x86_64.whl
55ec954fc598c72b2bbf57bfa8b2a701  numpy-1.20.1-cp37-cp37m-manylinux2010_i686.whl
8cee88f9683d208686081522609a8726  numpy-1.20.1-cp37-cp37m-manylinux2010_x86_64.whl
26399d3ededc53b354de78f977a6197e  numpy-1.20.1-cp37-cp37m-manylinux2014_aarch64.whl
81051f1e7a79eea8a5aaf5718114ce3a  numpy-1.20.1-cp37-cp37m-win32.whl
899488c55824f02a7a6f0451fc86f63f  numpy-1.20.1-cp37-cp37m-win_amd64.whl
17f4dae5a0d143b46345a9cf1a8c8dec  numpy-1.20.1-cp38-cp38-macosx_10_9_x86_64.whl
f254e98e92b3054c567b6220b37b81d3  numpy-1.20.1-cp38-cp38-manylinux1_i686.whl
483f43a62c7e32ae991990786da90de1  numpy-1.20.1-cp38-cp38-manylinux1_x86_64.whl
bf578b783e36d3feb3344973306a9f96  numpy-1.20.1-cp38-cp38-manylinux2010_i686.whl
f5d6c77c898537017e64ee30b243fdca  numpy-1.20.1-cp38-cp38-manylinux2010_x86_64.whl
5cf541a0d5af3d5812d2970a427075fb  numpy-1.20.1-cp38-cp38-manylinux2014_aarch64.whl
178315c579c0a70285b8ee502eb498af  numpy-1.20.1-cp38-cp38-win32.whl
5164a32e7a00a2b285302b563eb58afe  numpy-1.20.1-cp38-cp38-win_amd64.whl
c123dd10788ea9ff788d735cbee444c5  numpy-1.20.1-cp39-cp39-macosx_10_9_x86_64.whl
72282fefe58650c6e7cc41f5b37b8662  numpy-1.20.1-cp39-cp39-manylinux2010_i686.whl
234d57c1a7b1f8b99c054a7a71a51cbe  numpy-1.20.1-cp39-cp39-manylinux2010_x86_64.whl
352243d4285970e45d825024ca566d47  numpy-1.20.1-cp39-cp39-manylinux2014_aarch64.whl
a78c863323e0f56210c2e1acaad1bc22  numpy-1.20.1-cp39-cp39-win32.whl
86f9d3f358e7d7896e713bce99f17fdd  numpy-1.20.1-cp39-cp39-win_amd64.whl
ed2c81132119fb3c7f73c6a2de306058  numpy-1.20.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl
60a5e2517be19394a7df24f6d4add3f2  numpy-1.20.1.tar.gz
30ea1c7868e73eeff2c86ac465311220  numpy-1.20.1.zip
SHA256
ae61f02b84a0211abb56462a3b6cd1e7ec39d466d3160eb4e1da8bf6717cdbeb  numpy-1.20.1-cp37-cp37m-macosx_10_9_x86_64.whl
65410c7f4398a0047eea5cca9b74009ea61178efd78d1be9847fac1d6716ec1e  numpy-1.20.1-cp37-cp37m-manylinux1_i686.whl
2d7e27442599104ee08f4faed56bb87c55f8b10a5494ac2ead5c98a4b289e61f  numpy-1.20.1-cp37-cp37m-manylinux1_x86_64.whl
4ed8e96dc146e12c1c5cdd6fb9fd0757f2ba66048bf94c5126b7efebd12d0090  numpy-1.20.1-cp37-cp37m-manylinux2010_i686.whl
ecb5b74c702358cdc21268ff4c37f7466357871f53a30e6f84c686952bef16a9  numpy-1.20.1-cp37-cp37m-manylinux2010_x86_64.whl
b9410c0b6fed4a22554f072a86c361e417f0258838957b78bd063bde2c7f841f  numpy-1.20.1-cp37-cp37m-manylinux2014_aarch64.whl
3d3087e24e354c18fb35c454026af3ed8997cfd4997765266897c68d724e4845  numpy-1.20.1-cp37-cp37m-win32.whl
89f937b13b8dd17b0099c7c2e22066883c86ca1575a975f754babc8fbf8d69a9  numpy-1.20.1-cp37-cp37m-win_amd64.whl
a1d7995d1023335e67fb070b2fae6f5968f5be3802b15ad6d79d81ecaa014fe0  numpy-1.20.1-cp38-cp38-macosx_10_9_x86_64.whl
60759ab15c94dd0e1ed88241fd4fa3312db4e91d2c8f5a2d4cf3863fad83d65b  numpy-1.20.1-cp38-cp38-manylinux1_i686.whl
125a0e10ddd99a874fd357bfa1b636cd58deb78ba4a30b5ddb09f645c3512e04  numpy-1.20.1-cp38-cp38-manylinux1_x86_64.whl
c26287dfc888cf1e65181f39ea75e11f42ffc4f4529e5bd19add57ad458996e2  numpy-1.20.1-cp38-cp38-manylinux2010_i686.whl
7199109fa46277be503393be9250b983f325880766f847885607d9b13848f257  numpy-1.20.1-cp38-cp38-manylinux2010_x86_64.whl
72251e43ac426ff98ea802a931922c79b8d7596480300eb9f1b1e45e0543571e  numpy-1.20.1-cp38-cp38-manylinux2014_aarch64.whl
c91ec9569facd4757ade0888371eced2ecf49e7982ce5634cc2cf4e7331a4b14  numpy-1.20.1-cp38-cp38-win32.whl
13adf545732bb23a796914fe5f891a12bd74cf3d2986eed7b7eba2941eea1590  numpy-1.20.1-cp38-cp38-win_amd64.whl
104f5e90b143dbf298361a99ac1af4cf59131218a045ebf4ee5990b83cff5fab  numpy-1.20.1-cp39-cp39-macosx_10_9_x86_64.whl
89e5336f2bec0c726ac7e7cdae181b325a9c0ee24e604704ed830d241c5e47ff  numpy-1.20.1-cp39-cp39-manylinux2010_i686.whl
032be656d89bbf786d743fee11d01ef318b0781281241997558fa7950028dd29  numpy-1.20.1-cp39-cp39-manylinux2010_x86_64.whl
66b467adfcf628f66ea4ac6430ded0614f5cc06ba530d09571ea404789064adc  numpy-1.20.1-cp39-cp39-manylinux2014_aarch64.whl
12e4ba5c6420917571f1a5becc9338abbde71dd811ce40b37ba62dec7b39af6d  numpy-1.20.1-cp39-cp39-win32.whl
9c94cab5054bad82a70b2e77741271790304651d584e2cdfe2041488e753863b  numpy-1.20.1-cp39-cp39-win_amd64.whl
9eb551d122fadca7774b97db8a112b77231dcccda8e91a5bc99e79890797175e  numpy-1.20.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl
9bf51d69ebb4ca9239e55bedc2185fe2c0ec222da0adee7ece4125414676846d  numpy-1.20.1.tar.gz
3bc63486a870294683980d76ec1e3efc786295ae00128f9ea38e2c6e74d5a60a  numpy-1.20.1.zip

1.20.0

2 years ago
NumPy 1.20.0 Release Notes

This NumPy release is the largest so made to date, some 684 PRs contributed by 184 people have been merged. See the list of highlights below for more details. The Python versions supported for this release are 3.7-3.9, support for Python 3.6 has been dropped. Highlights are

  • Annotations for NumPy functions. This work is ongoing and improvements can be expected pending feedback from users.
  • Wider use of SIMD to increase execution speed of ufuncs. Much work has been done in introducing universal functions that will ease use of modern features across different hardware platforms. This work is ongoing.
  • Preliminary work in changing the dtype and casting implementations in order to provide an easier path to extending dtypes. This work is ongoing but enough has been done to allow experimentation and feedback.
  • Extensive documentation improvements comprising some 185 PR merges. This work is ongoing and part of the larger project to improve NumPy\'s online presence and usefulness to new users.
  • Further cleanups related to removing Python 2.7. This improves code readability and removes technical debt.
  • Preliminary support for the upcoming Cython 3.0.
New functions The random.Generator class has a new permuted function.

The new function differs from shuffle and permutation in that the subarrays indexed by an axis are permuted rather than the axis being treated as a separate 1-D array for every combination of the other indexes. For example, it is now possible to permute the rows or columns of a 2-D array.

(gh-15121)

sliding_window_view provides a sliding window view for numpy arrays

numpy.lib.stride\_tricks.sliding\_window\_view constructs views on numpy arrays that offer a sliding or moving window access to the array. This allows for the simple implementation of certain algorithms, such as running means.

(gh-17394)

[numpy.broadcast_shapes]{.title-ref} is a new user-facing function

numpy.broadcast\_shapes gets the resulting shape from broadcasting the given shape tuples against each other.

>>> np.broadcast_shapes((1, 2), (3, 1))
(3, 2)

>>> np.broadcast_shapes(2, (3, 1))
(3, 2)

>>> np.broadcast_shapes((6, 7), (5, 6, 1), (7,), (5, 1, 7))
(5, 6, 7)

(gh-17535)

Deprecations Using the aliases of builtin types like np.int is deprecated

For a long time, np.int has been an alias of the builtin int. This is repeatedly a cause of confusion for newcomers, and existed mainly for historic reasons.

These aliases have been deprecated. The table below shows the full list of deprecated aliases, along with their exact meaning. Replacing uses of items in the first column with the contents of the second column will work identically and silence the deprecation warning.

The third column lists alternative NumPy names which may occasionally be preferential. See also basics.types{.interpreted-text role="ref"} for additional details.

Deprecated nameIdentical toNumPy scalar type names
numpy.boolboolnumpy.bool\_
numpy.intintnumpy.int\_ (default), numpy.int64, or numpy.int32
numpy.floatfloatnumpy.float64, numpy.float\_, numpy.double (equivalent)
numpy.complexcomplexnumpy.complex128, numpy.complex\_, numpy.cdouble (equivalent)
numpy.objectobjectnumpy.object\_
numpy.strstrnumpy.str\_
numpy.longintnumpy.int\_ (C long), numpy.longlong (largest integer type)
numpy.unicodestrnumpy.unicode\_

To give a clear guideline for the vast majority of cases, for the types bool, object, str (and unicode) using the plain version is shorter and clear, and generally a good replacement. For float and complex you can use float64 and complex128 if you wish to be more explicit about the precision.

For np.int a direct replacement with np.int_ or int is also good and will not change behavior, but the precision will continue to depend on the computer and operating system. If you want to be more explicit and review the current use, you have the following alternatives:

  • np.int64 or np.int32 to specify the precision exactly. This ensures that results cannot depend on the computer or operating system.
  • np.int_ or int (the default), but be aware that it depends on the computer and operating system.
  • The C types: np.cint (int), np.int_ (long), np.longlong.
  • np.intp which is 32bit on 32bit machines 64bit on 64bit machines. This can be the best type to use for indexing.

When used with np.dtype(...) or dtype=... changing it to the NumPy name as mentioned above will have no effect on the output. If used as a scalar with:

np.float(123)

changing it can subtly change the result. In this case, the Python version float(123) or int(12.) is normally preferable, although the NumPy version may be useful for consistency with NumPy arrays (for example, NumPy behaves differently for things like division by zero).

(gh-14882)

Passing shape=None to functions with a non-optional shape argument is deprecated

Previously, this was an alias for passing shape=(). This deprecation is emitted by PyArray\_IntpConverter in the C API. If your API is intended to support passing None, then you should check for None prior to invoking the converter, so as to be able to distinguish None and ().

(gh-15886)

Indexing errors will be reported even when index result is empty

In the future, NumPy will raise an IndexError when an integer array index contains out of bound values even if a non-indexed dimension is of length 0. This will now emit a DeprecationWarning. This can happen when the array is previously empty, or an empty slice is involved:

arr1 = np.zeros((5, 0))
arr1[[20]]
arr2 = np.zeros((5, 5))
arr2[[20], :0]

Previously the non-empty index [20] was not checked for correctness. It will now be checked causing a deprecation warning which will be turned into an error. This also applies to assignments.

(gh-15900)

Inexact matches for mode and searchside are deprecated

Inexact and case insensitive matches for mode and searchside were valid inputs earlier and will give a DeprecationWarning now. For example, below are some example usages which are now deprecated and will give a DeprecationWarning:

import numpy as np
arr = np.array([[3, 6, 6], [4, 5, 1]])
# mode: inexact match
np.ravel_multi_index(arr, (7, 6), mode="clap")  # should be "clip"
# searchside: inexact match
np.searchsorted(arr[0], 4, side='random')  # should be "right"

(gh-16056)

Deprecation of [numpy.dual]{.title-ref}

The module numpy.dual is deprecated. Instead of importing functions from numpy.dual, the functions should be imported directly from NumPy or SciPy.

(gh-16156)

outer and ufunc.outer deprecated for matrix

np.matrix use with \~numpy.outer or generic ufunc outer calls such as numpy.add.outer. Previously, matrix was converted to an array here. This will not be done in the future requiring a manual conversion to arrays.

(gh-16232)

Further Numeric Style types Deprecated

The remaining numeric-style type codes Bytes0, Str0, Uint32, Uint64, and Datetime64 have been deprecated. The lower-case variants should be used instead. For bytes and string "S" and "U" are further alternatives.

(gh-16554)

The ndincr method of ndindex is deprecated

The documentation has warned against using this function since NumPy 1.8. Use next(it) instead of it.ndincr().

(gh-17233)

ArrayLike objects which do not define __len__ and __getitem__

Objects which define one of the protocols __array__, __array_interface__, or __array_struct__ but are not sequences (usually defined by having a __len__ and __getitem__) will behave differently during array-coercion in the future.

When nested inside sequences, such as np.array([array_like]), these were handled as a single Python object rather than an array. In the future they will behave identically to:

np.array([np.array(array_like)])

This change should only have an effect if np.array(array_like) is not 0-D. The solution to this warning may depend on the object:

  • Some array-likes may expect the new behaviour, and users can ignore the warning. The object can choose to expose the sequence protocol to opt-in to the new behaviour.
  • For example, shapely will allow conversion to an array-like using line.coords rather than np.asarray(line). Users may work around the warning, or use the new convention when it becomes available.

Unfortunately, using the new behaviour can only be achieved by calling np.array(array_like).

If you wish to ensure that the old behaviour remains unchanged, please create an object array and then fill it explicitly, for example:

arr = np.empty(3, dtype=object)
arr[:] = [array_like1, array_like2, array_like3]

This will ensure NumPy knows to not enter the array-like and use it as a object instead.

(gh-17973)

Future Changes Arrays cannot be using subarray dtypes

Array creation and casting using np.array(arr, dtype) and arr.astype(dtype) will use different logic when dtype is a subarray dtype such as np.dtype("(2)i,").

For such a dtype the following behaviour is true:

res = np.array(arr, dtype)

res.dtype is not dtype
res.dtype is dtype.base
res.shape == arr.shape + dtype.shape

But res is filled using the logic:

res = np.empty(arr.shape + dtype.shape, dtype=dtype.base)
res[...] = arr

which uses incorrect broadcasting (and often leads to an error). In the future, this will instead cast each element individually, leading to the same result as:

res = np.array(arr, dtype=np.dtype(["f", dtype]))["f"]

Which can normally be used to opt-in to the new behaviour.

This change does not affect np.array(list, dtype="(2)i,") unless the list itself includes at least one array. In particular, the behaviour is unchanged for a list of tuples.

(gh-17596)

Expired deprecations
  • The deprecation of numeric style type-codes np.dtype("Complex64") (with upper case spelling), is expired. "Complex64" corresponded to "complex128" and "Complex32" corresponded to "complex64".

  • The deprecation of np.sctypeNA and np.typeNA is expired. Both have been removed from the public API. Use np.typeDict instead.

    (gh-16554)

  • The 14-year deprecation of np.ctypeslib.ctypes_load_library is expired. Use ~numpy.ctypeslib.load_library{.interpreted-text role="func"} instead, which is identical.

    (gh-17116)

Financial functions removed

In accordance with NEP 32, the financial functions are removed from NumPy 1.20. The functions that have been removed are fv, ipmt, irr, mirr, nper, npv, pmt, ppmt, pv, and rate. These functions are available in the numpy_financial library.

(gh-17067)

Compatibility notes isinstance(dtype, np.dtype) and not type(dtype) is not np.dtype

NumPy dtypes are not direct instances of np.dtype anymore. Code that may have used type(dtype) is np.dtype will always return False and must be updated to use the correct version isinstance(dtype, np.dtype).

This change also affects the C-side macro PyArray_DescrCheck if compiled against a NumPy older than 1.16.6. If code uses this macro and wishes to compile against an older version of NumPy, it must replace the macro (see also C API changes section).

Same kind casting in concatenate with axis=None

When [~numpy.concatenate]{.title-ref} is called with axis=None, the flattened arrays were cast with unsafe. Any other axis choice uses \"same kind\". That different default has been deprecated and \"same kind\" casting will be used instead. The new casting keyword argument can be used to retain the old behaviour.

(gh-16134)

NumPy Scalars are cast when assigned to arrays

When creating or assigning to arrays, in all relevant cases NumPy scalars will now be cast identically to NumPy arrays. In particular this changes the behaviour in some cases which previously raised an error:

np.array([np.float64(np.nan)], dtype=np.int64)

will succeed and return an undefined result (usually the smallest possible integer). This also affects assignments:

arr[0] = np.float64(np.nan)

At this time, NumPy retains the behaviour for:

np.array(np.float64(np.nan), dtype=np.int64)

The above changes do not affect Python scalars:

np.array([float("NaN")], dtype=np.int64)

remains unaffected (np.nan is a Python float, not a NumPy one). Unlike signed integers, unsigned integers do not retain this special case, since they always behaved more like casting. The following code stops raising an error:

np.array([np.float64(np.nan)], dtype=np.uint64)

To avoid backward compatibility issues, at this time assignment from datetime64 scalar to strings of too short length remains supported. This means that np.asarray(np.datetime64("2020-10-10"), dtype="S5") succeeds now, when it failed before. In the long term this may be deprecated or the unsafe cast may be allowed generally to make assignment of arrays and scalars behave consistently.

Array coercion changes when Strings and other types are mixed

When strings and other types are mixed, such as:

np.array(["string", np.float64(3.)], dtype="S")

The results will change, which may lead to string dtypes with longer strings in some cases. In particularly, if dtype="S" is not provided any numerical value will lead to a string results long enough to hold all possible numerical values. (e.g. \"S32\" for floats). Note that you should always provide dtype="S" when converting non-strings to strings.

If dtype="S" is provided the results will be largely identical to before, but NumPy scalars (not a Python float like 1.0), will still enforce a uniform string length:

np.array([np.float64(3.)], dtype="S")  # gives "S32"
np.array([3.0], dtype="S")  # gives "S3"

Previously the first version gave the same result as the second.

Array coercion restructure

Array coercion has been restructured. In general, this should not affect users. In extremely rare corner cases where array-likes are nested:

np.array([array_like1])

Things will now be more consistent with:

np.array([np.array(array_like1)])

This can subtly change output for some badly defined array-likes. One example for this are array-like objects which are not also sequences of matching shape. In NumPy 1.20, a warning will be given when an array-like is not also a sequence (but behaviour remains identical, see deprecations). If an array like is also a sequence (defines __getitem__ and __len__) NumPy will now only use the result given by __array__, __array_interface__, or __array_struct__. This will result in differences when the (nested) sequence describes a different shape.

(gh-16200)

Writing to the result of numpy.broadcast\_arrays will export readonly buffers

In NumPy 1.17 numpy.broadcast\_arrays started warning when the resulting array was written to. This warning was skipped when the array was used through the buffer interface (e.g. memoryview(arr)). The same thing will now occur for the two protocols __array_interface__, and __array_struct__ returning read-only buffers instead of giving a warning.

(gh-16350)

Numeric-style type names have been removed from type dictionaries

To stay in sync with the deprecation for np.dtype("Complex64") and other numeric-style (capital case) types. These were removed from np.sctypeDict and np.typeDict. You should use the lower case versions instead. Note that "Complex64" corresponds to "complex128" and "Complex32" corresponds to "complex64". The numpy style (new) versions, denote the full size and not the size of the real/imaginary part.

(gh-16554)

The operator.concat function now raises TypeError for array arguments

The previous behavior was to fall back to addition and add the two arrays, which was thought to be unexpected behavior for a concatenation function.

(gh-16570)

nickname attribute removed from ABCPolyBase

An abstract property nickname has been removed from ABCPolyBase as it was no longer used in the derived convenience classes. This may affect users who have derived classes from ABCPolyBase and overridden the methods for representation and display, e.g. __str__, __repr__, _repr_latex, etc.

(gh-16589)

float->timedelta and uint64->timedelta promotion will raise a TypeError

Float and timedelta promotion consistently raises a TypeError. np.promote_types("float32", "m8") aligns with np.promote_types("m8", "float32") now and both raise a TypeError. Previously, np.promote_types("float32", "m8") returned "m8" which was considered a bug.

Uint64 and timedelta promotion consistently raises a TypeError. np.promote_types("uint64", "m8") aligns with np.promote_types("m8", "uint64") now and both raise a TypeError. Previously, np.promote_types("uint64", "m8") returned "m8" which was considered a bug.

(gh-16592)

numpy.genfromtxt now correctly unpacks structured arrays

Previously, numpy.genfromtxt failed to unpack if it was called with unpack=True and a structured datatype was passed to the dtype argument (or dtype=None was passed and a structured datatype was inferred). For example:

>>> data = StringIO("21 58.0\n35 72.0")
>>> np.genfromtxt(data, dtype=None, unpack=True)
array([(21, 58.), (35, 72.)], dtype=[('f0', '<i8'), ('f1', '<f8')])

Structured arrays will now correctly unpack into a list of arrays, one for each column:

>>> np.genfromtxt(data, dtype=None, unpack=True)
[array([21, 35]), array([58., 72.])]

(gh-16650)

mgrid, r_, etc. consistently return correct outputs for non-default precision input

Previously, np.mgrid[np.float32(0.1):np.float32(0.35):np.float32(0.1),] and np.r_[0:10:np.complex64(3j)] failed to return meaningful output. This bug potentially affects [~numpy.mgrid]{.title-ref}, numpy.ogrid, numpy.r\_, and numpy.c\_ when an input with dtype other than the default float64 and complex128 and equivalent Python types were used. The methods have been fixed to handle varying precision correctly.

(gh-16815)

Boolean array indices with mismatching shapes now properly give IndexError

Previously, if a boolean array index matched the size of the indexed array but not the shape, it was incorrectly allowed in some cases. In other cases, it gave an error, but the error was incorrectly a ValueError with a message about broadcasting instead of the correct IndexError.

For example, the following used to incorrectly give ValueError: operands could not be broadcast together with shapes (2,2) (1,4):

np.empty((2, 2))[np.array([[True, False, False, False]])]

And the following used to incorrectly return array([], dtype=float64):

np.empty((2, 2))[np.array([[False, False, False, False]])]

Both now correctly give IndexError: boolean index did not match indexed array along dimension 0; dimension is 2 but corresponding boolean dimension is 1.

(gh-17010)

Casting errors interrupt Iteration

When iterating while casting values, an error may stop the iteration earlier than before. In any case, a failed casting operation always returned undefined, partial results. Those may now be even more undefined and partial. For users of the NpyIter C-API such cast errors will now cause the [iternext()]{.title-ref} function to return 0 and thus abort iteration. Currently, there is no API to detect such an error directly. It is necessary to check PyErr_Occurred(), which may be problematic in combination with NpyIter_Reset. These issues always existed, but new API could be added if required by users.

(gh-17029)

f2py generated code may return unicode instead of byte strings

Some byte strings previously returned by f2py generated code may now be unicode strings. This results from the ongoing Python2 -> Python3 cleanup.

(gh-17068)

The first element of the __array_interface__["data"] tuple must be an integer

This has been the documented interface for many years, but there was still code that would accept a byte string representation of the pointer address. That code has been removed, passing the address as a byte string will now raise an error.

(gh-17241)

poly1d respects the dtype of all-zero argument

Previously, constructing an instance of poly1d with all-zero coefficients would cast the coefficients to np.float64. This affected the output dtype of methods which construct poly1d instances internally, such as np.polymul.

(gh-17577)

The numpy.i file for swig is Python 3 only.

Uses of Python 2.7 C-API functions have been updated to Python 3 only. Users who need the old version should take it from an older version of NumPy.

(gh-17580)

Void dtype discovery in np.array

In calls using np.array(..., dtype="V"), arr.astype("V"), and similar a TypeError will now be correctly raised unless all elements have the identical void length. An example for this is:

np.array([b"1", b"12"], dtype="V")

Which previously returned an array with dtype "V2" which cannot represent b"1" faithfully.

(gh-17706)

C API changes The PyArray_DescrCheck macro is modified

The PyArray_DescrCheck macro has been updated since NumPy 1.16.6 to be:

#define PyArray_DescrCheck(op) PyObject_TypeCheck(op, &PyArrayDescr_Type)

Starting with NumPy 1.20 code that is compiled against an earlier version will be API incompatible with NumPy 1.20. The fix is to either compile against 1.16.6 (if the NumPy 1.16 release is the oldest release you wish to support), or manually inline the macro by replacing it with the new definition:

PyObject_TypeCheck(op, &PyArrayDescr_Type)

which is compatible with all NumPy versions.

Size of np.ndarray and np.void_ changed

The size of the PyArrayObject and PyVoidScalarObject structures have changed. The following header definition has been removed:

#define NPY_SIZEOF_PYARRAYOBJECT (sizeof(PyArrayObject_fields))

since the size must not be considered a compile time constant: it will change for different runtime versions of NumPy.

The most likely relevant use are potential subclasses written in C which will have to be recompiled and should be updated. Please see the documentation for :cPyArrayObject{.interpreted-text role="type"} for more details and contact the NumPy developers if you are affected by this change.

NumPy will attempt to give a graceful error but a program expecting a fixed structure size may have undefined behaviour and likely crash.

(gh-16938)

New Features where keyword argument for numpy.all and numpy.any functions

The keyword argument where is added and allows to only consider specified elements or subaxes from an array in the Boolean evaluation of all and any. This new keyword is available to the functions all and any both via numpy directly or in the methods of numpy.ndarray.

Any broadcastable Boolean array or a scalar can be set as where. It defaults to True to evaluate the functions for all elements in an array if where is not set by the user. Examples are given in the documentation of the functions.

where keyword argument for numpy functions mean, std, var

The keyword argument where is added and allows to limit the scope in the calculation of mean, std and var to only a subset of elements. It is available both via numpy directly or in the methods of numpy.ndarray.

Any broadcastable Boolean array or a scalar can be set as where. It defaults to True to evaluate the functions for all elements in an array if where is not set by the user. Examples are given in the documentation of the functions.

(gh-15852)

norm=backward, forward keyword options for numpy.fft functions

The keyword argument option norm=backward is added as an alias for None and acts as the default option; using it has the direct transforms unscaled and the inverse transforms scaled by 1/n.

Using the new keyword argument option norm=forward has the direct transforms scaled by 1/n and the inverse transforms unscaled (i.e. exactly opposite to the default option norm=backward).

(gh-16476)

NumPy is now typed

Type annotations have been added for large parts of NumPy. There is also a new [numpy.typing]{.title-ref} module that contains useful types for end-users. The currently available types are

  • ArrayLike: for objects that can be coerced to an array
  • DtypeLike: for objects that can be coerced to a dtype

(gh-16515)

numpy.typing is accessible at runtime

The types in numpy.typing can now be imported at runtime. Code like the following will now work:

from numpy.typing import ArrayLike
x: ArrayLike = [1, 2, 3, 4]

(gh-16558)

New __f2py_numpy_version__ attribute for f2py generated modules.

Because f2py is released together with NumPy, __f2py_numpy_version__ provides a way to track the version f2py used to generate the module.

(gh-16594)

mypy tests can be run via runtests.py

Currently running mypy with the NumPy stubs configured requires either:

  • Installing NumPy
  • Adding the source directory to MYPYPATH and linking to the mypy.ini

Both options are somewhat inconvenient, so add a --mypy option to runtests that handles setting things up for you. This will also be useful in the future for any typing codegen since it will ensure the project is built before type checking.

(gh-17123)

Negation of user defined BLAS/LAPACK detection order

[~numpy.distutils]{.title-ref} allows negation of libraries when determining BLAS/LAPACK libraries. This may be used to remove an item from the library resolution phase, i.e. to disallow NetLIB libraries one could do:

NPY_BLAS_ORDER='^blas' NPY_LAPACK_ORDER='^lapack' python setup.py build

That will use any of the accelerated libraries instead.

(gh-17219)

Allow passing optimizations arguments to asv build

It is now possible to pass -j, --cpu-baseline, --cpu-dispatch and --disable-optimization flags to ASV build when the --bench-compare argument is used.

(gh-17284)

The NVIDIA HPC SDK nvfortran compiler is now supported

Support for the nvfortran compiler, a version of pgfortran, has been added.

(gh-17344)

dtype option for cov and corrcoef

The dtype option is now available for [numpy.cov]{.title-ref} and [numpy.corrcoef]{.title-ref}. It specifies which data-type the returned result should have. By default the functions still return a [numpy.float64]{.title-ref} result.

(gh-17456)

Improvements Improved string representation for polynomials (__str__)

The string representation (__str__) of all six polynomial types in [numpy.polynomial]{.title-ref} has been updated to give the polynomial as a mathematical expression instead of an array of coefficients. Two package-wide formats for the polynomial expressions are available - one using Unicode characters for superscripts and subscripts, and another using only ASCII characters.

(gh-15666)

Remove the Accelerate library as a candidate LAPACK library

Apple no longer supports Accelerate. Remove it.

(gh-15759)

Object arrays containing multi-line objects have a more readable repr

If elements of an object array have a repr containing new lines, then the wrapped lines will be aligned by column. Notably, this improves the repr of nested arrays:

>>> np.array([np.eye(2), np.eye(3)], dtype=object)
array([array([[1., 0.],
              [0., 1.]]),
       array([[1., 0., 0.],
              [0., 1., 0.],
              [0., 0., 1.]])], dtype=object)

(gh-15997)

Concatenate supports providing an output dtype

Support was added to [~numpy.concatenate]{.title-ref} to provide an output dtype and casting using keyword arguments. The dtype argument cannot be provided in conjunction with the out one.

(gh-16134)

Thread safe f2py callback functions

Callback functions in f2py are now thread safe.

(gh-16519)

[numpy.core.records.fromfile]{.title-ref} now supports file-like objects

[numpy.rec.fromfile]{.title-ref} can now use file-like objects, for instance :pyio.BytesIO{.interpreted-text role="class"}

(gh-16675)

RPATH support on AIX added to distutils

This allows SciPy to be built on AIX.

(gh-16710)

Use f90 compiler specified by the command line args

The compiler command selection for Fortran Portland Group Compiler is changed in [numpy.distutils.fcompiler]{.title-ref}. This only affects the linking command. This forces the use of the executable provided by the command line option (if provided) instead of the pgfortran executable. If no executable is provided to the command line option it defaults to the pgf90 executable, wich is an alias for pgfortran according to the PGI documentation.

(gh-16730)

Add NumPy declarations for Cython 3.0 and later

The pxd declarations for Cython 3.0 were improved to avoid using deprecated NumPy C-API features. Extension modules built with Cython 3.0+ that use NumPy can now set the C macro NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION to avoid C compiler warnings about deprecated API usage.

(gh-16986)

Make the window functions exactly symmetric

Make sure the window functions provided by NumPy are symmetric. There were previously small deviations from symmetry due to numerical precision that are now avoided by better arrangement of the computation.

(gh-17195)

Performance improvements and changes Enable multi-platform SIMD compiler optimizations

A series of improvements for NumPy infrastructure to pave the way to NEP-38, that can be summarized as follow:

  • New Build Arguments

    • --cpu-baseline to specify the minimal set of required optimizations, default value is min which provides the minimum CPU features that can safely run on a wide range of users platforms.
    • --cpu-dispatch to specify the dispatched set of additional optimizations, default value is max -xop -fma4 which enables all CPU features, except for AMD legacy features.
    • --disable-optimization to explicitly disable the whole new improvements, It also adds a new C compiler #definition called NPY_DISABLE_OPTIMIZATION which it can be used as guard for any SIMD code.
  • Advanced CPU dispatcher

    A flexible cross-architecture CPU dispatcher built on the top of Python/Numpy distutils, support all common compilers with a wide range of CPU features.

    The new dispatcher requires a special file extension *.dispatch.c to mark the dispatch-able C sources. These sources have the ability to be compiled multiple times so that each compilation process represents certain CPU features and provides different #definitions and flags that affect the code paths.

  • New auto-generated C header ``core/src/common/_cpu_dispatch.h``

    This header is generated by the distutils module ccompiler_opt, and contains all the #definitions and headers of instruction sets, that had been configured through command arguments \'--cpu-baseline\' and \'--cpu-dispatch\'.

  • New C header ``core/src/common/npy_cpu_dispatch.h``

    This header contains all utilities that required for the whole CPU dispatching process, it also can be considered as a bridge linking the new infrastructure work with NumPy CPU runtime detection.

  • Add new attributes to NumPy umath module(Python level)

    • __cpu_baseline__ a list contains the minimal set of required optimizations that supported by the compiler and platform according to the specified values to command argument \'--cpu-baseline\'.
    • __cpu_dispatch__ a list contains the dispatched set of additional optimizations that supported by the compiler and platform according to the specified values to command argument \'--cpu-dispatch\'.
  • Print the supported CPU features during the run of PytestTester

(gh-13516)

Changes Changed behavior of divmod(1., 0.) and related functions

The changes also assure that different compiler versions have the same behavior for nan or inf usages in these operations. This was previously compiler dependent, we now force the invalid and divide by zero flags, making the results the same across compilers. For example, gcc-5, gcc-8, or gcc-9 now result in the same behavior. The changes are tabulated below:

OperatorOld WarningNew WarningOld ResultNew ResultWorks on MacOS
np.divmod(1.0, 0.0)InvalidInvalid and Dividebyzeronan, naninf, nanYes
np.fmod(1.0, 0.0)InvalidInvalidnannanNo? Yes
np.floor_divide(1.0, 0.0)InvalidDividebyzeronaninfYes
np.remainder(1.0, 0.0)InvalidInvalidnannanYes

: Summary of New Behavior

(gh-16161)

np.linspace on integers now uses floor

When using a int dtype in [numpy.linspace]{.title-ref}, previously float values would be rounded towards zero. Now [numpy.floor]{.title-ref} is used instead, which rounds toward -inf. This changes the results for negative values. For example, the following would previously give:

>>> np.linspace(-3, 1, 8, dtype=int)
array([-3, -2, -1, -1,  0,  0,  0,  1])

and now results in:

>>> np.linspace(-3, 1, 8, dtype=int)
array([-3, -3, -2, -2, -1, -1,  0,  1])

The former result can still be obtained with:

>>> np.linspace(-3, 1, 8).astype(int)
array([-3, -2, -1, -1,  0,  0,  0,  1])

(gh-16841)

Checksums MD5
6f43f51475706d8346cee9604ed54e8a  numpy-1.20.0-cp37-cp37m-macosx_10_9_x86_64.whl
c77f563595ab4bab6185c795c573a26a  numpy-1.20.0-cp37-cp37m-manylinux1_i686.whl
e8f71fdb7e4e837ae79894b621e3ca08  numpy-1.20.0-cp37-cp37m-manylinux1_x86_64.whl
89c477a3eaf2e3379aa21bf80e2a2812  numpy-1.20.0-cp37-cp37m-manylinux2010_i686.whl
82211490e9375bdad57592139b49184d  numpy-1.20.0-cp37-cp37m-manylinux2010_x86_64.whl
b2d47be4aa123623b39f18723e0d70b7  numpy-1.20.0-cp37-cp37m-manylinux2014_aarch64.whl
e884b218dc2b20895f57fae00534e8ea  numpy-1.20.0-cp37-cp37m-win32.whl
ec8265d429e808d8f92ed46711d66bc7  numpy-1.20.0-cp37-cp37m-win_amd64.whl
791cc5086a755929a1140018067c4587  numpy-1.20.0-cp38-cp38-macosx_10_9_x86_64.whl
2ee146bad9aa521d0bdfd7e30e982a80  numpy-1.20.0-cp38-cp38-manylinux1_i686.whl
83d74204a26e9dd3cb93653818745d09  numpy-1.20.0-cp38-cp38-manylinux1_x86_64.whl
0b0a5e36d4b75a00603cec4db09c44d7  numpy-1.20.0-cp38-cp38-manylinux2010_i686.whl
c192aeac728a3abfbd16daef87b2a307  numpy-1.20.0-cp38-cp38-manylinux2010_x86_64.whl
2282da14106cb52bbf9c8c0b847c3480  numpy-1.20.0-cp38-cp38-manylinux2014_aarch64.whl
0e0e4bf53dd8ea4e232083e788419f30  numpy-1.20.0-cp38-cp38-win32.whl
93ebb884970cf7292778cb19e9f27596  numpy-1.20.0-cp38-cp38-win_amd64.whl
749cca75b33849a78e7238aeb09baded  numpy-1.20.0-cp39-cp39-macosx_10_9_x86_64.whl
e36e7e259bb38ccd2320f88a137115e0  numpy-1.20.0-cp39-cp39-manylinux2010_i686.whl
4979a98a2cf0a1b14a82630b717aa12b  numpy-1.20.0-cp39-cp39-manylinux2010_x86_64.whl
52a78d15f15959003047ccb6b66a0ee7  numpy-1.20.0-cp39-cp39-manylinux2014_aarch64.whl
796b273028c7724a855214ae9a83e4f8  numpy-1.20.0-cp39-cp39-win32.whl
663428d8bedc5785041800ce098368cd  numpy-1.20.0-cp39-cp39-win_amd64.whl
66ea4e7911de7fdce688c1b69f9c7c54  numpy-1.20.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
fc7c970084438911a50efaa8cddccebc  numpy-1.20.0.tar.gz
024eb99dba56c3021458caf86f2fea0a  numpy-1.20.0.zip
SHA256
89bd70c9ad540febe6c28451ba225eb4e49d27f64728357f512c808002325dfa  numpy-1.20.0-cp37-cp37m-macosx_10_9_x86_64.whl
1264c66129f5ef63187649dd43f1ca59532e8c098723643336a85131c0dcce3f  numpy-1.20.0-cp37-cp37m-manylinux1_i686.whl
e9c5fd330d2fedf06051bafb996252de9b032fcb2ec03eefc9a543e56efa66d4  numpy-1.20.0-cp37-cp37m-manylinux1_x86_64.whl
db5e69d08756a2fa75a42b4e433880b6187768fe1bc73d21819def893e5128c6  numpy-1.20.0-cp37-cp37m-manylinux2010_i686.whl
1abc02e30e3efd81a4571e00f8e62bf42e343c76698e0a3e11d9c2b3ee0d77a7  numpy-1.20.0-cp37-cp37m-manylinux2010_x86_64.whl
5ae765dd29c71a555f8102281f6fb15a3f4dbd35f6e7daf36af9df6d9dd716a5  numpy-1.20.0-cp37-cp37m-manylinux2014_aarch64.whl
b51b9ef0624f4b01b846c981034c10d2e30db33f9f8be71e992f3900741f6f77  numpy-1.20.0-cp37-cp37m-win32.whl
afeee581b50df20ef07b736e62ca612858f1fcdba96651d26ab44e3d567a4e6e  numpy-1.20.0-cp37-cp37m-win_amd64.whl
2bf0e68c92ef077fe766e53f8937d8ac341bdbca68ec128ae049b7d5c34e3206  numpy-1.20.0-cp38-cp38-macosx_10_9_x86_64.whl
2445a96fbae23a4109c61be0f0af0f3bc273905dc5687a710850c1dfde0fc994  numpy-1.20.0-cp38-cp38-manylinux1_i686.whl
33edfc0eb229f86f539493917b34035054313a11afbed48404aaf9f86bf4b0f6  numpy-1.20.0-cp38-cp38-manylinux1_x86_64.whl
894aaee60043a98b03f0ad992c810f62e3a15f98a701e1c0f58a4f4a0df13429  numpy-1.20.0-cp38-cp38-manylinux2010_i686.whl
b66a6c15d793eda7cdad986e737775aa31b9306d588c14dd0277d2dda5546150  numpy-1.20.0-cp38-cp38-manylinux2010_x86_64.whl
eee454d3aa3955d0c0069a0f265fea47f1e1384c35a110a95efed358eb6e1562  numpy-1.20.0-cp38-cp38-manylinux2014_aarch64.whl
abdfa075e293d73638ece434708aa60b510dc6e70d805f57f481a0f550b25a9e  numpy-1.20.0-cp38-cp38-win32.whl
f1e9424e9aa3834ea27cc12f9c6ea8ace5da18ee60a720bb3a85b2f733f41782  numpy-1.20.0-cp38-cp38-win_amd64.whl
cb257bb0c0a3176c32782a63cfab2eace7eabfa2a3b2dfd85a13700617ccaf28  numpy-1.20.0-cp39-cp39-macosx_10_9_x86_64.whl
cf5d9dcbdbe523fa665c5309cce5f144648d94a7fddbf5a40f8e0d5c9f5b596d  numpy-1.20.0-cp39-cp39-manylinux2010_i686.whl
93c2abea7bb69f47029b84ceac30ab46dfcfdb99b671ad850a333ff794a765e4  numpy-1.20.0-cp39-cp39-manylinux2010_x86_64.whl
0d28a54afcf46f1f9ebd163e49ad6b49087f22986fefd01a23ca0c1cdda25ca6  numpy-1.20.0-cp39-cp39-manylinux2014_aarch64.whl
d1bc331e1706fd1809a1bc8a31205329e5b30cf5ba50461c624da267e99f6ae6  numpy-1.20.0-cp39-cp39-win32.whl
e3db646af9f6a145f0c57202f4b55d4a33f975e395e78fb7b394644c17c1a3a6  numpy-1.20.0-cp39-cp39-win_amd64.whl
4d592264d2a4f368afbb4288b5ceb646d4cbaf559c0249c096fbb0a149806b90  numpy-1.20.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
67b630745a71b541ff6517d6f3d62b00690dc8ba0684cad0d7b0ac55aec1de53  numpy-1.20.0.tar.gz
3d8233c03f116d068d5365fed4477f2947c7229582dad81e5953088989294cec  numpy-1.20.0.zip

1.19.5

2 years ago
NumPy 1.19.5 Release Notes

NumPy 1.19.5 is a short bugfix release. Apart from fixing several bugs, the main improvement is the update to OpenBLAS 0.3.13 that works around the windows 2004 bug while not breaking execution on other platforms. This release supports Python 3.6-3.9 and is planned to be the last release in the 1.19.x cycle.

Contributors

A total of 8 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Christoph Gohlke
  • Matti Picus
  • Raghuveer Devulapalli
  • Sebastian Berg
  • Simon Graham +
  • Veniamin Petrenko +
  • Bernie Gray +
Pull requests merged

A total of 11 pull requests were merged for this release.

  • #17756: BUG: Fix segfault due to out of bound pointer in floatstatus...
  • #17774: BUG: fix np.timedelta64(\'nat\').__format__ throwing an exception
  • #17775: BUG: Fixed file handle leak in array_tofile.
  • #17786: BUG: Raise recursion error during dimension discovery
  • #17917: BUG: Fix subarray dtype used with too large count in fromfile
  • #17918: BUG: \'bool\' object has no attribute \'ndim\'
  • #17919: BUG: ensure _UFuncNoLoopError can be pickled
  • #17924: BLD: use BUFFERSIZE=20 in OpenBLAS
  • #18026: BLD: update to OpenBLAS 0.3.13
  • #18036: BUG: make a variable volatile to work around clang compiler bug
  • #18114: REL: Prepare for the NumPy 1.19.5 release.
Checksums MD5
2651049b70d2ec07d8afd7637f198807  numpy-1.19.5-cp36-cp36m-macosx_10_9_x86_64.whl
71cc7869a54cf55df4699aebe27e9344  numpy-1.19.5-cp36-cp36m-manylinux1_i686.whl
28d23e25c6e6654b2f65218c6e9b3825  numpy-1.19.5-cp36-cp36m-manylinux1_x86_64.whl
fb4128d719d72130cbf24baf308761c9  numpy-1.19.5-cp36-cp36m-manylinux2010_i686.whl
0c8edfbbb26823b7495b5371558b1ae5  numpy-1.19.5-cp36-cp36m-manylinux2010_x86_64.whl
ad8e6247a175f3a9786eedb4baff7c06  numpy-1.19.5-cp36-cp36m-manylinux2014_aarch64.whl
2a3e121d4f242cef4ef00d5e6e3cebc9  numpy-1.19.5-cp36-cp36m-win32.whl
baf1bd7e3a8c19367103483d1fd61cfc  numpy-1.19.5-cp36-cp36m-win_amd64.whl
0086e5551c22e62244781e4179a013c9  numpy-1.19.5-cp37-cp37m-macosx_10_9_x86_64.whl
538fe864a8809a8d9b6b5c102ac8de1f  numpy-1.19.5-cp37-cp37m-manylinux1_i686.whl
5323920ec3e1953078cfa0560ae53867  numpy-1.19.5-cp37-cp37m-manylinux1_x86_64.whl
464f0f6284ede3cb2ea3070fee729048  numpy-1.19.5-cp37-cp37m-manylinux2010_i686.whl
9aa2656bab43993cc99f9cd996c71997  numpy-1.19.5-cp37-cp37m-manylinux2010_x86_64.whl
bcd1e59d57515d2f7be107266cab4f00  numpy-1.19.5-cp37-cp37m-manylinux2014_aarch64.whl
4e87ab21f30016ea5b9a981e3ecd733a  numpy-1.19.5-cp37-cp37m-win32.whl
c50b11de3b82163e6e75d17762368425  numpy-1.19.5-cp37-cp37m-win_amd64.whl
2beca0d3718c5b355f3c78d9f4f1fe87  numpy-1.19.5-cp38-cp38-macosx_10_9_x86_64.whl
8302aaa77a0978df894f9f62caac7ee7  numpy-1.19.5-cp38-cp38-manylinux1_i686.whl
6875515a35558ac17d3cdc8e8578debd  numpy-1.19.5-cp38-cp38-manylinux1_x86_64.whl
2c72ca182bc4b4904b6c87f7d4312036  numpy-1.19.5-cp38-cp38-manylinux2010_i686.whl
1b334aad7bdfa96dc3eb10f55f8c44dd  numpy-1.19.5-cp38-cp38-manylinux2010_x86_64.whl
f4e63f368fc230f482205e3b65b8f5c7  numpy-1.19.5-cp38-cp38-manylinux2014_aarch64.whl
d5a97ef684d53b04bf14e0b6cca7e8a1  numpy-1.19.5-cp38-cp38-win32.whl
abed55a50177d54a10d8e89ccde971ca  numpy-1.19.5-cp38-cp38-win_amd64.whl
3c3fc07aeb311677975a58d1ab1f3e5e  numpy-1.19.5-cp39-cp39-macosx_10_9_x86_64.whl
c7c070e284f49f9915ecbcec847760a5  numpy-1.19.5-cp39-cp39-manylinux1_i686.whl
2613261149a32771243bb71f53e3bc3a  numpy-1.19.5-cp39-cp39-manylinux1_x86_64.whl
5f84721a5e286e383bf6ba251c8add31  numpy-1.19.5-cp39-cp39-manylinux2010_i686.whl
9a0ac6f630de2081302df9bbffe1b555  numpy-1.19.5-cp39-cp39-manylinux2010_x86_64.whl
b48e31d316e4803b5e463dd5e38c8339  numpy-1.19.5-cp39-cp39-manylinux2014_aarch64.whl
15589af64e734aa1ecc7e04767ccc63d  numpy-1.19.5-cp39-cp39-win32.whl
cca2b2301f11a89329727ea5302d9b12  numpy-1.19.5-cp39-cp39-win_amd64.whl
c9b5c30dc035aa7bd9c1ebf6771939c3  numpy-1.19.5-pp36-pypy36_pp73-manylinux2010_x86_64.whl
e67564b7dfedf213fda112ee078c67bf  numpy-1.19.5.tar.gz
f6a1b48717c552bbc18f1adc3cc1fe0e  numpy-1.19.5.zip
SHA256
cc6bd4fd593cb261332568485e20a0712883cf631f6f5e8e86a52caa8b2b50ff  numpy-1.19.5-cp36-cp36m-macosx_10_9_x86_64.whl
aeb9ed923be74e659984e321f609b9ba54a48354bfd168d21a2b072ed1e833ea  numpy-1.19.5-cp36-cp36m-manylinux1_i686.whl
8b5e972b43c8fc27d56550b4120fe6257fdc15f9301914380b27f74856299fea  numpy-1.19.5-cp36-cp36m-manylinux1_x86_64.whl
43d4c81d5ffdff6bae58d66a3cd7f54a7acd9a0e7b18d97abb255defc09e3140  numpy-1.19.5-cp36-cp36m-manylinux2010_i686.whl
a4646724fba402aa7504cd48b4b50e783296b5e10a524c7a6da62e4a8ac9698d  numpy-1.19.5-cp36-cp36m-manylinux2010_x86_64.whl
2e55195bc1c6b705bfd8ad6f288b38b11b1af32f3c8289d6c50d47f950c12e76  numpy-1.19.5-cp36-cp36m-manylinux2014_aarch64.whl
39b70c19ec771805081578cc936bbe95336798b7edf4732ed102e7a43ec5c07a  numpy-1.19.5-cp36-cp36m-win32.whl
dbd18bcf4889b720ba13a27ec2f2aac1981bd41203b3a3b27ba7a33f88ae4827  numpy-1.19.5-cp36-cp36m-win_amd64.whl
603aa0706be710eea8884af807b1b3bc9fb2e49b9f4da439e76000f3b3c6ff0f  numpy-1.19.5-cp37-cp37m-macosx_10_9_x86_64.whl
cae865b1cae1ec2663d8ea56ef6ff185bad091a5e33ebbadd98de2cfa3fa668f  numpy-1.19.5-cp37-cp37m-manylinux1_i686.whl
36674959eed6957e61f11c912f71e78857a8d0604171dfd9ce9ad5cbf41c511c  numpy-1.19.5-cp37-cp37m-manylinux1_x86_64.whl
06fab248a088e439402141ea04f0fffb203723148f6ee791e9c75b3e9e82f080  numpy-1.19.5-cp37-cp37m-manylinux2010_i686.whl
6149a185cece5ee78d1d196938b2a8f9d09f5a5ebfbba66969302a778d5ddd1d  numpy-1.19.5-cp37-cp37m-manylinux2010_x86_64.whl
50a4a0ad0111cc1b71fa32dedd05fa239f7fb5a43a40663269bb5dc7877cfd28  numpy-1.19.5-cp37-cp37m-manylinux2014_aarch64.whl
d051ec1c64b85ecc69531e1137bb9751c6830772ee5c1c426dbcfe98ef5788d7  numpy-1.19.5-cp37-cp37m-win32.whl
a12ff4c8ddfee61f90a1633a4c4afd3f7bcb32b11c52026c92a12e1325922d0d  numpy-1.19.5-cp37-cp37m-win_amd64.whl
cf2402002d3d9f91c8b01e66fbb436a4ed01c6498fffed0e4c7566da1d40ee1e  numpy-1.19.5-cp38-cp38-macosx_10_9_x86_64.whl
1ded4fce9cfaaf24e7a0ab51b7a87be9038ea1ace7f34b841fe3b6894c721d1c  numpy-1.19.5-cp38-cp38-manylinux1_i686.whl
012426a41bc9ab63bb158635aecccc7610e3eff5d31d1eb43bc099debc979d94  numpy-1.19.5-cp38-cp38-manylinux1_x86_64.whl
759e4095edc3c1b3ac031f34d9459fa781777a93ccc633a472a5468587a190ff  numpy-1.19.5-cp38-cp38-manylinux2010_i686.whl
a9d17f2be3b427fbb2bce61e596cf555d6f8a56c222bd2ca148baeeb5e5c783c  numpy-1.19.5-cp38-cp38-manylinux2010_x86_64.whl
99abf4f353c3d1a0c7a5f27699482c987cf663b1eac20db59b8c7b061eabd7fc  numpy-1.19.5-cp38-cp38-manylinux2014_aarch64.whl
384ec0463d1c2671170901994aeb6dce126de0a95ccc3976c43b0038a37329c2  numpy-1.19.5-cp38-cp38-win32.whl
811daee36a58dc79cf3d8bdd4a490e4277d0e4b7d103a001a4e73ddb48e7e6aa  numpy-1.19.5-cp38-cp38-win_amd64.whl
c843b3f50d1ab7361ca4f0b3639bf691569493a56808a0b0c54a051d260b7dbd  numpy-1.19.5-cp39-cp39-macosx_10_9_x86_64.whl
d6631f2e867676b13026e2846180e2c13c1e11289d67da08d71cacb2cd93d4aa  numpy-1.19.5-cp39-cp39-manylinux1_i686.whl
7fb43004bce0ca31d8f13a6eb5e943fa73371381e53f7074ed21a4cb786c32f8  numpy-1.19.5-cp39-cp39-manylinux1_x86_64.whl
2ea52bd92ab9f768cc64a4c3ef8f4b2580a17af0a5436f6126b08efbd1838371  numpy-1.19.5-cp39-cp39-manylinux2010_i686.whl
400580cbd3cff6ffa6293df2278c75aef2d58d8d93d3c5614cd67981dae68ceb  numpy-1.19.5-cp39-cp39-manylinux2010_x86_64.whl
df609c82f18c5b9f6cb97271f03315ff0dbe481a2a02e56aeb1b1a985ce38e60  numpy-1.19.5-cp39-cp39-manylinux2014_aarch64.whl
ab83f24d5c52d60dbc8cd0528759532736b56db58adaa7b5f1f76ad551416a1e  numpy-1.19.5-cp39-cp39-win32.whl
0eef32ca3132a48e43f6a0f5a82cb508f22ce5a3d6f67a8329c81c8e226d3f6e  numpy-1.19.5-cp39-cp39-win_amd64.whl
a0d53e51a6cb6f0d9082decb7a4cb6dfb33055308c4c44f53103c073f649af73  numpy-1.19.5-pp36-pypy36_pp73-manylinux2010_x86_64.whl
d1654047d75fb9d55cc3d46f312d5247eec5f4999039874d2f571bb8021d8f0b  numpy-1.19.5.tar.gz
a76f502430dd98d7546e1ea2250a7360c065a5fdea52b2dffe8ae7180909b6f4  numpy-1.19.5.zip

1.19.4

2 years ago
NumPy 1.19.4 Release Notes

NumPy 1.19.4 is a quick release to revert the OpenBLAS library version. It was hoped that the 0.3.12 OpenBLAS version used in 1.19.3 would work around the Microsoft fmod bug, but problems in some docker environments turned up. Instead, 1.19.4 will use the older library and run a sanity check on import, raising an error if the problem is detected. Microsoft is aware of the problem and has promised a fix, users should upgrade when it becomes available.

This release supports Python 3.6-3.9

Contributors

A total of 1 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
Pull requests merged

A total of 2 pull requests were merged for this release.

  • #17679: MAINT: Add check for Windows 10 version 2004 bug.
  • #17680: REV: Revert OpenBLAS to 1.19.2 version for 1.19.4
Checksums MD5
09b6f7f17ca61f0f3b943d4107ea6a6c  numpy-1.19.4-cp36-cp36m-macosx_10_9_x86_64.whl
bfb801672e0d9916407352f7158b5584  numpy-1.19.4-cp36-cp36m-manylinux1_i686.whl
2469be359c8c383509eaded8e758488a  numpy-1.19.4-cp36-cp36m-manylinux1_x86_64.whl
4af398903b0957ad3a40ec17631879ed  numpy-1.19.4-cp36-cp36m-manylinux2010_i686.whl
bb3f911ba616d36a2daff5b8e1402b1b  numpy-1.19.4-cp36-cp36m-manylinux2010_x86_64.whl
3b754c1135f7aa3e6a7c1f46af6a84c9  numpy-1.19.4-cp36-cp36m-manylinux2014_aarch64.whl
9db8749b90405780614f126c77eef3bb  numpy-1.19.4-cp36-cp36m-win32.whl
25bc59391b8b4f06eb28e74e97afc488  numpy-1.19.4-cp36-cp36m-win_amd64.whl
355d7f49b9e442f9e73580e64c8bf2c2  numpy-1.19.4-cp37-cp37m-macosx_10_9_x86_64.whl
3c1ce8ca6f6f11ea9d49859b2ffb70cf  numpy-1.19.4-cp37-cp37m-manylinux1_i686.whl
5524143ee95cc7e3400dbbff709de7cd  numpy-1.19.4-cp37-cp37m-manylinux1_x86_64.whl
c40206040b8ddb62309cbef1cdf0fa82  numpy-1.19.4-cp37-cp37m-manylinux2010_i686.whl
552839ea3bc2dfc98611254f8188feb8  numpy-1.19.4-cp37-cp37m-manylinux2010_x86_64.whl
2e5c50e57cff5085ffb32185591e49ed  numpy-1.19.4-cp37-cp37m-manylinux2014_aarch64.whl
ce6c1cd93d5fc56d0de608b84cc14a7e  numpy-1.19.4-cp37-cp37m-win32.whl
a73acaea97da74db366372b3d70219a7  numpy-1.19.4-cp37-cp37m-win_amd64.whl
2f52c91231b2b3c54535dee98a5ad0a3  numpy-1.19.4-cp38-cp38-macosx_10_9_x86_64.whl
e619d04f2ac42a9feb0efcc1d9901d94  numpy-1.19.4-cp38-cp38-manylinux1_i686.whl
01c2f102e73b2569cf3ebe5eab112c4e  numpy-1.19.4-cp38-cp38-manylinux1_x86_64.whl
6a66109907b356ddd67f1e282e1879e6  numpy-1.19.4-cp38-cp38-manylinux2010_i686.whl
79354b01e11789bb5d12c9edc754297b  numpy-1.19.4-cp38-cp38-manylinux2010_x86_64.whl
4f1b335dfe5c7fcf5c8c89983cef9f0b  numpy-1.19.4-cp38-cp38-manylinux2014_aarch64.whl
949a5f9e9a75b9cbb3c74e4bf4eb0683  numpy-1.19.4-cp38-cp38-win32.whl
27eb1b83f3cac67fb26c7fe9a25b0635  numpy-1.19.4-cp38-cp38-win_amd64.whl
ae1e4a06e721e83b530860835c708690  numpy-1.19.4-cp39-cp39-macosx_10_9_x86_64.whl
d263c7d04c46d5ecca3b32ad11925bad  numpy-1.19.4-cp39-cp39-manylinux1_i686.whl
132e95910d76b045caf1883146ec34a6  numpy-1.19.4-cp39-cp39-manylinux1_x86_64.whl
4d4e5f147fe6fdedbdde4df9eaf2a4b1  numpy-1.19.4-cp39-cp39-manylinux2010_i686.whl
5ac2071e995ff4fc066741b1edcc159c  numpy-1.19.4-cp39-cp39-manylinux2010_x86_64.whl
5d678c6cc45ee3ee976e8b3b2ebe9c13  numpy-1.19.4-cp39-cp39-manylinux2014_aarch64.whl
7bc02e21133a1b82994c81c7521156a8  numpy-1.19.4-cp39-cp39-win32.whl
55c735347e8fb2ce3674243b38b3cee3  numpy-1.19.4-cp39-cp39-win_amd64.whl
673234a8dc2d3d3912c24c64aef6263e  numpy-1.19.4-pp36-pypy36_pp73-manylinux2010_x86_64.whl
a25e91ea62ffd37ccf8e0d917484962c  numpy-1.19.4.tar.gz
d40f6fcf611ab40eed4ff90606e05307  numpy-1.19.4.zip
SHA256
e9b30d4bd69498fc0c3fe9db5f62fffbb06b8eb9321f92cc970f2969be5e3949  numpy-1.19.4-cp36-cp36m-macosx_10_9_x86_64.whl
fedbd128668ead37f33917820b704784aff695e0019309ad446a6d0b065b57e4  numpy-1.19.4-cp36-cp36m-manylinux1_i686.whl
8ece138c3a16db8c1ad38f52eb32be6086cc72f403150a79336eb2045723a1ad  numpy-1.19.4-cp36-cp36m-manylinux1_x86_64.whl
64324f64f90a9e4ef732be0928be853eee378fd6a01be21a0a8469c4f2682c83  numpy-1.19.4-cp36-cp36m-manylinux2010_i686.whl
ad6f2ff5b1989a4899bf89800a671d71b1612e5ff40866d1f4d8bcf48d4e5764  numpy-1.19.4-cp36-cp36m-manylinux2010_x86_64.whl
d6c7bb82883680e168b55b49c70af29b84b84abb161cbac2800e8fcb6f2109b6  numpy-1.19.4-cp36-cp36m-manylinux2014_aarch64.whl
13d166f77d6dc02c0a73c1101dd87fdf01339febec1030bd810dcd53fff3b0f1  numpy-1.19.4-cp36-cp36m-win32.whl
448ebb1b3bf64c0267d6b09a7cba26b5ae61b6d2dbabff7c91b660c7eccf2bdb  numpy-1.19.4-cp36-cp36m-win_amd64.whl
27d3f3b9e3406579a8af3a9f262f5339005dd25e0ecf3cf1559ff8a49ed5cbf2  numpy-1.19.4-cp37-cp37m-macosx_10_9_x86_64.whl
16c1b388cc31a9baa06d91a19366fb99ddbe1c7b205293ed072211ee5bac1ed2  numpy-1.19.4-cp37-cp37m-manylinux1_i686.whl
e5b6ed0f0b42317050c88022349d994fe72bfe35f5908617512cd8c8ef9da2a9  numpy-1.19.4-cp37-cp37m-manylinux1_x86_64.whl
18bed2bcb39e3f758296584337966e68d2d5ba6aab7e038688ad53c8f889f757  numpy-1.19.4-cp37-cp37m-manylinux2010_i686.whl
fe45becb4c2f72a0907c1d0246ea6449fe7a9e2293bb0e11c4e9a32bb0930a15  numpy-1.19.4-cp37-cp37m-manylinux2010_x86_64.whl
6d7593a705d662be5bfe24111af14763016765f43cb6923ed86223f965f52387  numpy-1.19.4-cp37-cp37m-manylinux2014_aarch64.whl
6ae6c680f3ebf1cf7ad1d7748868b39d9f900836df774c453c11c5440bc15b36  numpy-1.19.4-cp37-cp37m-win32.whl
9eeb7d1d04b117ac0d38719915ae169aa6b61fca227b0b7d198d43728f0c879c  numpy-1.19.4-cp37-cp37m-win_amd64.whl
cb1017eec5257e9ac6209ac172058c430e834d5d2bc21961dceeb79d111e5909  numpy-1.19.4-cp38-cp38-macosx_10_9_x86_64.whl
edb01671b3caae1ca00881686003d16c2209e07b7ef8b7639f1867852b948f7c  numpy-1.19.4-cp38-cp38-manylinux1_i686.whl
f29454410db6ef8126c83bd3c968d143304633d45dc57b51252afbd79d700893  numpy-1.19.4-cp38-cp38-manylinux1_x86_64.whl
ec149b90019852266fec2341ce1db513b843e496d5a8e8cdb5ced1923a92faab  numpy-1.19.4-cp38-cp38-manylinux2010_i686.whl
1aeef46a13e51931c0b1cf8ae1168b4a55ecd282e6688fdb0a948cc5a1d5afb9  numpy-1.19.4-cp38-cp38-manylinux2010_x86_64.whl
08308c38e44cc926bdfce99498b21eec1f848d24c302519e64203a8da99a97db  numpy-1.19.4-cp38-cp38-manylinux2014_aarch64.whl
5734bdc0342aba9dfc6f04920988140fb41234db42381cf7ccba64169f9fe7ac  numpy-1.19.4-cp38-cp38-win32.whl
09c12096d843b90eafd01ea1b3307e78ddd47a55855ad402b157b6c4862197ce  numpy-1.19.4-cp38-cp38-win_amd64.whl
e452dc66e08a4ce642a961f134814258a082832c78c90351b75c41ad16f79f63  numpy-1.19.4-cp39-cp39-macosx_10_9_x86_64.whl
a5d897c14513590a85774180be713f692df6fa8ecf6483e561a6d47309566f37  numpy-1.19.4-cp39-cp39-manylinux1_i686.whl
a09f98011236a419ee3f49cedc9ef27d7a1651df07810ae430a6b06576e0b414  numpy-1.19.4-cp39-cp39-manylinux1_x86_64.whl
50e86c076611212ca62e5a59f518edafe0c0730f7d9195fec718da1a5c2bb1fc  numpy-1.19.4-cp39-cp39-manylinux2010_i686.whl
f0d3929fe88ee1c155129ecd82f981b8856c5d97bcb0d5f23e9b4242e79d1de3  numpy-1.19.4-cp39-cp39-manylinux2010_x86_64.whl
c42c4b73121caf0ed6cd795512c9c09c52a7287b04d105d112068c1736d7c753  numpy-1.19.4-cp39-cp39-manylinux2014_aarch64.whl
8cac8790a6b1ddf88640a9267ee67b1aee7a57dfa2d2dd33999d080bc8ee3a0f  numpy-1.19.4-cp39-cp39-win32.whl
4377e10b874e653fe96985c05feed2225c912e328c8a26541f7fc600fb9c637b  numpy-1.19.4-cp39-cp39-win_amd64.whl
2a2740aa9733d2e5b2dfb33639d98a64c3b0f24765fed86b0fd2aec07f6a0a08  numpy-1.19.4-pp36-pypy36_pp73-manylinux2010_x86_64.whl
fe836a685d6838dbb3f603caef01183ea98e88febf4ce956a2ea484a75378413  numpy-1.19.4.tar.gz
141ec3a3300ab89c7f2b0775289954d193cc8edb621ea05f99db9cb181530512  numpy-1.19.4.zip

1.19.3

2 years ago
NumPy 1.19.3 Release Notes

NumPy 1.19.3 is a small maintenace release with two major improvements:

  • Python 3.9 binary wheels on all supported platforms.
  • OpenBLAS fixes for Windows 10 version 2004 fmod bug.

This release supports Python 3.6-3.9 and is linked with OpenBLAS 3.7 to avoid some of the fmod problems on Windows 10 version 2004. Microsoft is aware of the problem and users should upgrade when the fix becomes available, the fix here is limited in scope.

Contributors

A total of 8 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Chris Brown +
  • Daniel Vanzo +
  • E. Madison Bray +
  • Hugo van Kemenade +
  • Ralf Gommers
  • Sebastian Berg
  • \@danbeibei +
Pull requests merged

A total of 10 pull requests were merged for this release.

  • #17298: BLD: set upper versions for build dependencies
  • #17336: BUG: Set deprecated fields to null in PyArray_InitArrFuncs
  • #17446: ENH: Warn on unsupported Python 3.10+
  • #17450: MAINT: Update test_requirements.txt.
  • #17522: ENH: Support for the NVIDIA HPC SDK nvfortran compiler
  • #17568: BUG: Cygwin Workaround for #14787 on affected platforms
  • #17647: BUG: Fix memory leak of buffer-info cache due to relaxed strides
  • #17652: MAINT: Backport openblas_support from master.
  • #17653: TST: Add Python 3.9 to the CI testing on Windows, Mac.
  • #17660: TST: Simplify source path names in test_extending.
Checksums MD5
e5c6c782b2f112c32dcc38242521ec83  numpy-1.19.3-cp36-cp36m-macosx_10_9_x86_64.whl
02323e4a20e14e6f7cded1c55f6a0afe  numpy-1.19.3-cp36-cp36m-manylinux1_i686.whl
95f19f0b6c60a755a8454f22eb15f4d6  numpy-1.19.3-cp36-cp36m-manylinux1_x86_64.whl
e66cf5ea007a9b567be2b1a901b3d2e0  numpy-1.19.3-cp36-cp36m-manylinux2010_i686.whl
8c7d422f147392bd31f9e5bfc41a170e  numpy-1.19.3-cp36-cp36m-manylinux2010_x86_64.whl
da02c95dcf0acf7688aebaba7ba2750d  numpy-1.19.3-cp36-cp36m-manylinux2014_aarch64.whl
96e6ec05aca18516c8a5961c17a0cac6  numpy-1.19.3-cp36-cp36m-win32.whl
5aa36a829a7ce0a89e6fea502d4fa9ea  numpy-1.19.3-cp36-cp36m-win_amd64.whl
9143b46601bc0457dd42795a71ccd2f1  numpy-1.19.3-cp37-cp37m-macosx_10_9_x86_64.whl
ebe09a5e206db0de65154ef75377f963  numpy-1.19.3-cp37-cp37m-manylinux1_i686.whl
96008f5c61368d4cd967ecd474525df6  numpy-1.19.3-cp37-cp37m-manylinux1_x86_64.whl
e61aaf0c971b667c5fed8b5de3773c6d  numpy-1.19.3-cp37-cp37m-manylinux2010_i686.whl
74a9f9dab6f00bcf56096eaa910c48b9  numpy-1.19.3-cp37-cp37m-manylinux2010_x86_64.whl
18d911f7f462ee98333de9579adde331  numpy-1.19.3-cp37-cp37m-manylinux2014_aarch64.whl
f29846178b82bd4e8db1685a6e911336  numpy-1.19.3-cp37-cp37m-win32.whl
d372be03d9e57e5e0e1372bf39391241  numpy-1.19.3-cp37-cp37m-win_amd64.whl
c64b6538e07bca9d84287eebb3f3a01b  numpy-1.19.3-cp38-cp38-macosx_10_9_x86_64.whl
8ac57941de395be58376611b211ea571  numpy-1.19.3-cp38-cp38-manylinux1_i686.whl
81cc1993ac8da61fea677a7eb49989e8  numpy-1.19.3-cp38-cp38-manylinux1_x86_64.whl
9b2b05db89068d1f3f32a231f3953355  numpy-1.19.3-cp38-cp38-manylinux2010_i686.whl
d26cfa5ad6f4aa6beb42246efc45f565  numpy-1.19.3-cp38-cp38-manylinux2010_x86_64.whl
969a13b40fceb950021e297d5427f329  numpy-1.19.3-cp38-cp38-manylinux2014_aarch64.whl
f978618640860e72b91c522f4e4085af  numpy-1.19.3-cp38-cp38-win32.whl
af140a06f216c4100dc93c4135003d10  numpy-1.19.3-cp38-cp38-win_amd64.whl
fda3cdf138516040cad3de66496cf670  numpy-1.19.3-cp39-cp39-macosx_10_9_x86_64.whl
f683469f18abc8c84aa831d9e78f4eb6  numpy-1.19.3-cp39-cp39-manylinux1_i686.whl
26414c3db751ca4735f744b239bf9703  numpy-1.19.3-cp39-cp39-manylinux1_x86_64.whl
3164ede05e3a5d28dd8bd66aee56928c  numpy-1.19.3-cp39-cp39-manylinux2010_i686.whl
fc0b0c73c5508247d21beb42cf3fff66  numpy-1.19.3-cp39-cp39-manylinux2010_x86_64.whl
75097b6e154469c63c50c8f7eaf52a89  numpy-1.19.3-cp39-cp39-manylinux2014_aarch64.whl
cd4363bde576c997bf737f420a85683a  numpy-1.19.3-cp39-cp39-win32.whl
54fa685b3d30585763f59a7b2be7279b  numpy-1.19.3-cp39-cp39-win_amd64.whl
ed5bd59a064fe5b95699c222dc7a4638  numpy-1.19.3-pp36-pypy36_pp73-manylinux2010_x86_64.whl
b2d13ca1b8ff89a9289174a86b835165  numpy-1.19.3.tar.gz
7f014f9964987b59083c8dc4d158d45a  numpy-1.19.3.zip
SHA256
942d2cdcb362739908c26ce8dd88db6e139d3fa829dd7452dd9ff02cba6b58b2  numpy-1.19.3-cp36-cp36m-macosx_10_9_x86_64.whl
efd656893171bbf1331beca4ec9f2e74358fc732a2084f664fd149cc4b3441d2  numpy-1.19.3-cp36-cp36m-manylinux1_i686.whl
1a307bdd3dd444b1d0daa356b5f4c7de2e24d63bdc33ea13ff718b8ec4c6a268  numpy-1.19.3-cp36-cp36m-manylinux1_x86_64.whl
9d08d84bb4128abb9fbd9f073e5c69f70e5dab991a9c42e5b4081ea5b01b5db0  numpy-1.19.3-cp36-cp36m-manylinux2010_i686.whl
7197ee0a25629ed782c7bd01871ee40702ffeef35bc48004bc2fdcc71e29ba9d  numpy-1.19.3-cp36-cp36m-manylinux2010_x86_64.whl
8edc4d687a74d0a5f8b9b26532e860f4f85f56c400b3a98899fc44acb5e27add  numpy-1.19.3-cp36-cp36m-manylinux2014_aarch64.whl
522053b731e11329dd52d258ddf7de5288cae7418b55e4b7d32f0b7e31787e9d  numpy-1.19.3-cp36-cp36m-win32.whl
eefc13863bf01583a85e8c1121a901cc7cb8f059b960c4eba30901e2e6aba95f  numpy-1.19.3-cp36-cp36m-win_amd64.whl
6ff88bcf1872b79002569c63fe26cd2cda614e573c553c4d5b814fb5eb3d2822  numpy-1.19.3-cp37-cp37m-macosx_10_9_x86_64.whl
e080087148fd70469aade2abfeadee194357defd759f9b59b349c6192aba994c  numpy-1.19.3-cp37-cp37m-manylinux1_i686.whl
50f68ebc439821b826823a8da6caa79cd080dee2a6d5ab9f1163465a060495ed  numpy-1.19.3-cp37-cp37m-manylinux1_x86_64.whl
b9074d062d30c2779d8af587924f178a539edde5285d961d2dfbecbac9c4c931  numpy-1.19.3-cp37-cp37m-manylinux2010_i686.whl
463792a249a81b9eb2b63676347f996d3f0082c2666fd0604f4180d2e5445996  numpy-1.19.3-cp37-cp37m-manylinux2010_x86_64.whl
ea6171d2d8d648dee717457d0f75db49ad8c2f13100680e284d7becf3dc311a6  numpy-1.19.3-cp37-cp37m-manylinux2014_aarch64.whl
0ee77786eebbfa37f2141fd106b549d37c89207a0d01d8852fde1c82e9bfc0e7  numpy-1.19.3-cp37-cp37m-win32.whl
271139653e8b7a046d11a78c0d33bafbddd5c443a5b9119618d0652a4eb3a09f  numpy-1.19.3-cp37-cp37m-win_amd64.whl
e983cbabe10a8989333684c98fdc5dd2f28b236216981e0c26ed359aaa676772  numpy-1.19.3-cp38-cp38-macosx_10_9_x86_64.whl
d78294f1c20f366cde8a75167f822538a7252b6e8b9d6dbfb3bdab34e7c1929e  numpy-1.19.3-cp38-cp38-manylinux1_i686.whl
199bebc296bd8a5fc31c16f256ac873dd4d5b4928dfd50e6c4995570fc71a8f3  numpy-1.19.3-cp38-cp38-manylinux1_x86_64.whl
dffed17848e8b968d8d3692604e61881aa6ef1f8074c99e81647ac84f6038535  numpy-1.19.3-cp38-cp38-manylinux2010_i686.whl
5ea4401ada0d3988c263df85feb33818dc995abc85b8125f6ccb762009e7bc68  numpy-1.19.3-cp38-cp38-manylinux2010_x86_64.whl
604d2e5a31482a3ad2c88206efd43d6fcf666ada1f3188fd779b4917e49b7a98  numpy-1.19.3-cp38-cp38-manylinux2014_aarch64.whl
a2daea1cba83210c620e359de2861316f49cc7aea8e9a6979d6cb2ddab6dda8c  numpy-1.19.3-cp38-cp38-win32.whl
dfdc8b53aa9838b9d44ed785431ca47aa3efaa51d0d5dd9c412ab5247151a7c4  numpy-1.19.3-cp38-cp38-win_amd64.whl
9f7f56b5e85b08774939622b7d45a5d00ff511466522c44fc0756ac7692c00f2  numpy-1.19.3-cp39-cp39-macosx_10_9_x86_64.whl
8802d23e4895e0c65e418abe67cdf518aa5cbb976d97f42fd591f921d6dffad0  numpy-1.19.3-cp39-cp39-manylinux1_i686.whl
c4aa79993f5d856765819a3651117520e41ac3f89c3fc1cb6dee11aa562df6da  numpy-1.19.3-cp39-cp39-manylinux1_x86_64.whl
51e8d2ae7c7e985c7bebf218e56f72fa93c900ad0c8a7d9fbbbf362f45710f69  numpy-1.19.3-cp39-cp39-manylinux2010_i686.whl
50d3513469acf5b2c0406e822d3f314d7ac5788c2b438c24e5dd54d5a81ef522  numpy-1.19.3-cp39-cp39-manylinux2010_x86_64.whl
741d95eb2b505bb7a99fbf4be05fa69f466e240c2b4f2d3ddead4f1b5f82a5a5  numpy-1.19.3-cp39-cp39-manylinux2014_aarch64.whl
1ea7e859f16e72ab81ef20aae69216cfea870676347510da9244805ff9670170  numpy-1.19.3-cp39-cp39-win32.whl
83af653bb92d1e248ccf5fdb05ccc934c14b936bcfe9b917dc180d3f00250ac6  numpy-1.19.3-cp39-cp39-win_amd64.whl
9a0669787ba8c9d3bb5de5d9429208882fb47764aa79123af25c5edc4f5966b9  numpy-1.19.3-pp36-pypy36_pp73-manylinux2010_x86_64.whl
9179d259a9bc53ed7b153d31fc3156d1ca560d61079f53191cf177c3efc4a498  numpy-1.19.3.tar.gz
35bf5316af8dc7c7db1ad45bec603e5fb28671beb98ebd1d65e8059efcfd3b72  numpy-1.19.3.zip

1.19.2

2 years ago
NumPy 1.19.2 Release Notes

NumPy 1.19.2 fixes several bugs, prepares for the upcoming Cython 3.x release. and pins setuptools to keep distutils working while upstream modifications are ongoing. The aarch64 wheels are built with the latest manylinux2014 release that fixes the problem of differing page sizes used by different linux distros.

This release supports Python 3.6-3.8. Cython >= 0.29.21 needs to be used when building with Python 3.9 for testing purposes.

There is a known problem with Windows 10 version=2004 and OpenBLAS svd that we are trying to debug. If you are running that Windows version you should use a NumPy version that links to the MKL library, earlier Windows versions are fine.

Improvements Add NumPy declarations for Cython 3.0 and later

The pxd declarations for Cython 3.0 were improved to avoid using deprecated NumPy C-API features. Extension modules built with Cython 3.0+ that use NumPy can now set the C macro NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION to avoid C compiler warnings about deprecated API usage.

Contributors

A total of 8 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Matti Picus
  • Pauli Virtanen
  • Philippe Ombredanne +
  • Sebastian Berg
  • Stefan Behnel +
  • Stephan Loyd +
  • Zac Hatfield-Dodds
Pull requests merged

A total of 9 pull requests were merged for this release.

  • #16959: TST: Change aarch64 to arm64 in travis.yml.
  • #16998: MAINT: Configure hypothesis in np.test() for determinism,...
  • #17000: BLD: pin setuptools \< 49.2.0
  • #17015: ENH: Add NumPy declarations to be used by Cython 3.0+
  • #17125: BUG: Remove non-threadsafe sigint handling from fft calculation
  • #17243: BUG: core: fix ilp64 blas dot/vdot/... for strides > int32 max
  • #17244: DOC: Use SPDX license expressions with correct license
  • #17245: DOC: Fix the link to the quick-start in the old API functions
  • #17272: BUG: fix pickling of arrays larger than 2GiB
Checksums MD5
b74295cbb5b1c98f46f26e13c0fca0ea  numpy-1.19.2-cp36-cp36m-macosx_10_9_x86_64.whl
3e307eca6c448bbe30e4c1dc99824642  numpy-1.19.2-cp36-cp36m-manylinux1_i686.whl
bfe6c2053a7a792097df912d1175ef7e  numpy-1.19.2-cp36-cp36m-manylinux1_x86_64.whl
3b61953b421460abc7d2ecb4df4060bc  numpy-1.19.2-cp36-cp36m-manylinux2010_i686.whl
7c442b7c5af62bd5be669bf6c360e114  numpy-1.19.2-cp36-cp36m-manylinux2010_x86_64.whl
f6eaf46804f0d66c123fa7ff728b178e  numpy-1.19.2-cp36-cp36m-manylinux2014_aarch64.whl
30bbe0bcd774ab483c7494d1cf827199  numpy-1.19.2-cp36-cp36m-win32.whl
cf54372ccde7de333d7b69cd16abfa70  numpy-1.19.2-cp36-cp36m-win_amd64.whl
285d0fc2986bf4a050523d98f47f2175  numpy-1.19.2-cp37-cp37m-macosx_10_9_x86_64.whl
a0901b44347ba39154058a26a9fc8e77  numpy-1.19.2-cp37-cp37m-manylinux1_i686.whl
21bfe38bdb317ad4af4959279dd90fde  numpy-1.19.2-cp37-cp37m-manylinux1_x86_64.whl
ec32c124ace9c08399e88b8eca6d7475  numpy-1.19.2-cp37-cp37m-manylinux2010_i686.whl
0d5cae15043a8172a1b8a478b7c98119  numpy-1.19.2-cp37-cp37m-manylinux2010_x86_64.whl
c7e9905e721dc31a666f59e30e37aa0d  numpy-1.19.2-cp37-cp37m-manylinux2014_aarch64.whl
ad32d083e641f2cf1a50fe821f3673a7  numpy-1.19.2-cp37-cp37m-win32.whl
a243b3e844507e424e828430010612c1  numpy-1.19.2-cp37-cp37m-win_amd64.whl
8f4d5df29d4fbf21bf8c4c976595214f  numpy-1.19.2-cp38-cp38-macosx_10_9_x86_64.whl
7b003b2fd18125f3956eb3a182ab0d7f  numpy-1.19.2-cp38-cp38-manylinux1_i686.whl
e7b8242ee7a79778c6df64772fde5885  numpy-1.19.2-cp38-cp38-manylinux1_x86_64.whl
e89e05d24b6f898005e03ba3f01c0641  numpy-1.19.2-cp38-cp38-manylinux2010_i686.whl
4cffe85a99bfe08d47d7f1f655142be4  numpy-1.19.2-cp38-cp38-manylinux2010_x86_64.whl
39e363f10f0a9af0a8506699118d3aaf  numpy-1.19.2-cp38-cp38-manylinux2014_aarch64.whl
13ccd230fefdd56a1679fd72fd0d8a55  numpy-1.19.2-cp38-cp38-win32.whl
a3d85f244058882b90140468b86f2e2e  numpy-1.19.2-cp38-cp38-win_amd64.whl
ef4cf0675f801a4bf339348fc1843f50  numpy-1.19.2-pp36-pypy36_pp73-manylinux2010_x86_64.whl
471156268abd8686e39e811003726ab1  numpy-1.19.2.tar.gz
2d011c5422596d742784ba5c2204bc5d  numpy-1.19.2.zip
SHA256
b594f76771bc7fc8a044c5ba303427ee67c17a09b36e1fa32bde82f5c419d17a  numpy-1.19.2-cp36-cp36m-macosx_10_9_x86_64.whl
e6ddbdc5113628f15de7e4911c02aed74a4ccff531842c583e5032f6e5a179bd  numpy-1.19.2-cp36-cp36m-manylinux1_i686.whl
3733640466733441295b0d6d3dcbf8e1ffa7e897d4d82903169529fd3386919a  numpy-1.19.2-cp36-cp36m-manylinux1_x86_64.whl
4339741994c775396e1a274dba3609c69ab0f16056c1077f18979bec2a2c2e6e  numpy-1.19.2-cp36-cp36m-manylinux2010_i686.whl
7c6646314291d8f5ea900a7ea9c4261f834b5b62159ba2abe3836f4fa6705526  numpy-1.19.2-cp36-cp36m-manylinux2010_x86_64.whl
7118f0a9f2f617f921ec7d278d981244ba83c85eea197be7c5a4f84af80a9c3c  numpy-1.19.2-cp36-cp36m-manylinux2014_aarch64.whl
9a3001248b9231ed73894c773142658bab914645261275f675d86c290c37f66d  numpy-1.19.2-cp36-cp36m-win32.whl
967c92435f0b3ba37a4257c48b8715b76741410467e2bdb1097e8391fccfae15  numpy-1.19.2-cp36-cp36m-win_amd64.whl
d526fa58ae4aead839161535d59ea9565863bb0b0bdb3cc63214613fb16aced4  numpy-1.19.2-cp37-cp37m-macosx_10_9_x86_64.whl
eb25c381d168daf351147713f49c626030dcff7a393d5caa62515d415a6071d8  numpy-1.19.2-cp37-cp37m-manylinux1_i686.whl
62139af94728d22350a571b7c82795b9d59be77fc162414ada6c8b6a10ef5d02  numpy-1.19.2-cp37-cp37m-manylinux1_x86_64.whl
0c66da1d202c52051625e55a249da35b31f65a81cb56e4c69af0dfb8fb0125bf  numpy-1.19.2-cp37-cp37m-manylinux2010_i686.whl
2117536e968abb7357d34d754e3733b0d7113d4c9f1d921f21a3d96dec5ff716  numpy-1.19.2-cp37-cp37m-manylinux2010_x86_64.whl
54045b198aebf41bf6bf4088012777c1d11703bf74461d70cd350c0af2182e45  numpy-1.19.2-cp37-cp37m-manylinux2014_aarch64.whl
aba1d5daf1144b956bc87ffb87966791f5e9f3e1f6fab3d7f581db1f5b598f7a  numpy-1.19.2-cp37-cp37m-win32.whl
addaa551b298052c16885fc70408d3848d4e2e7352de4e7a1e13e691abc734c1  numpy-1.19.2-cp37-cp37m-win_amd64.whl
58d66a6b3b55178a1f8a5fe98df26ace76260a70de694d99577ddeab7eaa9a9d  numpy-1.19.2-cp38-cp38-macosx_10_9_x86_64.whl
59f3d687faea7a4f7f93bd9665e5b102f32f3fa28514f15b126f099b7997203d  numpy-1.19.2-cp38-cp38-manylinux1_i686.whl
cebd4f4e64cfe87f2039e4725781f6326a61f095bc77b3716502bed812b385a9  numpy-1.19.2-cp38-cp38-manylinux1_x86_64.whl
c35a01777f81e7333bcf276b605f39c872e28295441c265cd0c860f4b40148c1  numpy-1.19.2-cp38-cp38-manylinux2010_i686.whl
d7ac33585e1f09e7345aa902c281bd777fdb792432d27fca857f39b70e5dd31c  numpy-1.19.2-cp38-cp38-manylinux2010_x86_64.whl
04c7d4ebc5ff93d9822075ddb1751ff392a4375e5885299445fcebf877f179d5  numpy-1.19.2-cp38-cp38-manylinux2014_aarch64.whl
51ee93e1fac3fe08ef54ff1c7f329db64d8a9c5557e6c8e908be9497ac76374b  numpy-1.19.2-cp38-cp38-win32.whl
1669ec8e42f169ff715a904c9b2105b6640f3f2a4c4c2cb4920ae8b2785dac65  numpy-1.19.2-cp38-cp38-win_amd64.whl
0bfd85053d1e9f60234f28f63d4a5147ada7f432943c113a11afcf3e65d9d4c8  numpy-1.19.2-pp36-pypy36_pp73-manylinux2010_x86_64.whl
74d0cf50aa28af81874aca3e67560945afd783b2a006913577d6cddc35a824a6  numpy-1.19.2.tar.gz
0d310730e1e793527065ad7dde736197b705d0e4c9999775f212b03c44a8484c  numpy-1.19.2.zip

1.19.1

3 years ago
NumPy 1.19.1 Release Notes

NumPy 1.19.1 fixes several bugs found in the 1.19.0 release, replaces several functions deprecated in the upcoming Python-3.9 release, has improved support for AIX, and has a number of development related updates to keep CI working with recent upstream changes.

This release supports Python 3.6-3.8. Cython >= 0.29.21 needs to be used when building with Python 3.9 for testing purposes.

Contributors

A total of 15 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Abhinav Reddy +
  • Anirudh Subramanian
  • Antonio Larrosa +
  • Charles Harris
  • Chunlin Fang
  • Eric Wieser
  • Etienne Guesnet +
  • Kevin Sheppard
  • Matti Picus
  • Raghuveer Devulapalli
  • Roman Yurchak
  • Ross Barnowski
  • Sayed Adel
  • Sebastian Berg
  • Tyler Reddy
Pull requests merged

A total of 25 pull requests were merged for this release.

  • #16649: MAINT, CI: disable Shippable cache
  • #16652: MAINT: Replace PyUString_GET_SIZE with PyUnicode_GetLength.
  • #16654: REL: Fix outdated docs link
  • #16656: BUG: raise IEEE exception on AIX
  • #16672: BUG: Fix bug in AVX complex absolute while processing array of...
  • #16693: TST: Add extra debugging information to CPU features detection
  • #16703: BLD: Add CPU entry for Emscripten / WebAssembly
  • #16705: TST: Disable Python 3.9-dev testing.
  • #16714: MAINT: Disable use_hugepages in case of ValueError
  • #16724: BUG: Fix PyArray_SearchSorted signature.
  • #16768: MAINT: Fixes for deprecated functions in scalartypes.c.src
  • #16772: MAINT: Remove unneeded call to PyUnicode_READY
  • #16776: MAINT: Fix deprecated functions in scalarapi.c
  • #16779: BLD, ENH: Add RPATH support for AIX
  • #16780: BUG: Fix default fallback in genfromtxt
  • #16784: BUG: Added missing return after raising error in methods.c
  • #16795: BLD: update cython to 0.29.21
  • #16832: MAINT: setuptools 49.2.0 emits a warning, avoid it
  • #16872: BUG: Validate output size in bin- and multinomial
  • #16875: BLD, MAINT: Pin setuptools
  • #16904: DOC: Reconstruct Testing Guideline.
  • #16905: TST, BUG: Re-raise MemoryError exception in test_large_zip\'s...
  • #16906: BUG, DOC: Fix bad MPL kwarg.
  • #16916: BUG: Fix string/bytes to complex assignment
  • #16922: REL: Prepare for NumPy 1.19.1 release
Checksums MD5
a57df319841a487b22b932aa99562fd8  numpy-1.19.1-cp36-cp36m-macosx_10_9_x86_64.whl
c86be0ba1efc221cdd3aba05c21ab7a6  numpy-1.19.1-cp36-cp36m-manylinux1_i686.whl
09bb5d4ff277bc2caddc107af963f006  numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl
c150ffb56704ff319e8ea525773de49e  numpy-1.19.1-cp36-cp36m-manylinux2010_i686.whl
e7c22cfc5956330df8fc107968472e28  numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl
9255520a51c6aa591489f68ac7a4cb0e  numpy-1.19.1-cp36-cp36m-manylinux2014_aarch64.whl
7de3e77a0cda438724e1d8f312805742  numpy-1.19.1-cp36-cp36m-win32.whl
d6d00a2e7b5bbfa7f5f097e8f99d17a7  numpy-1.19.1-cp36-cp36m-win_amd64.whl
c8bc9f328f3a89ab35c374e9cf36dd80  numpy-1.19.1-cp37-cp37m-macosx_10_9_x86_64.whl
8e2eb1614b6a7ce286a5ddf39805564c  numpy-1.19.1-cp37-cp37m-manylinux1_i686.whl
884540e9a94a9da88cd35311a40e1f98  numpy-1.19.1-cp37-cp37m-manylinux1_x86_64.whl
c8dea76ce437f9795a2c38fc3a94cc64  numpy-1.19.1-cp37-cp37m-manylinux2010_i686.whl
fceff6d052e0729e0bc4725d415a0424  numpy-1.19.1-cp37-cp37m-manylinux2010_x86_64.whl
8a40347a7aa0a78ad652761b18646b94  numpy-1.19.1-cp37-cp37m-manylinux2014_aarch64.whl
6f83733af7f25219b1309ed6e2125b40  numpy-1.19.1-cp37-cp37m-win32.whl
5ffe9aaa1be9790546bf0805349d11de  numpy-1.19.1-cp37-cp37m-win_amd64.whl
9fc17dd30d41000be08a5e76bda7cd13  numpy-1.19.1-cp38-cp38-macosx_10_9_x86_64.whl
e164a68bb255e40835243843fd748786  numpy-1.19.1-cp38-cp38-manylinux1_i686.whl
831327c74d9d0c69adba8c626e09a842  numpy-1.19.1-cp38-cp38-manylinux1_x86_64.whl
8d5cfc3f45d07874d427e9d62dfe6b0d  numpy-1.19.1-cp38-cp38-manylinux2010_i686.whl
08a1030ceea2f30f51e6c39264aec2e3  numpy-1.19.1-cp38-cp38-manylinux2010_x86_64.whl
a4dab4ffba3b1b2600400f89ab065112  numpy-1.19.1-cp38-cp38-manylinux2014_aarch64.whl
3b7770f38ed195e24692d6581e4634a1  numpy-1.19.1-cp38-cp38-win32.whl
8ec6183c736b4eacec8de80c98261af1  numpy-1.19.1-cp38-cp38-win_amd64.whl
a15c1aec844788f6e55c1da12f6bfa86  numpy-1.19.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl
bb6f87f7b2d15a2e2a983b972afbcde5  numpy-1.19.1.tar.gz
2ccca1881b2766040149629614d22a3f  numpy-1.19.1.zip
SHA256
b1cca51512299841bf69add3b75361779962f9cee7d9ee3bb446d5982e925b69  numpy-1.19.1-cp36-cp36m-macosx_10_9_x86_64.whl
c9591886fc9cbe5532d5df85cb8e0cc3b44ba8ce4367bd4cf1b93dc19713da72  numpy-1.19.1-cp36-cp36m-manylinux1_i686.whl
cf1347450c0b7644ea142712619533553f02ef23f92f781312f6a3553d031fc7  numpy-1.19.1-cp36-cp36m-manylinux1_x86_64.whl
ed8a311493cf5480a2ebc597d1e177231984c818a86875126cfd004241a73c3e  numpy-1.19.1-cp36-cp36m-manylinux2010_i686.whl
3673c8b2b29077f1b7b3a848794f8e11f401ba0b71c49fbd26fb40b71788b132  numpy-1.19.1-cp36-cp36m-manylinux2010_x86_64.whl
56ef7f56470c24bb67fb43dae442e946a6ce172f97c69f8d067ff8550cf782ff  numpy-1.19.1-cp36-cp36m-manylinux2014_aarch64.whl
aaf42a04b472d12515debc621c31cf16c215e332242e7a9f56403d814c744624  numpy-1.19.1-cp36-cp36m-win32.whl
082f8d4dd69b6b688f64f509b91d482362124986d98dc7dc5f5e9f9b9c3bb983  numpy-1.19.1-cp36-cp36m-win_amd64.whl
e4f6d3c53911a9d103d8ec9518190e52a8b945bab021745af4939cfc7c0d4a9e  numpy-1.19.1-cp37-cp37m-macosx_10_9_x86_64.whl
5b6885c12784a27e957294b60f97e8b5b4174c7504665333c5e94fbf41ae5d6a  numpy-1.19.1-cp37-cp37m-manylinux1_i686.whl
1bc0145999e8cb8aed9d4e65dd8b139adf1919e521177f198529687dbf613065  numpy-1.19.1-cp37-cp37m-manylinux1_x86_64.whl
5a936fd51049541d86ccdeef2833cc89a18e4d3808fe58a8abeb802665c5af93  numpy-1.19.1-cp37-cp37m-manylinux2010_i686.whl
ef71a1d4fd4858596ae80ad1ec76404ad29701f8ca7cdcebc50300178db14dfc  numpy-1.19.1-cp37-cp37m-manylinux2010_x86_64.whl
b9792b0ac0130b277536ab8944e7b754c69560dac0415dd4b2dbd16b902c8954  numpy-1.19.1-cp37-cp37m-manylinux2014_aarch64.whl
b12e639378c741add21fbffd16ba5ad25c0a1a17cf2b6fe4288feeb65144f35b  numpy-1.19.1-cp37-cp37m-win32.whl
8343bf67c72e09cfabfab55ad4a43ce3f6bf6e6ced7acf70f45ded9ebb425055  numpy-1.19.1-cp37-cp37m-win_amd64.whl
e45f8e981a0ab47103181773cc0a54e650b2aef8c7b6cd07405d0fa8d869444a  numpy-1.19.1-cp38-cp38-macosx_10_9_x86_64.whl
667c07063940e934287993366ad5f56766bc009017b4a0fe91dbd07960d0aba7  numpy-1.19.1-cp38-cp38-manylinux1_i686.whl
480fdd4dbda4dd6b638d3863da3be82873bba6d32d1fc12ea1b8486ac7b8d129  numpy-1.19.1-cp38-cp38-manylinux1_x86_64.whl
935c27ae2760c21cd7354402546f6be21d3d0c806fffe967f745d5f2de5005a7  numpy-1.19.1-cp38-cp38-manylinux2010_i686.whl
309cbcfaa103fc9a33ec16d2d62569d541b79f828c382556ff072442226d1968  numpy-1.19.1-cp38-cp38-manylinux2010_x86_64.whl
7ed448ff4eaffeb01094959b19cbaf998ecdee9ef9932381420d514e446601cd  numpy-1.19.1-cp38-cp38-manylinux2014_aarch64.whl
de8b4a9b56255797cbddb93281ed92acbc510fb7b15df3f01bd28f46ebc4edae  numpy-1.19.1-cp38-cp38-win32.whl
92feb989b47f83ebef246adabc7ff3b9a59ac30601c3f6819f8913458610bdcc  numpy-1.19.1-cp38-cp38-win_amd64.whl
e1b1dc0372f530f26a03578ac75d5e51b3868b9b76cd2facba4c9ee0eb252ab1  numpy-1.19.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl
1396e6c3d20cbfc119195303b0272e749610b7042cc498be4134f013e9a3215c  numpy-1.19.1.tar.gz
b8456987b637232602ceb4d663cb34106f7eb780e247d51a260b84760fd8f491  numpy-1.19.1.zip

1.19.0

3 years ago
NumPy 1.19.0 Release Notes

This NumPy release is marked by the removal of much technical debt: support for Python 2 has been removed, many deprecations have been expired, and documentation has been improved. The polishing of the random module continues apace with bug fixes and better usability from Cython.

The Python versions supported for this release are 3.6-3.8. Downstream developers should use Cython >= 0.29.16 for Python 3.8 support and OpenBLAS >= 3.7 to avoid problems on the Skylake architecture.

Highlights
  • Code compatibility with Python versions \< 3.6 (including Python 2) was dropped from both the python and C code. The shims in numpy.compat will remain to support third-party packages, but they may be deprecated in a future release. Note that 1.19.x will not compile with earlier versions of Python due to the use of f-strings.

    (gh-15233)

Expired deprecations numpy.insert and numpy.delete can no longer be passed an axis on 0d arrays

This concludes a deprecation from 1.9, where when an axis argument was passed to a call to ~numpy.insert and ~numpy.delete on a 0d array, the axis and obj argument and indices would be completely ignored. In these cases, insert(arr, "nonsense", 42, axis=0) would actually overwrite the entire array, while delete(arr, "nonsense", axis=0) would be arr.copy()

Now passing axis on a 0d array raises ~numpy.AxisError.

(gh-15802)

numpy.delete no longer ignores out-of-bounds indices

This concludes deprecations from 1.8 and 1.9, where np.delete would ignore both negative and out-of-bounds items in a sequence of indices. This was at odds with its behavior when passed a single index.

Now out-of-bounds items throw IndexError, and negative items index from the end.

(gh-15804)

numpy.insert and numpy.delete no longer accept non-integral indices

This concludes a deprecation from 1.9, where sequences of non-integers indices were allowed and cast to integers. Now passing sequences of non-integral indices raises IndexError, just like it does when passing a single non-integral scalar.

(gh-15805)

numpy.delete no longer casts boolean indices to integers

This concludes a deprecation from 1.8, where np.delete would cast boolean arrays and scalars passed as an index argument into integer indices. The behavior now is to treat boolean arrays as a mask, and to raise an error on boolean scalars.

(gh-15815)

Compatibility notes Changed random variate stream from numpy.random.Generator.dirichlet

A bug in the generation of random variates for the Dirichlet distribution with small \'alpha\' values was fixed by using a different algorithm when max(alpha) < 0.1. Because of the change, the stream of variates generated by dirichlet in this case will be different from previous releases.

(gh-14924)

Scalar promotion in PyArray_ConvertToCommonType

The promotion of mixed scalars and arrays in PyArray_ConvertToCommonType has been changed to adhere to those used by np.result_type. This means that input such as (1000, np.array([1], dtype=np.uint8))) will now return uint16 dtypes. In most cases the behaviour is unchanged. Note that the use of this C-API function is generally discouraged. This also fixes np.choose to behave the same way as the rest of NumPy in this respect.

(gh-14933)

Fasttake and fastputmask slots are deprecated and NULL\'ed

The fasttake and fastputmask slots are now never used and must always be set to NULL. This will result in no change in behaviour. However, if a user dtype should set one of these a DeprecationWarning will be given.

(gh-14942)

np.ediff1d casting behaviour with to_end and to_begin

np.ediff1d now uses the "same_kind" casting rule for its additional to_end and to_begin arguments. This ensures type safety except when the input array has a smaller integer type than to_begin or to_end. In rare cases, the behaviour will be more strict than it was previously in 1.16 and 1.17. This is necessary to solve issues with floating point NaN.

(gh-14981)

Converting of empty array-like objects to NumPy arrays

Objects with len(obj) == 0 which implement an \"array-like\" interface, meaning an object implementing obj.__array__(), obj.__array_interface__, obj.__array_struct__, or the python buffer interface and which are also sequences (i.e. Pandas objects) will now always retain there shape correctly when converted to an array. If such an object has a shape of (0, 1) previously, it could be converted into an array of shape (0,) (losing all dimensions after the first 0).

(gh-14995)

Removed multiarray.int_asbuffer

As part of the continued removal of Python 2 compatibility, multiarray.int_asbuffer was removed. On Python 3, it threw a NotImplementedError and was unused internally. It is expected that there are no downstream use cases for this method with Python 3.

(gh-15229)

numpy.distutils.compat has been removed

This module contained only the function get_exception(), which was used as:

try:
    ...
except Exception:
    e = get_exception()

Its purpose was to handle the change in syntax introduced in Python 2.6, from except Exception, e: to except Exception as e:, meaning it was only necessary for codebases supporting Python 2.5 and older.

(gh-15255)

issubdtype no longer interprets float as np.floating

numpy.issubdtype had a FutureWarning since NumPy 1.14 which has expired now. This means that certain input where the second argument was neither a datatype nor a NumPy scalar type (such as a string or a python type like int or float) will now be consistent with passing in np.dtype(arg2).type. This makes the result consistent with expectations and leads to a false result in some cases which previously returned true.

(gh-15773)

Change output of round on scalars to be consistent with Python

Output of the __round__ dunder method and consequently the Python built-in round has been changed to be a Python int to be consistent with calling it on Python float objects when called with no arguments. Previously, it would return a scalar of the np.dtype that was passed in.

(gh-15840)

The numpy.ndarray constructor no longer interprets strides=() as strides=None

The former has changed to have the expected meaning of setting numpy.ndarray.strides to (), while the latter continues to result in strides being chosen automatically.

(gh-15882)

C-Level string to datetime casts changed

The C-level casts from strings were simplified. This changed also fixes string to datetime and timedelta casts to behave correctly (i.e. like Python casts using string_arr.astype("M8") while previously the cast would behave like string_arr.astype(np.int_).astype("M8"). This only affects code using low-level C-API to do manual casts (not full array casts) of single scalar values or using e.g. PyArray_GetCastFunc, and should thus not affect the vast majority of users.

(gh-16068)

SeedSequence with small seeds no longer conflicts with spawning

Small seeds (less than 2**96) were previously implicitly 0-padded out to 128 bits, the size of the internal entropy pool. When spawned, the spawn key was concatenated before the 0-padding. Since the first spawn key is (0,), small seeds before the spawn created the same states as the first spawned SeedSequence. Now, the seed is explicitly 0-padded out to the internal pool size before concatenating the spawn key. Spawned SeedSequences will produce different results than in the previous release. Unspawned SeedSequences will still produce the same results.

(gh-16551)

Deprecations Deprecate automatic dtype=object for ragged input

Calling np.array([[1, [1, 2, 3]]) will issue a DeprecationWarning as per NEP 34. Users should explicitly use dtype=object to avoid the warning.

(gh-15119)

Passing shape=0 to factory functions in numpy.rec is deprecated

0 is treated as a special case and is aliased to None in the functions:

  • numpy.core.records.fromarrays
  • numpy.core.records.fromrecords
  • numpy.core.records.fromstring
  • numpy.core.records.fromfile

In future, 0 will not be special cased, and will be treated as an array length like any other integer.

(gh-15217)

Deprecation of probably unused C-API functions

The following C-API functions are probably unused and have been deprecated:

  • PyArray_GetArrayParamsFromObject
  • PyUFunc_GenericFunction
  • PyUFunc_SetUsesArraysAsData

In most cases PyArray_GetArrayParamsFromObject should be replaced by converting to an array, while PyUFunc_GenericFunction can be replaced with PyObject_Call (see documentation for details).

(gh-15427)

Converting certain types to dtypes is Deprecated

The super classes of scalar types, such as np.integer, np.generic, or np.inexact will now give a deprecation warning when converted to a dtype (or used in a dtype keyword argument). The reason for this is that np.integer is converted to np.int_, while it would be expected to represent any integer (e.g. also int8, int16, etc. For example, dtype=np.floating is currently identical to dtype=np.float64, even though also np.float32 is a subclass of np.floating.

(gh-15534)

Deprecation of round for np.complexfloating scalars

Output of the __round__ dunder method and consequently the Python built-in round has been deprecated on complex scalars. This does not affect np.round.

(gh-15840)

numpy.ndarray.tostring() is deprecated in favor of tobytes()

~numpy.ndarray.tobytes has existed since the 1.9 release, but until this release ~numpy.ndarray.tostring emitted no warning. The change to emit a warning brings NumPy in line with the builtin array.array methods of the same name.

(gh-15867)

C API changes Better support for const dimensions in API functions

The following functions now accept a constant array of npy_intp:

  • PyArray_BroadcastToShape
  • PyArray_IntTupleFromIntp
  • PyArray_OverflowMultiplyList

Previously the caller would have to cast away the const-ness to call these functions.

(gh-15251)

Const qualify UFunc inner loops

UFuncGenericFunction now expects pointers to const dimension and strides as arguments. This means inner loops may no longer modify either dimension or strides. This change leads to an incompatible-pointer-types warning forcing users to either ignore the compiler warnings or to const qualify their own loop signatures.

(gh-15355)

New Features numpy.frompyfunc now accepts an identity argument

This allows the `numpy.ufunc.identity{.interpreted-text role="attr"}[ attribute to be set on the resulting ufunc, meaning it can be used for empty and multi-dimensional calls to :meth:]{.title-ref}[numpy.ufunc.reduce]{.title-ref}`.

(gh-8255)

np.str_ scalars now support the buffer protocol

np.str_ arrays are always stored as UCS4, so the corresponding scalars now expose this through the buffer interface, meaning memoryview(np.str_('test')) now works.

(gh-15385)

subok option for numpy.copy

A new kwarg, subok, was added to numpy.copy to allow users to toggle the behavior of numpy.copy with respect to array subclasses. The default value is False which is consistent with the behavior of numpy.copy for previous numpy versions. To create a copy that preserves an array subclass with numpy.copy, call np.copy(arr, subok=True). This addition better documents that the default behavior of numpy.copy differs from the numpy.ndarray.copy method which respects array subclasses by default.

(gh-15685)

numpy.linalg.multi_dot now accepts an out argument

out can be used to avoid creating unnecessary copies of the final product computed by numpy.linalg.multidot.

(gh-15715)

keepdims parameter for numpy.count_nonzero

The parameter keepdims was added to numpy.count_nonzero. The parameter has the same meaning as it does in reduction functions such as numpy.sum or numpy.mean.

(gh-15870)

equal_nan parameter for numpy.array_equal

The keyword argument equal_nan was added to numpy.array_equal. equal_nan is a boolean value that toggles whether or not nan values are considered equal in comparison (default is False). This matches API used in related functions such as numpy.isclose and numpy.allclose.

(gh-16128)

Improvements Improve detection of CPU features

Replace npy_cpu_supports which was a gcc specific mechanism to test support of AVX with more general functions npy_cpu_init and npy_cpu_have, and expose the results via a NPY_CPU_HAVE c-macro as well as a python-level __cpu_features__ dictionary.

(gh-13421)

Use 64-bit integer size on 64-bit platforms in fallback lapack_lite

Use 64-bit integer size on 64-bit platforms in the fallback LAPACK library, which is used when the system has no LAPACK installed, allowing it to deal with linear algebra for large arrays.

(gh-15218)

Use AVX512 intrinsic to implement np.exp when input is np.float64

Use AVX512 intrinsic to implement np.exp when input is np.float64, which can improve the performance of np.exp with np.float64 input 5-7x faster than before. The _multiarray_umath.so module has grown about 63 KB on linux64.

(gh-15648)

Ability to disable madvise hugepages

On Linux NumPy has previously added support for madavise hugepages which can improve performance for very large arrays. Unfortunately, on older Kernel versions this led to peformance regressions, thus by default the support has been disabled on kernels before version 4.6. To override the default, you can use the environment variable:

NUMPY_MADVISE_HUGEPAGE=0

or set it to 1 to force enabling support. Note that this only makes a difference if the operating system is set up to use madvise transparent hugepage.

(gh-15769)

numpy.einsum accepts NumPy int64 type in subscript list

There is no longer a type error thrown when numpy.einsum is passed a NumPy int64 array as its subscript list.

(gh-16080)

np.logaddexp2.identity changed to -inf

The ufunc ~numpy.logaddexp2 now has an identity of -inf, allowing it to be called on empty sequences. This matches the identity of ~numpy.logaddexp.

(gh-16102)

Changes Remove handling of extra argument to __array__

A code path and test have been in the code since NumPy 0.4 for a two-argument variant of __array__(dtype=None, context=None). It was activated when calling ufunc(op) or ufunc.reduce(op) if op.__array__ existed. However that variant is not documented, and it is not clear what the intention was for its use. It has been removed.

(gh-15118)

numpy.random._bit_generator moved to numpy.random.bit_generator

In order to expose numpy.random.BitGenerator and numpy.random.SeedSequence to Cython, the _bitgenerator module is now public as numpy.random.bit_generator

Cython access to the random distributions is provided via a pxd file

c_distributions.pxd provides access to the c functions behind many of the random distributions from Cython, making it convenient to use and extend them.

(gh-15463)

Fixed eigh and cholesky methods in numpy.random.multivariate_normal

Previously, when passing method='eigh' or method='cholesky', numpy.random.multivariate_normal produced samples from the wrong distribution. This is now fixed.

(gh-15872)

Fixed the jumping implementation in MT19937.jumped

This fix changes the stream produced from jumped MT19937 generators. It does not affect the stream produced using RandomState or MT19937 that are directly seeded.

The translation of the jumping code for the MT19937 contained a reversed loop ordering. MT19937.jumped matches the Makoto Matsumoto\'s original implementation of the Horner and Sliding Window jump methods.

(gh-16153)

Checksums MD5
17e9b15e5b54f6963da30e9de93437b8  numpy-1.19.0-cp36-cp36m-macosx_10_9_x86_64.whl
2117953099e3343e6ac642de66c7127f  numpy-1.19.0-cp36-cp36m-manylinux1_i686.whl
fe0d7f18fd5af93cb027fe0e2462b3bc  numpy-1.19.0-cp36-cp36m-manylinux1_x86_64.whl
23a76cbf0cec80d59d48f2342de13cb2  numpy-1.19.0-cp36-cp36m-manylinux2010_i686.whl
3b35908cd21ce6558ec61806bbc9efee  numpy-1.19.0-cp36-cp36m-manylinux2010_x86_64.whl
b35af24ffa550054aadb620f6afb7d67  numpy-1.19.0-cp36-cp36m-manylinux2014_aarch64.whl
5d2a0e9c23383abed01c2795c6e9f2c1  numpy-1.19.0-cp36-cp36m-win32.whl
e0548c4ec436abb249d2e59ed5fd727f  numpy-1.19.0-cp36-cp36m-win_amd64.whl
3f939fa2f3b2f881862f7e02a0116970  numpy-1.19.0-cp37-cp37m-macosx_10_9_x86_64.whl
012026c54f196b8f342e4b49cb4b9294  numpy-1.19.0-cp37-cp37m-manylinux1_i686.whl
27227fdd6329f098fc9a85e9d40b1916  numpy-1.19.0-cp37-cp37m-manylinux1_x86_64.whl
a471c34d7a07468c09696165eae0cd57  numpy-1.19.0-cp37-cp37m-manylinux2010_i686.whl
27af6195869cd518f5d2a71885f21806  numpy-1.19.0-cp37-cp37m-manylinux2010_x86_64.whl
62dbe6623e9aebd2bb1aef6d1e0f815d  numpy-1.19.0-cp37-cp37m-manylinux2014_aarch64.whl
760e6b5681eea93cf6c85bcd1a739068  numpy-1.19.0-cp37-cp37m-win32.whl
d75a6104a6cce3c669e2363470d567bc  numpy-1.19.0-cp37-cp37m-win_amd64.whl
09f870d54906d964bd0f93b22695f9ae  numpy-1.19.0-cp38-cp38-macosx_10_9_x86_64.whl
ea9f4248d9ba0c647e07427cb542c2bf  numpy-1.19.0-cp38-cp38-manylinux1_i686.whl
11b7a5b055bb1417c8935d267b7d88de  numpy-1.19.0-cp38-cp38-manylinux1_x86_64.whl
6f6dec62163fa21259b7157516cc9e84  numpy-1.19.0-cp38-cp38-manylinux2010_i686.whl
ca83ee74cbdac0ffe3ec2c8c79294d67  numpy-1.19.0-cp38-cp38-manylinux2010_x86_64.whl
560567c2b3017ed146c3d08b0a58cadb  numpy-1.19.0-cp38-cp38-manylinux2014_aarch64.whl
d160b64e914c5f2e4807943c83dae54a  numpy-1.19.0-cp38-cp38-win32.whl
4e563e6434af5b90f1f99d9b916b2525  numpy-1.19.0-cp38-cp38-win_amd64.whl
a26c769ffe249f02cb73e6fbec7ff9ca  numpy-1.19.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
d59aadf47354bd10c7b9996032ba4da0  numpy-1.19.0.tar.gz
3f5ce88a859302f0a1aceb5f75b563fc  numpy-1.19.0.zip
SHA256
63d971bb211ad3ca37b2adecdd5365f40f3b741a455beecba70fd0dde8b2a4cb  numpy-1.19.0-cp36-cp36m-macosx_10_9_x86_64.whl
b6aaeadf1e4866ca0fdf7bb4eed25e521ae21a7947c59f78154b24fc7abbe1dd  numpy-1.19.0-cp36-cp36m-manylinux1_i686.whl
13af0184177469192d80db9bd02619f6fa8b922f9f327e077d6f2a6acb1ce1c0  numpy-1.19.0-cp36-cp36m-manylinux1_x86_64.whl
356f96c9fbec59974a592452ab6a036cd6f180822a60b529a975c9467fcd5f23  numpy-1.19.0-cp36-cp36m-manylinux2010_i686.whl
fa1fe75b4a9e18b66ae7f0b122543c42debcf800aaafa0212aaff3ad273c2596  numpy-1.19.0-cp36-cp36m-manylinux2010_x86_64.whl
cbe326f6d364375a8e5a8ccb7e9cd73f4b2f6dc3b2ed205633a0db8243e2a96a  numpy-1.19.0-cp36-cp36m-manylinux2014_aarch64.whl
a2e3a39f43f0ce95204beb8fe0831199542ccab1e0c6e486a0b4947256215632  numpy-1.19.0-cp36-cp36m-win32.whl
7b852817800eb02e109ae4a9cef2beda8dd50d98b76b6cfb7b5c0099d27b52d4  numpy-1.19.0-cp36-cp36m-win_amd64.whl
d97a86937cf9970453c3b62abb55a6475f173347b4cde7f8dcdb48c8e1b9952d  numpy-1.19.0-cp37-cp37m-macosx_10_9_x86_64.whl
a86c962e211f37edd61d6e11bb4df7eddc4a519a38a856e20a6498c319efa6b0  numpy-1.19.0-cp37-cp37m-manylinux1_i686.whl
d34fbb98ad0d6b563b95de852a284074514331e6b9da0a9fc894fb1cdae7a79e  numpy-1.19.0-cp37-cp37m-manylinux1_x86_64.whl
658624a11f6e1c252b2cd170d94bf28c8f9410acab9f2fd4369e11e1cd4e1aaf  numpy-1.19.0-cp37-cp37m-manylinux2010_i686.whl
4d054f013a1983551254e2379385e359884e5af105e3efe00418977d02f634a7  numpy-1.19.0-cp37-cp37m-manylinux2010_x86_64.whl
26a45798ca2a4e168d00de75d4a524abf5907949231512f372b217ede3429e98  numpy-1.19.0-cp37-cp37m-manylinux2014_aarch64.whl
3c40c827d36c6d1c3cf413694d7dc843d50997ebffbc7c87d888a203ed6403a7  numpy-1.19.0-cp37-cp37m-win32.whl
be62aeff8f2f054eff7725f502f6228298891fd648dc2630e03e44bf63e8cee0  numpy-1.19.0-cp37-cp37m-win_amd64.whl
dd53d7c4a69e766e4900f29db5872f5824a06827d594427cf1a4aa542818b796  numpy-1.19.0-cp38-cp38-macosx_10_9_x86_64.whl
30a59fb41bb6b8c465ab50d60a1b298d1cd7b85274e71f38af5a75d6c475d2d2  numpy-1.19.0-cp38-cp38-manylinux1_i686.whl
df1889701e2dfd8ba4dc9b1a010f0a60950077fb5242bb92c8b5c7f1a6f2668a  numpy-1.19.0-cp38-cp38-manylinux1_x86_64.whl
33c623ef9ca5e19e05991f127c1be5aeb1ab5cdf30cb1c5cf3960752e58b599b  numpy-1.19.0-cp38-cp38-manylinux2010_i686.whl
26f509450db547e4dfa3ec739419b31edad646d21fb8d0ed0734188b35ff6b27  numpy-1.19.0-cp38-cp38-manylinux2010_x86_64.whl
7b57f26e5e6ee2f14f960db46bd58ffdca25ca06dd997729b1b179fddd35f5a3  numpy-1.19.0-cp38-cp38-manylinux2014_aarch64.whl
a8705c5073fe3fcc297fb8e0b31aa794e05af6a329e81b7ca4ffecab7f2b95ef  numpy-1.19.0-cp38-cp38-win32.whl
c2edbb783c841e36ca0fa159f0ae97a88ce8137fb3a6cd82eae77349ba4b607b  numpy-1.19.0-cp38-cp38-win_amd64.whl
8cde829f14bd38f6da7b2954be0f2837043e8b8d7a9110ec5e318ae6bf706610  numpy-1.19.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
153cf8b0176e57a611931981acfe093d2f7fef623b48f91176efa199798a6b90  numpy-1.19.0.tar.gz
76766cc80d6128750075378d3bb7812cf146415bd29b588616f72c943c00d598  numpy-1.19.0.zip

1.18.5

3 years ago
NumPy 1.18.5 Release Notes

This is a short release to allow pickle protocol=5 to be used in Python3.5. It is motivated by the recent backport of pickle5 to Python3.5.

The Python versions supported in this release are 3.5-3.8. Downstream developers should use Cython >= 0.29.15 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

Contributors

A total of 3 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Matti Picus
  • Siyuan Zhuang +
Pull requests merged

A total of 2 pull requests were merged for this release.

  • #16439: ENH: enable pickle protocol 5 support for python3.5
  • #16441: BUG: relpath fails for different drives on windows
Checksums MD5
f923519347ba9f6bca59dce0583bdbd5  numpy-1.18.5-cp35-cp35m-macosx_10_9_intel.whl
79990253bda9ffa2db75152e77c318e9  numpy-1.18.5-cp35-cp35m-manylinux1_i686.whl
d5bf77d6caf4f83ed871ab9e4f9d1f72  numpy-1.18.5-cp35-cp35m-manylinux1_x86_64.whl
2cc7cc1b1640d6b50c50d96a35624698  numpy-1.18.5-cp35-cp35m-win32.whl
5a93e72e30c56462492a29315e19c0cc  numpy-1.18.5-cp35-cp35m-win_amd64.whl
caef5b4785e5deb6891f118a49d48ccc  numpy-1.18.5-cp36-cp36m-macosx_10_9_x86_64.whl
402be8c771c2541c7ee936ef63c9ebc0  numpy-1.18.5-cp36-cp36m-manylinux1_i686.whl
259dbb8694209921d56ffb091ae42b5b  numpy-1.18.5-cp36-cp36m-manylinux1_x86_64.whl
9188a301a9640836322f2dc926640515  numpy-1.18.5-cp36-cp36m-win32.whl
acfa82d4e66601386dad19ad3a3983a5  numpy-1.18.5-cp36-cp36m-win_amd64.whl
bc1ebaa1ecf20f22b72cbb824c9cbc21  numpy-1.18.5-cp37-cp37m-macosx_10_9_x86_64.whl
97f27a6e2e6951cf8107132e7c628004  numpy-1.18.5-cp37-cp37m-manylinux1_i686.whl
f261237ab3d47b9b6e859bf240014a48  numpy-1.18.5-cp37-cp37m-manylinux1_x86_64.whl
08bdf2289600c5c728a2668b585fdd02  numpy-1.18.5-cp37-cp37m-win32.whl
8b793d97dae258d06e63c452a2684b16  numpy-1.18.5-cp37-cp37m-win_amd64.whl
2b9153362bf0e53574abc2df048a1578  numpy-1.18.5-cp38-cp38-macosx_10_9_x86_64.whl
1715c674b3070ccd90f56fa2cd48cce1  numpy-1.18.5-cp38-cp38-manylinux1_i686.whl
2347f759a1b8bc27423bb5ece6ae1c79  numpy-1.18.5-cp38-cp38-manylinux1_x86_64.whl
b66c03695208dd843b78acb32557a765  numpy-1.18.5-cp38-cp38-win32.whl
81c9e86442602529b3c52d4af7a515b7  numpy-1.18.5-cp38-cp38-win_amd64.whl
ca23173650ded5585f7030fee91005bf  numpy-1.18.5.tar.gz
0d426af04e17cd480ecf3cd70743eaf4  numpy-1.18.5.zip
SHA256
e91d31b34fc7c2c8f756b4e902f901f856ae53a93399368d9a0dc7be17ed2ca0  numpy-1.18.5-cp35-cp35m-macosx_10_9_intel.whl
7d42ab8cedd175b5ebcb39b5208b25ba104842489ed59fbb29356f671ac93583  numpy-1.18.5-cp35-cp35m-manylinux1_i686.whl
a78e438db8ec26d5d9d0e584b27ef25c7afa5a182d1bf4d05e313d2d6d515271  numpy-1.18.5-cp35-cp35m-manylinux1_x86_64.whl
a87f59508c2b7ceb8631c20630118cc546f1f815e034193dc72390db038a5cb3  numpy-1.18.5-cp35-cp35m-win32.whl
965df25449305092b23d5145b9bdaeb0149b6e41a77a7d728b1644b3c99277c1  numpy-1.18.5-cp35-cp35m-win_amd64.whl
ac792b385d81151bae2a5a8adb2b88261ceb4976dbfaaad9ce3a200e036753dc  numpy-1.18.5-cp36-cp36m-macosx_10_9_x86_64.whl
ef627986941b5edd1ed74ba89ca43196ed197f1a206a3f18cc9faf2fb84fd675  numpy-1.18.5-cp36-cp36m-manylinux1_i686.whl
f718a7949d1c4f622ff548c572e0c03440b49b9531ff00e4ed5738b459f011e8  numpy-1.18.5-cp36-cp36m-manylinux1_x86_64.whl
4064f53d4cce69e9ac613256dc2162e56f20a4e2d2086b1956dd2fcf77b7fac5  numpy-1.18.5-cp36-cp36m-win32.whl
b03b2c0badeb606d1232e5f78852c102c0a7989d3a534b3129e7856a52f3d161  numpy-1.18.5-cp36-cp36m-win_amd64.whl
a7acefddf994af1aeba05bbbafe4ba983a187079f125146dc5859e6d817df824  numpy-1.18.5-cp37-cp37m-macosx_10_9_x86_64.whl
cd49930af1d1e49a812d987c2620ee63965b619257bd76eaaa95870ca08837cf  numpy-1.18.5-cp37-cp37m-manylinux1_i686.whl
b39321f1a74d1f9183bf1638a745b4fd6fe80efbb1f6b32b932a588b4bc7695f  numpy-1.18.5-cp37-cp37m-manylinux1_x86_64.whl
cae14a01a159b1ed91a324722d746523ec757357260c6804d11d6147a9e53e3f  numpy-1.18.5-cp37-cp37m-win32.whl
0172304e7d8d40e9e49553901903dc5f5a49a703363ed756796f5808a06fc233  numpy-1.18.5-cp37-cp37m-win_amd64.whl
e15b382603c58f24265c9c931c9a45eebf44fe2e6b4eaedbb0d025ab3255228b  numpy-1.18.5-cp38-cp38-macosx_10_9_x86_64.whl
3676abe3d621fc467c4c1469ee11e395c82b2d6b5463a9454e37fe9da07cd0d7  numpy-1.18.5-cp38-cp38-manylinux1_i686.whl
4674f7d27a6c1c52a4d1aa5f0881f1eff840d2206989bae6acb1c7668c02ebfb  numpy-1.18.5-cp38-cp38-manylinux1_x86_64.whl
9c9d6531bc1886454f44aa8f809268bc481295cf9740827254f53c30104f074a  numpy-1.18.5-cp38-cp38-win32.whl
3dd6823d3e04b5f223e3e265b4a1eae15f104f4366edd409e5a5e413a98f911f  numpy-1.18.5-cp38-cp38-win_amd64.whl
2c095bd1c5290966cceee8b6ef5cd66f13cd0e9d6d0e8d6fc8961abd64a8e51f  numpy-1.18.5.tar.gz
34e96e9dae65c4839bd80012023aadd6ee2ccb73ce7fdf3074c62f301e63120b  numpy-1.18.5.zip

1.18.4

3 years ago

title: 'NumPy 1.18.4 Release Notes'

This is that last planned release in the 1.18.x series. It reverts the bool("0") behavior introduced in 1.18.3 and fixes a bug in Generator.integers. There is also improved help in the error message emitted when numpy import fails due to a link to a new troubleshooting section in the documentation that is now included.

The Python versions supported in this release are 3.5-3.8. Downstream developers should use Cython >= 0.29.15 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

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
  • Warren Weckesser
Pull requests merged

A total of 6 pull requests were merged for this release.

  • #16055 BLD: add i686 for 1.18 builds
  • #16090 BUG: random: Generator.integers(2**32) always returned 0.
  • #16091 BLD: fix path to libgfortran on macOS
  • #16109 REV: Reverts side-effect changes to casting
  • #16114 BLD: put openblas library in local directory on windows
  • #16132 DOC: Change import error \"howto\" to link to new troubleshooting...
Checksums MD5
1fe09153c9e6da5c9e73f3ed466da50c  numpy-1.18.4-cp35-cp35m-macosx_10_9_intel.whl
707b0270ece3e9a16905e756884daa48  numpy-1.18.4-cp35-cp35m-manylinux1_i686.whl
47f90c71c3df80ace2b32d011ed1c240  numpy-1.18.4-cp35-cp35m-manylinux1_x86_64.whl
e0e7d9fd9f4c8cf077ba5cda69833d38  numpy-1.18.4-cp35-cp35m-win32.whl
06e844091463932a0d4da103951ffc2c  numpy-1.18.4-cp35-cp35m-win_amd64.whl
32ce3d6d266f1fbfef4a2ff917053718  numpy-1.18.4-cp36-cp36m-macosx_10_9_x86_64.whl
f5d27cca8bf9dc8f603cad5255674bb8  numpy-1.18.4-cp36-cp36m-manylinux1_i686.whl
460bd10297e582f0e061194356990afb  numpy-1.18.4-cp36-cp36m-manylinux1_x86_64.whl
160c62c881a5109f3e47813dd0079ab1  numpy-1.18.4-cp36-cp36m-win32.whl
03e2d39bfaaf27993b353b98c75f27cc  numpy-1.18.4-cp36-cp36m-win_amd64.whl
672cb3889e7c9285ca260f8d15c2bc9f  numpy-1.18.4-cp37-cp37m-macosx_10_9_x86_64.whl
eaebca109ce5346ec1626af476e88edb  numpy-1.18.4-cp37-cp37m-manylinux1_i686.whl
bdf6d9bd169e5552284dd366c12e3759  numpy-1.18.4-cp37-cp37m-manylinux1_x86_64.whl
408f8eedcfb8bee6c0d8cb13f4665edd  numpy-1.18.4-cp37-cp37m-win32.whl
2d2cc2ccd5c276bde6696856609dee9f  numpy-1.18.4-cp37-cp37m-win_amd64.whl
5bdfaa2daf5afd8e6db8c202f58d5ef0  numpy-1.18.4-cp38-cp38-macosx_10_9_x86_64.whl
1aad5b0c4545e206aae7848853633885  numpy-1.18.4-cp38-cp38-manylinux1_i686.whl
f7e78dcee83fb851c97804d7fb987fdb  numpy-1.18.4-cp38-cp38-manylinux1_x86_64.whl
91678301ec0d6e6c20bf7c71bc8665a5  numpy-1.18.4-cp38-cp38-win32.whl
916b27fca6fb780907033067cad175fe  numpy-1.18.4-cp38-cp38-win_amd64.whl
70e6c294f8dffa8d630eda1b0d42ae4d  numpy-1.18.4.tar.gz
37277c5cbe5a850513fbff5ffdad1caf  numpy-1.18.4.zip
SHA256
efdba339fffb0e80fcc19524e4fdbda2e2b5772ea46720c44eaac28096d60720  numpy-1.18.4-cp35-cp35m-macosx_10_9_intel.whl
2b573fcf6f9863ce746e4ad00ac18a948978bb3781cffa4305134d31801f3e26  numpy-1.18.4-cp35-cp35m-manylinux1_i686.whl
3f0dae97e1126f529ebb66f3c63514a0f72a177b90d56e4bce8a0b5def34627a  numpy-1.18.4-cp35-cp35m-manylinux1_x86_64.whl
dccd380d8e025c867ddcb2f84b439722cf1f23f3a319381eac45fd077dee7170  numpy-1.18.4-cp35-cp35m-win32.whl
02ec9582808c4e48be4e93cd629c855e644882faf704bc2bd6bbf58c08a2a897  numpy-1.18.4-cp35-cp35m-win_amd64.whl
904b513ab8fbcbdb062bed1ce2f794ab20208a1b01ce9bd90776c6c7e7257032  numpy-1.18.4-cp36-cp36m-macosx_10_9_x86_64.whl
e22cd0f72fc931d6abc69dc7764484ee20c6a60b0d0fee9ce0426029b1c1bdae  numpy-1.18.4-cp36-cp36m-manylinux1_i686.whl
2466fbcf23711ebc5daa61d28ced319a6159b260a18839993d871096d66b93f7  numpy-1.18.4-cp36-cp36m-manylinux1_x86_64.whl
00d7b54c025601e28f468953d065b9b121ddca7fff30bed7be082d3656dd798d  numpy-1.18.4-cp36-cp36m-win32.whl
7d59f21e43bbfd9a10953a7e26b35b6849d888fc5a331fa84a2d9c37bd9fe2a2  numpy-1.18.4-cp36-cp36m-win_amd64.whl
efb7ac5572c9a57159cf92c508aad9f856f1cb8e8302d7fdb99061dbe52d712c  numpy-1.18.4-cp37-cp37m-macosx_10_9_x86_64.whl
0e6f72f7bb08f2f350ed4408bb7acdc0daba637e73bce9f5ea2b207039f3af88  numpy-1.18.4-cp37-cp37m-manylinux1_i686.whl
9933b81fecbe935e6a7dc89cbd2b99fea1bf362f2790daf9422a7bb1dc3c3085  numpy-1.18.4-cp37-cp37m-manylinux1_x86_64.whl
96dd36f5cdde152fd6977d1bbc0f0561bccffecfde63cd397c8e6033eb66baba  numpy-1.18.4-cp37-cp37m-win32.whl
57aea170fb23b1fd54fa537359d90d383d9bf5937ee54ae8045a723caa5e0961  numpy-1.18.4-cp37-cp37m-win_amd64.whl
ed722aefb0ebffd10b32e67f48e8ac4c5c4cf5d3a785024fdf0e9eb17529cd9d  numpy-1.18.4-cp38-cp38-macosx_10_9_x86_64.whl
50fb72bcbc2cf11e066579cb53c4ca8ac0227abb512b6cbc1faa02d1595a2a5d  numpy-1.18.4-cp38-cp38-manylinux1_i686.whl
709c2999b6bd36cdaf85cf888d8512da7433529f14a3689d6e37ab5242e7add5  numpy-1.18.4-cp38-cp38-manylinux1_x86_64.whl
f22273dd6a403ed870207b853a856ff6327d5cbce7a835dfa0645b3fc00273ec  numpy-1.18.4-cp38-cp38-win32.whl
1be2e96314a66f5f1ce7764274327fd4fb9da58584eaff00b5a5221edefee7d6  numpy-1.18.4-cp38-cp38-win_amd64.whl
e0781ec6627e85f2a618478ee278893343fb8b40577b4c74b2ec15c7a5b8f698  numpy-1.18.4.tar.gz
bbcc85aaf4cd84ba057decaead058f43191cc0e30d6bc5d44fe336dc3d3f4509  numpy-1.18.4.zip

1.18.3

3 years ago
NumPy 1.18.3 Release Notes

This release contains various bug/regression fixes.

The Python versions supported in this release are 3.5-3.8. Downstream developers should use Cython >= 0.29.15 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

Highlights
  • Fix for the method='eigh' and method='cholesky' options in numpy.random.multivariate_normal. Those were producing samples from the wrong distribution.
Contributors

A total of 6 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Max Balandat +
  • \@Mibu287 +
  • Pan Jan +
  • Sebastian Berg
  • \@panpiort8 +
Pull requests merged

A total of 5 pull requests were merged for this release.

  • #15916: BUG: Fix eigh and cholesky methods of numpy.random.multivariate_normal
  • #15929: BUG,MAINT: Remove incorrect special case in string to number...
  • #15930: BUG: Guarantee array is in valid state after memory error occurs...
  • #15954: BUG: Check that [pvals]{.title-ref} is 1D in _generator.multinomial.
  • #16017: BUG: Alpha parameter must be 1D in _generator.dirichlet
Checksums MD5
6582c9a045ba92cb11a7062cfabba898  numpy-1.18.3-cp35-cp35m-macosx_10_9_intel.whl
f70d5c8d4f598653ff66f640487481ce  numpy-1.18.3-cp35-cp35m-manylinux1_i686.whl
5c0f1a8c94d095efd21ab4b8ffeed921  numpy-1.18.3-cp35-cp35m-manylinux1_x86_64.whl
92cab35405fe3042e7aa8504d8669cd0  numpy-1.18.3-cp35-cp35m-win32.whl
8769b5434fd08fe67d912077082b91d7  numpy-1.18.3-cp35-cp35m-win_amd64.whl
2f1f330199d95bd8e709d0e4a0eec65e  numpy-1.18.3-cp36-cp36m-macosx_10_9_x86_64.whl
19892d1f036da55f8841ef121478d554  numpy-1.18.3-cp36-cp36m-manylinux1_i686.whl
676c3dd16e9d80271c31ee5f9c3b8f20  numpy-1.18.3-cp36-cp36m-manylinux1_x86_64.whl
6484099fdb78f732a758286d2eb87632  numpy-1.18.3-cp36-cp36m-win32.whl
7d99a2a4ba819b75347468c8ed5e5a9e  numpy-1.18.3-cp36-cp36m-win_amd64.whl
a5672f35136ea83dfa7960859a38d6e9  numpy-1.18.3-cp37-cp37m-macosx_10_9_x86_64.whl
5b36aaaeb4203b3d26c5dc801dbc66bd  numpy-1.18.3-cp37-cp37m-manylinux1_i686.whl
afc4b2445d447f1a7c338026778bd34e  numpy-1.18.3-cp37-cp37m-manylinux1_x86_64.whl
2ebc3ba9945d108df75319c359190516  numpy-1.18.3-cp37-cp37m-win32.whl
a78f661b1c7bd153c8399db90fba652c  numpy-1.18.3-cp37-cp37m-win_amd64.whl
8f16d580559468b7cf23a71dc9945f39  numpy-1.18.3-cp38-cp38-macosx_10_9_x86_64.whl
5ec887ba38cd99775666f3493d82ea7c  numpy-1.18.3-cp38-cp38-manylinux1_i686.whl
88ce81bc31dec4c14bf835dc466308ed  numpy-1.18.3-cp38-cp38-manylinux1_x86_64.whl
5afe9a5f3c21299da599210ff5b76834  numpy-1.18.3-cp38-cp38-win32.whl
205364093300906654debbe3beb13359  numpy-1.18.3-cp38-cp38-win_amd64.whl
cd631c761f141d382b4e1b31c8232fc0  numpy-1.18.3.tar.gz
91314710fe9d29d80b6ccc9629e4532b  numpy-1.18.3.zip
SHA256
a6bc9432c2640b008d5f29bad737714eb3e14bb8854878eacf3d7955c4e91c36  numpy-1.18.3-cp35-cp35m-macosx_10_9_intel.whl
48e15612a8357393d176638c8f68a19273676877caea983f8baf188bad430379  numpy-1.18.3-cp35-cp35m-manylinux1_i686.whl
eb2286249ebfe8fcb5b425e5ec77e4736d53ee56d3ad296f8947f67150f495e3  numpy-1.18.3-cp35-cp35m-manylinux1_x86_64.whl
1e37626bcb8895c4b3873fcfd54e9bfc5ffec8d0f525651d6985fcc5c6b6003c  numpy-1.18.3-cp35-cp35m-win32.whl
163c78c04f47f26ca1b21068cea25ed7c5ecafe5f5ab2ea4895656a750582b56  numpy-1.18.3-cp35-cp35m-win_amd64.whl
3d9e1554cd9b5999070c467b18e5ae3ebd7369f02706a8850816f576a954295f  numpy-1.18.3-cp36-cp36m-macosx_10_9_x86_64.whl
40c24960cd5cec55222963f255858a1c47c6fa50a65a5b03fd7de75e3700eaaa  numpy-1.18.3-cp36-cp36m-manylinux1_i686.whl
a551d8cc267c634774830086da42e4ba157fa41dd3b93982bc9501b284b0c689  numpy-1.18.3-cp36-cp36m-manylinux1_x86_64.whl
0aa2b318cf81eb1693fcfcbb8007e95e231d7e1aa24288137f3b19905736c3ee  numpy-1.18.3-cp36-cp36m-win32.whl
a41f303b3f9157a31ce7203e3ca757a0c40c96669e72d9b6ee1bce8507638970  numpy-1.18.3-cp36-cp36m-win_amd64.whl
e607b8cdc2ae5d5a63cd1bec30a15b5ed583ac6a39f04b7ba0f03fcfbf29c05b  numpy-1.18.3-cp37-cp37m-macosx_10_9_x86_64.whl
fdee7540d12519865b423af411bd60ddb513d2eb2cd921149b732854995bbf8b  numpy-1.18.3-cp37-cp37m-manylinux1_i686.whl
6725d2797c65598778409aba8cd67077bb089d5b7d3d87c2719b206dc84ec05e  numpy-1.18.3-cp37-cp37m-manylinux1_x86_64.whl
4847f0c993298b82fad809ea2916d857d0073dc17b0510fbbced663b3265929d  numpy-1.18.3-cp37-cp37m-win32.whl
46f404314dbec78cb342904f9596f25f9b16e7cf304030f1339e553c8e77f51c  numpy-1.18.3-cp37-cp37m-win_amd64.whl
264fd15590b3f02a1fbc095e7e1f37cdac698ff3829e12ffdcffdce3772f9d44  numpy-1.18.3-cp38-cp38-macosx_10_9_x86_64.whl
e94a39d5c40fffe7696009dbd11bc14a349b377e03a384ed011e03d698787dd3  numpy-1.18.3-cp38-cp38-manylinux1_i686.whl
a4305564e93f5c4584f6758149fd446df39fd1e0a8c89ca0deb3cce56106a027  numpy-1.18.3-cp38-cp38-manylinux1_x86_64.whl
99f0ba97e369f02a21bb95faa3a0de55991fd5f0ece2e30a9e2eaebeac238921  numpy-1.18.3-cp38-cp38-win32.whl
c60175d011a2e551a2f74c84e21e7c982489b96b6a5e4b030ecdeacf2914da68  numpy-1.18.3-cp38-cp38-win_amd64.whl
93ee59ec38f3bf8f9a42d5f4301f60e6825a4a6385a145f70badcd2bf2a11134  numpy-1.18.3.tar.gz
e46e2384209c91996d5ec16744234d1c906ab79a701ce1a26155c9ec890b8dc8  numpy-1.18.3.zip

1.18.2

3 years ago
NumPy 1.18.2 Release Notes

This small elease contains a fix for a performance regression in numpy/random and several bug/maintenance updates.

The Python versions supported in this release are 3.5-3.8. Downstream developers should use Cython >= 0.29.15 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

Contributors

A total of 5 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Ganesh Kathiresan +
  • Matti Picus
  • Sebastian Berg
  • przemb +
Pull requests merged

A total of 7 pull requests were merged for this release.

  • #15675: TST: move _no_tracing to testing._private
  • #15676: MAINT: Large overhead in some random functions
  • #15677: TST: Do not create gfortran link in azure Mac testing.
  • #15679: BUG: Added missing error check in ndarray.__contains__
  • #15722: MAINT: use list-based APIs to call subprocesses
  • #15729: REL: Prepare for 1.18.2 release.
  • #15734: BUG: fix logic error when nm fails on 32-bit
Checksums MD5
b9efe544f2bfbbd4e226c5639f22b1d2  numpy-1.18.2-cp35-cp35m-macosx_10_9_x86_64.whl
59c0bc09053c0029e829685dcb3dafa5  numpy-1.18.2-cp35-cp35m-manylinux1_i686.whl
1783f9194ceeabb236bd46ed6cb6ed60  numpy-1.18.2-cp35-cp35m-manylinux1_x86_64.whl
8a6fa57b509e6d9e194fb43b0ac5bbc7  numpy-1.18.2-cp35-cp35m-win32.whl
3167feeb5e30445ca7beed1d55b6d73a  numpy-1.18.2-cp35-cp35m-win_amd64.whl
c193d593d3b8a46c610511a69c86f879  numpy-1.18.2-cp36-cp36m-macosx_10_9_x86_64.whl
f31c65b4699b12e73b36eb268931dbdc  numpy-1.18.2-cp36-cp36m-manylinux1_i686.whl
f5b0613cacaaf2179528a36b75712d65  numpy-1.18.2-cp36-cp36m-manylinux1_x86_64.whl
77e40c0481f2c1608d344032038fa969  numpy-1.18.2-cp36-cp36m-win32.whl
2c402211d77a10025b047042d191839b  numpy-1.18.2-cp36-cp36m-win_amd64.whl
3adec0f3cd5946ae7a0ab67790b2d8f1  numpy-1.18.2-cp37-cp37m-macosx_10_9_x86_64.whl
baea3b06dac41d5f6f1fbb7a62114656  numpy-1.18.2-cp37-cp37m-manylinux1_i686.whl
99b3c14bfc303c662b899d1a5ca4df6a  numpy-1.18.2-cp37-cp37m-manylinux1_x86_64.whl
293066cca2b3772fa3ae204f6ff98ce7  numpy-1.18.2-cp37-cp37m-win32.whl
21f3cda116631da8823a621e90c30bbb  numpy-1.18.2-cp37-cp37m-win_amd64.whl
47978cedd45ded509073025c1aa60506  numpy-1.18.2-cp38-cp38-macosx_10_9_x86_64.whl
4864078352c7faa69a8f9e98e48f7d8a  numpy-1.18.2-cp38-cp38-manylinux1_i686.whl
c0111a5fce4aa57004366e9d5edc5644  numpy-1.18.2-cp38-cp38-manylinux1_x86_64.whl
7f8ca4e685e607f80ad002495b603436  numpy-1.18.2-cp38-cp38-win32.whl
e8e192005a0b8045928f0ac712762a6f  numpy-1.18.2-cp38-cp38-win_amd64.whl
52601ac4cfbd513218bc088b74715098  numpy-1.18.2.tar.gz
511010c9fbd2516fe5a24aabcb76a56d  numpy-1.18.2.zip
SHA256
a1baa1dc8ecd88fb2d2a651671a84b9938461e8a8eed13e2f0a812a94084d1fa  numpy-1.18.2-cp35-cp35m-macosx_10_9_x86_64.whl
a244f7af80dacf21054386539699ce29bcc64796ed9850c99a34b41305630286  numpy-1.18.2-cp35-cp35m-manylinux1_i686.whl
6fcc5a3990e269f86d388f165a089259893851437b904f422d301cdce4ff25c8  numpy-1.18.2-cp35-cp35m-manylinux1_x86_64.whl
b5ad0adb51b2dee7d0ee75a69e9871e2ddfb061c73ea8bc439376298141f77f5  numpy-1.18.2-cp35-cp35m-win32.whl
87902e5c03355335fc5992a74ba0247a70d937f326d852fc613b7f53516c0963  numpy-1.18.2-cp35-cp35m-win_amd64.whl
9ab21d1cb156a620d3999dd92f7d1c86824c622873841d6b080ca5495fa10fef  numpy-1.18.2-cp36-cp36m-macosx_10_9_x86_64.whl
cdb3a70285e8220875e4d2bc394e49b4988bdb1298ffa4e0bd81b2f613be397c  numpy-1.18.2-cp36-cp36m-manylinux1_i686.whl
6d205249a0293e62bbb3898c4c2e1ff8a22f98375a34775a259a0523111a8f6c  numpy-1.18.2-cp36-cp36m-manylinux1_x86_64.whl
a35af656a7ba1d3decdd4fae5322b87277de8ac98b7d9da657d9e212ece76a61  numpy-1.18.2-cp36-cp36m-win32.whl
1598a6de323508cfeed6b7cd6c4efb43324f4692e20d1f76e1feec7f59013448  numpy-1.18.2-cp36-cp36m-win_amd64.whl
deb529c40c3f1e38d53d5ae6cd077c21f1d49e13afc7936f7f868455e16b64a0  numpy-1.18.2-cp37-cp37m-macosx_10_9_x86_64.whl
cd77d58fb2acf57c1d1ee2835567cd70e6f1835e32090538f17f8a3a99e5e34b  numpy-1.18.2-cp37-cp37m-manylinux1_i686.whl
b1fe1a6f3a6f355f6c29789b5927f8bd4f134a4bd9a781099a7c4f66af8850f5  numpy-1.18.2-cp37-cp37m-manylinux1_x86_64.whl
2e40be731ad618cb4974d5ba60d373cdf4f1b8dcbf1dcf4d9dff5e212baf69c5  numpy-1.18.2-cp37-cp37m-win32.whl
4ba59db1fcc27ea31368af524dcf874d9277f21fd2e1f7f1e2e0c75ee61419ed  numpy-1.18.2-cp37-cp37m-win_amd64.whl
59ca9c6592da581a03d42cc4e270732552243dc45e87248aa8d636d53812f6a5  numpy-1.18.2-cp38-cp38-macosx_10_9_x86_64.whl
1b0ece94018ae21163d1f651b527156e1f03943b986188dd81bc7e066eae9d1c  numpy-1.18.2-cp38-cp38-manylinux1_i686.whl
82847f2765835c8e5308f136bc34018d09b49037ec23ecc42b246424c767056b  numpy-1.18.2-cp38-cp38-manylinux1_x86_64.whl
5e0feb76849ca3e83dd396254e47c7dba65b3fa9ed3df67c2556293ae3e16de3  numpy-1.18.2-cp38-cp38-win32.whl
ba3c7a2814ec8a176bb71f91478293d633c08582119e713a0c5351c0f77698da  numpy-1.18.2-cp38-cp38-win_amd64.whl
da204ce460aa4247e595b7c7189d2fb2ed5f796bc03197055de01dac61d0125e  numpy-1.18.2.tar.gz
e7894793e6e8540dbeac77c87b489e331947813511108ae097f1715c018b8f3d  numpy-1.18.2.zip

1.18.1

3 years ago
NumPy 1.18.1 Release Notes

This release contains fixes for bugs reported against NumPy 1.18.0. Two bugs in particular that caused widespread problems downstream were:

  • The cython random extension test was not using a temporary directory for building, resulting in a permission violation. Fixed.
  • Numpy distutils was appending [-std=c99]{.title-ref} to all C compiler runs, leading to changed behavior and compile problems downstream. That flag is now only applied when building numpy C code.

The Python versions supported in this release are 3.5-3.8. Downstream developers should use Cython >= 0.29.14 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

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
  • Matti Picus
  • Maxwell Aladago
  • Pauli Virtanen
  • Ralf Gommers
  • Tyler Reddy
  • Warren Weckesser
Pull requests merged

A total of 13 pull requests were merged for this release.

  • #15158: MAINT: Update pavement.py for towncrier.
  • #15159: DOC: add moved modules to 1.18 release note
  • #15161: MAINT, DOC: Minor backports and updates for 1.18.x
  • #15176: TST: Add assert_array_equal test for big integer arrays
  • #15184: BUG: use tmp dir and check version for cython test (#15170)
  • #15220: BUG: distutils: fix msvc+gfortran openblas handling corner case
  • #15221: BUG: remove -std=c99 for c++ compilation (#15194)
  • #15222: MAINT: unskip test on win32
  • #15223: TST: add BLAS ILP64 run in Travis & Azure
  • #15245: MAINT: only add --std=c99 where needed
  • #15246: BUG: lib: Fix handling of integer arrays by gradient.
  • #15247: MAINT: Do not use private Python function in testing
  • #15250: REL: Prepare for the NumPy 1.18.1 release.
Checksums MD5
f41ef9a855aa0baeb900827e2f99ab7b  numpy-1.18.1-cp35-cp35m-macosx_10_6_intel.whl
5239118baa2f0db334e70aac6cf26927  numpy-1.18.1-cp35-cp35m-manylinux1_i686.whl
78d95d2f1814b517e7cc887e559c7cd4  numpy-1.18.1-cp35-cp35m-manylinux1_x86_64.whl
c58a268ad42c31883b5756ad20cebe87  numpy-1.18.1-cp35-cp35m-win32.whl
2ffc13917b6813a85b8e1032402ca5f5  numpy-1.18.1-cp35-cp35m-win_amd64.whl
c3ac9936c6b21fef95a2304505fdb594  numpy-1.18.1-cp36-cp36m-macosx_10_9_x86_64.whl
e0a26cc2d04a7f115489b9ccc9678d3f  numpy-1.18.1-cp36-cp36m-manylinux1_i686.whl
d79f59200a821f90acf73f97c5252902  numpy-1.18.1-cp36-cp36m-manylinux1_x86_64.whl
8ba2338c677f238a84264633e3b96d9d  numpy-1.18.1-cp36-cp36m-win32.whl
2a2ab91e19bd2703eaa1506b06036958  numpy-1.18.1-cp36-cp36m-win_amd64.whl
6cc9c5767ffc0de03685f928e4e97f0f  numpy-1.18.1-cp37-cp37m-macosx_10_9_x86_64.whl
486a5ab59cbdfc2861be08701702e251  numpy-1.18.1-cp37-cp37m-manylinux1_i686.whl
08123450dfbb9f53c812caa65895afcb  numpy-1.18.1-cp37-cp37m-manylinux1_x86_64.whl
3e4e223ba7b784cd90f891e8867d0cf8  numpy-1.18.1-cp37-cp37m-win32.whl
4a51b085685511e95be3077a7360785f  numpy-1.18.1-cp37-cp37m-win_amd64.whl
d1f034f563252a57b9235bc9ea2c1aef  numpy-1.18.1-cp38-cp38-macosx_10_9_x86_64.whl
2252dcd00034da6f99c98584875dcb9d  numpy-1.18.1-cp38-cp38-manylinux1_i686.whl
6e93a3c8618e87aee2b0cd648b1730f0  numpy-1.18.1-cp38-cp38-manylinux1_x86_64.whl
10f1d9a6faf6a2fdb0693347cb2348b0  numpy-1.18.1-cp38-cp38-win32.whl
b9d0e0840e3e6e37f384a794d48c4ae8  numpy-1.18.1-cp38-cp38-win_amd64.whl
9ab88e85f5b1fc70506287317b58f71d  numpy-1.18.1.tar.gz
18787d6482681c85a66629a781fb84c3  numpy-1.18.1.zip
SHA256
20b26aaa5b3da029942cdcce719b363dbe58696ad182aff0e5dcb1687ec946dc  numpy-1.18.1-cp35-cp35m-macosx_10_6_intel.whl
70a840a26f4e61defa7bdf811d7498a284ced303dfbc35acb7be12a39b2aa121  numpy-1.18.1-cp35-cp35m-manylinux1_i686.whl
17aa7a81fe7599a10f2b7d95856dc5cf84a4eefa45bc96123cbbc3ebc568994e  numpy-1.18.1-cp35-cp35m-manylinux1_x86_64.whl
f3d0a94ad151870978fb93538e95411c83899c9dc63e6fb65542f769568ecfa5  numpy-1.18.1-cp35-cp35m-win32.whl
1786a08236f2c92ae0e70423c45e1e62788ed33028f94ca99c4df03f5be6b3c6  numpy-1.18.1-cp35-cp35m-win_amd64.whl
ae0975f42ab1f28364dcda3dde3cf6c1ddab3e1d4b2909da0cb0191fa9ca0480  numpy-1.18.1-cp36-cp36m-macosx_10_9_x86_64.whl
cf7eb6b1025d3e169989416b1adcd676624c2dbed9e3bcb7137f51bfc8cc2572  numpy-1.18.1-cp36-cp36m-manylinux1_i686.whl
b765ed3930b92812aa698a455847141869ef755a87e099fddd4ccf9d81fffb57  numpy-1.18.1-cp36-cp36m-manylinux1_x86_64.whl
2d75908ab3ced4223ccba595b48e538afa5ecc37405923d1fea6906d7c3a50bc  numpy-1.18.1-cp36-cp36m-win32.whl
9acdf933c1fd263c513a2df3dceecea6f3ff4419d80bf238510976bf9bcb26cd  numpy-1.18.1-cp36-cp36m-win_amd64.whl
56bc8ded6fcd9adea90f65377438f9fea8c05fcf7c5ba766bef258d0da1554aa  numpy-1.18.1-cp37-cp37m-macosx_10_9_x86_64.whl
e422c3152921cece8b6a2fb6b0b4d73b6579bd20ae075e7d15143e711f3ca2ca  numpy-1.18.1-cp37-cp37m-manylinux1_i686.whl
b3af02ecc999c8003e538e60c89a2b37646b39b688d4e44d7373e11c2debabec  numpy-1.18.1-cp37-cp37m-manylinux1_x86_64.whl
d92350c22b150c1cae7ebb0ee8b5670cc84848f6359cf6b5d8f86617098a9b73  numpy-1.18.1-cp37-cp37m-win32.whl
77c3bfe65d8560487052ad55c6998a04b654c2fbc36d546aef2b2e511e760971  numpy-1.18.1-cp37-cp37m-win_amd64.whl
c98c5ffd7d41611407a1103ae11c8b634ad6a43606eca3e2a5a269e5d6e8eb07  numpy-1.18.1-cp38-cp38-macosx_10_9_x86_64.whl
9537eecf179f566fd1c160a2e912ca0b8e02d773af0a7a1120ad4f7507cd0d26  numpy-1.18.1-cp38-cp38-manylinux1_i686.whl
e840f552a509e3380b0f0ec977e8124d0dc34dc0e68289ca28f4d7c1d0d79474  numpy-1.18.1-cp38-cp38-manylinux1_x86_64.whl
590355aeade1a2eaba17617c19edccb7db8d78760175256e3cf94590a1a964f3  numpy-1.18.1-cp38-cp38-win32.whl
39d2c685af15d3ce682c99ce5925cc66efc824652e10990d2462dfe9b8918c6a  numpy-1.18.1-cp38-cp38-win_amd64.whl
e37802868ba5f389bf4e3f4c40c16e1b031814f0585ac122637de219de6279cb  numpy-1.18.1.tar.gz
b6ff59cee96b454516e47e7721098e6ceebef435e3e21ac2d6c3b8b02628eb77  numpy-1.18.1.zip

1.17.5

3 years ago
NumPy 1.17.5 Release Notes

This release contains fixes for bugs reported against NumPy 1.17.4 along with some build improvements. The Python versions supported in this release are 3.5-3.8.

Downstream developers should use Cython >= 0.29.14 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

It is recommended that developers interested in the new random bit generators upgrade to the NumPy 1.18.x series, as it has updated documentation and many small improvements.

Contributors

A total of 6 people contributed to this release. People with a \"+\" by their names contributed a patch for the first time.

  • Charles Harris
  • Eric Wieser
  • Ilhan Polat
  • Matti Picus
  • Michael Hudson-Doyle
  • Ralf Gommers
Pull requests merged

A total of 8 pull requests were merged for this release.

  • #14593: MAINT: backport Cython API cleanup to 1.17.x, remove docs
  • #14937: BUG: fix integer size confusion in handling array\'s ndmin argument
  • #14939: BUILD: remove SSE2 flag from numpy.random builds
  • #14993: MAINT: Added Python3.8 branch to dll lib discovery
  • #15038: BUG: Fix refcounting in ufunc object loops
  • #15067: BUG: Exceptions tracebacks are dropped
  • #15175: ENH: Backport improvements to testing functions.
  • #15213: REL: Prepare for the NumPy 1.17.5 release.
Checksums MD5
e1d378317e20e340ea46937cbaf45094  numpy-1.17.5-cp35-cp35m-macosx_10_9_intel.whl
49b263605ab32a0880fa68b29c2586b0  numpy-1.17.5-cp35-cp35m-manylinux1_i686.whl
41b4800ea0b8410919500e264994fb6f  numpy-1.17.5-cp35-cp35m-manylinux1_x86_64.whl
7ac18d112a745aabf5059da85de91c57  numpy-1.17.5-cp35-cp35m-win32.whl
98dfbe821c010b34771f789dff36ca76  numpy-1.17.5-cp35-cp35m-win_amd64.whl
3a14d2a58b72db3020b2d1760aefed5c  numpy-1.17.5-cp36-cp36m-macosx_10_9_x86_64.whl
47810aa1c34d9d46581f0b8dee0d1acc  numpy-1.17.5-cp36-cp36m-manylinux1_i686.whl
e0f2d037ecd1ecbfa5f3d282bf69fad2  numpy-1.17.5-cp36-cp36m-manylinux1_x86_64.whl
addda5c691eaca7b8aa2f8413c936f54  numpy-1.17.5-cp36-cp36m-win32.whl
ee5c057451e77ad2aeb1a7ed2df3754d  numpy-1.17.5-cp36-cp36m-win_amd64.whl
8be28f068e0b2e9c5202debd6e2bcf6c  numpy-1.17.5-cp37-cp37m-macosx_10_9_x86_64.whl
8400685497628c48b292ff8bb8b7286e  numpy-1.17.5-cp37-cp37m-manylinux1_i686.whl
a399036176dd2e23e07b866b460b6f20  numpy-1.17.5-cp37-cp37m-manylinux1_x86_64.whl
f9497454c4d3a8fdcc62788420f365c7  numpy-1.17.5-cp37-cp37m-win32.whl
930a172f90ea6658adf2d25700a98757  numpy-1.17.5-cp37-cp37m-win_amd64.whl
1fddb7a3de3aba553614919411e70698  numpy-1.17.5-cp38-cp38-macosx_10_9_x86_64.whl
003e1514a5ed31cebb10a8055f7b63e6  numpy-1.17.5-cp38-cp38-manylinux1_i686.whl
de8f5f3f602f889fb0ed42cfd5da40bc  numpy-1.17.5-cp38-cp38-manylinux1_x86_64.whl
91a89b84875f30f6b8166d4791212aa3  numpy-1.17.5-cp38-cp38-win32.whl
ba5eb1d2705e4a169df105ce7a95abc0  numpy-1.17.5-cp38-cp38-win_amd64.whl
59d27965e42caedf8913ebe03cf36f87  numpy-1.17.5.tar.gz
763a5646fa6eef7a22f4895bca0524f2  numpy-1.17.5.zip
SHA256
d977a91f7b02b14843562d2e8740acfdfb46996e64985b69b2d404bfa43bc07d  numpy-1.17.5-cp35-cp35m-macosx_10_9_intel.whl
6c6cab8089ad39554d7fed04d338e7bd7ea6ac48235a542ea0b37214c8d0a9bc  numpy-1.17.5-cp35-cp35m-manylinux1_i686.whl
4760bcc6adaf0d853379d01ce60f320e5ab6d0d719662aef3c460dad3cf79989  numpy-1.17.5-cp35-cp35m-manylinux1_x86_64.whl
c3fb7eb84cd455ea2294980e557cc40b0042f7fc7ebab28c74ccae85c8b0c2c4  numpy-1.17.5-cp35-cp35m-win32.whl
6167d214a842610d4168311d803f2a6f2c1a9a866b6b370f7408ba508d265add  numpy-1.17.5-cp35-cp35m-win_amd64.whl
ca43581440ce2585f83c8d524c3435569b212bf281b7c67395e78260fcffb341  numpy-1.17.5-cp36-cp36m-macosx_10_9_x86_64.whl
5347fc1258ebe501d352363da06229fc97785d67423b56a9fd032a8389355781  numpy-1.17.5-cp36-cp36m-manylinux1_i686.whl
1739f079e2fcc985cc187aa3ce489d127a02ff12bcc5178269bb7ce5dc860e8f  numpy-1.17.5-cp36-cp36m-manylinux1_x86_64.whl
af51bc1d78ddc1588115b73a1d3824440f5cf55c498681e8ac4ab2f28f0efa99  numpy-1.17.5-cp36-cp36m-win32.whl
259b5aa0a1d2e63bbe9d985bc8249b515541b9993e1b1540563428f5db7bc389  numpy-1.17.5-cp36-cp36m-win_amd64.whl
8ba8ef37b16288dd2390cd9dea3c8470436f6cfe4c665f4640c349e98bae2908  numpy-1.17.5-cp37-cp37m-macosx_10_9_x86_64.whl
348efb76a26f9f3235e492813503639731a885aa5780579ee28d688607d188b2  numpy-1.17.5-cp37-cp37m-manylinux1_i686.whl
31db2f9604afbf897b23478942074bbbb2513467d2b4b4ac573a7b65c63c073c  numpy-1.17.5-cp37-cp37m-manylinux1_x86_64.whl
68bdc37f3ccdc3e945914b3201acd8823ac9dec870ede5371cd5cfedcf5a901a  numpy-1.17.5-cp37-cp37m-win32.whl
15db548aade41e32bfb6f6d3d9e91797261197622afe4102f79220d17da2a29f  numpy-1.17.5-cp37-cp37m-win_amd64.whl
fc56ec046a2cc3aba91fe29e482c145c17925db1b00eafa924d9e16020a3eb88  numpy-1.17.5-cp38-cp38-macosx_10_9_x86_64.whl
73d20aebe518997dce89da356d4b8e4cf60143151c22a0ec76cb00840bb09320  numpy-1.17.5-cp38-cp38-manylinux1_i686.whl
aa3dd92c1427e032fe345f054503f45c9fc7883aa7156a60900641259dd78a78  numpy-1.17.5-cp38-cp38-manylinux1_x86_64.whl
6338f8fa99ea0b00944a256941eea406089a9c0242f594b69289edd91e2d6192  numpy-1.17.5-cp38-cp38-win32.whl
14804866e57322bf601c966e428c271b7e301b631bdfbe0522800483b802bc58  numpy-1.17.5-cp38-cp38-win_amd64.whl
ef0801b6feca0f50e56c29b02e0f3e2c8c40963d44c38484e6f47bfcfbf17d32  numpy-1.17.5.tar.gz
16507ba6617f62ae3c6ab1725ae6f550331025d4d9a369b83f6d5a470446c342  numpy-1.17.5.zip

1.16.6

3 years ago
NumPy 1.16.6 Release Notes

The NumPy 1.16.6 release fixes bugs reported against the 1.16.5 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.7, which should fix errors on Skylake series cpus.

Downstream developers building this release should use Cython >= 0.29.2 and, if using OpenBLAS, OpenBLAS >= v0.3.7. The supported Python versions are 2.7 and 3.5-3.7.

Highlights
  • The np.testing.utils functions have been updated from 1.19.0-dev0. This improves the function documentation and error messages as well extending the assert_array_compare function to additional types.
New functions Allow matmul (@) to work with object arrays.

This is an enhancement that was added in NumPy 1.17 and seems reasonable to include in the LTS 1.16 release series.

Compatibility notes Fix regression in matmul (@) for boolean types

Booleans were being treated as integers rather than booleans, which was a regression from previous behavior.

Improvements Array comparison assertions include maximum differences

Error messages from array comparison tests such as 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.

Contributors

A total of 10 people contributed to this release.

  • CakeWithSteak
  • Charles Harris
  • Chris Burr
  • Eric Wieser
  • Fernando Saravia
  • Lars Grueter
  • Matti Picus
  • Maxwell Aladago
  • Qiming Sun
  • Warren Weckesser
Pull requests merged

A total of 14 pull requests were merged for this release.

  • #14211: BUG: Fix uint-overflow if padding with linear_ramp and negative...
  • #14275: BUG: fixing to allow unpickling of PY3 pickles from PY2
  • #14340: BUG: Fix misuse of .names and .fields in various places (backport...
  • #14423: BUG: test, fix regression in converting to ctypes.
  • #14434: BUG: Fixed maximum relative error reporting in assert_allclose
  • #14509: BUG: Fix regression in boolean matmul.
  • #14686: BUG: properly define PyArray_DescrCheck
  • #14853: BLD: add \'apt update\' to shippable
  • #14854: BUG: Fix _ctypes class circular reference. (#13808)
  • #14856: BUG: Fix [np.einsum]{.title-ref} errors on Power9 Linux and z/Linux
  • #14863: BLD: Prevent -flto from optimising long double representation...
  • #14864: BUG: lib: Fix histogram problem with signed integer arrays.
  • #15172: ENH: Backport improvements to testing functions.
  • #15191: REL: Prepare for 1.16.6 release.
Checksums MD5
4e224331023d95e98074d629b79cd4af  numpy-1.16.6-cp27-cp27m-macosx_10_9_x86_64.whl
d3a48c10422909a5610b42380ed8ddc6  numpy-1.16.6-cp27-cp27m-manylinux1_i686.whl
6896018676021f6cff25abb30d9da143  numpy-1.16.6-cp27-cp27m-manylinux1_x86_64.whl
c961575405015b018a497e8f90db5e38  numpy-1.16.6-cp27-cp27m-win32.whl
8fa39acea08658ca355005c07e15f06f  numpy-1.16.6-cp27-cp27m-win_amd64.whl
8802bee0140fd50aecddab0141d0eb82  numpy-1.16.6-cp27-cp27mu-manylinux1_i686.whl
2f9761f243249d33867f86c10c549dfa  numpy-1.16.6-cp27-cp27mu-manylinux1_x86_64.whl
171a699d84b6ec8ac699627d606890e0  numpy-1.16.6-cp35-cp35m-macosx_10_9_intel.whl
7185860b022aa72cd9abb112b2d2b6cf  numpy-1.16.6-cp35-cp35m-manylinux1_i686.whl
33f35e1b39f572ca98e697b7054fffd1  numpy-1.16.6-cp35-cp35m-manylinux1_x86_64.whl
2ec010ba75c0ac5602e1dbf7fe01ddbf  numpy-1.16.6-cp35-cp35m-win32.whl
88c6c5e1f531e32f65f9f9437045f6f5  numpy-1.16.6-cp35-cp35m-win_amd64.whl
751f8ea2353e73bb3440f241ebad6c5d  numpy-1.16.6-cp36-cp36m-macosx_10_9_x86_64.whl
819af6ec8c90e8209471ecbc6fc47b95  numpy-1.16.6-cp36-cp36m-manylinux1_i686.whl
56ab65e9d3bac5f502507d198634e675  numpy-1.16.6-cp36-cp36m-manylinux1_x86_64.whl
88d4ed4565d31a1978f4bf013f4ffd2e  numpy-1.16.6-cp36-cp36m-win32.whl
167ac7f60d82bd32feb60e675a2c3b01  numpy-1.16.6-cp36-cp36m-win_amd64.whl
2e47bb698842b7289bb34951edf3be3d  numpy-1.16.6-cp37-cp37m-macosx_10_9_x86_64.whl
169eb83d7f0a566207048cc282720ff8  numpy-1.16.6-cp37-cp37m-manylinux1_i686.whl
454ac4d3e09931bfb58cc01b679f4f5f  numpy-1.16.6-cp37-cp37m-manylinux1_x86_64.whl
192593ce2df33b60eab445b31285ad96  numpy-1.16.6-cp37-cp37m-win32.whl
de3b92f1133613e1bd96d788ba9d4307  numpy-1.16.6-cp37-cp37m-win_amd64.whl
5e958c603605f3168b7b29f421f64cdd  numpy-1.16.6.tar.gz
3dc21c84a295fe77eadf8f872685a7de  numpy-1.16.6.zip
SHA256
08bf4f66f190822f4642e036accde8da810b87fffc0b9409e7a00d9e54760099  numpy-1.16.6-cp27-cp27m-macosx_10_9_x86_64.whl
d759ca1b76ac6f6b6159fb74984126035feb1dee9f68b4b961889b6dc090f33a  numpy-1.16.6-cp27-cp27m-manylinux1_i686.whl
d3c5377c6122de876e695937ef41ffee5d2831154c5e4856481b93406cdfeecb  numpy-1.16.6-cp27-cp27m-manylinux1_x86_64.whl
345b1748e6b0d4773a518868c783b16fdc33a22683bdb863484cd29fe8d206e6  numpy-1.16.6-cp27-cp27m-win32.whl
7a5a1f49a643aa1ab3e0579da0a48b8a48ea4369eb63c5065459d0a37f430237  numpy-1.16.6-cp27-cp27m-win_amd64.whl
817eed5a6ec2fc9c1a0ee3fbf9a441c66b6766383580513ccbdf3121acc0b4fb  numpy-1.16.6-cp27-cp27mu-manylinux1_i686.whl
1680c8d5086a88d293dfd1a10b6429a09140cacee878034fa2308472ec835db4  numpy-1.16.6-cp27-cp27mu-manylinux1_x86_64.whl
a4383edb1b8caa989c3541a37ef204916322c503b8eeacc7ee8f4ba24cac97b8  numpy-1.16.6-cp35-cp35m-macosx_10_9_intel.whl
9bb690692f3101583b0b99f3be362742e4f8ebe6c7934fa36cd8ca2b567a0bcc  numpy-1.16.6-cp35-cp35m-manylinux1_i686.whl
b9e334568ca1bf56598eddfac6db6a75bcf1c91aa90d598648f21e45207daeae  numpy-1.16.6-cp35-cp35m-manylinux1_x86_64.whl
55cae40d2024c56e7b79fb070106cb4289dcc6b55c62dba1d89a6944448c6a53  numpy-1.16.6-cp35-cp35m-win32.whl
a1ffc9c770ccc2be9284310a3726c918b26ca19b34c0079e7a41aba950ab175f  numpy-1.16.6-cp35-cp35m-win_amd64.whl
3f423b06bf67cd1dbf72e13e9b53a9ca71972e5abf712ee6cb5d8cbb178fff02  numpy-1.16.6-cp36-cp36m-macosx_10_9_x86_64.whl
34e6bb44e3d9a663f903b8c297ede865b4dff039aa43cc9a0b249e02c27f1396  numpy-1.16.6-cp36-cp36m-manylinux1_i686.whl
60c56922c9d759d664078fbef94132377ef1498ab27dd3d0cc7a21b346e68c06  numpy-1.16.6-cp36-cp36m-manylinux1_x86_64.whl
23cad5e5858dfb73c0e5bce03fe78e5e5908c22263156c58d4afdbb240683c6c  numpy-1.16.6-cp36-cp36m-win32.whl
77399828d96cca386bfba453025c34f22569909d90332b961d3d4341cdb46a84  numpy-1.16.6-cp36-cp36m-win_amd64.whl
97ddfa7688295d460ee48a4d76337e9fdd2506d9d1d0eee7f0348b42b430da4c  numpy-1.16.6-cp37-cp37m-macosx_10_9_x86_64.whl
390f6e14a8d73591f086680464aa101a9be9187d0c633f48c98b429b31b712c2  numpy-1.16.6-cp37-cp37m-manylinux1_i686.whl
a1772dc227e3e415eeaa646d25690dc854bddc3d626e454c7c27acba060cb900  numpy-1.16.6-cp37-cp37m-manylinux1_x86_64.whl
c9fb4fcfcdcaccfe2c4e1f9e0133ed59df5df2aa3655f3d391887e892b0a784c  numpy-1.16.6-cp37-cp37m-win32.whl
6b1853364775edb85ceb0f7f8214d9e993d4d1d9bd3310eae80529ea14ba2ba6  numpy-1.16.6-cp37-cp37m-win_amd64.whl
61562ddac78765969959500b0da9c6f9ba7d77eeb12ec3927afae5303df08777  numpy-1.16.6.tar.gz
e5cf3fdf13401885e8eea8170624ec96225e2174eb0c611c6f26dd33b489e3ff  numpy-1.16.6.zip

1.18.0

3 years ago
NumPy NumPy 1.18.0 Release Notes

In addition to the usual bug fixes, this NumPy release cleans up and documents the new random C-API, expires a large number of old deprecations, and improves the appearance of the documentation. The Python versions supported are 3.5-3.8. This is the last NumPy release series that will support Python 3.5.

Downstream developers should use Cython >= 0.29.14 for Python 3.8 support and OpenBLAS >= 3.7 to avoid problems on the Skylake architecture.

Highlights
  • The C-API for numpy.random has been defined and documented.
  • Basic infrastructure for linking with 64 bit BLAS and LAPACK libraries.
  • Many documentation improvements.
New functions Multivariate hypergeometric distribution added to numpy.random

The method multivariate_hypergeometric has been added to the class [numpy.random.Generator]{.title-ref}. This method generates random variates from the multivariate hypergeometric probability distribution. (gh-13794)

Deprecations np.fromfile and np.fromstring will error on bad data

In future numpy releases, the functions np.fromfile and np.fromstring will throw an error when parsing bad data. This will now give a DeprecationWarning where previously partial or even invalid data was silently returned. This deprecation also affects the C defined functions PyArray_FromString and PyArray_FromFile (gh-13605)

Deprecate non-scalar arrays as fill values in ma.fill_value

Setting a MaskedArray.fill_value to a non-scalar array is deprecated since the logic to broadcast the fill value to the array is fragile, especially when slicing. (gh-13698)

Deprecate PyArray_As1D, PyArray_As2D

PyArray_As1D, PyArray_As2D are deprecated, use PyArray_AsCArray instead (gh-14036)

Deprecate np.alen

np.alen was deprecated. Use len instead. (gh-14181)

Deprecate the financial functions

In accordance with NEP-32, the financial functions fv ipmt, irr, mirr, nper, npv, pmt, ppmt, pv and rate are deprecated, and will be removed from NumPy 1.20.The replacement for these functions is the Python package numpy-financial. (gh-14720)

The axis argument to numpy.ma.mask_cols and numpy.ma.mask_row is deprecated

This argument was always ignored. (gh-14996)

Expired deprecations
  • PyArray_As1D and PyArray_As2D have been removed in favor of PyArray_AsCArray (gh-14036)
  • np.rank has been removed. This was deprecated in NumPy 1.10 and has been replaced by np.ndim. (gh-14039)
  • The deprecation of expand_dims out-of-range axes in 1.13.0 has expired. (gh-14051)
  • PyArray_FromDimsAndDataAndDescr and PyArray_FromDims have been removed (they will always raise an error). Use PyArray_NewFromDescr and PyArray_SimpleNew instead. (gh-14100)
  • numeric.loads, numeric.load, np.ma.dump, np.ma.dumps, np.ma.load, np.ma.loads are removed, use pickle methods instead (gh-14256)
  • arrayprint.FloatFormat, arrayprint.LongFloatFormat has been removed, use FloatingFormat instead
  • arrayprint.ComplexFormat, arrayprint.LongComplexFormat has been removed, use ComplexFloatingFormat instead
  • arrayprint.StructureFormat has been removed, use StructureVoidFormat instead (gh-14259)
  • np.testing.rand has been removed. This was deprecated in NumPy 1.11 and has been replaced by np.random.rand. (gh-14325)
  • Class SafeEval in numpy/lib/utils.py has been removed. This was deprecated in NumPy 1.10. Use np.safe_eval instead. (gh-14335)
  • Remove deprecated support for boolean and empty condition lists in np.select (gh-14583)
  • Array order only accepts \'C\', \'F\', \'A\', and \'K\'. More permissive options were deprecated in NumPy 1.11. (gh-14596)
  • np.linspace parameter num must be an integer. Deprecated in NumPy 1.12. (gh-14620)
  • UFuncs with multiple outputs must use a tuple for the out kwarg. This finishes a deprecation started in NumPy 1.10. (gh-14682)

The files numpy/testing/decorators.py, numpy/testing/noseclasses.py and numpy/testing/nosetester.py have been removed. They were never meant to be public (all relevant objects are present in the numpy.testing namespace), and importing them has given a deprecation warning since NumPy 1.15.0 (gh-14567)

Compatibility notes [numpy.lib.recfunctions.drop_fields]{.title-ref} can no longer return None

If drop_fields is used to drop all fields, previously the array would be completely discarded and None returned. Now it returns an array of the same shape as the input, but with no fields. The old behavior can be retained with:

dropped_arr = drop_fields(arr, ['a', 'b'])
if dropped_arr.dtype.names == ():
    dropped_arr = None

converting the empty recarray to None (gh-14510)

numpy.argmin/argmax/min/max returns NaT if it exists in array

numpy.argmin, numpy.argmax, numpy.min, and numpy.max will return NaT if it exists in the array. (gh-14717)

np.can_cast(np.uint64, np.timedelta64, casting='safe') is now False

Previously this was True - however, this was inconsistent with uint64 not being safely castable to int64, and resulting in strange type resolution.

If this impacts your code, cast uint64 to int64 first. (gh-14718)

Changed random variate stream from numpy.random.Generator.integers

There was a bug in numpy.random.Generator.integers that caused biased sampling of 8 and 16 bit integer types. Fixing that bug has changed the output stream from what it was in previous releases. (gh-14777)

Add more ufunc loops for datetime64, timedelta64

np.datetime('NaT') should behave more like float('Nan'). Add needed infrastructure so np.isinf(a) and np.isnan(a) will run on datetime64 and timedelta64 dtypes. Also added specific loops for numpy.fmin and numpy.fmax that mask NaT. This may require adjustment to user- facing code. Specifically, code that either disallowed the calls to numpy.isinf or numpy.isnan or checked that they raised an exception will require adaptation, and code that mistakenly called numpy.fmax and numpy.fmin instead of numpy.maximum or numpy.minimum respectively will requre adjustment. This also affects numpy.nanmax and numpy.nanmin. (gh-14841)

C API changes PyDataType_ISUNSIZED(descr) now returns False for structured datatypes

Previously this returned True for any datatype of itemsize 0, but now this returns false for the non-flexible datatype with itemsize 0, np.dtype([]). (gh-14393)

New Features Add our own *.pxd cython import file

Added a numpy/__init__.pxd file. It will be used for cimport numpy (gh-12284)

A tuple of axes can now be input to expand_dims

The numpy.expand_dims axis keyword can now accept a tuple of axes. Previously, axis was required to be an integer. (gh-14051)

Support for 64-bit OpenBLAS

Added support for 64-bit (ILP64) OpenBLAS. See site.cfg.example for details. (gh-15012)

Add --f2cmap option to F2PY

Allow specifying a file to load Fortran-to-C type map customizations from. (gh-15113)

Improvements Different C numeric types of the same size have unique names

On any given platform, two of np.intc, np.int_, and np.longlong would previously appear indistinguishable through their repr, despite their corresponding dtype having different properties. A similar problem existed for the unsigned counterparts to these types, and on some platforms for np.double and np.longdouble

These types now always print with a unique __name__. (gh-10151)

argwhere now produces a consistent result on 0d arrays

On N-d arrays, numpy.argwhere now always produces an array of shape (n_non_zero, arr.ndim), even when arr.ndim == 0. Previously, the last axis would have a dimension of 1 in this case. (gh-13610)

Add axis argument for random.permutation and random.shuffle

Previously the random.permutation and random.shuffle functions can only shuffle an array along the first axis; they now have a new argument axis which allows shuffle along a specified axis. (gh-13829)

method keyword argument for np.random.multivariate_normal

A method keyword argument is now available for np.random.multivariate_normal with possible values {'svd', 'eigh', 'cholesky'}. To use it, write np.random.multivariate_normal(..., method=<method>). (gh-14197)

Add complex number support for numpy.fromstring

Now numpy.fromstring can read complex numbers. (gh-14227)

numpy.unique has consistent axes order when axis is not None

Using moveaxis instead of swapaxes in numpy.unique, so that the ordering of axes except the axis in arguments will not be broken. (gh-14255)

numpy.matmul with boolean output now converts to boolean values

Calling numpy.matmul where the output is a boolean array would fill the array with uint8 equivalents of the result, rather than 0/1. Now it forces the output to 0 or 1 (NPY_TRUE or NPY_FALSE). (gh-14464)

numpy.random.randint produced incorrect value when the range was 2**32

The implementation introduced in 1.17.0 had an incorrect check when determining whether to use the 32-bit path or the full 64-bit path that incorrectly redirected random integer generation with a high - low range of 2**32 to the 64-bit generator. (gh-14501)

Add complex number support for numpy.fromfile

Now numpy.fromfile can read complex numbers. (gh-14730)

std=c99 added if compiler is named gcc

GCC before version 5 requires the -std=c99 command line argument. Newer compilers automatically turn on C99 mode. The compiler setup code will automatically add the code if the compiler name has gcc in it. (gh-14771)

Changes NaT now sorts to the end of arrays

NaT is now effectively treated as the largest integer for sorting purposes, so that it sorts to the end of arrays. This change is for consistency with NaN sorting behavior. (gh-12658) (gh-15068)

Incorrect threshold in np.set_printoptions raises TypeError or ValueError

Previously an incorrect threshold raised ValueError; it now raises TypeError for non-numeric types and ValueError for nan values. (gh-13899)

Warn when saving a dtype with metadata

A UserWarning will be emitted when saving an array via numpy.save with metadata. Saving such an array may not preserve metadata, and if metadata is preserved, loading it will cause a ValueError. This shortcoming in save and load will be addressed in a future release. (gh-14142)

numpy.distutils append behavior changed for LDFLAGS and similar

[numpy.distutils]{.title-ref} has always overridden rather than appended to LDFLAGS and other similar such environment variables for compiling Fortran extensions. Now the default behavior has changed to appending - which is the expected behavior in most situations. To preserve the old (overwriting) behavior, set the NPY_DISTUTILS_APPEND_FLAGS environment variable to 0. This applies to: LDFLAGS, F77FLAGS, F90FLAGS, FREEFLAGS, FOPT, FDEBUG, and FFLAGS. NumPy 1.16 and 1.17 gave build warnings in situations where this change in behavior would have affected the compile flags used. (gh-14248)

Remove numpy.random.entropy without a deprecation

numpy.random.entropy was added to the numpy.random namespace in 1.17.0. It was meant to be a private c-extension module, but was exposed as public. It has been replaced by numpy.random.SeedSequence so the module was completely removed. (gh-14498)

Add options to quiet build configuration and build with -Werror

Added two new configuration options. During the build_src subcommand, as part of configuring NumPy, the files _numpyconfig.h and config.h are created by probing support for various runtime functions and routines. Previously, the very verbose compiler output during this stage clouded more important information. By default the output is silenced. Running runtests.py --debug-info will add --verbose-cfg to the build_src subcommand, which will restore the previous behaviour.

Adding CFLAGS=-Werror to turn warnings into errors would trigger errors during the configuration. Now runtests.py --warn-error will add --warn-error to the build subcommand, which will percolate to the build_ext and build_lib subcommands. This will add the compiler flag to those stages and turn compiler warnings into errors while actually building NumPy itself, avoiding the build_src subcommand compiler calls.

(gh-14527) (gh-14518)

Checksums MD5
40576031bfba1732ee850a1c576ba096  numpy-1.18.0-cp35-cp35m-macosx_10_6_intel.whl
99dce76e7845e10585001a6892bb5f63  numpy-1.18.0-cp35-cp35m-manylinux1_i686.whl
81e4e422392219e8bc809d9b17c0d0a6  numpy-1.18.0-cp35-cp35m-manylinux1_x86_64.whl
785d52acbbbcdd4967acd6f27e341dc6  numpy-1.18.0-cp35-cp35m-win32.whl
52ab10e952b72c69f492f30dcc03e561  numpy-1.18.0-cp35-cp35m-win_amd64.whl
dc0f8c3b608f17fd1af2ac5dab012683  numpy-1.18.0-cp36-cp36m-macosx_10_9_x86_64.whl
990b9567a5f5322ec0115552be9bd169  numpy-1.18.0-cp36-cp36m-manylinux1_i686.whl
7cdcb013123ae7b44100ca00a98f8ab3  numpy-1.18.0-cp36-cp36m-manylinux1_x86_64.whl
f6b497230df4d8b9a3e80e8e6b896caa  numpy-1.18.0-cp36-cp36m-win32.whl
28de3a14f6fcf1391929f1061590b49d  numpy-1.18.0-cp36-cp36m-win_amd64.whl
d3279da6815745d977f16383d9b8c0d7  numpy-1.18.0-cp37-cp37m-macosx_10_9_x86_64.whl
3eff2e553b4826428790551834f862e9  numpy-1.18.0-cp37-cp37m-manylinux1_i686.whl
f0f7b7e58635dea515f6aa5302bdd924  numpy-1.18.0-cp37-cp37m-manylinux1_x86_64.whl
df8e307782f55f508405b135211dbeb0  numpy-1.18.0-cp37-cp37m-win32.whl
022dd577b0858b146e2d33ed7426cf07  numpy-1.18.0-cp37-cp37m-win_amd64.whl
89bbc272a243cdf5c521fea5efe6b853  numpy-1.18.0-cp38-cp38-macosx_10_9_x86_64.whl
dc6e094c4c7777ac4040e6f945788f60  numpy-1.18.0-cp38-cp38-manylinux1_i686.whl
4cac27e608e6d24a8b2b6b911bd23d6c  numpy-1.18.0-cp38-cp38-manylinux1_x86_64.whl
45a9355fb360d321d90ae55aefb1d206  numpy-1.18.0-cp38-cp38-win32.whl
c86dc59260f42e9cce05a396cbb33f4e  numpy-1.18.0-cp38-cp38-win_amd64.whl
2f607a0e79321b6e4f426307134dbd2c  numpy-1.18.0.tar.gz
3545a7dc22e704461f6ccb604b8da952  numpy-1.18.0.zip
SHA256
b091e5d4cbbe79f0e8b6b6b522346e54a282eadb06e3fd761e9b6fafc2ca91ad  numpy-1.18.0-cp35-cp35m-macosx_10_6_intel.whl
443ab93fc35b31f01db8704681eb2fd82f3a1b2fa08eed2dd0e71f1f57423d4a  numpy-1.18.0-cp35-cp35m-manylinux1_i686.whl
88c5ccbc4cadf39f32193a5ef22e3f84674418a9fd877c63322917ae8f295a56  numpy-1.18.0-cp35-cp35m-manylinux1_x86_64.whl
e1080e37c090534adb2dd7ae1c59ee883e5d8c3e63d2a4d43c20ee348d0459c5  numpy-1.18.0-cp35-cp35m-win32.whl
f084d513de729ff10cd72a1f80db468cff464fedb1ef2fea030221a0f62d7ff4  numpy-1.18.0-cp35-cp35m-win_amd64.whl
1baefd1fb4695e7f2e305467dbd876d765e6edd30c522894df76f8301efaee36  numpy-1.18.0-cp36-cp36m-macosx_10_9_x86_64.whl
cc070fc43a494e42732d6ae2f6621db040611c1dde64762a40c8418023af56d7  numpy-1.18.0-cp36-cp36m-manylinux1_i686.whl
6f8113c8dbfc192b58996ee77333696469ea121d1c44ea429d8fd266e4c6be51  numpy-1.18.0-cp36-cp36m-manylinux1_x86_64.whl
a30f5c3e1b1b5d16ec1f03f4df28e08b8a7529d8c920bbed657f4fde61f1fbcd  numpy-1.18.0-cp36-cp36m-win32.whl
3c68c827689ca0ca713dba598335073ce0966850ec0b30715527dce4ecd84055  numpy-1.18.0-cp36-cp36m-win_amd64.whl
f6a7421da632fc01e8a3ecd19c3f7350258d82501a646747664bae9c6a87c731  numpy-1.18.0-cp37-cp37m-macosx_10_9_x86_64.whl
905cd6fa6ac14654a6a32b21fad34670e97881d832e24a3ca32e19b455edb4a8  numpy-1.18.0-cp37-cp37m-manylinux1_i686.whl
854f6ed4fa91fa6da5d764558804ba5b0f43a51e5fe9fc4fdc93270b052f188a  numpy-1.18.0-cp37-cp37m-manylinux1_x86_64.whl
ac3cf835c334fcc6b74dc4e630f9b5ff7b4c43f7fb2a7813208d95d4e10b5623  numpy-1.18.0-cp37-cp37m-win32.whl
62506e9e4d2a39c87984f081a2651d4282a1d706b1a82fe9d50a559bb58e705a  numpy-1.18.0-cp37-cp37m-win_amd64.whl
9d6de2ad782aae68f7ed0e0e616477fbf693d6d7cc5f0f1505833ff12f84a673  numpy-1.18.0-cp38-cp38-macosx_10_9_x86_64.whl
1c35fb1131362e6090d30286cfda52ddd42e69d3e2bf1fea190a0fad83ea3a18  numpy-1.18.0-cp38-cp38-manylinux1_i686.whl
56710a756c5009af9f35b91a22790701420406d9ac24cf6b652b0e22cfbbb7ff  numpy-1.18.0-cp38-cp38-manylinux1_x86_64.whl
03bbde29ac8fba860bb2c53a1525b3604a9b60417855ac3119d89868ec6041c3  numpy-1.18.0-cp38-cp38-win32.whl
712f0c32555132f4b641b918bdb1fd3c692909ae916a233ce7f50eac2de87e37  numpy-1.18.0-cp38-cp38-win_amd64.whl
e5eaf340489b76eef91352bf48b36e92ace07f6b0f1c87dcd3b5dbada97df03a  numpy-1.18.0.tar.gz
a9d72d9abaf65628f0f31bbb573b7d9304e43b1e6bbae43149c17737a42764c4  numpy-1.18.0.zip

1.17.4

3 years ago
NumPy 1.17.4 Release Notes

This release contains fixes for bugs reported against NumPy 1.17.3 along with some build improvements. The Python versions supported in this release are 3.5-3.8.

Downstream developers should use Cython >= 0.29.13 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

Highlights
  • Fixed np.random.random_integers biased generation of 8 and 16 bit integers.
  • Fixed np.einsum regression on Power9 and z/Linux.
  • Fixed histogram problem with signed integer arrays.
Contributors

A total of 5 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Charles Harris
  • Chris Burr +
  • Matti Picus
  • Qiming Sun +
  • Warren Weckesser
Pull requests merged

A total of 8 pull requests were merged for this release.

  • #14758: BLD: declare support for python 3.8
  • #14781: BUG: random: biased samples from integers() with 8 or 16 bit...
  • #14851: BUG: Fix _ctypes class circular reference. (#13808)
  • #14852: BLD: add 'apt update' to shippable
  • #14855: BUG: Fix np.einsum errors on Power9 Linux and z/Linux
  • #14857: BUG: lib: Fix histogram problem with signed integer arrays.
  • #14858: BLD: Prevent -flto from optimising long double representation...
  • #14866: MAINT: move buffer.h -> npy_buffer.h to avoid conflicts
Checksums MD5
1d5b9a989a22e2c5d0774d9a8e19f3db  numpy-1.17.4-cp35-cp35m-macosx_10_6_intel.whl
3b3fc8a8db5a026349b3ead44e755bc5  numpy-1.17.4-cp35-cp35m-manylinux1_i686.whl
bfcafd2994423e9ed8337eb4a10cc885  numpy-1.17.4-cp35-cp35m-manylinux1_x86_64.whl
8196de4edb9f37578acab2749e2af61c  numpy-1.17.4-cp35-cp35m-win32.whl
71292c5b45feec7cae81a1fc6272b0e0  numpy-1.17.4-cp35-cp35m-win_amd64.whl
39cfbfdf236a20f9901b918b39e20e54  numpy-1.17.4-cp36-cp36m-macosx_10_9_x86_64.whl
8cff96c6bc944b44b7232d72244e0838  numpy-1.17.4-cp36-cp36m-manylinux1_i686.whl
d62a4e3880432bb8deec3a51bcc8a30e  numpy-1.17.4-cp36-cp36m-manylinux1_x86_64.whl
aaa948d1ef36659450791229a966ed19  numpy-1.17.4-cp36-cp36m-win32.whl
e4482c52d63ab698d2e81ad71903b64b  numpy-1.17.4-cp36-cp36m-win_amd64.whl
4fadb49558c6089d8f8f32d775de91ae  numpy-1.17.4-cp37-cp37m-macosx_10_9_x86_64.whl
2e3a09d2aefd90856600c821db49cf99  numpy-1.17.4-cp37-cp37m-manylinux1_i686.whl
2f0527f8eedcb2b3d83912dd254356f9  numpy-1.17.4-cp37-cp37m-manylinux1_x86_64.whl
aded41f748a1dc3f71924200c3fe1bc0  numpy-1.17.4-cp37-cp37m-win32.whl
34a187a48ceb4378ac28c6951d7f8dd6  numpy-1.17.4-cp37-cp37m-win_amd64.whl
f5da7b0b94eacde2898654cfc25e8e78  numpy-1.17.4-cp38-cp38-macosx_10_9_x86_64.whl
08f4a5d6ea64c3f1f22ff9e4da4b55dd  numpy-1.17.4-cp38-cp38-manylinux1_i686.whl
bafe3eb23ae8cb6f062e55c7aab52a98  numpy-1.17.4-cp38-cp38-manylinux1_x86_64.whl
0f1add30eb00bf40e5456e8ab10b5342  numpy-1.17.4-cp38-cp38-win32.whl
11649cda484b4d0d4426c3dab2c8ed5f  numpy-1.17.4-cp38-cp38-win_amd64.whl
9147c3ee75e58d657b5b8b5a4f3564e0  numpy-1.17.4.tar.gz
d7d3563cca0b99ba68a3f064a9e46ebe  numpy-1.17.4.zip
SHA256
ede47b98de79565fcd7f2decb475e2dcc85ee4097743e551fe26cfc7eb3ff143  numpy-1.17.4-cp35-cp35m-macosx_10_6_intel.whl
43bb4b70585f1c2d153e45323a886839f98af8bfa810f7014b20be714c37c447  numpy-1.17.4-cp35-cp35m-manylinux1_i686.whl
c7354e8f0eca5c110b7e978034cd86ed98a7a5ffcf69ca97535445a595e07b8e  numpy-1.17.4-cp35-cp35m-manylinux1_x86_64.whl
64874913367f18eb3013b16123c9fed113962e75d809fca5b78ebfbb73ed93ba  numpy-1.17.4-cp35-cp35m-win32.whl
6ca4000c4a6f95a78c33c7dadbb9495c10880be9c89316aa536eac359ab820ae  numpy-1.17.4-cp35-cp35m-win_amd64.whl
75fd817b7061f6378e4659dd792c84c0b60533e867f83e0d1e52d5d8e53df88c  numpy-1.17.4-cp36-cp36m-macosx_10_9_x86_64.whl
7d81d784bdbed30137aca242ab307f3e65c8d93f4c7b7d8f322110b2e90177f9  numpy-1.17.4-cp36-cp36m-manylinux1_i686.whl
fe39f5fd4103ec4ca3cb8600b19216cd1ff316b4990f4c0b6057ad982c0a34d5  numpy-1.17.4-cp36-cp36m-manylinux1_x86_64.whl
e467c57121fe1b78a8f68dd9255fbb3bb3f4f7547c6b9e109f31d14569f490c3  numpy-1.17.4-cp36-cp36m-win32.whl
8d0af8d3664f142414fd5b15cabfd3b6cc3ef242a3c7a7493257025be5a6955f  numpy-1.17.4-cp36-cp36m-win_amd64.whl
9679831005fb16c6df3dd35d17aa31dc0d4d7573d84f0b44cc481490a65c7725  numpy-1.17.4-cp37-cp37m-macosx_10_9_x86_64.whl
acbf5c52db4adb366c064d0b7c7899e3e778d89db585feadd23b06b587d64761  numpy-1.17.4-cp37-cp37m-manylinux1_i686.whl
3d52298d0be333583739f1aec9026f3b09fdfe3ddf7c7028cb16d9d2af1cca7e  numpy-1.17.4-cp37-cp37m-manylinux1_x86_64.whl
475963c5b9e116c38ad7347e154e5651d05a2286d86455671f5b1eebba5feb76  numpy-1.17.4-cp37-cp37m-win32.whl
0c0763787133dfeec19904c22c7e358b231c87ba3206b211652f8cbe1241deb6  numpy-1.17.4-cp37-cp37m-win_amd64.whl
683828e50c339fc9e68720396f2de14253992c495fdddef77a1e17de55f1decc  numpy-1.17.4-cp38-cp38-macosx_10_9_x86_64.whl
e2e9d8c87120ba2c591f60e32736b82b67f72c37ba88a4c23c81b5b8fa49c018  numpy-1.17.4-cp38-cp38-manylinux1_i686.whl
a8f67ebfae9f575d85fa859b54d3bdecaeece74e3274b0b5c5f804d7ca789fe1  numpy-1.17.4-cp38-cp38-manylinux1_x86_64.whl
0a7a1dd123aecc9f0076934288ceed7fd9a81ba3919f11a855a7887cbe82a02f  numpy-1.17.4-cp38-cp38-win32.whl
ada4805ed51f5bcaa3a06d3dd94939351869c095e30a2b54264f5a5004b52170  numpy-1.17.4-cp38-cp38-win_amd64.whl
fb0415475e673cb9a6dd816df999e0ab9f86fa3af2b1770944e7288d2bea4ac9  numpy-1.17.4.tar.gz
f58913e9227400f1395c7b800503ebfdb0772f1c33ff8cb4d6451c06cabdf316  numpy-1.17.4.zip

1.17.3

3 years ago
NumPy 1.17.3 Release Notes

This release contains fixes for bugs reported against NumPy 1.17.2 along with a some documentation improvements. The Python versions supported in this release are 3.5-3.8.

Downstream developers should use Cython >= 0.29.13 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

Highlights
  • Wheels for Python 3.8
  • Boolean matmul fixed to use booleans instead of integers.
Compatibility notes
  • The seldom used PyArray_DescrCheck macro has been changed/fixed.
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
  • Kevin Sheppard
  • Matti Picus
  • Ralf Gommers
  • Sebastian Berg
  • Warren Weckesser
Pull requests merged

A total of 12 pull requests were merged for this release.

  • #14456: MAINT: clean up pocketfft modules inside numpy.fft namespace.
  • #14463: BUG: random.hypergeometic assumes npy_long is npy_int64, hung...
  • #14502: BUG: random: Revert gh-14458 and refix gh-14557.
  • #14504: BUG: add a specialized loop for boolean matmul.
  • #14506: MAINT: Update pytest version for Python 3.8
  • #14512: DOC: random: fix doc linking, was referencing private submodules.
  • #14513: BUG,MAINT: Some fixes and minor cleanup based on clang analysis
  • #14515: BUG: Fix randint when range is 2**32
  • #14519: MAINT: remove the entropy c-extension module
  • #14563: DOC: remove note about Pocketfft license file (non-existing here).
  • #14578: BUG: random: Create a legacy implementation of random.binomial.
  • #14687: BUG: properly define PyArray_DescrCheck
Checksums MD5
7e96dd5ca587fa647d21628072f08751  numpy-1.17.3-cp35-cp35m-macosx_10_6_intel.whl
f5fd3a434d9e426c9f01ca5669e84973  numpy-1.17.3-cp35-cp35m-manylinux1_i686.whl
d4520794f05e6466a1064e046b4ade2c  numpy-1.17.3-cp35-cp35m-manylinux1_x86_64.whl
67967e337b8378c92af9c2b6926b6dcd  numpy-1.17.3-cp35-cp35m-win32.whl
341b29b85c5305edd3f5ca9d9981f1b4  numpy-1.17.3-cp35-cp35m-win_amd64.whl
7d9492ee0fbe8292518af104772bcee0  numpy-1.17.3-cp36-cp36m-macosx_10_9_x86_64.whl
b0f1a9b0da552e2baa2e6db4668efee8  numpy-1.17.3-cp36-cp36m-manylinux1_i686.whl
8b9c50124ae13279e9969fc0cf3b5e5f  numpy-1.17.3-cp36-cp36m-manylinux1_x86_64.whl
428766619877efec34ba224d9252396c  numpy-1.17.3-cp36-cp36m-win32.whl
a2fd25bf087e7765a4322ef3fa7f87b6  numpy-1.17.3-cp36-cp36m-win_amd64.whl
98eb0ec4fe00f9f3309f2e523e76e36e  numpy-1.17.3-cp37-cp37m-macosx_10_9_x86_64.whl
415f086791be02d658a2800fa25874e4  numpy-1.17.3-cp37-cp37m-manylinux1_i686.whl
3f5fd3e63dc84db7dd3745b007faea46  numpy-1.17.3-cp37-cp37m-manylinux1_x86_64.whl
3f7ba813f7318d9671da66c610ab1e91  numpy-1.17.3-cp37-cp37m-win32.whl
deb55760769373ad1da9844df8b9c865  numpy-1.17.3-cp37-cp37m-win_amd64.whl
964b1cdad1cf20c63461246fe0638956  numpy-1.17.3-cp38-cp38-macosx_10_9_x86_64.whl
ece34643fc0c42801a8d3a53708f09ed  numpy-1.17.3-cp38-cp38-manylinux1_i686.whl
081fd68219088577857ebd265e963d1e  numpy-1.17.3-cp38-cp38-manylinux1_x86_64.whl
a231efeb2cfe69cf94764ccecba73d50  numpy-1.17.3-cp38-cp38-win32.whl
1c548f96188826e6999d3ba3fde99cf9  numpy-1.17.3-cp38-cp38-win_amd64.whl
48d6d97d6037eb8e171064a850b53aab  numpy-1.17.3.tar.gz
a3195ccbbd97b0366f0c46e36a62717a  numpy-1.17.3.zip
SHA256
4dd830a11e8724c9c9379feed1d1be43113f8bcce55f47ea7186d3946769ce26  numpy-1.17.3-cp35-cp35m-macosx_10_6_intel.whl
30c84e3a62cfcb9e3066f25226e131451312a044f1fe2040e69ce792cb7de418  numpy-1.17.3-cp35-cp35m-manylinux1_i686.whl
9395b0a41e8b7e9a284e3be7060db9d14ad80273841c952c83a5afc241d2bd98  numpy-1.17.3-cp35-cp35m-manylinux1_x86_64.whl
9e37c35fc4e9410093b04a77d11a34c64bf658565e30df7cbe882056088a91c1  numpy-1.17.3-cp35-cp35m-win32.whl
de2b1c20494bdf47f0160bd88ed05f5e48ae5dc336b8de7cfade71abcc95c0b9  numpy-1.17.3-cp35-cp35m-win_amd64.whl
669795516d62f38845c7033679c648903200980d68935baaa17ac5c7ae03ae0c  numpy-1.17.3-cp36-cp36m-macosx_10_9_x86_64.whl
4650d94bb9c947151737ee022b934b7d9a845a7c76e476f3e460f09a0c8c6f39  numpy-1.17.3-cp36-cp36m-manylinux1_i686.whl
4f2a2b279efde194877aff1f76cf61c68e840db242a5c7169f1ff0fd59a2b1e2  numpy-1.17.3-cp36-cp36m-manylinux1_x86_64.whl
ffca69e29079f7880c5392bf675eb8b4146479d976ae1924d01cd92b04cccbcc  numpy-1.17.3-cp36-cp36m-win32.whl
2e418f0a59473dac424f888dd57e85f77502a593b207809211c76e5396ae4f5c  numpy-1.17.3-cp36-cp36m-win_amd64.whl
75fcd60d682db3e1f8fbe2b8b0c6761937ad56d01c1dc73edf4ef2748d5b6bc4  numpy-1.17.3-cp37-cp37m-macosx_10_9_x86_64.whl
28b1180c758abf34a5c3fea76fcee66a87def1656724c42bb14a6f9717a5bdf7  numpy-1.17.3-cp37-cp37m-manylinux1_i686.whl
dd0667f5be56fb1b570154c2c0516a528e02d50da121bbbb2cbb0b6f87f59bc2  numpy-1.17.3-cp37-cp37m-manylinux1_x86_64.whl
25ffe71f96878e1da7e014467e19e7db90ae7d4e12affbc73101bcf61785214e  numpy-1.17.3-cp37-cp37m-win32.whl
0b0dd8f47fb177d00fa6ef2d58783c4f41ad3126b139c91dd2f7c4b3fdf5e9a5  numpy-1.17.3-cp37-cp37m-win_amd64.whl
62d22566b3e3428dfc9ec972014c38ed9a4db4f8969c78f5414012ccd80a149e  numpy-1.17.3-cp38-cp38-macosx_10_9_x86_64.whl
26efd7f7d755e6ca966a5c0ac5a930a87dbbaab1c51716ac26a38f42ecc9bc4b  numpy-1.17.3-cp38-cp38-manylinux1_i686.whl
b46554ad4dafb2927f88de5a1d207398c5385edbb5c84d30b3ef187c4a3894d8  numpy-1.17.3-cp38-cp38-manylinux1_x86_64.whl
c867eeccd934920a800f65c6068acdd6b87e80d45cd8c8beefff783b23cdc462  numpy-1.17.3-cp38-cp38-win32.whl
f1df7b2b7740dd777571c732f98adb5aad5450aee32772f1b39249c8a50386f6  numpy-1.17.3-cp38-cp38-win_amd64.whl
c93733dbebc2599d2747ceac4b18825a73767d289176ed8e02090325656d69aa  numpy-1.17.3.tar.gz
a0678793096205a4d784bd99f32803ba8100f639cf3b932dc63b21621390ea7e  numpy-1.17.3.zip

1.17.2

3 years ago
NumPy 1.17.2 Release Notes

This release contains fixes for bugs reported against NumPy 1.17.1 along with a some documentation improvements. The most important fix is for lexsort when the keys are of type (u)int8 or (u)int16. If you are currently using 1.17 you should upgrade.

The Python versions supported in this release are 3.5-3.7, Python 2.7 has been dropped. Python 3.8b4 should work with the released source packages, but there are no future guarantees.

Downstream developers should use Cython >= 0.29.13 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture. The NumPy wheels on PyPI are built from the OpenBLAS development branch in order to avoid those errors.

Contributors

A total of 7 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • CakeWithSteak +
  • Charles Harris
  • Dan Allan
  • Hameer Abbasi
  • Lars Grueter
  • Matti Picus
  • Sebastian Berg
Pull requests merged

A total of 8 pull requests were merged for this release.

  • #14418: BUG: Fix aradixsort indirect indexing.
  • #14420: DOC: Fix a minor typo in dispatch documentation.
  • #14421: BUG: test, fix regression in converting to ctypes
  • #14430: BUG: Do not show Override module in private error classes.
  • #14432: BUG: Fixed maximum relative error reporting in assert_allclose.
  • #14433: BUG: Fix uint-overflow if padding with linear_ramp and negative...
  • #14436: BUG: Update 1.17.x with 1.18.0-dev pocketfft.py.
  • #14446: REL: Prepare for NumPy 1.17.2 release.
Checksums MD5
900786591ffe811ff9ff8b3fcf9e3ff9  numpy-1.17.2-cp35-cp35m-macosx_10_6_intel.whl
307df8c629637865205276f0e48cbe53  numpy-1.17.2-cp35-cp35m-manylinux1_i686.whl
279b286a569bacba85dfe44d86ed9767  numpy-1.17.2-cp35-cp35m-manylinux1_x86_64.whl
0bc93e932b32408cceb5579f074e30a9  numpy-1.17.2-cp35-cp35m-win32.whl
b963be3cae47b66b2c8b433d34cb93d1  numpy-1.17.2-cp35-cp35m-win_amd64.whl
3eed381285a43bd23d7c568c6c165ec9  numpy-1.17.2-cp36-cp36m-macosx_10_6_intel.whl
0a6d7616b5ed35d65a58c6a61256afb0  numpy-1.17.2-cp36-cp36m-manylinux1_i686.whl
5b5a2f0bc6f01c1ae2c831fbfd8c8b06  numpy-1.17.2-cp36-cp36m-manylinux1_x86_64.whl
8f166ccebf19a8c9c6ac00c8d93ba566  numpy-1.17.2-cp36-cp36m-win32.whl
406fc90887f6af60f2edf229b2cfb2cf  numpy-1.17.2-cp36-cp36m-win_amd64.whl
a82da3fd77787c73cae9057f63e3b666  numpy-1.17.2-cp37-cp37m-macosx_10_6_intel.whl
1f9b449eca275014f133872cdddf166d  numpy-1.17.2-cp37-cp37m-manylinux1_i686.whl
1de9df1e07a1f2becc7925b0861d1b2d  numpy-1.17.2-cp37-cp37m-manylinux1_x86_64.whl
0ae4a060c7353723c340aaf0fc655220  numpy-1.17.2-cp37-cp37m-win32.whl
a7a026ef5c54dbc295e134d04367514e  numpy-1.17.2-cp37-cp37m-win_amd64.whl
68d582e09b951717b7ae1e9c0011d779  numpy-1.17.2.tar.gz
a0fffd7651e6ed4c60d94394ca6662cd  numpy-1.17.2.zip
SHA256
3d0b0989dd2d066db006158de7220802899a1e5c8cf622abe2d0bd158fd01c2c  numpy-1.17.2-cp35-cp35m-macosx_10_6_intel.whl
7bd355ad7496f4ce1d235e9814ec81ee3d28308d591c067ce92e49f745ba2c2f  numpy-1.17.2-cp35-cp35m-manylinux1_i686.whl
7d077f2976b8f3de08a0dcf5d72083f4af5411e8fddacd662aae27baa2601196  numpy-1.17.2-cp35-cp35m-manylinux1_x86_64.whl
05dbfe72684cc14b92568de1bc1f41e5f62b00f714afc9adee42f6311738091f  numpy-1.17.2-cp35-cp35m-win32.whl
f4a4f6aba148858a5a5d546a99280f71f5ee6ec8182a7d195af1a914195b21a2  numpy-1.17.2-cp35-cp35m-win_amd64.whl
ee8e9d7cad5fe6dde50ede0d2e978d81eafeaa6233fb0b8719f60214cf226578  numpy-1.17.2-cp36-cp36m-macosx_10_6_intel.whl
438a3f0e7b681642898fd7993d38e2bf140a2d1eafaf3e89bb626db7f50db355  numpy-1.17.2-cp36-cp36m-manylinux1_i686.whl
b458de8624c9f6034af492372eb2fee41a8e605f03f4732f43fc099e227858b2  numpy-1.17.2-cp36-cp36m-manylinux1_x86_64.whl
0d82cb7271a577529d07bbb05cb58675f2deb09772175fab96dc8de025d8ac05  numpy-1.17.2-cp36-cp36m-win32.whl
12322df2e21f033a60c80319c25011194cd2a21294cc66fee0908aeae2c27832  numpy-1.17.2-cp36-cp36m-win_amd64.whl
e70fc8ff03a961f13363c2c95ef8285e0cf6a720f8271836f852cc0fa64e97c8  numpy-1.17.2-cp37-cp37m-macosx_10_6_intel.whl
a4092682778dc48093e8bda8d26ee8360153e2047826f95a3f5eae09f0ae3abf  numpy-1.17.2-cp37-cp37m-manylinux1_i686.whl
10132aa1fef99adc85a905d82e8497a580f83739837d7cbd234649f2e9b9dc58  numpy-1.17.2-cp37-cp37m-manylinux1_x86_64.whl
16f19b3aa775dddc9814e02a46b8e6ae6a54ed8cf143962b4e53f0471dbd7b16  numpy-1.17.2-cp37-cp37m-win32.whl
5fd214f482ab53f2cea57414c5fb3e58895b17df6e6f5bca5be6a0bb6aea23bb  numpy-1.17.2-cp37-cp37m-win_amd64.whl
81a4f748dcfa80a7071ad8f3d9f8edb9f8bc1f0a9bdd19bfd44fd42c02bd286c  numpy-1.17.2.tar.gz
73615d3edc84dd7c4aeb212fa3748fb83217e00d201875a47327f55363cef2df  numpy-1.17.2.zip

1.16.5

3 years ago
NumPy 1.16.5 Release Notes

The NumPy 1.16.5 release fixes bugs reported against the 1.16.4 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.7-dev, which should fix errors on Skylake series cpus.

Downstream developers building this release should use Cython >= 0.29.2 and, if using OpenBLAS, OpenBLAS >= v0.3.7. The supported Python versions are 2.7 and 3.5-3.7.

Contributors

A total of 18 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Alexander Shadchin
  • Allan Haldane
  • Bruce Merry +
  • Charles Harris
  • Colin Snyder +
  • Dan Allan +
  • Emile +
  • Eric Wieser
  • Grey Baker +
  • Maksim Shabunin +
  • Marten van Kerkwijk
  • Matti Picus
  • Peter Andreas Entschev +
  • Ralf Gommers
  • Richard Harris +
  • Sebastian Berg
  • Sergei Lebedev +
  • Stephan Hoyer
Pull requests merged

A total of 23 pull requests were merged for this release.

  • #13742: ENH: Add project URLs to setup.py
  • #13823: TEST, ENH: fix tests and ctypes code for PyPy
  • #13845: BUG: use npy_intp instead of int for indexing array
  • #13867: TST: Ignore DeprecationWarning during nose imports
  • #13905: BUG: Fix use-after-free in boolean indexing
  • #13933: MAINT/BUG/DOC: Fix errors in _add_newdocs
  • #13984: BUG: fix byte order reversal for datetime64[ns]
  • #13994: MAINT,BUG: Use nbytes to also catch empty descr during allocation
  • #14042: BUG: np.array cleared errors occured in PyMemoryView_FromObject
  • #14043: BUG: Fixes for Undefined Behavior Sanitizer (UBSan) errors.
  • #14044: BUG: ensure that casting to/from structured is properly checked.
  • #14045: MAINT: fix histogram*d dispatchers
  • #14046: BUG: further fixup to histogram2d dispatcher.
  • #14052: BUG: Replace contextlib.suppress for Python 2.7
  • #14056: BUG: fix compilation of 3rd party modules with Py_LIMITED_API...
  • #14057: BUG: Fix memory leak in dtype from dict contructor
  • #14058: DOC: Document array_function at a higher level.
  • #14084: BUG, DOC: add new recfunctions to __all__
  • #14162: BUG: Remove stray print that causes a SystemError on python 3.7
  • #14297: TST: Pin pytest version to 5.0.1.
  • #14322: ENH: Enable huge pages in all Linux builds
  • #14346: BUG: fix behavior of structured_to_unstructured on non-trivial...
  • #14382: REL: Prepare for the NumPy 1.16.5 release.
Checksums MD5
cf7ff97464eb044cb49618be5fe29aee  numpy-1.16.5-cp27-cp27m-macosx_10_9_x86_64.whl
6fbf51644f8722fa90276c04fe3d031f  numpy-1.16.5-cp27-cp27m-manylinux1_i686.whl
df4ab8600495131e44ad1b173f6cc9fc  numpy-1.16.5-cp27-cp27m-manylinux1_x86_64.whl
2f6fd50a02da9d56e3d950a6b738337e  numpy-1.16.5-cp27-cp27m-win32.whl
d36b67522ee102b7865a83b26a1d97aa  numpy-1.16.5-cp27-cp27m-win_amd64.whl
5b4f83c092257f6c98bedd44505e7b6d  numpy-1.16.5-cp27-cp27mu-manylinux1_i686.whl
d6fd33607099abdea62752cf303a1763  numpy-1.16.5-cp27-cp27mu-manylinux1_x86_64.whl
fa48e45bd3e5dbac923296b039e70706  numpy-1.16.5-cp35-cp35m-macosx_10_9_x86_64.whl
85a7db0c597037cced7ab82c0f0cdcc8  numpy-1.16.5-cp35-cp35m-manylinux1_i686.whl
401e053e98faada4bc8cdcc9b04d619f  numpy-1.16.5-cp35-cp35m-manylinux1_x86_64.whl
2912ba9109dca60115dba59606cac27b  numpy-1.16.5-cp35-cp35m-win32.whl
756b7ff320ef821f2cd279c5df7c9f46  numpy-1.16.5-cp35-cp35m-win_amd64.whl
2ae22b506a07575a4bc6a91d2db25df5  numpy-1.16.5-cp36-cp36m-macosx_10_9_x86_64.whl
12cbf61ed2abec3f77cfa3a46b7e4bdc  numpy-1.16.5-cp36-cp36m-manylinux1_i686.whl
ab726a4244e9e070cde814d8415cff4c  numpy-1.16.5-cp36-cp36m-manylinux1_x86_64.whl
752e461d193b7049e25c7e20f7d4808a  numpy-1.16.5-cp36-cp36m-win32.whl
2712434cdfb27a301c49cf97eee656d5  numpy-1.16.5-cp36-cp36m-win_amd64.whl
394fee86faa235dea6d2bb6270961266  numpy-1.16.5-cp37-cp37m-macosx_10_9_x86_64.whl
0713da36acc884897f76bc8117ca7a42  numpy-1.16.5-cp37-cp37m-manylinux1_i686.whl
7856a32b3b2d93d018d2ba5dce941ffa  numpy-1.16.5-cp37-cp37m-manylinux1_x86_64.whl
33b7fd0d727c9f09d61879afde8096f6  numpy-1.16.5-cp37-cp37m-win32.whl
5287ce297cd8093463bb29bef42db103  numpy-1.16.5-cp37-cp37m-win_amd64.whl
f9c22f53f17e81b25af8e53b026a9831  numpy-1.16.5.tar.gz
adaad8c166cf0344af3ca1a664dd4a38  numpy-1.16.5.zip
SHA256
37fdd3bb05caaaacac58015cfa38e38b006ee9cef1eaacdb70bb68c16ac7db1d  numpy-1.16.5-cp27-cp27m-macosx_10_9_x86_64.whl
f42e21d8db16315bc30b437bff63d6b143befb067b8cd396fa3ef17f1c21e1a0  numpy-1.16.5-cp27-cp27m-manylinux1_i686.whl
4208b225ae049641a7a99ab92e84ce9d642ded8250d2b6c9fd61a7fa8c072561  numpy-1.16.5-cp27-cp27m-manylinux1_x86_64.whl
4d790e2a37aa3350667d8bb8acc919010c7e46234c3d615738564ddc6d22026f  numpy-1.16.5-cp27-cp27m-win32.whl
1594aec94e4896e0688f4f405481fda50fb70547000ae71f2e894299a088a661  numpy-1.16.5-cp27-cp27m-win_amd64.whl
2c5a556272c67566e8f4607d1c78ad98e954fa6c32802002a4a0b029ad8dd759  numpy-1.16.5-cp27-cp27mu-manylinux1_i686.whl
3a96e59f61c7a8f8838d0f4d19daeba551c5f07c5cdd5c81e8e9d4089ade0042  numpy-1.16.5-cp27-cp27mu-manylinux1_x86_64.whl
612297115bade249a118616c065597ff2e5e1f47ed220d7ba71f3e6c6ebcd814  numpy-1.16.5-cp35-cp35m-macosx_10_9_x86_64.whl
dbc9e9a6a5e0c4f57498855d4e30ef8b599c0ce13fdf9d64299197508d67d9e8  numpy-1.16.5-cp35-cp35m-manylinux1_i686.whl
fada0492dd35412cd96e0578677e9a4bdae8f102ef2b631301fcf19066b57119  numpy-1.16.5-cp35-cp35m-manylinux1_x86_64.whl
ada1a1cd68b9874fa480bd287438f92bd7ce88ca0dd6e8d56c70f2b3dab97314  numpy-1.16.5-cp35-cp35m-win32.whl
27aa457590268cb059c47daa8c55f48c610ce81da8a062ec117f74efa9124ec9  numpy-1.16.5-cp35-cp35m-win_amd64.whl
03b28330253904d410c3c82d66329f29645eb54a7345cb7dd7a1529d61fa603f  numpy-1.16.5-cp36-cp36m-macosx_10_9_x86_64.whl
911d91ffc6688db0454d69318584415f7dfb0fc1b8ac9b549234e39495684230  numpy-1.16.5-cp36-cp36m-manylinux1_i686.whl
ceb353e3ae840ce76256935b18c17236ca808509f231f41d5173d7b2680d5e77  numpy-1.16.5-cp36-cp36m-manylinux1_x86_64.whl
e6ce7c0051ed5443f8343da2a14580aa438822ae6526900332c4564f371d2aaf  numpy-1.16.5-cp36-cp36m-win32.whl
9a2b950bca9faca0145491ae9fd214c432f2b1e36783399bc2c3732e7bcc94f4  numpy-1.16.5-cp36-cp36m-win_amd64.whl
00836128feaf9a7c7fedeea05ad593e7965f523d23fe3ffbf20cfffd88e9f2b1  numpy-1.16.5-cp37-cp37m-macosx_10_9_x86_64.whl
3d6a354bb1a1ce2cabd47e0bdcf25364322fb55a29efb59f76944d7ee546d8b6  numpy-1.16.5-cp37-cp37m-manylinux1_i686.whl
f7fb27c0562206787011cf299c03f663c604b58a35a9c2b5218ba6485a17b145  numpy-1.16.5-cp37-cp37m-manylinux1_x86_64.whl
46469e7fcb689036e72ce61c3d432ed35eb4c71b5119e894845b434b0fae5813  numpy-1.16.5-cp37-cp37m-win32.whl
fb207362394567343d84c0462ec3ba203a21c78be9a0fdbb94982e76859ec37e  numpy-1.16.5-cp37-cp37m-win_amd64.whl
2b63c414fb43a4f0cb69b29b7e9d48275af0dbb5b1ffd2f2de99c4df9967e151  numpy-1.16.5.tar.gz
8bb452d94e964b312205b0de1238dd7209da452343653ab214b5d681780e7a0c  numpy-1.16.5.zip

1.17.1

3 years ago
NumPy 1.17.1 Release Notes

This release contains a number of fixes for bugs reported against NumPy 1.17.0 along with a few documentation and build improvements. The Python versions supported are 3.5-3.7, note that Python 2.7 has been dropped. Python 3.8b3 should work with the released source packages, but there are no future guarantees.

Downstream developers should use Cython >= 0.29.13 for Python 3.8 support and OpenBLAS >= 3.7 to avoid problems on the Skylake architecture. The NumPy wheels on PyPI are built from the OpenBLAS development branch in order to avoid those problems.

Contributors

A total of 17 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Alexander Jung +
  • Allan Haldane
  • Charles Harris
  • Eric Wieser
  • Giuseppe Cuccu +
  • Hiroyuki V. Yamazaki
  • Jérémie du Boisberranger
  • Kmol Yuan +
  • Matti Picus
  • Max Bolingbroke +
  • Maxwell Aladago +
  • Oleksandr Pavlyk
  • Peter Andreas Entschev
  • Sergei Lebedev
  • Seth Troisi +
  • Vladimir Pershin +
  • Warren Weckesser
Pull requests merged

A total of 24 pull requests were merged for this release.

  • #14156: TST: Allow fuss in testing strided/non-strided exp/log loops
  • #14157: BUG: avx2_scalef_ps must be static
  • #14158: BUG: Remove stray print that causes a SystemError on python 3.7.
  • #14159: BUG: Fix DeprecationWarning in python 3.8.
  • #14160: BLD: Add missing gcd/lcm definitions to npy_math.h
  • #14161: DOC, BUILD: cleanups and fix (again) 'build dist'
  • #14166: TST: Add 3.8-dev to travisCI testing.
  • #14194: BUG: Remove the broken clip wrapper (Backport)
  • #14198: DOC: Fix hermitian argument docs in svd.
  • #14199: MAINT: Workaround for Intel compiler bug leading to failing test
  • #14200: TST: Clean up of test_pocketfft.py
  • #14201: BUG: Make advanced indexing result on read-only subclass writeable...
  • #14236: BUG: Fixed default BitGenerator name
  • #14237: ENH: add c-imported modules for freeze analysis in np.random
  • #14296: TST: Pin pytest version to 5.0.1
  • #14301: BUG: Fix leak in the f2py-generated module init and PyMem_Del...
  • #14302: BUG: Fix formatting error in exception message
  • #14307: MAINT: random: Match type of SeedSequence.pool_size to DEFAULT_POOL_SIZE.
  • #14308: BUG: Fix numpy.random bug in platform detection
  • #14309: ENH: Enable huge pages in all Linux builds
  • #14330: BUG: Fix segfault in random.permutation(x) when x is a string.
  • #14338: BUG: don't fail when lexsorting some empty arrays (#14228)
  • #14339: BUG: Fix misuse of .names and .fields in various places (backport...
  • #14345: BUG: fix behavior of structured_to_unstructured on non-trivial...
  • #14350: REL: Prepare 1.17.1 release
Checksums MD5
99708c771ef1efe283ecfd6e30698e1a  numpy-1.17.1-cp35-cp35m-macosx_10_9_x86_64.whl
5547039914b3f9541137e8cd9fab57c7  numpy-1.17.1-cp35-cp35m-manylinux1_i686.whl
b24c5726f07d5f71d244baaa513af920  numpy-1.17.1-cp35-cp35m-manylinux1_x86_64.whl
55070ccaeabbe5036c5a577f4e4cc2b0  numpy-1.17.1-cp35-cp35m-win32.whl
086a59eab8e5b8ebbf10755b8a2db677  numpy-1.17.1-cp35-cp35m-win_amd64.whl
a7d523ddbe70107016026da5474b7245  numpy-1.17.1-cp36-cp36m-macosx_10_9_x86_64.whl
794d982a831762918eba7fa5cf8f16e8  numpy-1.17.1-cp36-cp36m-manylinux1_i686.whl
c50ee655b018c315e75a8cb40c771225  numpy-1.17.1-cp36-cp36m-manylinux1_x86_64.whl
e1b9c4c90df2b84674dbd6c3875d44b1  numpy-1.17.1-cp36-cp36m-win32.whl
0799ddcbb5d28d789d613558bce33b30  numpy-1.17.1-cp36-cp36m-win_amd64.whl
7e723a8f451eaa091f09a4df09bdf776  numpy-1.17.1-cp37-cp37m-macosx_10_9_x86_64.whl
c4c09c737c19d86829e4f2268d2c8991  numpy-1.17.1-cp37-cp37m-manylinux1_i686.whl
c711188365a7677334ddc754778d4822  numpy-1.17.1-cp37-cp37m-manylinux1_x86_64.whl
dddef61754e2ddb46cce6a1656d35eb4  numpy-1.17.1-cp37-cp37m-win32.whl
5e022462aedaac5e9d7f5b09a8f7e3bb  numpy-1.17.1-cp37-cp37m-win_amd64.whl
b2260d650bc28c846e18b7c29a089953  numpy-1.17.1.tar.gz
cad292965675fbe8d5fbae3009ab8b58  numpy-1.17.1.zip
SHA256
078c8025da5ab9e8657edc9c2a1e9642e06e953bc7baa2e65c1aa9d9dfb7e98b  numpy-1.17.1-cp35-cp35m-macosx_10_9_x86_64.whl
a3f6b3024f8826d8b1490e6e2a9b99e841cd2c375791b1df62991bd8f4c00b89  numpy-1.17.1-cp35-cp35m-manylinux1_i686.whl
bede70fd8699695363f39e86c1e869b2c8b74fb5ef135a67b9e1eeebff50322a  numpy-1.17.1-cp35-cp35m-manylinux1_x86_64.whl
1c841033f4fe6801648180c3033c45b3235a8bbd09bc7249010f99ea27bb6790  numpy-1.17.1-cp35-cp35m-win32.whl
03f2ebcbffcce2dec8860633b89a93e80c6a239d21a77ae8b241450dc21e8c35  numpy-1.17.1-cp35-cp35m-win_amd64.whl
c304b2221f33489cd15a915237a84cdfe9420d7e4d4828c78a0820f9d990395c  numpy-1.17.1-cp36-cp36m-macosx_10_9_x86_64.whl
0fbfa98c5d5c3c6489cc1e852ec94395d51f35d9ebe70c6850e47f465038cdf4  numpy-1.17.1-cp36-cp36m-manylinux1_i686.whl
fb6178b0488b0ce6a54bc4accbdf5225e937383586555604155d64773f6beb2b  numpy-1.17.1-cp36-cp36m-manylinux1_x86_64.whl
2c0984a01ddd0aeec89f0ce46ef21d64761048cd76c0074d0658c91f9131f154  numpy-1.17.1-cp36-cp36m-win32.whl
8c2d98d0623bd63fb883b65256c00454d5f53127a5a7bcdaa8bdc582814e8cb4  numpy-1.17.1-cp36-cp36m-win_amd64.whl
8cb4b6ae45aad6d26712a1ce0a3f2556c5e1484867f9649e03496e45d6a5eba4  numpy-1.17.1-cp37-cp37m-macosx_10_9_x86_64.whl
4c166dcb0fff7cb3c0bbc682dfb5061852a2547efb6222e043a7932828c08fb5  numpy-1.17.1-cp37-cp37m-manylinux1_i686.whl
93050e73c446c82065b7410221b07682e475ac51887cd9368227a5d944afae80  numpy-1.17.1-cp37-cp37m-manylinux1_x86_64.whl
fa5f2a8ef1e07ba258dc07d4dd246de23ef4ab920ae0f3fa2a1cc5e90f0f1888  numpy-1.17.1-cp37-cp37m-win32.whl
fd5e830d4dc31658d61a6452cd3e842213594d8c15578cdae6829e36ad9c0930  numpy-1.17.1-cp37-cp37m-win_amd64.whl
24d479ebc92f2d1c739622568f0e4d1382c6bf9778505146a370c8e2f5749839  numpy-1.17.1.tar.gz
f11331530f0eff69a758d62c2461cd98cdc2eae0147279d8fc86e0464eb7e8ca  numpy-1.17.1.zip

1.17.0

4 years ago
NumPy 1.17.0 Release Notes

This NumPy release contains a number of new features that should substantially improve its performance and usefulness, see Highlights below for a summary. The Python versions supported are 3.5-3.7, note that Python 2.7 has been dropped. Python 3.8b2 should work with the released source packages, but there are no future guarantees.

Downstream developers should use Cython >= 0.29.11 for Python 3.8 support and OpenBLAS >= 3.7 (not currently out) to avoid problems on the Skylake architecture. The NumPy wheels on PyPI are built from the OpenBLAS development branch in order to avoid those problems.

Highlights
  • A new extensible random module along with four selectable random number generators <random.BitGenerators> and improved seeding designed for use in parallel processes has been added. The currently available bit generators are MT19937 <random.mt19937.MT19937>, PCG64 <random.pcg64.PCG64>, Philox <random.philox.Philox>, and SFC64 <random.sfc64.SFC64>. See below under New Features.

  • NumPy's FFT <fft> implementation was changed from fftpack to pocketfft, resulting in faster, more accurate transforms and better handling of datasets of prime length. See below under Improvements.

  • New radix sort and timsort sorting methods. It is currently not possible to choose which will be used. They are hardwired to the datatype and used when either stable or mergesort is passed as the method. See below under Improvements.

  • Overriding numpy functions is now possible by default, see __array_function__ below.

New functions
  • numpy.errstate is now also a function decorator
Deprecations numpy.polynomial functions warn when passed float in place of int

Previously functions in this module would accept float values provided they were integral (1.0, 2.0, etc). For consistency with the rest of numpy, doing so is now deprecated, and in future will raise a TypeError.

Similarly, passing a float like 0.5 in place of an integer will now raise a TypeError instead of the previous ValueError.

Deprecate numpy.distutils.exec_command and temp_file_name

The internal use of these functions has been refactored and there are better alternatives. Replace exec_command with subprocess.Popen and temp_file_name <numpy.distutils.exec_command> with tempfile.mkstemp.

Writeable flag of C-API wrapped arrays

When an array is created from the C-API to wrap a pointer to data, the only indication we have of the read-write nature of the data is the writeable flag set during creation. It is dangerous to force the flag to writeable. In the future it will not be possible to switch the writeable flag to True from python. This deprecation should not affect many users since arrays created in such a manner are very rare in practice and only available through the NumPy C-API.

numpy.nonzero should no longer be called on 0d arrays

The behavior of numpy.nonzero on 0d arrays was surprising, making uses of it almost always incorrect. If the old behavior was intended, it can be preserved without a warning by using nonzero(atleast_1d(arr)) instead of nonzero(arr). In a future release, it is most likely this will raise a ValueError.

Writing to the result of numpy.broadcast_arrays will warn

Commonly numpy.broadcast_arrays returns a writeable array with internal overlap, making it unsafe to write to. A future version will set the writeable flag to False, and require users to manually set it to True if they are sure that is what they want to do. Now writing to it will emit a deprecation warning with instructions to set the writeable flag True. Note that if one were to inspect the flag before setting it, one would find it would already be True. Explicitly setting it, though, as one will need to do in future versions, clears an internal flag that is used to produce the deprecation warning. To help alleviate confusion, an additional FutureWarning will be emitted when accessing the writeable flag state to clarify the contradiction.

Note that for the C-side buffer protocol such an array will return a readonly buffer immediately unless a writable buffer is requested. If a writeable buffer is requested a warning will be given. When using cython, the const qualifier should be used with such arrays to avoid the warning (e.g. cdef const double[::1] view).

Future Changes Shape-1 fields in dtypes won't be collapsed to scalars in a future version

Currently, a field specified as [(name, dtype, 1)] or "1type" is interpreted as a scalar field (i.e., the same as [(name, dtype)] or [(name, dtype, ()]). This now raises a FutureWarning; in a future version, it will be interpreted as a shape-(1,) field, i.e. the same as [(name, dtype, (1,))] or "(1,)type" (consistently with [(name, dtype, n)] / "ntype" with n>1, which is already equivalent to [(name, dtype, (n,)] / "(n,)type").

Compatibility notes float16 subnormal rounding

Casting from a different floating point precision to float16 used incorrect rounding in some edge cases. This means in rare cases, subnormal results will now be rounded up instead of down, changing the last bit (ULP) of the result.

Signed zero when using divmod

Starting in version 1.12.0, numpy incorrectly returned a negatively signed zero when using the divmod and floor_divide functions when the result was zero. For example::

   >>> np.zeros(10)//1
   array([-0., -0., -0., -0., -0., -0., -0., -0., -0., -0.])

With this release, the result is correctly returned as a positively signed zero::

   >>> np.zeros(10)//1
   array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])
MaskedArray.mask now returns a view of the mask, not the mask itself

Returning the mask itself was unsafe, as it could be reshaped in place which would violate expectations of the masked array code. The behavior of mask <ma.MaskedArray.mask> is now consistent with data <ma.MaskedArray.data>, which also returns a view.

The underlying mask can still be accessed with ._mask if it is needed. Tests that contain assert x.mask is not y.mask or similar will need to be updated.

Do not lookup __buffer__ attribute in numpy.frombuffer

Looking up __buffer__ attribute in numpy.frombuffer was undocumented and non-functional. This code was removed. If needed, use frombuffer(memoryview(obj), ...) instead.

out is buffered for memory overlaps in take, choose, put

If the out argument to these functions is provided and has memory overlap with the other arguments, it is now buffered to avoid order-dependent behavior.

Unpickling while loading requires explicit opt-in

The functions load, and lib.format.read_array take an allow_pickle keyword which now defaults to False in response to CVE-2019-6446 <https://nvd.nist.gov/vuln/detail/CVE-2019-6446>_.

Potential changes to the random stream in old random module

Due to bugs in the application of log to random floating point numbers, the stream may change when sampling from ~RandomState.beta, ~RandomState.binomial, ~RandomState.laplace, ~RandomState.logistic, ~RandomState.logseries or ~RandomState.multinomial if a 0 is generated in the underlying MT19937 <~numpy.random.mt11937.MT19937> random stream. There is a 1 in :math:10^{53} chance of this occurring, so the probability that the stream changes for any given seed is extremely small. If a 0 is encountered in the underlying generator, then the incorrect value produced (either numpy.inf or numpy.nan) is now dropped.

i0 now always returns a result with the same shape as the input

Previously, the output was squeezed, such that, e.g., input with just a single element would lead to an array scalar being returned, and inputs with shapes such as (10, 1) would yield results that would not broadcast against the input.

Note that we generally recommend the SciPy implementation over the numpy one: it is a proper ufunc written in C, and more than an order of magnitude faster.

can_cast no longer assumes all unsafe casting is allowed

Previously, can_cast returned True for almost all inputs for casting='unsafe', even for cases where casting was not possible, such as from a structured dtype to a regular one. This has been fixed, making it more consistent with actual casting using, e.g., the .astype <ndarray.astype> method.

ndarray.flags.writeable can be switched to true slightly more often

In rare cases, it was not possible to switch an array from not writeable to writeable, although a base array is writeable. This can happen if an intermediate ndarray.base object is writeable. Previously, only the deepest base object was considered for this decision. However, in rare cases this object does not have the necessary information. In that case switching to writeable was never allowed. This has now been fixed.

C API changes dimension or stride input arguments are now passed by npy_intp const*

Previously these function arguments were declared as the more strict npy_intp*, which prevented the caller passing constant data. This change is backwards compatible, but now allows code like::

npy_intp const fixed_dims[] = {1, 2, 3};
// no longer complains that the const-qualifier is discarded
npy_intp size = PyArray_MultiplyList(fixed_dims, 3);
New Features New extensible numpy.random module with selectable random number generators

A new extensible numpy.random module along with four selectable random number generators and improved seeding designed for use in parallel processes has been added. The currently available :ref:Bit Generators <bit_generator> are ~mt19937.MT19937, ~pcg64.PCG64, ~philox.Philox, and ~sfc64.SFC64. PCG64 is the new default while MT19937 is retained for backwards compatibility. Note that the legacy random module is unchanged and is now frozen, your current results will not change. More information is available in the :ref:API change description <new-or-different> and in the top-level view <numpy.random> documentation.

libFLAME

Support for building NumPy with the libFLAME linear algebra package as the LAPACK, implementation, see libFLAME <https://www.cs.utexas.edu/~flame/web/libFLAME.html>_ for details.

User-defined BLAS detection order

distutils now uses an environment variable, comma-separated and case insensitive, to determine the detection order for BLAS libraries. By default NPY_BLAS_ORDER=mkl,blis,openblas,atlas,accelerate,blas. However, to force the use of OpenBLAS simply do::

NPY_BLAS_ORDER=openblas python setup.py build

which forces the use of OpenBLAS. This may be helpful for users which have a MKL installation but wishes to try out different implementations.

User-defined LAPACK detection order

numpy.distutils now uses an environment variable, comma-separated and case insensitive, to determine the detection order for LAPACK libraries. By default NPY_LAPACK_ORDER=mkl,openblas,flame,atlas,accelerate,lapack. However, to force the use of OpenBLAS simply do::

NPY_LAPACK_ORDER=openblas python setup.py build

which forces the use of OpenBLAS. This may be helpful for users which have a MKL installation but wishes to try out different implementations.

ufunc.reduce and related functions now accept a where mask

ufunc.reduce, sum, prod, min, max all now accept a where keyword argument, which can be used to tell which elements to include in the reduction. For reductions that do not have an identity, it is necessary to also pass in an initial value (e.g., initial=np.inf for min). For instance, the equivalent of nansum would be np.sum(a, where=~np.isnan(a)).

Timsort and radix sort have replaced mergesort for stable sorting

Both radix sort and timsort have been implemented and are now used in place of mergesort. Due to the need to maintain backward compatibility, the sorting kind options "stable" and "mergesort" have been made aliases of each other with the actual sort implementation depending on the array type. Radix sort is used for small integer types of 16 bits or less and timsort for the remaining types. Timsort features improved performace on data containing already or nearly sorted data and performs like mergesort on random data and requires :math:O(n/2) working space. Details of the timsort algorithm can be found at CPython listsort.txt <https://github.com/python/cpython/blob/3.7/Objects/listsort.txt>_.

packbits and unpackbits accept an order keyword

The order keyword defaults to big, and will order the bits accordingly. For 'order=big' 3 will become [0, 0, 0, 0, 0, 0, 1, 1], and [1, 1, 0, 0, 0, 0, 0, 0] for order=little

unpackbits now accepts a count parameter

count allows subsetting the number of bits that will be unpacked up-front, rather than reshaping and subsetting later, making the packbits operation invertible, and the unpacking less wasteful. Counts larger than the number of available bits add zero padding. Negative counts trim bits off the end instead of counting from the beginning. None counts implement the existing behavior of unpacking everything.

linalg.svd and linalg.pinv can be faster on hermitian inputs

These functions now accept a hermitian argument, matching the one added to linalg.matrix_rank in 1.14.0.

divmod operation is now supported for two timedelta64 operands

The divmod operator now handles two timedelta64 operands, with type signature mm->qm.

fromfile now takes an offset argument

This function now takes an offset keyword argument for binary files, which specifics the offset (in bytes) from the file's current position. Defaults to 0.

New mode "empty" for pad

This mode pads an array to a desired shape without initializing the new entries.

empty_like and related functions now accept a shape argument

empty_like, full_like, ones_like and zeros_like now accept a shape keyword argument, which can be used to create a new array as the prototype, overriding its shape as well. This is particularly useful when combined with the __array_function__ protocol, allowing the creation of new arbitrary-shape arrays from NumPy-like libraries when such an array is used as the prototype.

Floating point scalars implement as_integer_ratio to match the builtin float

This returns a (numerator, denominator) pair, which can be used to construct a fractions.Fraction.

Structured dtype objects can be indexed with multiple fields names

arr.dtype[['a', 'b']] now returns a dtype that is equivalent to arr[['a', 'b']].dtype, for consistency with arr.dtype['a'] == arr['a'].dtype.

Like the dtype of structured arrays indexed with a list of fields, this dtype has the same itemsize as the original, but only keeps a subset of the fields.

This means that arr[['a', 'b']] and arr.view(arr.dtype[['a', 'b']]) are equivalent.

.npy files support unicode field names

A new format version of 3.0 has been introduced, which enables structured types with non-latin1 field names. This is used automatically when needed.

Improvements Array comparison assertions include maximum differences

Error messages from array comparison tests such as 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.

Replacement of the fftpack based fft module by the pocketfft library

Both implementations have the same ancestor (Fortran77 FFTPACK by Paul N. Swarztrauber), but pocketfft contains additional modifications which improve both accuracy and performance in some circumstances. For FFT lengths containing large prime factors, pocketfft uses Bluestein's algorithm, which maintains :math:O(N log N) run time complexity instead of deteriorating towards :math:O(N*N) for prime lengths. Also, accuracy for real valued FFTs with near prime lengths has improved and is on par with complex valued FFTs.

Further improvements to ctypes support in numpy.ctypeslib

A new numpy.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, numpy.ctypeslib.as_ctypes now supports a much wider range of array types, including structures, booleans, and integers of non-native endianness.

numpy.errstate is now also a function decorator

Currently, if you have a function like::

def foo():
    pass

and you want to wrap the whole thing in errstate, you have to rewrite it like so::

def foo():
    with np.errstate(...):
        pass

but with this change, you can do::

@np.errstate(...)
def foo():
    pass

thereby saving a level of indentation

numpy.exp and numpy.log speed up for float32 implementation

float32 implementation of exp and log now benefit from AVX2/AVX512 instruction set which are detected during runtime. exp has a max ulp error of 2.52 and log has a max ulp error or 3.83.

Improve performance of numpy.pad

The performance of the function has been improved for most cases by filling in a preallocated array with the desired padded shape instead of using concatenation.

numpy.interp handles infinities more robustly

In some cases where interp would previously return nan, it now returns an appropriate infinity.

Pathlib support for fromfile, tofile and ndarray.dump

fromfile, ndarray.ndarray.tofile and ndarray.dump now support the pathlib.Path type for the file/fid parameter.

Specialized isnan, isinf, and isfinite ufuncs for bool and int types

The boolean and integer types are incapable of storing nan and inf values, which allows us to provide specialized ufuncs that are up to 250x faster than the previous approach.

isfinite supports datetime64 and timedelta64 types

Previously, isfinite used to raise a TypeError on being used on these two types.

New keywords added to nan_to_num

nan_to_num now accepts keywords nan, posinf and neginf allowing the user to define the value to replace the nan, positive and negative np.inf values respectively.

MemoryErrors caused by allocated overly large arrays are more descriptive

Often the cause of a MemoryError is incorrect broadcasting, which results in a very large and incorrect shape. The message of the error now includes this shape to help diagnose the cause of failure.

floor, ceil, and trunc now respect builtin magic methods

These ufuncs now call the __floor__, __ceil__, and __trunc__ methods when called on object arrays, making them compatible with decimal.Decimal and fractions.Fraction objects.

quantile now works on fraction.Fraction and decimal.Decimal objects

In general, this handles object arrays more gracefully, and avoids floating- point operations if exact arithmetic types are used.

Support of object arrays in matmul

It is now possible to use matmul (or the @ operator) with object arrays. For instance, it is now possible to do::

from fractions import Fraction
a = np.array([[Fraction(1, 2), Fraction(1, 3)], [Fraction(1, 3), Fraction(1, 2)]])
b = a @ a
Changes median and percentile family of functions no longer warn about nan

numpy.median, numpy.percentile, and numpy.quantile used to emit a RuntimeWarning when encountering an nan. Since they return the nan value, the warning is redundant and has been removed.

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

NumPy functions now always support overrides with __array_function__

NumPy now always checks the __array_function__ method to implement overrides of NumPy functions on non-NumPy arrays, as described in NEP 18_. The feature was available for testing with NumPy 1.16 if appropriate environment variables are set, but is now always enabled.

.. _NEP 18 : http://www.numpy.org/neps/nep-0018-array-function-protocol.html

lib.recfunctions.structured_to_unstructured does not squeeze single-field views

Previously structured_to_unstructured(arr[['a']]) would produce a squeezed result inconsistent with structured_to_unstructured(arr[['a', b']]). This was accidental. The old behavior can be retained with structured_to_unstructured(arr[['a']]).squeeze(axis=-1) or far more simply, arr['a'].

clip now uses a ufunc under the hood

This means that registering clip functions for custom dtypes in C via descr->f->fastclip is deprecated - they should use the ufunc registration mechanism instead, attaching to the np.core.umath.clip ufunc.

It also means that clip accepts where and casting arguments, and can be override with __array_ufunc__.

A consequence of this change is that some behaviors of the old clip have been deprecated:

  • Passing nan to mean "do not clip" as one or both bounds. This didn't work in all cases anyway, and can be better handled by passing infinities of the appropriate sign.
  • Using "unsafe" casting by default when an out argument is passed. Using casting="unsafe" explicitly will silence this warning.

Additionally, there are some corner cases with behavior changes:

  • Padding max < min has changed to be more consistent across dtypes, but should not be relied upon.
  • Scalar min and max take part in promotion rules like they do in all other ufuncs.
__array_interface__ offset now works as documented

The interface may use an offset value that was mistakenly ignored.

Pickle protocol in savez set to 3 for force zip64 flag

savez was not using the force_zip64 flag, which limited the size of the archive to 2GB. But using the flag requires us to use pickle protocol 3 to write object arrays. The protocol used was bumped to 3, meaning the archive will be unreadable by Python2.

Structured arrays indexed with non-existent fields raise KeyError not ValueError

arr['bad_field'] on a structured type raises KeyError, for consistency with dict['bad_field'].

Checksums MD5
5ac469e3c2cd9b34c2a906d48544f491  numpy-1.17.0-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
526c60c36c61b7d30e6a50ffad3e81a2  numpy-1.17.0-cp35-cp35m-manylinux1_i686.whl
71066029b28fa03b897fd960be6dc6a9  numpy-1.17.0-cp35-cp35m-manylinux1_x86_64.whl
ab16f4b7f83e64113bf118ae3a9414b9  numpy-1.17.0-cp35-cp35m-win32.whl
e919d45495558d93275ef4ab724f767a  numpy-1.17.0-cp35-cp35m-win_amd64.whl
101e88a9870a5046536f71d77d0a7f5c  numpy-1.17.0-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
c996484b56aefecfe3626bcaca88a187  numpy-1.17.0-cp36-cp36m-manylinux1_i686.whl
4db1ecda4fbc202722774599cb434378  numpy-1.17.0-cp36-cp36m-manylinux1_x86_64.whl
feeecc8ea0bbc37b2f0be447b32a478f  numpy-1.17.0-cp36-cp36m-win32.whl
b7efb94a9cf4cc864ea546fb21a4d6bf  numpy-1.17.0-cp36-cp36m-win_amd64.whl
c6501eed55a840b2c81b211d6cf5065e  numpy-1.17.0-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
49ae9d7440e5dbabf3e02eba5b4bb8cd  numpy-1.17.0-cp37-cp37m-manylinux1_i686.whl
a245e8fc884fcd6ad1c53c322496cace  numpy-1.17.0-cp37-cp37m-manylinux1_x86_64.whl
0da9af1ac3832ae8b94f5fdce31c8c7d  numpy-1.17.0-cp37-cp37m-win32.whl
1ffa1bc110de363748a849a35126d9ff  numpy-1.17.0-cp37-cp37m-win_amd64.whl
c48b2ad785f82cdfe28c907ce35e2a71  numpy-1.17.0.tar.gz
aed49b31bcb44ec73b8155be78566135  numpy-1.17.0.zip
SHA256
910d2272403c2ea8a52d9159827dc9f7c27fb4b263749dca884e2e4a8af3b302  numpy-1.17.0-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
9ce8300950f2f1d29d0e49c28ebfff0d2f1e2a7444830fbb0b913c7c08f31511  numpy-1.17.0-cp35-cp35m-manylinux1_i686.whl
7724e9e31ee72389d522b88c0d4201f24edc34277999701ccd4a5392e7d8af61  numpy-1.17.0-cp35-cp35m-manylinux1_x86_64.whl
0cdd229a53d2720d21175012ab0599665f8c9588b3b8ffa6095dd7b90f0691dd  numpy-1.17.0-cp35-cp35m-win32.whl
5adfde7bd3ee4864536e230bcab1c673f866736698724d5d28c11a4d63672658  numpy-1.17.0-cp35-cp35m-win_amd64.whl
464b1c48baf49e8505b1bb754c47a013d2c305c5b14269b5c85ea0625b6a988a  numpy-1.17.0-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
eb0fc4a492cb896346c9e2c7a22eae3e766d407df3eb20f4ce027f23f76e4c54  numpy-1.17.0-cp36-cp36m-manylinux1_i686.whl
9588c6b4157f493edeb9378788dcd02cb9e6a6aeaa518b511a1c79d06cbd8094  numpy-1.17.0-cp36-cp36m-manylinux1_x86_64.whl
03e311b0a4c9f5755da7d52161280c6a78406c7be5c5cc7facfbcebb641efb7e  numpy-1.17.0-cp36-cp36m-win32.whl
c3ab2d835b95ccb59d11dfcd56eb0480daea57cdf95d686d22eff35584bc4554  numpy-1.17.0-cp36-cp36m-win_amd64.whl
f4e4612de60a4f1c4d06c8c2857cdcb2b8b5289189a12053f37d3f41f06c60d0  numpy-1.17.0-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
312bb18e95218bedc3563f26fcc9c1c6bfaaf9d453d15942c0839acdd7e4c473  numpy-1.17.0-cp37-cp37m-manylinux1_i686.whl
8d36f7c53ae741e23f54793ffefb2912340b800476eb0a831c6eb602e204c5c4  numpy-1.17.0-cp37-cp37m-manylinux1_x86_64.whl
ec0c56eae6cee6299f41e780a0280318a93db519bbb2906103c43f3e2be1206c  numpy-1.17.0-cp37-cp37m-win32.whl
be39cca66cc6806652da97103605c7b65ee4442c638f04ff064a7efd9a81d50a  numpy-1.17.0-cp37-cp37m-win_amd64.whl
47b7b6145e7ba5918ce26be25999b6d4b35cf9fbfdf46b7da50090ffdb020445  numpy-1.17.0.tar.gz
951fefe2fb73f84c620bec4e001e80a80ddaa1b84dce244ded7f1e0cbe0ed34a  numpy-1.17.0.zip

1.16.4

4 years ago

==========================

NumPy 1.16.4 Release Notes

The NumPy 1.16.4 release fixes bugs reported against the 1.16.3 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.7-dev, which should fix issues on Skylake series cpus.

Downstream developers building this release should use Cython >= 0.29.2 and, if using OpenBLAS, OpenBLAS > v0.3.7. The supported Python versions are 2.7 and 3.5-3.7.

New deprecations Writeable flag of C-API wrapped arrays

When an array is created from the C-API to wrap a pointer to data, the only indication we have of the read-write nature of the data is the writeable flag set during creation. It is dangerous to force the flag to writeable. In the future it will not be possible to switch the writeable flag to True from python. This deprecation should not affect many users since arrays created in such a manner are very rare in practice and only available through the NumPy C-API.

Compatibility notes Potential changes to the random stream

Due to bugs in the application of log to random floating point numbers, the stream may change when sampling from np.random.beta, np.random.binomial, np.random.laplace, np.random.logistic, np.random.logseries or np.random.multinomial if a 0 is generated in the underlying MT19937 random stream. There is a 1 in :math:10^{53} chance of this occurring, and so the probability that the stream changes for any given seed is extremely small. If a 0 is encountered in the underlying generator, then the incorrect value produced (either np.inf or np.nan) is now dropped.

Changes numpy.lib.recfunctions.structured_to_unstructured does not squeeze single-field views

Previously structured_to_unstructured(arr[['a']]) would produce a squeezed result inconsistent with structured_to_unstructured(arr[['a', b']]). This was accidental. The old behavior can be retained with structured_to_unstructured(arr[['a']]).squeeze(axis=-1) or far more simply, arr['a'].

Contributors

A total of 10 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Charles Harris
  • Eric Wieser
  • Dennis Zollo +
  • Hunter Damron +
  • Jingbei Li +
  • Kevin Sheppard
  • Matti Picus
  • Nicola Soranzo +
  • Sebastian Berg
  • Tyler Reddy
Pull requests merged

A total of 16 pull requests were merged for this release.

  • #13392: BUG: Some PyPy versions lack PyStructSequence_InitType2.
  • #13394: MAINT, DEP: Fix deprecated assertEquals()
  • #13396: BUG: Fix structured_to_unstructured on single-field types (backport)
  • #13549: BLD: Make CI pass again with pytest 4.5
  • #13552: TST: Register markers in conftest.py.
  • #13559: BUG: Removes ValueError for empty kwargs in arraymultiter_new
  • #13560: BUG: Add TypeError to accepted exceptions in crackfortran.
  • #13561: BUG: Handle subarrays in descr_to_dtype
  • #13562: BUG: Protect generators from log(0.0)
  • #13563: BUG: Always return views from structured_to_unstructured when...
  • #13564: BUG: Catch stderr when checking compiler version
  • #13565: BUG: longdouble(int) does not work
  • #13587: BUG: distutils/system_info.py fix missing subprocess import (#13523)
  • #13620: BUG,DEP: Fix writeable flag setting for arrays without base
  • #13641: MAINT: Prepare for the 1.16.4 release.
  • #13644: BUG: special case object arrays when printing rel-, abs-error
Checksums MD5
a24c599ae3445d9d085e77ce4d072259  numpy-1.16.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
efcfb51254d83060a2af0d30aa1d1b81  numpy-1.16.4-cp27-cp27m-manylinux1_i686.whl
b62eca40cbab3e24c4962e22633d92a5  numpy-1.16.4-cp27-cp27m-manylinux1_x86_64.whl
c96618196f6dfc29f4931a2f6fea44ad  numpy-1.16.4-cp27-cp27m-win32.whl
6dd36dfd23338844c1ecac8b92efd938  numpy-1.16.4-cp27-cp27m-win_amd64.whl
52c8e342f110b2fba426fca60b1c2774  numpy-1.16.4-cp27-cp27mu-manylinux1_i686.whl
038f16384a2af6bd3db61dc773ffbe10  numpy-1.16.4-cp27-cp27mu-manylinux1_x86_64.whl
32b18d06069d3d86b8e3193b2f455c15  numpy-1.16.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
d6550e24ff69d4a175d278f39f871d39  numpy-1.16.4-cp35-cp35m-manylinux1_i686.whl
07b33ea867cf2657e23dbf93069eff99  numpy-1.16.4-cp35-cp35m-manylinux1_x86_64.whl
cc84f9555a711a2bc867d3b941992a68  numpy-1.16.4-cp35-cp35m-win32.whl
cf671f2b0e651e701472456107c8e644  numpy-1.16.4-cp35-cp35m-win_amd64.whl
1376e801040a91f8b325e827e6d53f91  numpy-1.16.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
833f763fb0d69c850fae175c65f7b502  numpy-1.16.4-cp36-cp36m-manylinux1_i686.whl
255ae62cf215e647ee437d432b6511c2  numpy-1.16.4-cp36-cp36m-manylinux1_x86_64.whl
6fcb9a8f601795413ceaf06767caca2d  numpy-1.16.4-cp36-cp36m-win32.whl
de4fa9f01692ec94932a289440f18255  numpy-1.16.4-cp36-cp36m-win_amd64.whl
dab4ec8a1c07a7a1a54932c461933992  numpy-1.16.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
c1d3c38c67396809c51f5c98aead5e13  numpy-1.16.4-cp37-cp37m-manylinux1_i686.whl
e98fc6a8d90ff7ed26d0ed7faad3aa8d  numpy-1.16.4-cp37-cp37m-manylinux1_x86_64.whl
f84869efe5610e6ad6165237c012ea93  numpy-1.16.4-cp37-cp37m-win32.whl
17b46c338d04cb8b4773fb6b02919f2b  numpy-1.16.4-cp37-cp37m-win_amd64.whl
6edf7334d04d8e8849ad058ccd3b3803  numpy-1.16.4.tar.gz
74f7d348c55ace4d22d7ad26c65755aa  numpy-1.16.4.zip
SHA256
b5554368e4ede1856121b0dfa35ce71768102e4aa55e526cb8de7f374ff78722  numpy-1.16.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
e8baab1bc7c9152715844f1faca6744f2416929de10d7639ed49555a85549f52  numpy-1.16.4-cp27-cp27m-manylinux1_i686.whl
2a04dda79606f3d2f760384c38ccd3d5b9bb79d4c8126b67aff5eb09a253763e  numpy-1.16.4-cp27-cp27m-manylinux1_x86_64.whl
94f5bd885f67bbb25c82d80184abbf7ce4f6c3c3a41fbaa4182f034bba803e69  numpy-1.16.4-cp27-cp27m-win32.whl
7dc253b542bfd4b4eb88d9dbae4ca079e7bf2e2afd819ee18891a43db66c60c7  numpy-1.16.4-cp27-cp27m-win_amd64.whl
0778076e764e146d3078b17c24c4d89e0ecd4ac5401beff8e1c87879043a0633  numpy-1.16.4-cp27-cp27mu-manylinux1_i686.whl
b0348be89275fd1d4c44ffa39530c41a21062f52299b1e3ee7d1c61f060044b8  numpy-1.16.4-cp27-cp27mu-manylinux1_x86_64.whl
52c40f1a4262c896420c6ea1c6fda62cf67070e3947e3307f5562bd783a90336  numpy-1.16.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
141c7102f20abe6cf0d54c4ced8d565b86df4d3077ba2343b61a6db996cefec7  numpy-1.16.4-cp35-cp35m-manylinux1_i686.whl
6e4f8d9e8aa79321657079b9ac03f3cf3fd067bf31c1cca4f56d49543f4356a5  numpy-1.16.4-cp35-cp35m-manylinux1_x86_64.whl
d79f18f41751725c56eceab2a886f021d70fd70a6188fd386e29a045945ffc10  numpy-1.16.4-cp35-cp35m-win32.whl
14270a1ee8917d11e7753fb54fc7ffd1934f4d529235beec0b275e2ccf00333b  numpy-1.16.4-cp35-cp35m-win_amd64.whl
a89e188daa119ffa0d03ce5123dee3f8ffd5115c896c2a9d4f0dbb3d8b95bfa3  numpy-1.16.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
ec31fe12668af687b99acf1567399632a7c47b0e17cfb9ae47c098644ef36797  numpy-1.16.4-cp36-cp36m-manylinux1_i686.whl
27e11c7a8ec9d5838bc59f809bfa86efc8a4fd02e58960fa9c49d998e14332d5  numpy-1.16.4-cp36-cp36m-manylinux1_x86_64.whl
dc2ca26a19ab32dc475dbad9dfe723d3a64c835f4c23f625c2b6566ca32b9f29  numpy-1.16.4-cp36-cp36m-win32.whl
ad3399da9b0ca36e2f24de72f67ab2854a62e623274607e37e0ce5f5d5fa9166  numpy-1.16.4-cp36-cp36m-win_amd64.whl
f58ac38d5ca045a377b3b377c84df8175ab992c970a53332fa8ac2373df44ff7  numpy-1.16.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
f12b4f7e2d8f9da3141564e6737d79016fe5336cc92de6814eba579744f65b0a  numpy-1.16.4-cp37-cp37m-manylinux1_i686.whl
cbddc56b2502d3f87fda4f98d948eb5b11f36ff3902e17cb6cc44727f2200525  numpy-1.16.4-cp37-cp37m-manylinux1_x86_64.whl
3c26010c1b51e1224a3ca6b8df807de6e95128b0908c7e34f190e7775455b0ca  numpy-1.16.4-cp37-cp37m-win32.whl
dd9bcd4f294eb0633bb33d1a74febdd2b9018b8b8ed325f861fffcd2c7660bb8  numpy-1.16.4-cp37-cp37m-win_amd64.whl
a3bccb70ad94091a5b9e2469fabd41ac877c140a6828c2022e35560a2ec0346c  numpy-1.16.4.tar.gz
7242be12a58fec245ee9734e625964b97cf7e3f2f7d016603f9e56660ce479c7  numpy-1.16.4.zip

1.16.3

4 years ago

==========================

NumPy 1.16.3 Release Notes

The NumPy 1.16.3 release fixes bugs reported against the 1.16.2 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.

The most noticeable change in this release is that unpickling object arrays when loading *.npy or *.npz files now requires an explicit opt-in. This backwards incompatible change was made in response to CVE-2019-6446 <https://nvd.nist.gov/vuln/detail/CVE-2019-6446>_.

Compatibility notes Unpickling while loading requires explicit opt-in

The functions np.load, and np.lib.format.read_array take an allow_pickle keyword which now defaults to False in response to CVE-2019-6446 <https://nvd.nist.gov/vuln/detail/CVE-2019-6446>_.

Improvements Covariance in random.mvnormal cast to double

This should make the tolerance used when checking the singular values of the covariance matrix more meaningful.

Changes __array_interface__ offset now works as documented

The interface may use an offset value that was previously mistakenly ignored.

Checksums MD5
7039dd60e2066e8882149a8b8bd6cf2f  numpy-1.16.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
c03c7365b58deefd03e3c080660d7157  numpy-1.16.3-cp27-cp27m-manylinux1_i686.whl
91900b9172e39c039326c56cf0149e15  numpy-1.16.3-cp27-cp27m-manylinux1_x86_64.whl
b06d87509a2228c5952096cb11c8b007  numpy-1.16.3-cp27-cp27m-win32.whl
88c1e91c6bd3626278b7938f12cafbe2  numpy-1.16.3-cp27-cp27m-win_amd64.whl
98fb024d8d63f056ef7c82e772c4bfa0  numpy-1.16.3-cp27-cp27mu-manylinux1_i686.whl
d2b8da12f0855765e9cd3cc49d9885b9  numpy-1.16.3-cp27-cp27mu-manylinux1_x86_64.whl
ec4f2fd2180fd68647f38a0d4c331dcf  numpy-1.16.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
7add5c07a1679bfc086d5575be26ccc6  numpy-1.16.3-cp35-cp35m-manylinux1_i686.whl
bd3c27deac470bce5edf6936d08966b8  numpy-1.16.3-cp35-cp35m-manylinux1_x86_64.whl
c6ab529b105181fc846a8245e5e4d048  numpy-1.16.3-cp35-cp35m-win32.whl
1854757b3e127614ae01b0b814762f5c  numpy-1.16.3-cp35-cp35m-win_amd64.whl
b23b0727562be62ffd943c7828822da9  numpy-1.16.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
93a2a4b48f160ffd1bdd30023b842be2  numpy-1.16.3-cp36-cp36m-manylinux1_i686.whl
453f5996ac600c4085656e82005fb0e5  numpy-1.16.3-cp36-cp36m-manylinux1_x86_64.whl
773f9e76235ab5edd9ef1c083e62ea9f  numpy-1.16.3-cp36-cp36m-win32.whl
9ba2467b05eb4471817509cabff1b9a6  numpy-1.16.3-cp36-cp36m-win_amd64.whl
00594b150e69d1776164ffa60d7fdc01  numpy-1.16.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
fe3421cbae83004e7feca4d90043e9df  numpy-1.16.3-cp37-cp37m-manylinux1_i686.whl
4e907ac7d841018c0a9130ca45d099ee  numpy-1.16.3-cp37-cp37m-manylinux1_x86_64.whl
c7e8e9f9ded13b1356e72cd8506df224  numpy-1.16.3-cp37-cp37m-win32.whl
370ec58a5fdfe9e7ffe90857577806c6  numpy-1.16.3-cp37-cp37m-win_amd64.whl
0886e5b5017f08f2b7a624c0b5931e61  numpy-1.16.3.tar.gz
cab84884fba39fbd352550896bf22bfd  numpy-1.16.3.zip
SHA256
b78a1defedb0e8f6ae1eb55fa6ac74ab42acc4569c3a2eacc2a407ee5d42ebcb  numpy-1.16.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
0e2eed77804b2a6a88741f8fcac02c5499bba3953ec9c71e8b217fad4912c56c  numpy-1.16.3-cp27-cp27m-manylinux1_i686.whl
754a6be26d938e6ca91942804eb209307b73f806a1721176278a6038869a1686  numpy-1.16.3-cp27-cp27m-manylinux1_x86_64.whl
315fa1b1dfc16ae0f03f8fd1c55f23fd15368710f641d570236f3d78af55e340  numpy-1.16.3-cp27-cp27m-win32.whl
80d99399c97f646e873dd8ce87c38cfdbb668956bbc39bc1e6cac4b515bba2a0  numpy-1.16.3-cp27-cp27m-win_amd64.whl
a61255a765b3ac73ee4b110b28fccfbf758c985677f526c2b4b39c48cc4b509d  numpy-1.16.3-cp27-cp27mu-manylinux1_i686.whl
88a72c1e45a0ae24d1f249a529d9f71fe82e6fa6a3fd61414b829396ec585900  numpy-1.16.3-cp27-cp27mu-manylinux1_x86_64.whl
54fe3b7ed9e7eb928bbc4318f954d133851865f062fa4bbb02ef8940bc67b5d2  numpy-1.16.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
abbd6b1c2ef6199f4b7ca9f818eb6b31f17b73a6110aadc4e4298c3f00fab24e  numpy-1.16.3-cp35-cp35m-manylinux1_i686.whl
771147e654e8b95eea1293174a94f34e2e77d5729ad44aefb62fbf8a79747a15  numpy-1.16.3-cp35-cp35m-manylinux1_x86_64.whl
48241759b99d60aba63b0e590332c600fc4b46ad597c9b0a53f350b871ef0634  numpy-1.16.3-cp35-cp35m-win32.whl
b16d88da290334e33ea992c56492326ea3b06233a00a1855414360b77ca72f26  numpy-1.16.3-cp35-cp35m-win_amd64.whl
ab4896a8c910b9a04c0142871d8800c76c8a2e5ff44763513e1dd9d9631ce897  numpy-1.16.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
7fde5c2a3a682a9e101e61d97696687ebdba47637611378b4127fe7e47fdf2bf  numpy-1.16.3-cp36-cp36m-manylinux1_i686.whl
4b4f2924b36d857cf302aec369caac61e43500c17eeef0d7baacad1084c0ee84  numpy-1.16.3-cp36-cp36m-manylinux1_x86_64.whl
d160e57731fcdec2beda807ebcabf39823c47e9409485b5a3a1db3a8c6ce763e  numpy-1.16.3-cp36-cp36m-win32.whl
1f46532afa7b2903bfb1b79becca2954c0a04389d19e03dc73f06b039048ac40  numpy-1.16.3-cp36-cp36m-win_amd64.whl
1c666f04553ef70fda54adf097dbae7080645435fc273e2397f26bbf1d127bbb  numpy-1.16.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
3d5fcea4f5ed40c3280791d54da3ad2ecf896f4c87c877b113576b8280c59441  numpy-1.16.3-cp37-cp37m-manylinux1_i686.whl
5a8f021c70e6206c317974c93eaaf9bc2b56295b6b1cacccf88846e44a1f33fc  numpy-1.16.3-cp37-cp37m-manylinux1_x86_64.whl
cfef82c43b8b29ca436560d51b2251d5117818a8d1fb74a8384a83c096745dad  numpy-1.16.3-cp37-cp37m-win32.whl
a4f4460877a16ac73302a9c077ca545498d9fe64e6a81398d8e1a67e4695e3df  numpy-1.16.3-cp37-cp37m-win_amd64.whl
adf063a3f87ab89393f5eea0eb903293b112fa0a308e8c594a75ffa585d81d4f  numpy-1.16.3.tar.gz
78a6f89da87eeb48014ec652a65c4ffde370c036d780a995edaeb121d3625621  numpy-1.16.3.zip

1.16.2

4 years ago

==========================

NumPy 1.16.2 Release Notes

NumPy 1.16.2 is a quick release fixing several problems encountered on Windows. The Python versions supported are 2.7 and 3.5-3.7. The Windows problems addressed are:

  • DLL load problems for NumPy wheels on Windows,
  • distutils command line parsing on Windows.

There is also a regression fix correcting signed zeros produced by divmod, see below for details.

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.

Compatibility notes Signed zero when using divmod

Starting in version 1.12.0, numpy incorrectly returned a negatively signed zero when using the divmod and floor_divide functions when the result was zero. For example:

   >>> np.zeros(10)//1
   array([-0., -0., -0., -0., -0., -0., -0., -0., -0., -0.])

With this release, the result is correctly returned as a positively signed zero:

   >>> np.zeros(10)//1
   array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])
Contributors

A total of 5 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Charles Harris
  • Eric Wieser
  • Matti Picus
  • Tyler Reddy
  • Tony LaTorre +
Pull requests merged

A total of 7 pull requests were merged for this release.

  • #12909: TST: fix vmImage dispatch in Azure
  • #12923: MAINT: remove complicated test of multiarray import failure mode
  • #13020: BUG: fix signed zero behavior in npy_divmod
  • #13026: MAINT: Add functions to parse shell-strings in the platform-native...
  • #13028: BUG: Fix regression in parsing of F90 and F77 environment variables
  • #13038: BUG: parse shell escaping in extra_compile_args and extra_link_args
  • #13041: BLD: Windows absolute path DLL loading
Checksums MD5
a166c7e850f9375552f9950ba95f3a8a  numpy-1.16.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
cfc866763a75e7cb247c189e141e4506  numpy-1.16.2-cp27-cp27m-manylinux1_i686.whl
0756e1901d81033143ad55583118598e  numpy-1.16.2-cp27-cp27m-manylinux1_x86_64.whl
1242a10df37701abe8c8afc59809e1ac  numpy-1.16.2-cp27-cp27m-win32.whl
60da6aed692fc96c97efde2daca52d6f  numpy-1.16.2-cp27-cp27m-win_amd64.whl
62b92da3423dd59230c9369a43299506  numpy-1.16.2-cp27-cp27mu-manylinux1_i686.whl
5125ec60d3895d89e5d6d71d9e21b349  numpy-1.16.2-cp27-cp27mu-manylinux1_x86_64.whl
15bbe3a9ac6024ac631ed420c04fde47  numpy-1.16.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
ca025ce06f5bc7b81627bc5bf523d589  numpy-1.16.2-cp35-cp35m-manylinux1_i686.whl
ca9953287417064b44a47a6ec92c797c  numpy-1.16.2-cp35-cp35m-manylinux1_x86_64.whl
f8fa8bda14131b2714c42b775dfde349  numpy-1.16.2-cp35-cp35m-win32.whl
ce7abc3bb59c549ffe3b56984a291eaa  numpy-1.16.2-cp35-cp35m-win_amd64.whl
4f26f55f35c58b4228cb3f60cb98f32d  numpy-1.16.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
ac1e770a95ff3f8a47f74e64bd034768  numpy-1.16.2-cp36-cp36m-manylinux1_i686.whl
990a95c5f6bb34ed5588c996890bf9c7  numpy-1.16.2-cp36-cp36m-manylinux1_x86_64.whl
79bbaffa096bbbaf42c029bf85df5ac2  numpy-1.16.2-cp36-cp36m-win32.whl
83ddd33ccf7a434895ade64199424a07  numpy-1.16.2-cp36-cp36m-win_amd64.whl
ee8c8d67fa75a2c4a733fc491590419a  numpy-1.16.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
4fce2fe91abe1e8b09232c5aaafa484a  numpy-1.16.2-cp37-cp37m-manylinux1_i686.whl
9cac844e1fc29972e63cb80512379805  numpy-1.16.2-cp37-cp37m-manylinux1_x86_64.whl
38d9fccdc6ae4420c9ee5303f1298974  numpy-1.16.2-cp37-cp37m-win32.whl
a1dcfcbe4993d77357bb2213aacf9e82  numpy-1.16.2-cp37-cp37m-win_amd64.whl
4fc754be7ec3e0f80b042d907e99f4ad  numpy-1.16.2.tar.gz
ec99ec2763a6be3817675f92b8847d3c  numpy-1.16.2.zip
SHA256
972ea92f9c1b54cc1c1a3d8508e326c0114aaf0f34996772a30f3f52b73b942f  numpy-1.16.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
1980f8d84548d74921685f68096911585fee393975f53797614b34d4f409b6da  numpy-1.16.2-cp27-cp27m-manylinux1_i686.whl
560ceaa24f971ab37dede7ba030fc5d8fa173305d94365f814d9523ffd5d5916  numpy-1.16.2-cp27-cp27m-manylinux1_x86_64.whl
62be044cd58da2a947b7e7b2252a10b42920df9520fc3d39f5c4c70d5460b8ba  numpy-1.16.2-cp27-cp27m-win32.whl
adab43bf657488300d3aeeb8030d7f024fcc86e3a9b8848741ea2ea903e56610  numpy-1.16.2-cp27-cp27m-win_amd64.whl
9f1d4865436f794accdabadc57a8395bd3faa755449b4f65b88b7df65ae05f89  numpy-1.16.2-cp27-cp27mu-manylinux1_i686.whl
fb3c83554f39f48f3fa3123b9c24aecf681b1c289f9334f8215c1d3c8e2f6e5b  numpy-1.16.2-cp27-cp27mu-manylinux1_x86_64.whl
6f65e37b5a331df950ef6ff03bd4136b3c0bbcf44d4b8e99135d68a537711b5a  numpy-1.16.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
d3b3ed87061d2314ff3659bb73896e622252da52558f2380f12c421fbdee3d89  numpy-1.16.2-cp35-cp35m-manylinux1_i686.whl
893f4d75255f25a7b8516feb5766c6b63c54780323b9bd4bc51cdd7efc943c73  numpy-1.16.2-cp35-cp35m-manylinux1_x86_64.whl
3a0bd1edf64f6a911427b608a894111f9fcdb25284f724016f34a84c9a3a6ea9  numpy-1.16.2-cp35-cp35m-win32.whl
2b0b118ff547fecabc247a2668f48f48b3b1f7d63676ebc5be7352a5fd9e85a5  numpy-1.16.2-cp35-cp35m-win_amd64.whl
bd2834d496ba9b1bdda3a6cf3de4dc0d4a0e7be306335940402ec95132ad063d  numpy-1.16.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
3f25f6c7b0d000017e5ac55977a3999b0b1a74491eacb3c1aa716f0e01f6dcd1  numpy-1.16.2-cp36-cp36m-manylinux1_i686.whl
23cc40313036cffd5d1873ef3ce2e949bdee0646c5d6f375bf7ee4f368db2511  numpy-1.16.2-cp36-cp36m-manylinux1_x86_64.whl
22752cd809272671b273bb86df0f505f505a12368a3a5fc0aa811c7ece4dfd5c  numpy-1.16.2-cp36-cp36m-win32.whl
d20c0360940f30003a23c0adae2fe50a0a04f3e48dc05c298493b51fd6280197  numpy-1.16.2-cp36-cp36m-win_amd64.whl
80a41edf64a3626e729a62df7dd278474fc1726836552b67a8c6396fd7e86760  numpy-1.16.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
7a78cc4ddb253a55971115f8320a7ce28fd23a065fc33166d601f51760eecfa9  numpy-1.16.2-cp37-cp37m-manylinux1_i686.whl
9f4cd7832b35e736b739be03b55875706c8c3e5fe334a06210f1a61e5c2c8ca5  numpy-1.16.2-cp37-cp37m-manylinux1_x86_64.whl
dc235bf29a406dfda5790d01b998a1c01d7d37f449128c0b1b7d1c89a84fae8b  numpy-1.16.2-cp37-cp37m-win32.whl
4061c79ac2230594a7419151028e808239450e676c39e58302ad296232e3c2e8  numpy-1.16.2-cp37-cp37m-win_amd64.whl
8088221e6e27da8d5907729f0bfe798f526836f22cc59ae83a0f867e67416a3e  numpy-1.16.2.tar.gz
6c692e3879dde0b67a9dc78f9bfb6f61c666b4562fd8619632d7043fb5b691b0  numpy-1.16.2.zip

1.16.1

4 years ago

==========================

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

1.16.0

4 years ago

==========================

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 and numpy.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 powerful numpy.ndarray.item, not tested, and fails for scalars.

  • The numpy.set_array_ops and numpy.get_array_ops functions are deprecated. As part of NEP 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 argument dims 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. Use numpy.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 and np.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

This should help track down problems.

Einsum optimization path updates and efficiency improvements

Einsum was synchronized with the current upstream work.

numpy.angle and numpy.expand_dims now work on ndarray subclasses

In particular, they now work for masked arrays.

NPY_NO_DEPRECATED_API compiler warning suppression

Setting NPY_NO_DEPRECATED_API to a value of 0 will suppress the current compiler warnings when the deprecated numpy API is used.

np.diff Added kwargs prepend and append

New kwargs prepend and append, allow for values to be inserted on either end of the differences. Similar to options for ediff1d. Now the inverse of cumsum can be obtained easily via prepend=0.

ARM support updated

Support for ARM CPUs has been updated to accommodate 32 and 64 bit targets, and also big and little endian byte ordering. AARCH32 memory alignment issues have been addressed. CI testing has been expanded to include AARCH64 targets via the services of shippable.com.

Appending to build flags

numpy.distutils has always overridden rather than appended to LDFLAGS and other similar such environment variables for compiling Fortran extensions. Now, if the NPY_DISTUTILS_APPEND_FLAGS environment variable is set to 1, the behavior will be appending. This applied to: LDFLAGS, F77FLAGS, F90FLAGS, FREEFLAGS, FOPT, FDEBUG, and FFLAGS. See gh-11525 for more details.

Generalized ufunc signatures now allow fixed-size dimensions

By using a numerical value in the signature of a generalized ufunc, one can indicate that the given function requires input or output to have dimensions with the given size. E.g., the signature of a function that converts a polar angle to a two-dimensional cartesian unit vector would be ()->(2); that for one that converts two spherical angles to a three-dimensional unit vector would be (),()->(3); and that for the cross product of two three-dimensional vectors would be (3),(3)->(3).

Note that to the elementary function these dimensions are not treated any differently from variable ones indicated with a name starting with a letter; the loop still is passed the corresponding size, but it can now count on that size being equal to the fixed one given in the signature.

Generalized ufunc signatures now allow flexible dimensions

Some functions, in particular numpy's implementation of @ as matmul, are very similar to generalized ufuncs in that they operate over core dimensions, but one could not present them as such because they were able to deal with inputs in which a dimension is missing. To support this, it is now allowed to postfix a dimension name with a question mark to indicate that the dimension does not necessarily have to be present.

With this addition, the signature for matmul can be expressed as (m?,n),(n,p?)->(m?,p?). This indicates that if, e.g., the second operand has only one dimension, for the purposes of the elementary function it will be treated as if that input has core shape (n, 1), and the output has the corresponding core shape of (m, 1). The actual output array, however, has the flexible dimension removed, i.e., it will have shape (..., m). Similarly, if both arguments have only a single dimension, the inputs will be presented as having shapes (1, n) and (n, 1) to the elementary function, and the output as (1, 1), while the actual output array returned will have shape (). In this way, the signature allows one to use a single elementary function for four related but different signatures, (m,n),(n,p)->(m,p), (n),(n,p)->(p), (m,n),(n)->(m) and (n),(n)->().

np.clip and the clip method check for memory overlap

The out argument to these functions is now always tested for memory overlap to avoid corrupted results when memory overlap occurs.

New value unscaled for option cov in np.polyfit

A further possible value has been added to the cov parameter of the np.polyfit function. With cov='unscaled' the scaling of the covariance matrix is disabled completely (similar to setting absolute_sigma=True in scipy.optimize.curve_fit). This would be useful in occasions, where the weights are given by 1/sigma with sigma being the (known) standard errors of (Gaussian distributed) data points, in which case the unscaled matrix is already a correct estimate for the covariance matrix.

Detailed docstrings for scalar numeric types

The help function, when applied to numeric types such as numpy.intc, numpy.int_, and numpy.longlong, now lists all of the aliased names for that type, distinguishing between platform -dependent and -independent aliases.

__module__ attribute now points to public modules

The __module__ attribute on most NumPy functions has been updated to refer to the preferred public module from which to access a function, rather than the module in which the function happens to be defined. This produces more informative displays for functions in tools such as IPython, e.g., instead of <function 'numpy.core.fromnumeric.sum'> you now see <function 'numpy.sum'>.

Large allocations marked as suitable for transparent hugepages

On systems that support transparent hugepages over the madvise system call numpy now marks that large memory allocations can be backed by hugepages which reduces page fault overhead and can in some fault heavy cases improve performance significantly. On Linux the setting for huge pages to be used, /sys/kernel/mm/transparent_hugepage/enabled, must be at least madvise. Systems which already have it set to always will not see much difference as the kernel will automatically use huge pages where appropriate.

Users of very old Linux kernels (~3.x and older) should make sure that /sys/kernel/mm/transparent_hugepage/defrag is not set to always to avoid performance problems due concurrency issues in the memory defragmentation.

Alpine Linux (and other musl c library distros) support

We now default to use fenv.h for floating point status error reporting. Previously we had a broken default that sometimes would not report underflow, overflow, and invalid floating point operations. Now we can support non-glibc distrubutions like Alpine Linux as long as they ship fenv.h.

Speedup np.block for large arrays

Large arrays (greater than 512 * 512) now use a blocking algorithm based on copying the data directly into the appropriate slice of the resulting array. This results in significant speedups for these large arrays, particularly for arrays being blocked along more than 2 dimensions.

arr.ctypes.data_as(...) holds a reference to arr

Previously the caller was responsible for keeping the array alive for the
lifetime of the pointer.

Speedup ``np.take`` for read-only arrays
----------------------------------------
The implementation of ``np.take`` no longer makes an unnecessary copy of the
source array when its ``writeable`` flag is set to ``False``.

Support path-like objects for more functions
--------------------------------------------
The ``np.core.records.fromfile`` function now supports ``pathlib.Path``
and other path-like objects in addition to a file object. Furthermore, the
``np.load`` function now also supports path-like objects when using memory
mapping (``mmap_mode`` keyword argument).

Better behaviour of ufunc identities during reductions
------------------------------------------------------
Universal functions have an ``.identity`` which is used when ``.reduce`` is
called on an empty axis.

As of this release, the logical binary ufuncs, `logical_and`, `logical_or`,
and `logical_xor`, now have ``identity`` s of type `bool`, where previously they
were of type `int`. This restores the 1.14 behavior of getting ``bool`` s when
reducing empty object arrays with these ufuncs, while also keeping the 1.15
behavior of getting ``int`` s when reducing empty object arrays with arithmetic
ufuncs like ``add`` and ``multiply``.

Additionally, `logaddexp` now has an identity of ``-inf``, allowing it to be
called on empty sequences, where previously it could not be.

This is possible thanks to the new
:c:function:`PyUFunc_FromFuncAndDataAndSignatureAndIdentity`, which allows
arbitrary values to be used as identities now.

Improved conversion from ctypes objects
---------------------------------------
Numpy has always supported taking a value or type from ``ctypes`` and
converting it into an array or dtype, but only behaved correctly for simpler
types. As of this release, this caveat is lifted - now:

* The ``_pack_`` attribute of ``ctypes.Structure``, used to emulate C's
  ``__attribute__((packed))``, is respected.
* Endianness of all ctypes objects is preserved
* ``ctypes.Union`` is supported
* Non-representable constructs raise exceptions, rather than producing
  dangerously incorrect results:

  * Bitfields are no longer interpreted as sub-arrays
  * Pointers are no longer replaced with the type that they point to

A new ``ndpointer.contents`` member
-----------------------------------
This matches the ``.contents`` member of normal ctypes arrays, and can be used
to construct an ``np.array`` around the pointers contents.  This replaces
``np.array(some_nd_pointer)``, which stopped working in 1.15.  As a side effect
of this change, ``ndpointer`` now supports dtypes with overlapping fields and
padding.

``matmul`` is now a ``ufunc``
-----------------------------
`numpy.matmul` is now a ufunc which means that both the function and the
``__matmul__`` operator can now be overridden by ``__array_ufunc__``. Its
implementation has also changed. It uses the same BLAS routines as
`numpy.dot`, ensuring its performance is similar for large matrices.

Start and stop arrays for ``linspace``, ``logspace`` and ``geomspace``
----------------------------------------------------------------------
These functions used to be limited to scalar stop and start values, but can
now take arrays, which will be properly broadcast and result in an output
which has one axis prepended.  This can be used, e.g., to obtain linearly
interpolated points between sets of points.

CI extended with additional services
------------------------------------
We now use additional free CI services, thanks to the companies that provide:

* Codecoverage testing via codecov.io
* Arm testing via shippable.com
* Additional test runs on azure pipelines

These are in addition to our continued use of travis, appveyor (for wheels) and
LGTM


Changes
=======

Comparison ufuncs will now error rather than return NotImplemented
------------------------------------------------------------------
Previously, comparison ufuncs such as ``np.equal`` would return
`NotImplemented` if their arguments had structured dtypes, to help comparison
operators such as ``__eq__`` deal with those.  This is no longer needed, as the
relevant logic has moved to the comparison operators proper (which thus do
continue to return `NotImplemented` as needed). Hence, like all other ufuncs,
the comparison ufuncs will now error on structured dtypes.

Positive will now raise a deprecation warning for non-numerical arrays
----------------------------------------------------------------------
Previously, ``+array`` unconditionally returned a copy. Now, it will
raise a ``DeprecationWarning`` if the array is not numerical (i.e.,
if ``np.positive(array)`` raises a ``TypeError``. For ``ndarray``
subclasses that override the default ``__array_ufunc__`` implementation,
the ``TypeError`` is passed on.

``NDArrayOperatorsMixin`` now implements matrix multiplication
--------------------------------------------------------------
Previously, ``np.lib.mixins.NDArrayOperatorsMixin`` did not implement the
special methods for Python's matrix multiplication operator (``@``). This has
changed now that ``matmul`` is a ufunc and can be overridden using
``__array_ufunc__``.

The scaling of the covariance matrix in ``np.polyfit`` is different
-------------------------------------------------------------------
So far, ``np.polyfit`` used a non-standard factor in the scaling of the the
covariance matrix. Namely, rather than using the standard ``chisq/(M-N)``, it
scaled it with ``chisq/(M-N-2)`` where M is the number of data points and N is the
number of parameters.  This scaling is inconsistent with other fitting programs
such as e.g. ``scipy.optimize.curve_fit`` and was changed to ``chisq/(M-N)``.

``maximum`` and ``minimum`` no longer emit warnings
---------------------------------------------------
As part of code introduced in 1.10,  ``float32`` and ``float64`` set invalid
float status when a Nan is encountered in `numpy.maximum` and `numpy.minimum`,
when using SSE2 semantics. This caused a `RuntimeWarning` to sometimes be
emitted. In 1.15 we fixed the inconsistencies which caused the warnings to
become more conspicuous. Now no warnings will be emitted.

Umath and multiarray c-extension modules merged into a single module
--------------------------------------------------------------------
The two modules were merged, according to `NEP 15`_. Previously `np.core.umath`
and `np.core.multiarray` were seperate c-extension modules. They are now python
wrappers to the single `np.core/_multiarray_math` c-extension module.

.. _`NEP 15` : http://www.numpy.org/neps/nep-0015-merge-multiarray-umath.html

``getfield`` validity checks extended
-------------------------------------
`numpy.ndarray.getfield` now checks the dtype and offset arguments to prevent
accessing invalid memory locations.

NumPy functions now support overrides with ``__array_function__``
-----------------------------------------------------------------
It is now possible to override the implementation of almost all NumPy functions
on non-NumPy arrays by defining a ``__array_function__`` method, as described
in `NEP 18`_. The sole exception are functions for explicitly casting to NumPy
arrays such as ``np.array``. As noted in the NEP, this feature remains
experimental and the details of how to implement such overrides may change in
the future.

.. _`NEP 15` : http://www.numpy.org/neps/nep-0015-merge-multiarray-umath.html
.. _`NEP 18` : http://www.numpy.org/neps/nep-0018-array-function-protocol.html

Arrays based off readonly buffers cannot be set ``writeable``
-------------------------------------------------------------
We now disallow setting the ``writeable`` flag True on arrays created
from ``fromstring(readonly-buffer)``.

Checksums
=========

MD5
---

    67d46af4e62111285f27a9c5731f16f9  numpy-1.16.0-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
    a1afdd521bf4480f4a5f43f39a345a80  numpy-1.16.0-cp27-cp27m-manylinux1_i686.whl
    66d2e3fee4504c371da147a56fa9f900  numpy-1.16.0-cp27-cp27m-manylinux1_x86_64.whl
    63648ca2ba0dae7f7f57cc8fc87f0fba  numpy-1.16.0-cp27-cp27m-win32.whl
    9a53cf0c5e77f02ea9b5ff3587a1f8ac  numpy-1.16.0-cp27-cp27m-win_amd64.whl
    7253e6e78dc1ae134abcf40201ca73ad  numpy-1.16.0-cp27-cp27mu-manylinux1_i686.whl
    c47496091e10e31eeb9d9b07f3136237  numpy-1.16.0-cp27-cp27mu-manylinux1_x86_64.whl
    048918abcf3936c947d06f1ee629757e  numpy-1.16.0-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
    968ea61a147bd500b5d858b91ccf709d  numpy-1.16.0-cp35-cp35m-manylinux1_i686.whl
    ee52de6e269576f468285b0f45fe9618  numpy-1.16.0-cp35-cp35m-manylinux1_x86_64.whl
    608e1d02d014bda5c4081881a25f9fbc  numpy-1.16.0-cp35-cp35m-win32.whl
    4ed0e6114562eefb75da7aadc3db4f8a  numpy-1.16.0-cp35-cp35m-win_amd64.whl
    809ed96a113cf46e81ae50c9703e7a5c  numpy-1.16.0-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
    26ceb7aa63fa82bc444e69156444fe6f  numpy-1.16.0-cp36-cp36m-manylinux1_i686.whl
    5877c113fcd82198ad2285e3074a089c  numpy-1.16.0-cp36-cp36m-manylinux1_x86_64.whl
    2ce0cc7d22e3f94e51315c1df4fd81bd  numpy-1.16.0-cp36-cp36m-win32.whl
    b1e5a08c6a85c8a51f8039b3dc3dad3d  numpy-1.16.0-cp36-cp36m-win_amd64.whl
    748fe792a69f79b0c3a926139b23bdbc  numpy-1.16.0-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
    d424c537c28510340f06a317608d7743  numpy-1.16.0-cp37-cp37m-manylinux1_i686.whl
    8d87c0b1f8d7ad46b1976328d6c66cef  numpy-1.16.0-cp37-cp37m-manylinux1_x86_64.whl
    25da2b41f81d4862bb36a07218477ea6  numpy-1.16.0-cp37-cp37m-win32.whl
    22af7b6ff2da30fca2334886fdbf8573  numpy-1.16.0-cp37-cp37m-win_amd64.whl
    d30393335b59081555fa29c680ab4784  numpy-1.16.0.tar.gz
    90b5ec981eb9746785f43e9bfc003fed  numpy-1.16.0.zip

SHA256
------

    a80ecac5664f420556a725a5646f2d1c60a7c0489d68a38b5056393e949e27ac  numpy-1.16.0-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
    be43df2c563e264b38e3318574d80fc8f365df3fb745270934d2dbe54e006f41  numpy-1.16.0-cp27-cp27m-manylinux1_i686.whl
    f00a2c21f60284e024bba351875f3501c6d5817d64997a0afe4f4355161a8889  numpy-1.16.0-cp27-cp27m-manylinux1_x86_64.whl
    5774d49516c37fd3fc1f232e033d2b152f3323ca4c7bfefd7277e4c67f3c08b4  numpy-1.16.0-cp27-cp27m-win32.whl
    25600e8901012180a1b7cd1ac3e27e7793586ecd432383191929ac2edf37ff5d  numpy-1.16.0-cp27-cp27m-win_amd64.whl
    803b2af862dcad6c11231ea3cd1015d1293efd6c87088be33d713a9b23e9e419  numpy-1.16.0-cp27-cp27mu-manylinux1_i686.whl
    24a9c287a4a1c427c2d45bf7c4fc6180c52a08fa0990d4c94e4c86a9b1e23ba5  numpy-1.16.0-cp27-cp27mu-manylinux1_x86_64.whl
    96e49a0c82b4e3130093002f625545104037c2d25866fa2e0c90d6e54f5a1fbc  numpy-1.16.0-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
    a1dd8221f0e69038748f47b8bb3248d0b9ecdf13fe837440951c3d5ff72639bb  numpy-1.16.0-cp35-cp35m-manylinux1_i686.whl
    3e90a9fce378114b6c2fc01fff7423300515c7b54b7cc71b02a22bc0bd7dfdd8  numpy-1.16.0-cp35-cp35m-manylinux1_x86_64.whl
    0470c5dc32212a08ebc2405f32e8ceb9a5b1c8ac61a2daf9835ec0856a220495  numpy-1.16.0-cp35-cp35m-win32.whl
    c40cb17188f6ae3c5b6efc6f0fd43a7ddd219b7807fe179e71027849a9b91afc  numpy-1.16.0-cp35-cp35m-win_amd64.whl
    00a458d6821b1e87be873f2126d5646b901047a7480e8ae9773ecf214f0e19f3  numpy-1.16.0-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
    f1232f98a6bbd6d1678249f94028bccc541bbc306aa5c4e1471a881b0e5a3409  numpy-1.16.0-cp36-cp36m-manylinux1_i686.whl
    2d279bd99329e72c30937bdef82b6dc7779c7607c5a379bab1bf76be1f4c1422  numpy-1.16.0-cp36-cp36m-manylinux1_x86_64.whl
    95c830b09626508f7808ce7f1344fb98068e63143e6050e5dc3063142fc60007  numpy-1.16.0-cp36-cp36m-win32.whl
    ef4ae41add536cb825d8aa029c15ef510aead06ea5b68daea64f0b9ecbff17db  numpy-1.16.0-cp36-cp36m-win_amd64.whl
    32af2bcf4bb7631dac19736a6e092ec9715e770dcaa1f85fcd99dec5040b2a4d  numpy-1.16.0-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
    c6251e0f0ecac53ba2b99d9f0cc16fa9021914a78869c38213c436ba343641f0  numpy-1.16.0-cp37-cp37m-manylinux1_i686.whl
    b19a47ff1bd2fca0cacdfa830c967746764c32dca6a0c0328d9c893f4bfe2f6b  numpy-1.16.0-cp37-cp37m-manylinux1_x86_64.whl
    fea682f6ddc09517df0e6d5caad9613c6d91a42232aeb082df67e4d205de19cc  numpy-1.16.0-cp37-cp37m-win32.whl
    64ff21aac30d40c20ba994c94a08d439b8ced3b9c704af897e9e4ba09d10e62c  numpy-1.16.0-cp37-cp37m-win_amd64.whl
    9b98898687b5dd05c4ac7bcf7e8669a50dd2bb19591b772e045e5806c23e0ca4  numpy-1.16.0.tar.gz
    cb189bd98b2e7ac02df389b6212846ab20661f4bafe16b5a70a6f1728c1cc7cb  numpy-1.16.0.zip


1.15.4

4 years ago

==========================

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 in numpy.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

1.15.3

4 years ago

==========================

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: OBJECTto* 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

1.14.6

4 years ago

==========================

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

1.15.2

4 years ago

==========================

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

1.15.1

4 years ago

==========================

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

1.15.0

5 years ago

==========================

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 and numpy.lcm, to compute the greatest common divisor and least common multiple.

  • numpy.ma.stack, the numpy.stack array-joining function generalized to masked arrays.

  • numpy.quantile function, an interface to percentile without factors of 100

  • numpy.nanquantile function, an interface to nanpercentile without factors of 100

  • numpy.printoptions, a context manager that sets print options temporarily for the scope of the with 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 and npy_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 unaliased pickle.<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 in ind = [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 as arr[[[0, 1], [0, 1]]], currently interpreted as arr[array([0, 1]), array([0, 1])], that will be interpreted as arr[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 Python sum instead.

  • Users of the C-API should call PyArrayResolveWriteBackIfCopy or PyArray_DiscardWritbackIfCopy on any array with the WRITEBACKIFCOPY 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 call it.close(). A RuntimeWarning may be emitted otherwise in these cases.

  • The normed argument of np.histogram, deprecated long ago in 1.6.0, now emits a DeprecationWarning.

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_floatstatusand npy_clear_status functions. Optimizing compilers like GCC 8.1 and Clang were rearranging the order of operations when the previous functions were used in the ufunc SIMD functions, resulting in the floatstatus flags being checked before the operation whose status we wanted to check was run. See #10339 <https://github.com/numpy/numpy/issues/10370>__.

Changes to PyArray_GetDTypeTransferFunction

PyArray_GetDTypeTransferFunction now defaults to using user-defined copyswapn / copyswap for user-defined dtypes. If this causes a significant performance hit, consider implementing copyswapn to reflect the implementation of PyArray_GetStridedCopyFn. See #10898 <https://github.com/numpy/numpy/pull/10898>__.

  • Functions npy_get_floatstatus_barrier and npy_clear_floatstatus_barrier have been added and should be used in place of the npy_get_floatstatusand npy_clear_status functions. Optimizing compilers like GCC 8.1 and Clang were rearranging the order of operations when the previous functions were used in the ufunc SIMD functions, resulting in the floatstatus flags being ' checked before the operation whose status we wanted to check was run. See #10339 <https://github.com/numpy/numpy/issues/10370>__.
New Features np.gcd and np.lcm ufuncs added for integer and objects types

These compute the greatest common divisor, and lowest common multiple, respectively. These work on all the numpy integer types, as well as the builtin arbitrary-precision Decimal and long types.

Support for cross-platform builds for iOS

The build system has been modified to add support for the _PYTHON_HOST_PLATFORM environment variable, used by distutils when compiling on one platform for another platform. This makes it possible to compile NumPy for iOS targets.

This only enables you to compile NumPy for one specific platform at a time. Creating a full iOS-compatible NumPy package requires building for the 5 architectures supported by iOS (i386, x86_64, armv7, armv7s and arm64), and combining these 5 compiled builds products into a single "fat" binary.

return_indices keyword added for np.intersect1d

New keyword return_indices returns the indices of the two input arrays that correspond to the common elements.

np.quantile and np.nanquantile

Like np.percentile and np.nanpercentile, but takes quantiles in [0, 1] rather than percentiles in [0, 100]. np.percentile is now a thin wrapper around np.quantile with the extra step of dividing by 100.

Build system

Added experimental support for the 64-bit RISC-V architecture.

Improvements np.einsum updates

Syncs einsum path optimization tech between numpy and opt_einsum. In particular, the greedy path has received many enhancements by @jcmgray. A full list of issues fixed are:

  • Arbitrary memory can be passed into the greedy path. Fixes gh-11210.
  • The greedy path has been updated to contain more dynamic programming ideas preventing a large number of duplicate (and expensive) calls that figure out the actual pair contraction that takes place. Now takes a few seconds on several hundred input tensors. Useful for matrix product state theories.
  • Reworks the broadcasting dot error catching found in gh-11218 gh-10352 to be a bit earlier in the process.
  • Enhances the can_dot functionality that previous missed an edge case (part of gh-11308).
np.ufunc.reduce and related functions now accept an initial value

np.ufunc.reduce, np.sum, np.prod, np.min and np.max all now accept an initial keyword argument that specifies the value to start the reduction with.

np.flip can operate over multiple axes

np.flip now accepts None, or tuples of int, in its axis argument. If axis is None, it will flip over all the axes.

histogram and histogramdd functions have moved to np.lib.histograms

These were originally found in np.lib.function_base. They are still available under their un-scoped np.histogram(dd) names, and to maintain compatibility, aliased at np.lib.function_base.histogram(dd).

Code that does from np.lib.function_base import * will need to be updated with the new location, and should consider not using import * in future.

histogram will accept NaN values when explicit bins are given

Previously it would fail when trying to compute a finite range for the data. Since the range is ignored anyway when the bins are given explicitly, this error was needless.

Note that calling histogram on NaN values continues to raise the RuntimeWarning s typical of working with nan values, which can be silenced as usual with errstate.

histogram works on datetime types, when explicit bin edges are given

Dates, times, and timedeltas can now be histogrammed. The bin edges must be passed explicitly, and are not yet computed automatically.

histogram "auto" estimator handles limited variance better

No longer does an IQR of 0 result in n_bins=1, rather the number of bins chosen is related to the data size in this situation.

The edges retuned by `histogramandhistogramdd`` now match the data float type

When passed np.float16, np.float32, or np.longdouble data, the returned edges are now of the same dtype. Previously, histogram would only return the same type if explicit bins were given, and histogram would produce float64 bins no matter what the inputs.

histogramdd allows explicit ranges to be given in a subset of axes

The range argument of numpy.histogramdd can now contain None values to indicate that the range for the corresponding axis should be computed from the data. Previously, this could not be specified on a per-axis basis.

The normed arguments of histogramdd and histogram2d have been renamed

These arguments are now called density, which is consistent with histogram. The old argument continues to work, but the new name should be preferred.

np.r_ works with 0d arrays, and np.ma.mr_ works with np.ma.masked

0d arrays passed to the r_ and mr_ concatenation helpers are now treated as though they are arrays of length 1. Previously, passing these was an error. As a result, numpy.ma.mr_ now works correctly on the masked constant.

np.ptp accepts a keepdims argument, and extended axis tuples

np.ptp (peak-to-peak) can now work over multiple axes, just like np.max and np.min.

MaskedArray.astype now is identical to ndarray.astype

This means it takes all the same arguments, making more code written for ndarray work for masked array too.

Enable AVX2/AVX512 at compile time

Change to simd.inc.src to allow use of AVX2 or AVX512 at compile time. Previously compilation for avx2 (or 512) with -march=native would still use the SSE code for the simd functions even when the rest of the code got AVX2.

nan_to_num always returns scalars when receiving scalar or 0d inputs

Previously an array was returned for integer scalar inputs, which is inconsistent with the behavior for float inputs, and that of ufuncs in general. For all types of scalar or 0d input, the result is now a scalar.

np.flatnonzero works on numpy-convertible types

np.flatnonzero now uses np.ravel(a) instead of a.ravel(), so it works for lists, tuples, etc.

np.interp returns numpy scalars rather than builtin scalars

Previously np.interp(0.5, [0, 1], [10, 20]) would return a float, but now it returns a np.float64 object, which more closely matches the behavior of other functions.

Additionally, the special case of np.interp(object_array_0d, ...) is no longer supported, as np.interp(object_array_nd) was never supported anyway.

As a result of this change, the period argument can now be used on 0d arrays.

Allow dtype field names to be unicode in Python 2

Previously np.dtype([(u'name', float)]) would raise a TypeError in Python 2, as only bytestrings were allowed in field names. Now any unicode string field names will be encoded with the ascii codec, raising a UnicodeEncodeError upon failure.

This change makes it easier to write Python 2/3 compatible code using from __future__ import unicode_literals, which previously would cause string literal field names to raise a TypeError in Python 2.

Comparison ufuncs accept dtype=object, overriding the default bool

This allows object arrays of symbolic types, which override == and other operators to return expressions, to be compared elementwise with np.equal(a, b, dtype=object).

sort functions accept kind='stable'

Up until now, to perform a stable sort on the data, the user must do:

>>> np.sort([5, 2, 6, 2, 1], kind='mergesort')
[1, 2, 2, 5, 6]

because merge sort is the only stable sorting algorithm available in NumPy. However, having kind='mergesort' does not make it explicit that the user wants to perform a stable sort thus harming the readability.

This change allows the user to specify kind='stable' thus clarifying the intent.

Do not make temporary copies for in-place accumulation

When ufuncs perform accumulation they no longer make temporary copies because of the overlap between input an output, that is, the next element accumulated is added before the accumulated result is stored in its place, hence the overlap is safe. Avoiding the copy results in faster execution.

linalg.matrix_power can now handle stacks of matrices

Like other functions in linalg, matrix_power can now deal with arrays of dimension larger than 2, which are treated as stacks of matrices. As part of the change, to further improve consistency, the name of the first argument has been changed to a (from M), and the exceptions for non-square matrices have been changed to LinAlgError (from ValueError).

Increased performance in random.permutation for multidimensional arrays

permutation uses the fast path in random.shuffle for all input array dimensions. Previously the fast path was only used for 1-d arrays.

Generalized ufuncs now accept axes, axis and keepdims arguments

One can control over which axes a generalized ufunc operates by passing in an axes argument, a list of tuples with indices of particular axes. For instance, for a signature of (i,j),(j,k)->(i,k) appropriate for matrix multiplication, the base elements are two-dimensional matrices and these are taken to be stored in the two last axes of each argument. The corresponding axes keyword would be [(-2, -1), (-2, -1), (-2, -1)]. If one wanted to use leading dimensions instead, one would pass in [(0, 1), (0, 1), (0, 1)].

For simplicity, for generalized ufuncs that operate on 1-dimensional arrays (vectors), a single integer is accepted instead of a single-element tuple, and for generalized ufuncs for which all outputs are scalars, the (empty) output tuples can be omitted. Hence, for a signature of (i),(i)->() appropriate for an inner product, one could pass in axes=[0, 0] to indicate that the vectors are stored in the first dimensions of the two inputs arguments.

As a short-cut for generalized ufuncs that are similar to reductions, i.e., that act on a single, shared core dimension such as the inner product example above, one can pass an axis argument. This is equivalent to passing in axes with identical entries for all arguments with that core dimension (e.g., for the example above, axes=[(axis,), (axis,)]).

Furthermore, like for reductions, for generalized ufuncs that have inputs that all have the same number of core dimensions and outputs with no core dimension, one can pass in keepdims to leave a dimension with size 1 in the outputs, thus allowing proper broadcasting against the original inputs. The location of the extra dimension can be controlled with axes. For instance, for the inner-product example, keepdims=True, axes=[-2, -2, -2] would act on the inner-product example, keepdims=True, axis=-2 would act on the one-but-last dimension of the input arguments, and leave a size 1 dimension in that place in the output.

float128 values now print correctly on ppc systems

Previously printing float128 values was buggy on ppc, since the special double-double floating-point-format on these systems was not accounted for. float128s now print with correct rounding and uniqueness.

Warning to ppc users: You should upgrade glibc if it is version <=2.23, especially if using float128. On ppc, glibc's malloc in these version often misaligns allocated memory which can crash numpy when using float128 values.

New np.take_along_axis and np.put_along_axis functions

When used on multidimensional arrays, argsort, argmin, argmax, and argpartition return arrays that are difficult to use as indices. take_along_axis provides an easy way to use these indices to lookup values within an array, so that::

np.take_along_axis(a, np.argsort(a, axis=axis), axis=axis)

is the same as::

np.sort(a, axis=axis)

np.put_along_axis acts as the dual operation for writing to these indices within an array.

Checksums MD5
4957a50c1125fdecb4cb51829f5feba1  numpy-1.15.0-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
d5ffa73c6a3eeba8cfcab283e7db3c2f  numpy-1.15.0-cp27-cp27m-manylinux1_i686.whl
a6f7aa33d4d1598dc33831a4bb36570d  numpy-1.15.0-cp27-cp27m-manylinux1_x86_64.whl
cbdd2291782deb29f41c9b7d121264e0  numpy-1.15.0-cp27-cp27mu-manylinux1_i686.whl
0bd79da73435161850099bfcacc75fae  numpy-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl
73f930c046ac09e518d0b4cf2f8ff642  numpy-1.15.0-cp27-none-win32.whl
7ba5b463728a792dced42fd6259e511f  numpy-1.15.0-cp27-none-win_amd64.whl
badfc9f713510d59f478037c88b3d963  numpy-1.15.0-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
662f2536cac7b841f86e9b7488e52371  numpy-1.15.0-cp34-cp34m-manylinux1_i686.whl
346d9239f7f12bb7042f8bc847928dc1  numpy-1.15.0-cp34-cp34m-manylinux1_x86_64.whl
fd03012584359cd05cee08408df5897d  numpy-1.15.0-cp34-none-win32.whl
1032db03cefd82e87f72f2b04b15b7ae  numpy-1.15.0-cp34-none-win_amd64.whl
cc463ee62af94c8410fdf95ce9933c3c  numpy-1.15.0-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
77655199a4e18719dd5a0b348c44fc92  numpy-1.15.0-cp35-cp35m-manylinux1_i686.whl
d76c54272549cf3a2165d40d3fea5e30  numpy-1.15.0-cp35-cp35m-manylinux1_x86_64.whl
956c6f7c216b677b27628a97150cd069  numpy-1.15.0-cp35-none-win32.whl
2ab8080576932775167a6f9c772b91e4  numpy-1.15.0-cp35-none-win_amd64.whl
1a01c8d089d488565acc2836d03a7482  numpy-1.15.0-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
5606fa1c1e13e789b802102699d613e2  numpy-1.15.0-cp36-cp36m-manylinux1_i686.whl
5635343a70f7cdd17f372966db1526d3  numpy-1.15.0-cp36-cp36m-manylinux1_x86_64.whl
166e901c1a86da5ffb8c6d3090ed917e  numpy-1.15.0-cp36-none-win32.whl
6423497ad5a610c1deed606ce44893bd  numpy-1.15.0-cp36-none-win_amd64.whl
e232fbba29585812bf7fa547f671b768  numpy-1.15.0-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
b2fc4551651fae84eb01b8a37f2e1e69  numpy-1.15.0-cp37-cp37m-manylinux1_i686.whl
36ed60bef7c5cb252b9d0e8dc5029e08  numpy-1.15.0-cp37-cp37m-manylinux1_x86_64.whl
4482a89fa4540c8bbf76028621931266  numpy-1.15.0-cp37-none-win32.whl
cfef18ee246468752f1686147c70bd0a  numpy-1.15.0-cp37-none-win_amd64.whl
5cf4daff88042326334266f80ad38884  numpy-1.15.0.tar.gz
20e13185089011116a98e11c9bf8aa07  numpy-1.15.0.zip
SHA256
a17a8fd5df4fec5b56b4d11c9ba8b9ebfb883c90ec361628d07be00aaa4f009a  numpy-1.15.0-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
c3ac359ace241707e5a48fe2922e566ac666aacacf4f8031f2994ac429c31344  numpy-1.15.0-cp27-cp27m-manylinux1_i686.whl
e2317cf091c2e7f0dacdc2e72c693cc34403ca1f8e3807622d0bb653dc978616  numpy-1.15.0-cp27-cp27m-manylinux1_x86_64.whl
64c6acf5175745fd1b7b7e17c74fdbfb7191af3b378bc54f44560279f41238d3  numpy-1.15.0-cp27-cp27mu-manylinux1_i686.whl
924f37e66db78464b4b85ed4b6d2e5cda0c0416e657cac7ccbef14b9fa2c40b5  numpy-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl
674ea7917f0657ddb6976bd102ac341bc493d072c32a59b98e5b8c6eaa2d5ec0  numpy-1.15.0-cp27-none-win32.whl
ae3864816287d0e86ead580b69921daec568fe680857f07ee2a87bf7fd77ce24  numpy-1.15.0-cp27-none-win_amd64.whl
78c35dc7ad184aebf3714dbf43f054714c6e430e14b9c06c49a864fb9e262030  numpy-1.15.0-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
c7c660cc0209fdf29a4e50146ca9ac9d8664acaded6b6ae2f5d0ae2e91a0f0cd  numpy-1.15.0-cp34-cp34m-manylinux1_i686.whl
3fbccb399fe9095b1c1d7b41e7c7867db8aa0d2347fc44c87a7a180cedda112b  numpy-1.15.0-cp34-cp34m-manylinux1_x86_64.whl
aaa519335a71f87217ca8a680c3b66b61960e148407bdf5c209c42f50fe30f49  numpy-1.15.0-cp34-none-win32.whl
62cb836506f40ce2529bfba9d09edc4b2687dd18c56cf4457e51c3e7145402fd  numpy-1.15.0-cp34-none-win_amd64.whl
55daf757e5f69aa75b4477cf4511bf1f96325c730e4ad32d954ccb593acd2585  numpy-1.15.0-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
b5f8c15cb9173f6cdf0f994955e58d1265331029ae26296232379461a297e5f2  numpy-1.15.0-cp35-cp35m-manylinux1_i686.whl
24f3bb9a5f6c3936a8ccd4ddfc1210d9511f4aeb879a12efd2e80bec647b8695  numpy-1.15.0-cp35-cp35m-manylinux1_x86_64.whl
34033b581bc01b1135ca2e3e93a94daea7c739f21a97a75cca93e29d9f0c8e71  numpy-1.15.0-cp35-none-win32.whl
f5a758252502b466b9c2b201ea397dae5a914336c987f3a76c3741a82d43c96e  numpy-1.15.0-cp35-none-win_amd64.whl
14fb76bde161c87dcec52d91c78f65aa8a23aa2e1530a71f412dabe03927d917  numpy-1.15.0-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
816645178f2180be257a576b735d3ae245b1982280b97ae819550ce8bcdf2b6b  numpy-1.15.0-cp36-cp36m-manylinux1_i686.whl
f2a778dd9bb3e4590dbe3bbac28e7c7134280c4ec97e3bf8678170ee58c67b21  numpy-1.15.0-cp36-cp36m-manylinux1_x86_64.whl
7f17efe9605444fcbfd990ba9b03371552d65a3c259fc2d258c24fb95afdd728  numpy-1.15.0-cp36-none-win32.whl
73a816e441dace289302e04a7a34ec4772ed234ab6885c968e3ca2fc2d06fe2d  numpy-1.15.0-cp36-none-win_amd64.whl
21041014b7529237994a6b578701c585703fbb3b1bea356cdb12a5ea7804241c  numpy-1.15.0-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
d690a2ff49f6c3bc35336693c9924fe5916be3cc0503fe1ea6c7e2bf951409ee  numpy-1.15.0-cp37-cp37m-manylinux1_i686.whl
50718eea8e77a1bedcc85befd22c8dbf5a24c9d2c0c1e36bbb8d7a38da847eb3  numpy-1.15.0-cp37-cp37m-manylinux1_x86_64.whl
fb4c33a404d9eff49a0cdc8ead0af6453f62f19e071b60d283f9dc05581e4134  numpy-1.15.0-cp37-none-win32.whl
61efc65f325770bbe787f34e00607bc124f08e6c25fdf04723848585e81560dc  numpy-1.15.0-cp37-none-win_amd64.whl
259934a941663e93fdd5d28ce3f6aa2a81ce7dda85c395dd07b1f1edff2e0236  numpy-1.15.0.tar.gz
f28e73cf18d37a413f7d5de35d024e6b98f14566a10d82100f9dc491a7d449f9  numpy-1.15.0.zip

1.14.5

5 years ago
NumPy 1.14.5 Release Notes

This is a bugfix release for bugs reported following the 1.14.4 release. The most significant fixes are:

  • fixes for compilation errors on alpine and NetBSD

The Python versions supported in this release are 2.7 and 3.4 - 3.6. The Python 3.6 wheels available from PIP are built with Python 3.6.2 and should be compatible with all previous versions of Python 3.6. The source releases were cythonized with Cython 0.28.2 and should work for the upcoming Python 3.7.

Contributors

A total of 1 person contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Charles Harris
Pull requests merged

A total of 2 pull requests were merged for this release.

  • #11274 <https://github.com/numpy/numpy/pull/11274>__: BUG: Correct use of NPY_UNUSED.
  • #11294 <https://github.com/numpy/numpy/pull/11294>__: BUG: Remove extra trailing parentheses.
Checksums

MD5


429afa5c8720016214a79779f774d3a4  numpy-1.14.5-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
de8f5c6c0e46eedf8d92c1a7ba3fccf7  numpy-1.14.5-cp27-cp27m-manylinux1_i686.whl
6315999b5142d22ce7bd9e74b1b4e3ab  numpy-1.14.5-cp27-cp27m-manylinux1_x86_64.whl
397a64608b5809983ff07842ebe0d353  numpy-1.14.5-cp27-cp27mu-manylinux1_i686.whl
6759e2f4bd57727f1ab9d6c9611b3f9d  numpy-1.14.5-cp27-cp27mu-manylinux1_x86_64.whl
2d5609f384fccf9fe4e6172dd4fed3d0  numpy-1.14.5-cp27-none-win32.whl
c0d5fc38ab45f19cbd12200ff4ea45dd  numpy-1.14.5-cp27-none-win_amd64.whl
0a77f36af749e5c3546c3d310f571256  numpy-1.14.5-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
ae15c8254a4a3ebfc45894617ce030a2  numpy-1.14.5-cp34-cp34m-manylinux1_i686.whl
78c67b4b4f8f3f8bd9c2f897f9d40f60  numpy-1.14.5-cp34-cp34m-manylinux1_x86_64.whl
5263ec59028d508992c15263993698d0  numpy-1.14.5-cp34-none-win32.whl
193365c9f1bb2086b47afe9c797ff415  numpy-1.14.5-cp34-none-win_amd64.whl
90caeba061eec5dbebadad5c8bad3a0c  numpy-1.14.5-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
129848206c41b68071fe9cb469a66846  numpy-1.14.5-cp35-cp35m-manylinux1_i686.whl
395c0058b7ec0ae0cad1e052362e9aeb  numpy-1.14.5-cp35-cp35m-manylinux1_x86_64.whl
a542ea0d9047df0da8ab69e90d60dbdc  numpy-1.14.5-cp35-none-win32.whl
c5c86e11b5071c0ca0bb11f6a84f20e6  numpy-1.14.5-cp35-none-win_amd64.whl
350120bd20a0a45857b4c39e901af41b  numpy-1.14.5-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
5a0682a984fcf6f87a9f10760d896b70  numpy-1.14.5-cp36-cp36m-manylinux1_i686.whl
c5596c3d232345d0f0176cd02e6efe92  numpy-1.14.5-cp36-cp36m-manylinux1_x86_64.whl
c0306cbad68f8084e977121ba104b634  numpy-1.14.5-cp36-none-win32.whl
01b5bd7897e1306660c7ea6a30391cc4  numpy-1.14.5-cp36-none-win_amd64.whl
e3189ee851c3a0e2e6e4c6e80a711ec8  numpy-1.14.5.tar.gz
02d940a6931703de2c41fa5590ac7e98  numpy-1.14.5.zip

SHA256


e1864a4e9f93ddb2dc6b62ccc2ec1f8250ff4ac0d3d7a15c8985dd4e1fbd6418  numpy-1.14.5-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
085afac75bbc97a096744fcfc97a4b321c5a87220286811e85089ae04885acdd  numpy-1.14.5-cp27-cp27m-manylinux1_i686.whl
6c57f973218b776195d0356e556ec932698f3a563e2f640cfca7020086383f50  numpy-1.14.5-cp27-cp27m-manylinux1_x86_64.whl
589336ba5199c8061239cf446ee2f2f1fcc0c68e8531ee1382b6fc0c66b2d388  numpy-1.14.5-cp27-cp27mu-manylinux1_i686.whl
5edf1acc827ed139086af95ce4449b7b664f57a8c29eb755411a634be280d9f2  numpy-1.14.5-cp27-cp27mu-manylinux1_x86_64.whl
6b82b81c6b3b70ed40bc6d0b71222ebfcd6b6c04a6e7945a936e514b9113d5a3  numpy-1.14.5-cp27-none-win32.whl
385f1ce46e08676505b692bfde918c1e0b350963a15ef52d77691c2cf0f5dbf6  numpy-1.14.5-cp27-none-win_amd64.whl
758d1091a501fd2d75034e55e7e98bfd1370dc089160845c242db1c760d944d9  numpy-1.14.5-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
c725d11990a9243e6ceffe0ab25a07c46c1cc2c5dc55e305717b5afe856c9608  numpy-1.14.5-cp34-cp34m-manylinux1_i686.whl
07379fe0b450f6fd6e5934a9bc015025bb4ce1c8fbed3ca8bef29328b1bc9570  numpy-1.14.5-cp34-cp34m-manylinux1_x86_64.whl
9e1f53afae865cc32459ad211493cf9e2a3651a7295b7a38654ef3d123808996  numpy-1.14.5-cp34-none-win32.whl
4d278c2261be6423c5e63d8f0ceb1b0c6db3ff83f2906f4b860db6ae99ca1bb5  numpy-1.14.5-cp34-none-win_amd64.whl
d696a8c87315a83983fc59dd27efe034292b9e8ad667aeae51a68b4be14690d9  numpy-1.14.5-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
2df854df882d322d5c23087a4959e145b953dfff2abe1774fec4f639ac2f3160  numpy-1.14.5-cp35-cp35m-manylinux1_i686.whl
baadc5f770917ada556afb7651a68176559f4dca5f4b2d0947cd15b9fb84fb51  numpy-1.14.5-cp35-cp35m-manylinux1_x86_64.whl
2d6481c6bdab1c75affc0fc71eb1bd4b3ecef620d06f2f60c3f00521d54be04f  numpy-1.14.5-cp35-none-win32.whl
51c5dcb51cf88b34b7d04c15f600b07c6ccbb73a089a38af2ab83c02862318da  numpy-1.14.5-cp35-none-win_amd64.whl
8b8dcfcd630f1981f0f1e3846fae883376762a0c1b472baa35b145b911683b7b  numpy-1.14.5-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
9d69967673ab7b028c2df09cae05ba56bf4e39e3cb04ebe452b6035c3b49848e  numpy-1.14.5-cp36-cp36m-manylinux1_i686.whl
8622db292b766719810e0cb0f62ef6141e15fe32b04e4eb2959888319e59336b  numpy-1.14.5-cp36-cp36m-manylinux1_x86_64.whl
97fa8f1dceffab782069b291e38c4c2227f255cdac5f1e3346666931df87373e  numpy-1.14.5-cp36-none-win32.whl
381ad13c30cd1d0b2f3da8a0c1a4aa697487e8bb0e9e0cbeb7439776bcb645f8  numpy-1.14.5-cp36-none-win_amd64.whl
1b4a02758fb68a65ea986d808867f1d6383219c234aef553a8741818e795b529  numpy-1.14.5.tar.gz
a4a433b3a264dbc9aa9c7c241e87c0358a503ea6394f8737df1683c7c9a102ac  numpy-1.14.5.zip

1.14.4

5 years ago

==========================

NumPy 1.14.4 Release Notes

This is a bugfix release for bugs reported following the 1.14.3 release. The most significant fixes are:

  • fixes for compiler instruction reordering that resulted in NaN's not being properly propagated in np.max and np.min,

  • fixes for bus faults on SPARC and older ARM due to incorrect alignment checks.

There are also improvements to printing of long doubles on PPC platforms. All is not yet perfect on that platform, the whitespace padding is still incorrect and is to be fixed in numpy 1.15, consequently NumPy still fails some printing-related (and other) unit tests on ppc systems. However, the printed values are now correct.

Note that NumPy will error on import if it detects incorrect float32 dot results. This problem has been seen on the Mac when working in the Anaconda enviroment and is due to a subtle interaction between MKL and PyQt5. It is not strictly a NumPy problem, but it is best that users be aware of it. See the gh-8577 NumPy issue for more information.

The Python versions supported in this release are 2.7 and 3.4 - 3.6. The Python 3.6 wheels available from PIP are built with Python 3.6.2 and should be compatible with all previous versions of Python 3.6. The source releases were cythonized with Cython 0.28.2 and should work for the upcoming Python 3.7.

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
  • Marten van Kerkwijk
  • Matti Picus
  • Pauli Virtanen
  • Ryan Soklaski +
  • Sebastian Berg
Pull requests merged

A total of 11 pull requests were merged for this release.

  • #11104: BUG: str of DOUBLE_DOUBLE format wrong on ppc64
  • #11170: TST: linalg: add regression test for gh-8577
  • #11174: MAINT: add sanity-checks to be run at import time
  • #11181: BUG: void dtype setup checked offset not actual pointer for alignment
  • #11194: BUG: Python2 doubles don't print correctly in interactive shell.
  • #11198: BUG: optimizing compilers can reorder call to npy_get_floatstatus
  • #11199: BUG: reduce using SSE only warns if inside SSE loop
  • #11203: BUG: Bytes delimiter/comments in genfromtxt should be decoded
  • #11211: BUG: Fix reference count/memory leak exposed by better testing
  • #11219: BUG: Fixes einsum broadcasting bug when optimize=True
  • #11251: DOC: Document 1.14.4 release.
Checksums MD5
118e010f76fba91f05111e775d08b9d2  numpy-1.14.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
a08af11af72e8393d61f1724e2a42258  numpy-1.14.4-cp27-cp27m-manylinux1_i686.whl
bbf56f4de32bb2c4215e01ea4f1b9445  numpy-1.14.4-cp27-cp27m-manylinux1_x86_64.whl
b5e17dcc08205a278ffd33c6baeb7562  numpy-1.14.4-cp27-cp27mu-manylinux1_i686.whl
e6844d6134fed4f79b52cd89d66edb76  numpy-1.14.4-cp27-cp27mu-manylinux1_x86_64.whl
e9d4ab30ffee0f57da2292ed2c42bdcb  numpy-1.14.4-cp27-none-win32.whl
ff04e3451a90fdf9ae8b6db8b3e8c2d6  numpy-1.14.4-cp27-none-win_amd64.whl
fbe6a5a9a0de9f85bcb729702a132769  numpy-1.14.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
33a177cf9d60fa26d30dc80b7163a374  numpy-1.14.4-cp34-cp34m-manylinux1_i686.whl
6335ee571648d8db7561a619328b69c7  numpy-1.14.4-cp34-cp34m-manylinux1_x86_64.whl
e53dd3796a0cdec43037b18c5c54d1a3  numpy-1.14.4-cp34-none-win32.whl
aab911c898c58073b47a2d1f28228a41  numpy-1.14.4-cp34-none-win_amd64.whl
a05e215d9443c838a531119eb5c1eadc  numpy-1.14.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
7c5f7ff2cccb13c22b87f768ac1cc6e2  numpy-1.14.4-cp35-cp35m-manylinux1_i686.whl
d22105d03a15c9fd6ec4ecffa4b1f764  numpy-1.14.4-cp35-cp35m-manylinux1_x86_64.whl
7a5d4c66c7f6e430eb73b5683d99cacb  numpy-1.14.4-cp35-none-win32.whl
cf0c074d9243f8bf6eff8291ac12a003  numpy-1.14.4-cp35-none-win_amd64.whl
79233bdad30a65beb515c86a4612102d  numpy-1.14.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
135139bd2ec26e2b52bdd2d36be94c44  numpy-1.14.4-cp36-cp36m-manylinux1_i686.whl
9c56d525cf6da2b8489e723d72ccc9a2  numpy-1.14.4-cp36-cp36m-manylinux1_x86_64.whl
ec9af9e19aac597e1a245ada9c333e2d  numpy-1.14.4-cp36-none-win32.whl
f8ec9c6167f2b0d08066ec78c3a01a4c  numpy-1.14.4-cp36-none-win_amd64.whl
7de00fc3be91a3ab913d4efe206b3928  numpy-1.14.4.tar.gz
a8a23723342a561e579757553e9db73a  numpy-1.14.4.zip
SHA256
c0c4bdcb771a147cb14286e3aeb72267e1664652d4150b0df255f0c210166a62  numpy-1.14.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
939376b3b8d9bd42529a2713534c9bae7f11c774614d4d2f7f2a38cae96101f1  numpy-1.14.4-cp27-cp27m-manylinux1_i686.whl
6105d909e56c4f3f173a7294154eee5da80853104e9c3ebcf9e523fb3bb6cf70  numpy-1.14.4-cp27-cp27m-manylinux1_x86_64.whl
3ed68b8ef0635e12b06c216d3ed33572d9c15b05a5a5d6ab870d073190c3eef3  numpy-1.14.4-cp27-cp27mu-manylinux1_i686.whl
1dc831683f18c11e6b5b7ad3610b9f00417b8d3fc63a8adcdbe68844d9dd6f62  numpy-1.14.4-cp27-cp27mu-manylinux1_x86_64.whl
8d87ac65d830ee3087e6bd02b0201e68aed4c715ff2e227e3640e7ded38d8a2e  numpy-1.14.4-cp27-none-win32.whl
7fbceea93b6877419d84516705a265dfc4626939a29107a4d04db599bf6cdf8d  numpy-1.14.4-cp27-none-win_amd64.whl
a1b4a80d59658fc438716095deb1971c6315482b461d976f760d920b6509fd5d  numpy-1.14.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
ef7a07f6a77658a1038e6d22e53458129c04a95b5770f080b5741320d9491e32  numpy-1.14.4-cp34-cp34m-manylinux1_i686.whl
c5065b3aec37cd1b7ec2882b3ab86e200d15219a0fb96fea65a16c6b59d3c0f0  numpy-1.14.4-cp34-cp34m-manylinux1_x86_64.whl
b2b2741da83b1e016094b2fef2cadec1abd3ccd3d97428634ec6afe1dcb699b8  numpy-1.14.4-cp34-none-win32.whl
419dfe9bcb09d2e87ecf296c5ebf2b047c568419c89588acc9dbce6d2d761bea  numpy-1.14.4-cp34-none-win_amd64.whl
be4664fe153ca6dbd961fb06f99b9b88b114ab44649376253b540aafbf42e469  numpy-1.14.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
0d6d7bbcb54babaf39fe658bcc6f79641c9c62813c6d477802d783c7ba1a437c  numpy-1.14.4-cp35-cp35m-manylinux1_i686.whl
f54114395aabe13c7c4e4b425145cfd998eaf0781e87a9e9b2e77426f1ec8a82  numpy-1.14.4-cp35-cp35m-manylinux1_x86_64.whl
eb6ccd2b47d43199ec9a7c39bd45e399ccb5756e7367aaf92ced3c46fa67b16b  numpy-1.14.4-cp35-none-win32.whl
f6a4ae8d5e1126bf4d8520a9aa6a82d067ab3ce7d21f58f0d50ead2aebda7bfb  numpy-1.14.4-cp35-none-win_amd64.whl
b037993dfb1175a68b6a2bfc6b1c2af57c09031d1332fea3ab25a539b43bd475  numpy-1.14.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
e6c24c83ca64d447a18f041bd53cbe96c74405f59939b6006755105583b62629  numpy-1.14.4-cp36-cp36m-manylinux1_i686.whl
f29a9c5607b0fded7a9f0871dbd06918a88cb0a465acfac5c67f92d1a4115d48  numpy-1.14.4-cp36-cp36m-manylinux1_x86_64.whl
d9ceb6c680ffbe55ef6cf9d93558e0ddb72d616b885d77c536920f3da2112703  numpy-1.14.4-cp36-none-win32.whl
9e6694912f13afd8b1e15aa8002e9c951a377c94080c5442de154d743a69b3ff  numpy-1.14.4-cp36-none-win_amd64.whl
c9a83644685edf8b5383b7632daa37df115b41aa20ca6ec3139e707d88f7c903  numpy-1.14.4.tar.gz
2185a0f31ecaa0792264fa968c8e0ba6d96acf144b26e2e1d1cd5b77fc11a691  numpy-1.14.4.zip

1.14.3

5 years ago

==========================

NumPy 1.14.3 Release Notes

This is a bugfix release for a few bugs reported following the 1.14.2 release:

  • np.lib.recfunctions.fromrecords accepts a list-of-lists, until 1.15
  • In python2, float types use the new print style when printing to a file
  • style arg in "legacy" print mode now works for 0d arrays

The Python versions supported in this release are 2.7 and 3.4 - 3.6. The Python 3.6 wheels available from PIP are built with Python 3.6.2 and should be compatible with all previous versions of Python 3.6. The source releases were cythonized with Cython 0.28.2.

Contributors

A total of 6 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Allan Haldane
  • Charles Harris
  • Jonathan March +
  • Malcolm Smith +
  • Matti Picus
  • Pauli Virtanen
Pull requests merged

A total of 8 pull requests were merged for this release.

  • #10862: BUG: floating types should override tp_print (1.14 backport)
  • #10905: BUG: for 1.14 back-compat, accept list-of-lists in fromrecords
  • #10947: BUG: 'style' arg to array2string broken in legacy mode (1.14...
  • #10959: BUG: test, fix for missing flags['WRITEBACKIFCOPY'] key
  • #10960: BUG: Add missing underscore to prototype in check_embedded_lapack
  • #10961: BUG: Fix encoding regression in ma/bench.py (Issue #10868)
  • #10962: BUG: core: fix NPY_TITLE_KEY macro on pypy
  • #10974: BUG: test, fix PyArray_DiscardWritebackIfCopy...
Checksums MD5
14b675b1f5c0e33dea22735df8ecf5d1  numpy-1.14.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
501b9237037beee4c1262180c317f527  numpy-1.14.3-cp27-cp27m-manylinux1_i686.whl
51f3c8de7bac77ce864a8a28dc0c3f10  numpy-1.14.3-cp27-cp27m-manylinux1_x86_64.whl
37bfe26b655464a77356ee053deafad2  numpy-1.14.3-cp27-cp27mu-manylinux1_i686.whl
c8243f0d6a77c88acf48235aaedf1497  numpy-1.14.3-cp27-cp27mu-manylinux1_x86_64.whl
9c616eb6134c92ca42cca5883e7861b7  numpy-1.14.3-cp27-none-win32.whl
fa3f732464bc83eb08fc6748aeb01ba0  numpy-1.14.3-cp27-none-win_amd64.whl
711dd188cf3269e092adb4240742731b  numpy-1.14.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
0450e19513ff2406055bdffcdfef8d82  numpy-1.14.3-cp34-cp34m-manylinux1_i686.whl
1a0fc864b3b1aea403b426eb2e83276c  numpy-1.14.3-cp34-cp34m-manylinux1_x86_64.whl
13fa200925025289dbd120078c54377f  numpy-1.14.3-cp34-none-win32.whl
fc74d7d13da26e2ffc8bf39d5c24d171  numpy-1.14.3-cp34-none-win_amd64.whl
faee14118dea28c6e2be5aadaa1613ca  numpy-1.14.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
e93edc38b9e31d774af60b45ad25d3d7  numpy-1.14.3-cp35-cp35m-manylinux1_i686.whl
6d7ced18705cdd82030472b7a0b106c9  numpy-1.14.3-cp35-cp35m-manylinux1_x86_64.whl
42000f9cfef06906e25c0020a9c92366  numpy-1.14.3-cp35-none-win32.whl
b7cd0a630d24ef8ed245cde71e50c46e  numpy-1.14.3-cp35-none-win_amd64.whl
d728ee343c54c8b9b1186747bae6800b  numpy-1.14.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
0f8ed907b7c37d7e8c0508ee30ac5e0b  numpy-1.14.3-cp36-cp36m-manylinux1_i686.whl
04428f5a071531dd463504250c194de3  numpy-1.14.3-cp36-cp36m-manylinux1_x86_64.whl
a376953ac6bfca04371899d70126ebd4  numpy-1.14.3-cp36-none-win32.whl
955959dbc1a743308bfcafb4d867da29  numpy-1.14.3-cp36-none-win_amd64.whl
7c3c806ae27196c92d2fb3fbd4991e81  numpy-1.14.3.tar.gz
97416212c0a172db4bc6b905e9c4634b  numpy-1.14.3.zip
SHA256
a8dbab311d4259de5eeaa5b4e83f5f8545e4808f9144e84c0f424a6ee55a7b98  numpy-1.14.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
034717bfef517858abc79324820a702dc6cd063effb9baab86533e8a78670689  numpy-1.14.3-cp27-cp27m-manylinux1_i686.whl
f39afab5769b3aaa786634b94b4a23ef3c150bdda044e8a32a3fc16ddafe803b  numpy-1.14.3-cp27-cp27m-manylinux1_x86_64.whl
8670067685051b49d1f2f66e396488064299fefca199c7c80b6ba0c639fedc98  numpy-1.14.3-cp27-cp27mu-manylinux1_i686.whl
0db6301324d0568089663ef2701ad90ebac0e975742c97460e89366692bd0563  numpy-1.14.3-cp27-cp27mu-manylinux1_x86_64.whl
98ff275f1b5907490d26b30b6ff111ecf2de0254f0ab08833d8fe61aa2068a00  numpy-1.14.3-cp27-none-win32.whl
aaef1bea636b6e552bbc5dae0ada87d4f6046359daaa97a05a013b0169620f27  numpy-1.14.3-cp27-none-win_amd64.whl
760550fdf9d8ec7da9c4402a4afe6e25c0f184ae132011676298a6b636660b45  numpy-1.14.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
e8578a62a8eaf552b95d62f630bb5dd071243ba1302bbff3e55ac48588508736  numpy-1.14.3-cp34-cp34m-manylinux1_i686.whl
e33baf50f2f6b7153ddb973601a11df852697fba4c08b34a5e0f39f66f8120e1  numpy-1.14.3-cp34-cp34m-manylinux1_x86_64.whl
0074d42e2cc333800bd09996223d40ec52e3b1ec0a5cab05dacc09b662c4c1ae  numpy-1.14.3-cp34-none-win32.whl
c3fe23df6fe0898e788581753da453f877350058c5982e85a8972feeecb15309  numpy-1.14.3-cp34-none-win_amd64.whl
1864d005b2eb7598063e35c320787d87730d864f40d6410f768fe4ea20672016  numpy-1.14.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
f22b3206f1c561dd9110b93d144c6aaa4a9a354e3b07ad36030df3ea92c5bb5b  numpy-1.14.3-cp35-cp35m-manylinux1_i686.whl
c80fcf9b38c7f4df666150069b04abbd2fe42ae640703a6e1f128cda83b552b7  numpy-1.14.3-cp35-cp35m-manylinux1_x86_64.whl
510863d606c932b41d2209e4de6157ab3fdf52001d3e4ad351103176d33c4b8b  numpy-1.14.3-cp35-none-win32.whl
c5eb7254cfc4bd7a4330ad7e1f65b98343836865338c57b0e25c661e41d5cfd9  numpy-1.14.3-cp35-none-win_amd64.whl
b8987e30d9a0eb6635df9705a75cf8c4a2835590244baecf210163343bc65176  numpy-1.14.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
57dc6c22d59054542600fce6fae2d1189b9c50bafc1aab32e55f7efcc84a6c46  numpy-1.14.3-cp36-cp36m-manylinux1_i686.whl
46ce8323ca9384814c7645298b8b627b7d04ce97d6948ef02da357b2389d6972  numpy-1.14.3-cp36-cp36m-manylinux1_x86_64.whl
9ccf4d5c9139b1e985db915039baa0610a7e4a45090580065f8d8cb801b7422f  numpy-1.14.3-cp36-none-win32.whl
560e23a12e7599be8e8b67621396c5bc687fd54b48b890adbc71bc5a67333f86  numpy-1.14.3-cp36-none-win_amd64.whl
cfcfc7a9a8ba4275c60a815c683d59ac5e7aa9362d76573b6cc4324ffb1235fa  numpy-1.14.3.tar.gz
9016692c7d390f9d378fc88b7a799dc9caa7eb938163dda5276d3f3d6f75debf  numpy-1.14.3.zip

1.14.2

5 years ago

==========================

NumPy 1.14.2 Release Notes

This is a bugfix release for some bugs reported following the 1.14.1 release. The major problems dealt with are as follows.

  • Residual bugs in the new array printing functionality.
  • Regression resulting in a relocation problem with shared library.
  • Improved PyPy compatibility.

The Python versions supported in this release are 2.7 and 3.4 - 3.6. The Python 3.6 wheels available from PIP are built with Python 3.6.2 and should be compatible with all previous versions of Python 3.6. The source releases were cythonized with Cython 0.26.1, which is known to not support the upcoming Python 3.7 release. People who wish to run Python 3.7 should check out the NumPy repo and try building with the, as yet, unreleased master branch of Cython.

Contributors

A total of 4 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Allan Haldane
  • Charles Harris
  • Eric Wieser
  • Pauli Virtanen
Pull requests merged

A total of 5 pull requests were merged for this release.

  • #10674: BUG: Further back-compat fix for subclassed array repr
  • #10725: BUG: dragon4 fractional output mode adds too many trailing zeros
  • #10726: BUG: Fix f2py generated code to work on PyPy
  • #10727: BUG: Fix missing NPY_VISIBILITY_HIDDEN on npy_longdouble_to_PyLong
  • #10729: DOC: Create 1.14.2 notes and changelog.
Checksums MD5
9bb06966218d0f3d0a25a6155c7d2439  numpy-1.14.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
b8a260b915d44475f4385fed4c6a7ec8  numpy-1.14.2-cp27-cp27m-manylinux1_i686.whl
7733aa702cebb5b0469b820ea9cfc293  numpy-1.14.2-cp27-cp27m-manylinux1_x86_64.whl
ef1065f3ecd08054eca9c6c14a2e3518  numpy-1.14.2-cp27-cp27mu-manylinux1_i686.whl
1227a63fcc8ce91a75d2ab006d406df7  numpy-1.14.2-cp27-cp27mu-manylinux1_x86_64.whl
6ac633c46c13dd2af93761460d63436e  numpy-1.14.2-cp27-none-win32.whl
187a94722b84d65cc3a9ecfce27ee3b2  numpy-1.14.2-cp27-none-win_amd64.whl
580340cfe4a14f8a9e1d781d7b42955b  numpy-1.14.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
7f38fb83008ed4bb8217840ac27aeba4  numpy-1.14.2-cp34-cp34m-manylinux1_i686.whl
cbe383ad27db21767b6ffdd943e3df9c  numpy-1.14.2-cp34-cp34m-manylinux1_x86_64.whl
350a1e0f0c825ffa1de264108c648482  numpy-1.14.2-cp34-none-win32.whl
ececd9b8891d801d4a968c2ec5eac7bb  numpy-1.14.2-cp34-none-win_amd64.whl
8a74bb1f94ad8c1ad8f37e73f967b850  numpy-1.14.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
c1231d7e7fc52c09dff9a529ad228818  numpy-1.14.2-cp35-cp35m-manylinux1_i686.whl
ef57856bf6dade82922ab58922756dd0  numpy-1.14.2-cp35-cp35m-manylinux1_x86_64.whl
8c98ab081112832e3a7faca624598119  numpy-1.14.2-cp35-none-win32.whl
2652e9660be5d074224d14436504f008  numpy-1.14.2-cp35-none-win_amd64.whl
1cdb6cf8d60dfbe99f60639dac38471e  numpy-1.14.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
b11c80344b84853b7a24acc51bbe4945  numpy-1.14.2-cp36-cp36m-manylinux1_i686.whl
65c3802c0f25f2d26aa784433643f655  numpy-1.14.2-cp36-cp36m-manylinux1_x86_64.whl
8f9986b323d4215925d6cfa1cd1bc14d  numpy-1.14.2-cp36-none-win32.whl
9d78ceef101313f49fd0b8fed25d889c  numpy-1.14.2-cp36-none-win_amd64.whl
e39878fafb11828983aeec583dda4a06  numpy-1.14.2.tar.gz
080f01a19707cf467393e426382c7619  numpy-1.14.2.zip
SHA256
719d914f564f35cce4dc103808f8297c807c9f0297ac183ed81ae8b5650e698e  numpy-1.14.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
0f6a5ed0cd7ab1da11f5c07a8ecada73fc55a70ef7bb6311a4109891341d7277  numpy-1.14.2-cp27-cp27m-manylinux1_i686.whl
d0928076d9bd8a98de44e79b1abe50c1456e7abbb40af7ef58092086f1a6c729  numpy-1.14.2-cp27-cp27m-manylinux1_x86_64.whl
d858423f5ed444d494b15c4cc90a206e1b8c31354c781ac7584da0d21c09c1c3  numpy-1.14.2-cp27-cp27mu-manylinux1_i686.whl
20cac3123d791e4bf8482a580d98d6b5969ba348b9d5364df791ba3a666b660d  numpy-1.14.2-cp27-cp27mu-manylinux1_x86_64.whl
528ce59ded2008f9e8543e0146acb3a98a9890da00adf8904b1e18c82099418b  numpy-1.14.2-cp27-none-win32.whl
56e392b7c738bd70e6f46cf48c8194d3d1dd4c5a59fae4b30c58bb6ef86e5233  numpy-1.14.2-cp27-none-win_amd64.whl
99051e03b445117b26028623f1a487112ddf61a09a27e2d25e6bc07d37d94f25  numpy-1.14.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
768e777cc1ffdbf97c507f65975c8686ebafe0f3dc8925d02ac117acc4669ce9  numpy-1.14.2-cp34-cp34m-manylinux1_i686.whl
675e0f23967ce71067d12b6944add505d5f0a251f819cfb44bdf8ee7072c090d  numpy-1.14.2-cp34-cp34m-manylinux1_x86_64.whl
a958bf9d4834c72dee4f91a0476e7837b8a2966dc6fcfc42c421405f98d0da51  numpy-1.14.2-cp34-none-win32.whl
bb370120de6d26004358611441e07acda26840e41dfedc259d7f8cc613f96495  numpy-1.14.2-cp34-none-win_amd64.whl
f2b1378b63bdb581d5d7af2ec0373c8d40d651941d283a2afd7fc71184b3f570  numpy-1.14.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
a1413d06abfa942ca0553bf3bccaff5fdb36d55b84f2248e36228db871147dab  numpy-1.14.2-cp35-cp35m-manylinux1_i686.whl
7f76d406c6b998d6410198dcb82688dcdaec7d846aa87e263ccf52efdcfeba30  numpy-1.14.2-cp35-cp35m-manylinux1_x86_64.whl
a7157c9ac6bddd2908c35ef099e4b643bc0e0ebb4d653deb54891d29258dd329  numpy-1.14.2-cp35-none-win32.whl
0fd65cbbfdbf76bbf80c445d923b3accefea0fe2c2082049e0ce947c81fe1d3f  numpy-1.14.2-cp35-none-win_amd64.whl
8c18ee4dddd5c6a811930c0a7c7947bf16387da3b394725f6063f1366311187d  numpy-1.14.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
0739146eaf4985962f07c62f7133aca89f3a600faac891ce6c7f3a1e2afe5272  numpy-1.14.2-cp36-cp36m-manylinux1_i686.whl
07e21f14490324cc1160db101e9b6c1233c33985af4cb1d301dd02650fea1d7f  numpy-1.14.2-cp36-cp36m-manylinux1_x86_64.whl
e6120d63b50e2248219f53302af7ec6fa2a42ed1f37e9cda2c76dbaca65036a7  numpy-1.14.2-cp36-none-win32.whl
6be6b0ca705321c178c9858e5ad5611af664bbdfae1df1541f938a840a103888  numpy-1.14.2-cp36-none-win_amd64.whl
ddbcda194f49e0cf0663fa8131cb9d7a3b876d14dea0047d3c5fdfaf20adbb40  numpy-1.14.2.tar.gz
facc6f925c3099ac01a1f03758100772560a0b020fb9d70f210404be08006bcb  numpy-1.14.2.zip

1.14.1

5 years ago

==========================

NumPy 1.14.1 Release Notes

This is a bugfix release for some problems reported following the 1.14.0 release. The major problems fixed are the following.

  • Problems with the new array printing, particularly the printing of complex values, Please report any additional problems that may turn up.
  • Problems with np.einsum due to the new optimized=True default. Some fixes for optimization have been applied and optimize=False is now the default.
  • The sort order in np.unique when axis=<some-number> will now always be lexicographic in the subarray elements. In previous NumPy versions there was an optimization that could result in sorting the subarrays as unsigned byte strings.
  • The change in 1.14.0 that multi-field indexing of structured arrays returns a view instead of a copy has been reverted but remains on track for NumPy 1.15. Affected users should read the 1.14.1 Numpy User Guide section "basics/structured arrays/accessing multiple fields" for advice on how to manage this transition.

The Python versions supported in this release are 2.7 and 3.4 - 3.6. The Python 3.6 wheels available from PIP are built with Python 3.6.2 and should be compatible with all previous versions of Python 3.6. The source releases were cythonized with Cython 0.26.1, which is known to not support the upcoming Python 3.7 release. People who wish to run Python 3.7 should check out the NumPy repo and try building with the, as yet, unreleased master branch of Cython.

Contributors

A total of 14 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Allan Haldane
  • Charles Harris
  • Daniel Smith
  • Dennis Weyland +
  • Eric Larson
  • Eric Wieser
  • Jarrod Millman
  • Kenichi Maehashi +
  • Marten van Kerkwijk
  • Mathieu Lamarre
  • Sebastian Berg
  • Simon Conseil
  • Simon Gibbons
  • xoviat
Pull requests merged

A total of 36 pull requests were merged for this release.

  • #10339: BUG: restrict the config modifications to win32
  • #10368: MAINT: Adjust type promotion in linalg.norm
  • #10375: BUG: add missing paren and remove quotes from repr of fieldless...
  • #10395: MAINT: Update download URL in setup.py.
  • #10396: BUG: fix einsum issue with unicode input and py2
  • #10397: BUG: fix error message not formatted in einsum
  • #10398: DOC: add documentation about how to handle new array printing
  • #10403: BUG: Set einsum optimize parameter default to False.
  • #10424: ENH: Fix repr of np.record objects to match np.void types #10412
  • #10425: MAINT: Update zesty to artful for i386 testing
  • #10431: REL: Add 1.14.1 release notes template
  • #10435: MAINT: Use ValueError for duplicate field names in lookup (backport)
  • #10534: BUG: Provide a better error message for out-of-order fields
  • #10536: BUG: Resize bytes_ columns in genfromtxt (backport of #10401)
  • #10537: BUG: multifield-indexing adds padding bytes: revert for 1.14.1
  • #10539: BUG: fix np.save issue with python 2.7.5
  • #10540: BUG: Add missing DECREF in Py2 int() cast
  • #10541: TST: Add circleci document testing to maintenance/1.14.x
  • #10542: BUG: complex repr has extra spaces, missing + (1.14 backport)
  • #10550: BUG: Set missing exception after malloc
  • #10557: BUG: In numpy.i, clear CARRAY flag if wrapped buffer is not C_CONTIGUOUS.
  • #10558: DEP: Issue FutureWarning when malformed records detected.
  • #10559: BUG: Fix einsum optimize logic for singleton dimensions
  • #10560: BUG: Fix calling ufuncs with a positional output argument.
  • #10561: BUG: Fix various Big-Endian test failures (ppc64)
  • #10562: BUG: Make dtype.descr error for out-of-order fields.
  • #10563: BUG: arrays not being flattened in union1d
  • #10607: MAINT: Update sphinxext submodule hash.
  • #10608: BUG: Revert sort optimization in np.unique.
  • #10609: BUG: infinite recursion in str of 0d subclasses
  • #10610: BUG: Align type definition with generated lapack
  • #10612: BUG/ENH: Improve output for structured non-void types
  • #10622: BUG: deallocate recursive closure in arrayprint.py (1.14 backport)
  • #10624: BUG: Correctly identify comma seperated dtype strings
  • #10629: BUG: deallocate recursive closure in arrayprint.py (backport...
  • #10630: REL: Prepare for 1.14.1 release.
Checksums MD5
8a56c4b06e859ccad60a85d3486b214a  numpy-1.14.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
94189ecffbc1032df54f570bb6ff490d  numpy-1.14.1-cp27-cp27m-manylinux1_i686.whl
61473860888d024caa1261274620352e  numpy-1.14.1-cp27-cp27m-manylinux1_x86_64.whl
f9f6ada0f110230569cea9d8d2f5416a  numpy-1.14.1-cp27-cp27mu-manylinux1_i686.whl
0c2c6637c5c8ca639e1b7b3fa4ac64cc  numpy-1.14.1-cp27-cp27mu-manylinux1_x86_64.whl
dbae0fec3c033b42695d9df9636ba9a5  numpy-1.14.1-cp27-none-win32.whl
c7ee8517a1a52b90f08651c1f17b6e39  numpy-1.14.1-cp27-none-win_amd64.whl
bb051505823a3f990ea22750a08cd40b  numpy-1.14.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
655f4c67598dfe583fce3075e0152b06  numpy-1.14.1-cp34-cp34m-manylinux1_i686.whl
94cdf22837fdec46d03709fe0338ee09  numpy-1.14.1-cp34-cp34m-manylinux1_x86_64.whl
5b7fc9eb18463356ed8d018a3b486d53  numpy-1.14.1-cp34-none-win32.whl
b261be176aa57dce8a64f4fac169c74b  numpy-1.14.1-cp34-none-win_amd64.whl
196639515a2084dc5b4b86a5ea0247ce  numpy-1.14.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
d897ae36d1487a101714deeb8782b7c5  numpy-1.14.1-cp35-cp35m-manylinux1_i686.whl
12f2c45cc7501dc5a5e670042300f1e6  numpy-1.14.1-cp35-cp35m-manylinux1_x86_64.whl
e94355704fe2f6b3d1bcf6c8f6189df4  numpy-1.14.1-cp35-none-win32.whl
13b79737d10e857ee808a1dfdd2ff01e  numpy-1.14.1-cp35-none-win_amd64.whl
8819860639f492ddf6045a95227624d0  numpy-1.14.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
2b3d5774779e808cef193872dd4f6dbe  numpy-1.14.1-cp36-cp36m-manylinux1_i686.whl
dd2321ea4590ec05d825d8c9a64fd64b  numpy-1.14.1-cp36-cp36m-manylinux1_x86_64.whl
a5803be2b83c1ec5f36ed9f58a0f848c  numpy-1.14.1-cp36-none-win32.whl
299c92352d2c08baa6a8142971b39295  numpy-1.14.1-cp36-none-win_amd64.whl
0e09f20f62ab9f8a02cb7bd3fd023482  numpy-1.14.1.tar.gz
b8324ef90ac9064cd0eac46b8b388674  numpy-1.14.1.zip
SHA256
e2335d56d2fd9fc4e3a3f2d3148aafec4962682375f429f05c45a64dacf19436  numpy-1.14.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
9b762e78739b6e021124adbea07611682db99cd3fca7f3c3a8b98b8f74ea5699  numpy-1.14.1-cp27-cp27m-manylinux1_i686.whl
7d4c549e41507db4f04ec7cfab5597de8acf7871b16c9cf64cebcb9d39031ca6  numpy-1.14.1-cp27-cp27m-manylinux1_x86_64.whl
b803306c4c201e7dcda0ce1b9a9c87f61a7c7ce43de2c60c8e56147b76849a1a  numpy-1.14.1-cp27-cp27mu-manylinux1_i686.whl
2da8dff91d489fea3e20155d41f4cd680de7d01d9a89fdd0ebb1bee6e72d3800  numpy-1.14.1-cp27-cp27mu-manylinux1_x86_64.whl
6b8c2daacbbffc83b4a2ba83a61aa3ce60c66340b07b962bd27b6c6bb175bee1  numpy-1.14.1-cp27-none-win32.whl
89b9419019c47ec87cf4cfca77d85da4611cc0be636ec87b5290346490b98450  numpy-1.14.1-cp27-none-win_amd64.whl
49880b47d7272f902946dd995f346842c95fe275e2deb3082ef0495f0c718a69  numpy-1.14.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
3d7ddd5bdfb12ec9668edf1aa49a4a3eddb0db4661b57ea431477eb9a2468894  numpy-1.14.1-cp34-cp34m-manylinux1_i686.whl
788e1757f8e409cd805a7cd82993cd9252fa19e334758a4c6eb5a8b334abb084  numpy-1.14.1-cp34-cp34m-manylinux1_x86_64.whl
377def0873bbb1fbdedb14b3275b10a29b1b55619a3f7f775c4e7f9ce2461b9c  numpy-1.14.1-cp34-none-win32.whl
9501c9ccd081977ca5579a3ec4009d6baff6bacb04bf07214aade3324734195a  numpy-1.14.1-cp34-none-win_amd64.whl
a1f5173df8190ef9c6235d260d70ca70c6fb029683ceb66e244c5cc6e335947a  numpy-1.14.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
12cf4b27039b88e407ad66894d99a957ef60fea0eeb442026af325add2ab264d  numpy-1.14.1-cp35-cp35m-manylinux1_i686.whl
4e2fc841c8c642f7fd44591ef856ca409cedba6aea27928df34004c533839eee  numpy-1.14.1-cp35-cp35m-manylinux1_x86_64.whl
e5ade7a69dccbd99c4fdbb95b6d091d941e62ffa588b0ed8fb0a2854118fef3f  numpy-1.14.1-cp35-none-win32.whl
6b1011ffc87d7e2b1b7bcc6dc21bdf177163658746ef778dcd21bf0516b9126c  numpy-1.14.1-cp35-none-win_amd64.whl
a8bc80f69570e11967763636db9b24c1e3e3689881d10ae793cec74cf7a627b6  numpy-1.14.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
81b9d8f6450e752bd82e7d9618fa053df8db1725747880e76fb09710b57f78d0  numpy-1.14.1-cp36-cp36m-manylinux1_i686.whl
e8522cad377cc2ef20fe13aae742cc265172910c98e8a0d6014b1a8d564019e2  numpy-1.14.1-cp36-cp36m-manylinux1_x86_64.whl
a3d5dd437112292c707e54f47141be2f1100221242f07eda7bd8477f3ddc2252  numpy-1.14.1-cp36-none-win32.whl
c8000a6cbc5140629be8c038c9c9cdb3a1c85ff90bd4180ec99f0f0c73050b5e  numpy-1.14.1-cp36-none-win_amd64.whl
8708a775be9a9a457b80a49193c57bd9d51a8a195ed1f1c4b8e89eaf3aa646ee  numpy-1.14.1.tar.gz
fa0944650d5d3fb95869eaacd8eedbd2d83610c85e271bd9d3495ffa9bc4dc9c  numpy-1.14.1.zip

1.14.0

5 years ago

==========================

NumPy 1.14.0 Release Notes

Numpy 1.14.0 is the result of seven months of work and contains a large number of bug fixes and new features, along with several changes with potential compatibility issues. The major change that users will notice are the stylistic changes in the way numpy arrays and scalars are printed, a change that will affect doctests. See below for details on how to preserve the old style printing when needed.

A major decision affecting future development concerns the schedule for dropping Python 2.7 support in the runup to 2020. The decision has been made to support 2.7 for all releases made in 2018, with the last release being designated a long term release with support for bug fixes extending through 2019. In 2019 support for 2.7 will be dropped in all new releases. More details can be found in the relevant NEP_.

This release supports Python 2.7 and 3.4 - 3.6.

.. _NEP: https://github.com/numpy/numpy/blob/master/doc/neps/dropping-python2.7-proposal.rst

Highlights
  • The np.einsum function uses BLAS when possible

  • genfromtxt, loadtxt, fromregex and savetxt can now handle files with arbitrary Python supported encoding.

  • Major improvements to printing of NumPy arrays and scalars.

New functions
  • parametrize: decorator added to numpy.testing

  • chebinterpolate: Interpolate function at Chebyshev points.

  • format_float_positional and format_float_scientific : format floating-point scalars unambiguously with control of rounding and padding.

  • PyArray_ResolveWritebackIfCopy and PyArray_SetWritebackIfCopyBase, new C-API functions useful in achieving PyPy compatibity.

Deprecations
  • Using np.bool_ objects in place of integers is deprecated. Previously operator.index(np.bool_) was legal and allowed constructs such as [1, 2, 3][np.True_]. That was misleading, as it behaved differently from np.array([1, 2, 3])[np.True_].

  • Truth testing of an empty array is deprecated. To check if an array is not empty, use array.size > 0.

  • Calling np.bincount with minlength=None is deprecated. minlength=0 should be used instead.

  • Calling np.fromstring with the default value of the sep argument is deprecated. When that argument is not provided, a broken version of np.frombuffer is used that silently accepts unicode strings and -- after encoding them as either utf-8 (python 3) or the default encoding (python 2) -- treats them as binary data. If reading binary data is desired, np.frombuffer should be used directly.

  • The style option of array2string is deprecated in non-legacy printing mode.

  • PyArray_SetUpdateIfCopyBase has been deprecated. For NumPy versions >= 1.14 use PyArray_SetWritebackIfCopyBase instead, see C API changes below for more details.

  • The use of UPDATEIFCOPY arrays is deprecated, see C API changes below for details. We will not be dropping support for those arrays, but they are not compatible with PyPy.
Future Changes
  • np.issubdtype will stop downcasting dtype-like arguments. It might be expected that issubdtype(np.float32, 'float64') and issubdtype(np.float32, np.float64) mean the same thing - however, there was an undocumented special case that translated the former into issubdtype(np.float32, np.floating), giving the surprising result of True.

    This translation now gives a warning that explains what translation is occurring. In the future, the translation will be disabled, and the first example will be made equivalent to the second.

  • np.linalg.lstsq default for rcond will be changed. The rcond parameter to np.linalg.lstsq will change its default to machine precision times the largest of the input array dimensions. A FutureWarning is issued when rcond is not passed explicitly.

  • a.flat.__array__() will return a writeable copy of a when a is non-contiguous. Previously it returned an UPDATEIFCOPY array when a was writeable. Currently it returns a non-writeable copy. See gh-7054 for a discussion of the issue.

  • Unstructured void array's .item method will return a bytes object. In the future, calling .item() on arrays or scalars of np.void datatype will return a bytes object instead of a buffer or int array, the same as returned by bytes(void_scalar). This may affect code which assumed the return value was mutable, which will no longer be the case. A FutureWarning is now issued when this would occur.

Compatibility notes The mask of a masked array view is also a view rather than a copy

There was a FutureWarning about this change in NumPy 1.11.x. In short, it is now the case that, when changing a view of a masked array, changes to the mask are propagated to the original. That was not previously the case. This change affects slices in particular. Note that this does not yet work properly if the mask of the original array is nomask and the mask of the view is changed. See gh-5580 for an extended discussion. The original behavior of having a copy of the mask can be obtained by calling the unshare_mask method of the view.

np.ma.masked is no longer writeable

Attempts to mutate the masked constant now error, as the underlying arrays are marked readonly. In the past, it was possible to get away with::

# emulating a function that sometimes returns np.ma.masked
val = random.choice([np.ma.masked, 10])
var_arr = np.asarray(val)
val_arr += 1  # now errors, previously changed np.ma.masked.data
np.ma functions producing fill_values have changed

Previously, np.ma.default_fill_value would return a 0d array, but np.ma.minimum_fill_value and np.ma.maximum_fill_value would return a tuple of the fields. Instead, all three methods return a structured np.void object, which is what you would already find in the .fill_value attribute.

Additionally, the dtype guessing now matches that of np.array - so when passing a python scalar x, maximum_fill_value(x) is always the same as maximum_fill_value(np.array(x)). Previously x = long(1) on Python 2 violated this assumption.

a.flat.__array__() returns non-writeable arrays when a is non-contiguous

The intent is that the UPDATEIFCOPY array previously returned when a was non-contiguous will be replaced by a writeable copy in the future. This temporary measure is aimed to notify folks who expect the underlying array be modified in this situation that that will no longer be the case. The most likely places for this to be noticed is when expressions of the form np.asarray(a.flat) are used, or when a.flat is passed as the out parameter to a ufunc.

np.tensordot now returns zero array when contracting over 0-length dimension

Previously np.tensordot raised a ValueError when contracting over 0-length dimension. Now it returns a zero array, which is consistent with the behaviour of np.dot and np.einsum.

numpy.testing reorganized

This is not expected to cause problems, but possibly something has been left out. If you experience an unexpected import problem using numpy.testing let us know.

np.asfarray no longer accepts non-dtypes through the dtype argument

This previously would accept dtype=some_array, with the implied semantics of dtype=some_array.dtype. This was undocumented, unique across the numpy functions, and if used would likely correspond to a typo.

1D np.linalg.norm preserves float input types, even for arbitrary orders

Previously, this would promote to float64 when arbitrary orders were passed, despite not doing so under the simple cases::

>>> f32 = np.float32([1, 2])
>>> np.linalg.norm(f32, 2.0).dtype
dtype('float32')
>>> np.linalg.norm(f32, 2.0001).dtype
dtype('float64')  # numpy 1.13
dtype('float32')  # numpy 1.14

This change affects only float32 and float16 arrays.

count_nonzero(arr, axis=()) now counts over no axes, not all axes

Elsewhere, axis==() is always understood as "no axes", but count_nonzero had a special case to treat this as "all axes". This was inconsistent and surprising. The correct way to count over all axes has always been to pass axis == None.

__init__.py files added to test directories

This is for pytest compatibility in the case of duplicate test file names in the different directories. As a result, run_module_suite no longer works, i.e., python <path-to-test-file> results in an error.

.astype(bool) on unstructured void arrays now calls bool on each element

On Python 2, void_array.astype(bool) would always return an array of True, unless the dtype is V0. On Python 3, this operation would usually crash. Going forwards, astype matches the behavior of bool(np.void), considering a buffer of all zeros as false, and anything else as true. Checks for V0 can still be done with arr.dtype.itemsize == 0.

MaskedArray.squeeze never returns np.ma.masked

np.squeeze is documented as returning a view, but the masked variant would sometimes return masked, which is not a view. This has been fixed, so that the result is always a view on the original masked array. This breaks any code that used masked_arr.squeeze() is np.ma.masked, but fixes code that writes to the result of .squeeze().

Renamed first parameter of can_cast from from to from_

The previous parameter name from is a reserved keyword in Python, which made it difficult to pass the argument by name. This has been fixed by renaming the parameter to from_.

isnat raises TypeError when passed wrong type

The ufunc isnat used to raise a ValueError when it was not passed variables of type datetime or timedelta. This has been changed to raising a TypeError.

dtype.__getitem__ raises TypeError when passed wrong type

When indexed with a float, the dtype object used to raise ValueError.

User-defined types now need to implement __str__ and __repr__

Previously, user-defined types could fall back to a default implementation of __str__ and __repr__ implemented in numpy, but this has now been removed. Now user-defined types will fall back to the python default object.__str__ and object.__repr__.

Many changes to array printing, disableable with the new "legacy" printing mode

The str and repr of ndarrays and numpy scalars have been changed in a variety of ways. These changes are likely to break downstream user's doctests.

These new behaviors can be disabled to mostly reproduce numpy 1.13 behavior by enabling the new 1.13 "legacy" printing mode. This is enabled by calling np.set_printoptions(legacy="1.13"), or using the new legacy argument to np.array2string, as np.array2string(arr, legacy='1.13').

In summary, the major changes are:

  • For floating-point types:

    • The repr of float arrays often omits a space previously printed in the sign position. See the new sign option to np.set_printoptions.
    • Floating-point arrays and scalars use a new algorithm for decimal representations, giving the shortest unique representation. This will usually shorten float16 fractional output, and sometimes float32 and float128 output. float64 should be unaffected. See the new floatmode option to np.set_printoptions.
    • Float arrays printed in scientific notation no longer use fixed-precision, and now instead show the shortest unique representation.
    • The str of floating-point scalars is no longer truncated in python2.
  • For other data types:

    • Non-finite complex scalars print like nanj instead of nan*j.
    • NaT values in datetime arrays are now properly aligned.
    • Arrays and scalars of np.void datatype are now printed using hex notation.
  • For line-wrapping:

    • The "dtype" part of ndarray reprs will now be printed on the next line if there isn't space on the last line of array output.
    • The linewidth format option is now always respected. The repr or str of an array will never exceed this, unless a single element is too wide.
    • The last line of an array string will never have more elements than earlier lines.
    • An extra space is no longer inserted on the first line if the elements are too wide.
  • For summarization (the use of ... to shorten long arrays):

    • A trailing comma is no longer inserted for str. Previously, str(np.arange(1001)) gave '[ 0 1 2 ..., 998 999 1000]', which has an extra comma.
    • For arrays of 2-D and beyond, when ... is printed on its own line in order to summarize any but the last axis, newlines are now appended to that line to match its leading newlines and a trailing space character is removed.
  • MaskedArray arrays now separate printed elements with commas, always print the dtype, and correctly wrap the elements of long arrays to multiple lines. If there is more than 1 dimension, the array attributes are now printed in a new "left-justified" printing style.

  • recarray arrays no longer print a trailing space before their dtype, and wrap to the right number of columns.

  • 0d arrays no longer have their own idiosyncratic implementations of str and repr. The style argument to np.array2string is deprecated.

  • Arrays of bool datatype will omit the datatype in the repr.

  • User-defined dtypes (subclasses of np.generic) now need to implement __str__ and __repr__.

Some of these changes are described in more detail below. If you need to retain the previous behavior for doctests or other reasons, you may want to do something like::

# FIXME: We need the str/repr formatting used in Numpy < 1.14.
try:
    np.set_printoptions(legacy='1.13')
except TypeError:
    pass
C API changes PyPy compatible alternative to UPDATEIFCOPY arrays

UPDATEIFCOPY arrays are contiguous copies of existing arrays, possibly with different dimensions, whose contents are copied back to the original array when their refcount goes to zero and they are deallocated. Because PyPy does not use refcounts, they do not function correctly with PyPy. NumPy is in the process of eliminating their use internally and two new C-API functions,

  • PyArray_SetWritebackIfCopyBase
  • PyArray_ResolveWritebackIfCopy,

have been added together with a complimentary flag, NPY_ARRAY_WRITEBACKIFCOPY. Using the new functionality also requires that some flags be changed when new arrays are created, to wit: NPY_ARRAY_INOUT_ARRAY should be replaced by NPY_ARRAY_INOUT_ARRAY2 and NPY_ARRAY_INOUT_FARRAY should be replaced by NPY_ARRAY_INOUT_FARRAY2. Arrays created with these new flags will then have the WRITEBACKIFCOPY semantics.

If PyPy compatibility is not a concern, these new functions can be ignored, although there will be a DeprecationWarning. If you do wish to pursue PyPy compatibility, more information on these functions and their use may be found in the c-api documentation and the example in how-to-extend.

.. _c-api: https://github.com/numpy/numpy/blob/master/doc/source/reference/c-api.array.rst .. _how-to-extend: https://github.com/numpy/numpy/blob/master/doc/source/user/c-info.how-to-extend.rst

New Features Encoding argument for text IO functions

genfromtxt, loadtxt, fromregex and savetxt can now handle files with arbitrary encoding supported by Python via the encoding argument. For backward compatibility the argument defaults to the special bytes value which continues to treat text as raw byte values and continues to pass latin1 encoded bytes to custom converters. Using any other value (including None for system default) will switch the functions to real text IO so one receives unicode strings instead of bytes in the resulting arrays.

External nose plugins are usable by numpy.testing.Tester

numpy.testing.Tester is now aware of nose plugins that are outside the nose built-in ones. This allows using, for example, nose-timer like so: np.test(extra_argv=['--with-timer', '--timer-top-n', '20']) to obtain the runtime of the 20 slowest tests. An extra keyword timer was also added to Tester.test, so np.test(timer=20) will also report the 20 slowest tests.

parametrize decorator added to numpy.testing

A basic parametrize decorator is now available in numpy.testing. It is intended to allow rewriting yield based tests that have been deprecated in pytest so as to facilitate the transition to pytest in the future. The nose testing framework has not been supported for several years and looks like abandonware.

The new parametrize decorator does not have the full functionality of the one in pytest. It doesn't work for classes, doesn't support nesting, and does not substitute variable names. Even so, it should be adequate to rewrite the NumPy tests.

chebinterpolate function added to numpy.polynomial.chebyshev

The new chebinterpolate function interpolates a given function at the Chebyshev points of the first kind. A new Chebyshev.interpolate class method adds support for interpolation over arbitrary intervals using the scaled and shifted Chebyshev points of the first kind.

Support for reading lzma compressed text files in Python 3

With Python versions containing the lzma module the text IO functions can now transparently read from files with xz or lzma extension.

sign option added to np.setprintoptions and np.array2string

This option controls printing of the sign of floating-point types, and may be one of the characters '-', '+' or ' '. With '+' numpy always prints the sign of positive values, with ' ' it always prints a space (whitespace character) in the sign position of positive values, and with '-' it will omit the sign character for positive values. The new default is '-'.

This new default changes the float output relative to numpy 1.13. The old behavior can be obtained in 1.13 "legacy" printing mode, see compatibility notes above.

hermitian option added tonp.linalg.matrix_rank

The new hermitian option allows choosing between standard SVD based matrix rank calculation and the more efficient eigenvalue based method for symmetric/hermitian matrices.

threshold and edgeitems options added to np.array2string

These options could previously be controlled using np.set_printoptions, but now can be changed on a per-call basis as arguments to np.array2string.

concatenate and stack gained an out argument

A preallocated buffer of the desired dtype can now be used for the output of these functions.

Support for PGI flang compiler on Windows

The PGI flang compiler is a Fortran front end for LLVM released by NVIDIA under the Apache 2 license. It can be invoked by ::

python setup.py config --compiler=clang --fcompiler=flang install

There is little experience with this new compiler, so any feedback from people using it will be appreciated.

Improvements Numerator degrees of freedom in random.noncentral_f need only be positive.

Prior to NumPy 1.14.0, the numerator degrees of freedom needed to be > 1, but the distribution is valid for values > 0, which is the new requirement.

The GIL is released for all np.einsum variations

Some specific loop structures which have an accelerated loop version did not release the GIL prior to NumPy 1.14.0. This oversight has been fixed.

The np.einsum function will use BLAS when possible and optimize by default

The np.einsum function will now call np.tensordot when appropriate. Because np.tensordot uses BLAS when possible, that will speed up execution. By default, np.einsum will also attempt optimization as the overhead is small relative to the potential improvement in speed.

f2py now handles arrays of dimension 0

f2py now allows for the allocation of arrays of dimension 0. This allows for more consistent handling of corner cases downstream.

numpy.distutils supports using MSVC and mingw64-gfortran together

Numpy distutils now supports using Mingw64 gfortran and MSVC compilers together. This enables the production of Python extension modules on Windows containing Fortran code while retaining compatibility with the binaries distributed by Python.org. Not all use cases are supported, but most common ways to wrap Fortran for Python are functional.

Compilation in this mode is usually enabled automatically, and can be selected via the --fcompiler and --compiler options to setup.py. Moreover, linking Fortran codes to static OpenBLAS is supported; by default a gfortran compatible static archive openblas.a is looked for.

np.linalg.pinv now works on stacked matrices

Previously it was limited to a single 2d array.

numpy.save aligns data to 64 bytes instead of 16

Saving NumPy arrays in the npy format with numpy.save inserts padding before the array data to align it at 64 bytes. Previously this was only 16 bytes (and sometimes less due to a bug in the code for version 2). Now the alignment is 64 bytes, which matches the widest SIMD instruction set commonly available, and is also the most common cache line size. This makes npy files easier to use in programs which open them with mmap, especially on Linux where an mmap offset must be a multiple of the page size.

NPZ files now can be written without using temporary files

In Python 3.6+ numpy.savez and numpy.savez_compressed now write directly to a ZIP file, without creating intermediate temporary files.

Better support for empty structured and string types

Structured types can contain zero fields, and string dtypes can contain zero characters. Zero-length strings still cannot be created directly, and must be constructed through structured dtypes::

str0 = np.empty(10, np.dtype([('v', str, N)]))['v']
void0 = np.empty(10, np.void)

It was always possible to work with these, but the following operations are now supported for these arrays:

  • arr.sort()
  • arr.view(bytes)
  • arr.resize(...)
  • pickle.dumps(arr)
Support for decimal.Decimal in np.lib.financial

Unless otherwise stated all functions within the financial package now support using the decimal.Decimal built-in type.

Float printing now uses "dragon4" algorithm for shortest decimal representation

The str and repr of floating-point values (16, 32, 64 and 128 bit) are now printed to give the shortest decimal representation which uniquely identifies the value from others of the same type. Previously this was only true for float64 values. The remaining float types will now often be shorter than in numpy 1.13. Arrays printed in scientific notation now also use the shortest scientific representation, instead of fixed precision as before.

Additionally, the str of float scalars scalars will no longer be truncated in python2, unlike python2 floats. np.double scalars now have a str and repr identical to that of a python3 float.

New functions np.format_float_scientific and np.format_float_positional are provided to generate these decimal representations.

A new option floatmode has been added to np.set_printoptions and np.array2string, which gives control over uniqueness and rounding of printed elements in an array. The new default is floatmode='maxprec' with precision=8, which will print at most 8 fractional digits, or fewer if an element can be uniquely represented with fewer. A useful new mode is floatmode="unique", which will output enough digits to specify the array elements uniquely.

Numpy complex-floating-scalars with values like inf*j or nan*j now print as infj and nanj, like the pure-python complex type.

The FloatFormat and LongFloatFormat classes are deprecated and should both be replaced by FloatingFormat. Similarly ComplexFormat and LongComplexFormat should be replaced by ComplexFloatingFormat.

void datatype elements are now printed in hex notation

A hex representation compatible with the python bytes type is now printed for unstructured np.void elements, e.g., V4 datatype. Previously, in python2 the raw void data of the element was printed to stdout, or in python3 the integer byte values were shown.

printing style for void datatypes is now independently customizable

The printing style of np.void arrays is now independently customizable using the formatter argument to np.set_printoptions, using the 'void' key, instead of the catch-all numpystr key as before.

Reduced memory usage of np.loadtxt

np.loadtxt now reads files in chunks instead of all at once which decreases its memory usage significantly for large files.

Changes Multiple-field indexing/assignment of structured arrays

The indexing and assignment of structured arrays with multiple fields has changed in a number of ways, as warned about in previous releases.

First, 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 have extra padding bytes corresponding to intervening fields in the original array, unlike the copy in 1.13, which will affect code such as arr[['f1', 'f3']].view(newdtype).

Second, assignment between structured arrays will now occur "by position" instead of "by field name". The Nth field of the destination will be set to the Nth field of the source regardless of field name, unlike in numpy versions 1.6 to 1.13 in which fields in the destination array were set to the identically-named field in the source array or to 0 if the source did not have a field.

Correspondingly, the order of fields in a structured dtypes now matters when computing dtype equality. For example, with the dtypes ::

x = dtype({'names': ['A', 'B'], 'formats': ['i4', 'f4'], 'offsets': [0, 4]})
y = dtype({'names': ['B', 'A'], 'formats': ['f4', 'i4'], 'offsets': [4, 0]})

the expression x == y will now return False, unlike before. This makes dictionary based dtype specifications like dtype({'a': ('i4', 0), 'b': ('f4', 4)}) dangerous in python < 3.6 since dict key order is not preserved in those versions.

Assignment from a structured array to a boolean array now raises a ValueError, unlike in 1.13, where it always set the destination elements to True.

Assignment from structured array with more than one field to a non-structured array now raises a ValueError. In 1.13 this copied just the first field of the source to the destination.

Using field "titles" in multiple-field indexing is now disallowed, as is repeating a field name in a multiple-field index.

The documentation for structured arrays in the user guide has been significantly updated to reflect these changes.

Integer and Void scalars are now unaffected by np.set_string_function

Previously, unlike most other numpy scalars, the str and repr of integer and void scalars could be controlled by np.set_string_function. This is no longer possible.

0d array printing changed, style arg of array2string deprecated

Previously the str and repr of 0d arrays had idiosyncratic implementations which returned str(a.item()) and 'array(' + repr(a.item()) + ')' respectively for 0d array a, unlike both numpy scalars and higher dimension ndarrays.

Now, the str of a 0d array acts like a numpy scalar using str(a[()]) and the repr acts like higher dimension arrays using formatter(a[()]), where formatter can be specified using np.set_printoptions. The style argument of np.array2string is deprecated.

This new behavior is disabled in 1.13 legacy printing mode, see compatibility notes above.

Seeding RandomState using an array requires a 1-d array

RandomState previously would accept empty arrays or arrays with 2 or more dimensions, which resulted in either a failure to seed (empty arrays) or for some of the passed values to be ignored when setting the seed.

MaskedArray objects show a more useful repr

The repr of a MaskedArray is now closer to the python code that would produce it, with arrays now being shown with commas and dtypes. Like the other formatting changes, this can be disabled with the 1.13 legacy printing mode in order to help transition doctests.

The repr of np.polynomial classes is more explicit

It now shows the domain and window parameters as keyword arguments to make them more clear::

>>> np.polynomial.Polynomial(range(4))
Polynomial([0.,  1.,  2.,  3.], domain=[-1,  1], window=[-1,  1])
Checksums MD5
dddfd1effddd4b73120bfa0f31a27f30  numpy-1.14.0-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
ab7e3518c7fe2a0d8e3c1e90c32ab57b  numpy-1.14.0-cp27-cp27m-manylinux1_i686.whl
8ba61f88afea560cc93ffddc9ea717d8  numpy-1.14.0-cp27-cp27m-manylinux1_x86_64.whl
edea7b57d4d924173c9c6d8125affe4e  numpy-1.14.0-cp27-cp27mu-manylinux1_i686.whl
bb048ccc49572e5e661ec7ead183272d  numpy-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl
23248896d89fd09ef06aecbdc1e74eb7  numpy-1.14.0-cp27-none-win32.whl
09bef789f8d9352cafe98a6773c53f3a  numpy-1.14.0-cp27-none-win_amd64.whl
8bc2cc282df9597fe4c5fda72d0ff851  numpy-1.14.0-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
c9ce8e4de0293585ad8455a829cdbdff  numpy-1.14.0-cp34-cp34m-manylinux1_i686.whl
8179996e99adfbe7c66c5a9f7ad37139  numpy-1.14.0-cp34-cp34m-manylinux1_x86_64.whl
bf839d99514ecc03da1a2dc42808c1c7  numpy-1.14.0-cp34-none-win32.whl
80ead56627e40a00d0832793f5798ce8  numpy-1.14.0-cp34-none-win_amd64.whl
1a58fbaea199e425b71b3bfb1276d957  numpy-1.14.0-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
00cbdb6d9aa1eca97ecdb73a2705730b  numpy-1.14.0-cp35-cp35m-manylinux1_i686.whl
47de646ff0d4591431030ee93412f9f3  numpy-1.14.0-cp35-cp35m-manylinux1_x86_64.whl
f42aab8c9d6a21f60b051d6ea0b33425  numpy-1.14.0-cp35-none-win32.whl
b6d917bb34760e0f659c671efc08c602  numpy-1.14.0-cp35-none-win_amd64.whl
5a6456f4471b2f7d03fec5759e929544  numpy-1.14.0-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
3c72836ee01e7b88d7cebee0a1c94c6e  numpy-1.14.0-cp36-cp36m-manylinux1_i686.whl
34f763b99cc39ca3224c158ec82e2b39  numpy-1.14.0-cp36-cp36m-manylinux1_x86_64.whl
3bee8e2e4414a9df909d6510bd803aa1  numpy-1.14.0-cp36-none-win32.whl
f3db47f66b406f2803b681051f452f6e  numpy-1.14.0-cp36-none-win_amd64.whl
c573e2d2f26a5786d5198a660f87d8e4  numpy-1.14.0.tar.gz
c12d4bf380ac925fcdc8a59ada6c3298  numpy-1.14.0.zip
SHA256
428cd3c0b197cf857671353d8c85833193921af9fafcc169a1f29c7185833d50  numpy-1.14.0-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
a476e437d73e5754aa66e1e75840d0163119c3911b7361f4cd06985212a3c3fb  numpy-1.14.0-cp27-cp27m-manylinux1_i686.whl
289ff717138cd9aa133adcbd3c3e284458b9c8230db4d42b39083a3407370317  numpy-1.14.0-cp27-cp27m-manylinux1_x86_64.whl
c5eccb4bf96dbb2436c61bb3c2658139e779679b6ae0d04c5e268e6608b58053  numpy-1.14.0-cp27-cp27mu-manylinux1_i686.whl
75471acf298d455b035226cc609a92aee42c4bb6aa71def85f77fa2c2b646b61  numpy-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl
5c54fb98ecf42da59ed93736d1c071842482b18657eb16ba6e466bd873e1b923  numpy-1.14.0-cp27-none-win32.whl
9ddf384ac3aacb72e122a8207775cc29727cbd9c531ee1a4b95754f24f42f7f3  numpy-1.14.0-cp27-none-win_amd64.whl
781d3197da49c421a07f250750de70a52c42af08ca02a2f7bdb571c0625ae7eb  numpy-1.14.0-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
93b26d6c06a22e64d56aaca32aaaffd27a4143db0ac2f21a048f0b571f2bfc55  numpy-1.14.0-cp34-cp34m-manylinux1_i686.whl
b2547f57d05ba59df4289493254f29f4c9082d255f1f97b7e286f40f453e33a1  numpy-1.14.0-cp34-cp34m-manylinux1_x86_64.whl
eef6af1c752eef538a96018ef9bdf8e37bbf28aab50a1436501a4aa47a6467df  numpy-1.14.0-cp34-none-win32.whl
ff8a4b2c3ac831964f529a2da506c28d002562b230261ae5c16885f5f53d2e75  numpy-1.14.0-cp34-none-win_amd64.whl
194074058c22a4066e1b6a4ea432486ee468d24ab16f13630c1030409e6b8666  numpy-1.14.0-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
4e13f1a848fde960dea33702770265837c72b796a6a3eaac7528cfe75ddefadd  numpy-1.14.0-cp35-cp35m-manylinux1_i686.whl
91101216d72749df63968d86611b549438fb18af2c63849c01f9a897516133c7  numpy-1.14.0-cp35-cp35m-manylinux1_x86_64.whl
97507349abb7d1f6b76b877258defe8720833881dc7e7fd052bac90c88587387  numpy-1.14.0-cp35-none-win32.whl
1479b46b6040b5c689831496354c8859c456b152d37315673a0c18720b41223b  numpy-1.14.0-cp35-none-win_amd64.whl
98b1ac79c160e36093d7914244e40ee1e7164223e795aa2c71dcce367554e646  numpy-1.14.0-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
24bbec9a199f938eab75de8390f410969bc33c218e5430fa1ae9401b00865255  numpy-1.14.0-cp36-cp36m-manylinux1_i686.whl
7880f412543e96548374a4bb1d75e4cdb8cad80f3a101ed0f8d0e0428f719c1c  numpy-1.14.0-cp36-cp36m-manylinux1_x86_64.whl
6112f152b76a28c450bbf665da11757078a724a90330112f5b7ea2d6b6cefd67  numpy-1.14.0-cp36-none-win32.whl
7c5276763646480143d5f3a6c2acb2885460c765051a1baf4d5070f63d05010f  numpy-1.14.0-cp36-none-win_amd64.whl
c45d99134bb07600e916537c51c22e87f9e0c44b05d71018ab4907e195f007ce  numpy-1.14.0.tar.gz
3de643935b212307b420248018323a44ec51987a336d1d747c1322afc3c099fb  numpy-1.14.0.zip

1.13.3

5 years ago

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1

==========================

NumPy 1.13.3 Release Notes

This is a bugfix release for some problems found since 1.13.1. The most important fixes are for CVE-2017-12852 and temporary elision. Users of earlier versions of 1.13 should upgrade.

The Python versions supported are 2.7 and 3.4 - 3.6. The Python 3.6 wheels available from PIP are built with Python 3.6.2 and should be compatible with all previous versions of Python 3.6. It was cythonized with Cython 0.26.1, which should be free of the bugs found in 0.27 while also being compatible with Python 3.7-dev. The Windows wheels were built with OpenBlas instead ATLAS, which should improve the performance of the linear algebra functions.

The NumPy 1.13.3 release is a re-release of 1.13.2, which suffered from a bug in Cython 0.27.0.

Contributors

A total of 12 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Allan Haldane
  • Brandon Carter
  • Charles Harris
  • Eric Wieser
  • Iryna Shcherbina +
  • James Bourbeau +
  • Jonathan Helmus
  • Julian Taylor
  • Matti Picus
  • Michael Lamparski +
  • Michael Seifert
  • Ralf Gommers
Pull requests merged

A total of 22 pull requests were merged for this release.

  • #9390 BUG: Return the poly1d coefficients array directly
  • #9555 BUG: Fix regression in 1.13.x in distutils.mingw32ccompiler.
  • #9556 BUG: Fix true_divide when dtype=np.float64 specified.
  • #9557 DOC: Fix some rst markup in numpy/doc/basics.py.
  • #9558 BLD: Remove -xhost flag from IntelFCompiler.
  • #9559 DOC: Removes broken docstring example (source code, png, pdf)...
  • #9580 BUG: Add hypot and cabs functions to WIN32 blacklist.
  • #9732 BUG: Make scalar function elision check if temp is writeable.
  • #9736 BUG: Various fixes to np.gradient
  • #9742 BUG: Fix np.pad for CVE-2017-12852
  • #9744 BUG: Check for exception in sort functions, add tests
  • #9745 DOC: Add whitespace after "versionadded::" directive so it actually...
  • #9746 BUG: Memory leak in np.dot of size 0
  • #9747 BUG: Adjust gfortran version search regex
  • #9757 BUG: Cython 0.27 breaks NumPy on Python 3.
  • #9764 BUG: Ensure _npy_scaled_cexp{,f,l} is defined when needed.
  • #9765 BUG: PyArray_CountNonzero does not check for exceptions
  • #9766 BUG: Fixes histogram monotonicity check for unsigned bin values
  • #9767 BUG: Ensure consistent result dtype of count_nonzero
  • #9771 BUG: MAINT: Fix mtrand for Cython 0.27.
  • #9772 DOC: Create the 1.13.2 release notes.
  • #9794 DOC: Create 1.13.3 release notes.
Checksums

MD5


53600ccf171825920dddf0e9a1d9e0c8  numpy-1.13.3-2-cp27-none-win32.whl
13cd744cbb51b90ea446c01241ca2cde  numpy-1.13.3-2-cp34-none-win32.whl
3fd27b05b46c473a584505ff6a50a5fa  numpy-1.13.3-2-cp35-none-win32.whl
5add1046e7c1b33b865edafd1a6a7577  numpy-1.13.3-2-cp36-none-win32.whl
b660f17365f0dfc5e5904c21f15ac46e  numpy-1.13.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
408f1f0070dfbc0569b440083febeb82  numpy-1.13.3-cp27-cp27m-manylinux1_i686.whl
64bc7dc4a503398e0b4cc48778136374  numpy-1.13.3-cp27-cp27m-manylinux1_x86_64.whl
95e59446abb9152ed6af36b655e35dfe  numpy-1.13.3-cp27-cp27mu-manylinux1_i686.whl
f6d06d326e873d626576bd705e4f29a2  numpy-1.13.3-cp27-cp27mu-manylinux1_x86_64.whl
1ec7662240b1dd91fb801061409ab3e3  numpy-1.13.3-cp27-none-win_amd64.whl
819c122467a1053d4802fd7ce984a30a  numpy-1.13.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
2992819fbaa8acd34529479592b3d376  numpy-1.13.3-cp34-cp34m-manylinux1_i686.whl
264590d2df37212e97a91c0e5828a452  numpy-1.13.3-cp34-cp34m-manylinux1_x86_64.whl
cf208337059f8a48235a7741f04c9e49  numpy-1.13.3-cp34-none-win_amd64.whl
d2f98af88264169f5cef760d95cef0f0  numpy-1.13.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
6ac434243bc3ed40e9854b319f76b1b5  numpy-1.13.3-cp35-cp35m-manylinux1_i686.whl
94c0a5c9aa6fd35862cbe7862fd68f36  numpy-1.13.3-cp35-cp35m-manylinux1_x86_64.whl
5b5ad3cdc43c950b8a26ab1bf3413e46  numpy-1.13.3-cp35-none-win_amd64.whl
dd2f6c5e72526d45fdd09c22b85e4bb8  numpy-1.13.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
ad1b9be95891adc1f7f7e9a23c1fe92d  numpy-1.13.3-cp36-cp36m-manylinux1_i686.whl
bcbfbd9d0dbe026fd59a7756e190cdfa  numpy-1.13.3-cp36-cp36m-manylinux1_x86_64.whl
8748204cc74d46f617c316507360ccb3  numpy-1.13.3-cp36-none-win_amd64.whl
c1d433e5973e548809e80c9118474b73  numpy-1.13.3.tar.gz
300a6f0528122128ac07c6deb5c95917  numpy-1.13.3.zip

SHA256


910e7ae5eeee8d322775187692c5c66719cd58d230fbfd57245ea3cf75716910  numpy-1.13.3-2-cp27-none-win32.whl
f5c9ca457057cd5e12ddab36cded8b1f38bf1f45bf550d4ca2839b11ec57f597  numpy-1.13.3-2-cp34-none-win32.whl
d29e72413b66df23c75b9b469253c823698ea2e00f58e9e0df64b7a50696e8ac  numpy-1.13.3-2-cp35-none-win32.whl
539345898a4ae17421c159ae2a350901a5e6ce3da8f24168c6c67b3536e13de8  numpy-1.13.3-2-cp36-none-win32.whl
929928932f91082a168e36984179deddd58f8e98822ad2f33a2955d7c4eec596  numpy-1.13.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
62b09f3d1ea01d79c16a6642cb21599f53b9338c59971b2418a573155d2202ec  numpy-1.13.3-cp27-cp27m-manylinux1_i686.whl
c4b1914d86c43399438518a2ac8bcba2fb64dd5a18efddded3783b9daae70933  numpy-1.13.3-cp27-cp27m-manylinux1_x86_64.whl
6c6feb0647380db6e1d5d49ef9fb59c42240f25fb8df8b6e82ecb436c7e0621a  numpy-1.13.3-cp27-cp27mu-manylinux1_i686.whl
da2f47e46d7a93b73891d1981378717dc73c6ad5cc4fd23c934bfea7847fa958  numpy-1.13.3-cp27-cp27mu-manylinux1_x86_64.whl
4c767b6d9c9a071bb36ea34eb240ee5192fe0bc4c13be5e6c51e0350a30f7ac0  numpy-1.13.3-cp27-none-win_amd64.whl
b2f98838f4bbc3bf23af7e97ffcad18a2dc6bbb0726796781e02b9347af6685f  numpy-1.13.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
11fcbed36c101a3b9c4636e791efccba82409ebbedaba938c97be8bdddd029cc  numpy-1.13.3-cp34-cp34m-manylinux1_i686.whl
8969c8f987f8bcc3e30c014532cfc20e4a8f86a50c361596e086310853adacb7  numpy-1.13.3-cp34-cp34m-manylinux1_x86_64.whl
2875e8055a1ea8d933b1c9d0f8714c0aa11c097bfadfcb8564c4d868fbf09a41  numpy-1.13.3-cp34-none-win_amd64.whl
09b87d652c03508447d0f618e1d3ae57595acd3e0f0c11ac91bf68ed7bdb3a28  numpy-1.13.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
9cad35b911e150f00bb8080950c7e9f172714bbd0234f5ab74b4e3e2d9288b37  numpy-1.13.3-cp35-cp35m-manylinux1_i686.whl
479863de17f66810db00bccf35289555365da45d3b053ccf539b95ab3b9c24f6  numpy-1.13.3-cp35-cp35m-manylinux1_x86_64.whl
b162c6b044960b4ea0f42be049ce2af1d18c60f82748f0a27bd5ad182a731bf3  numpy-1.13.3-cp35-none-win_amd64.whl
fa656dccfa9141774440575a6e7875d08b93f4a332eb5ae40877b26bed291c01  numpy-1.13.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
7dfa5b49fb2a080bd0d39bfbcff1177bacb14fcb28c857fd65fd0c18938935de  numpy-1.13.3-cp36-cp36m-manylinux1_i686.whl
e8e0e75db757e41463888939d26c8058b4ecd25e563c597e9119f512dc0ee1da  numpy-1.13.3-cp36-cp36m-manylinux1_x86_64.whl
c8dc6aa96882df6323bf9545934e37c6e05959bd789ae4b14d50509b093907aa  numpy-1.13.3-cp36-none-win_amd64.whl
4c6b4eef790528bebb7ec9590d74cc193868940fe68e4109a91c196df72d8094  numpy-1.13.3.tar.gz
36ee86d5adbabc4fa2643a073f93d5504bdfed37a149a3a49f4dde259f35a750  numpy-1.13.3.zip

-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJZz/tOAAoJEGefIoN3xSR7b7cIALNvpkl8yHIxBaA89vSFVkhK XRPrYgmk7kc5Kr4IImNcj1ijvrG/GSeB1QHZq1ndBkC5mKNRt4ZrfGjxpbj13OQx UQ3QjjEJOS3nRB4ILBjvioUKjV4OThscOZqzwEeek3zXd2RgqSXuEEUJg3F1jtGR bgBt6+FiU1DdCWR2jg1FtnFoVetpY2/9dKMmdEsGZF5QePT5U6sPFw7ySZDOWUNA PdHmgVhJZGLQ9llr+TnjeV5kpSiPyT33sCUbp9eoP0TXV2jnF24/q5lkxe1RLGo/ Bh/zdgopjfdW605gKD2xkri00r+1yYywzypXt0o7HsKNS7V9hUM/b0mIxbEPJ7I= =k4c2 -----END PGP SIGNATURE-----


1.13.1

6 years ago

==========================

NumPy 1.13.1 Release Notes

This is a bugfix release for problems found in 1.13.0. The major changes are fixes for the new memory overlap detection and temporary elision as well as reversion of the removal of the boolean binary - operator. Users of 1.13.0 should upgrade.

Thr Python versions supported are 2.7 and 3.4 - 3.6. Note that the Python 3.6 wheels available from PIP are built against 3.6.1, hence will not work when used with 3.6.0 due to Python bug 29943_. NumPy 1.13.2 will be released shortly after Python 3.6.2 is out to fix that problem. If you are using 3.6.0 the workaround is to upgrade to 3.6.1 or use an earlier Python version.

.. _#29943: https://bugs.python.org/issue29943

Pull requests merged

A total of 19 pull requests were merged for this release.

  • #9240 DOC: BLD: fix lots of Sphinx warnings/errors.
  • #9255 Revert "DEP: Raise TypeError for subtract(bool, bool)."
  • #9261 BUG: don't elide into readonly and updateifcopy temporaries for...
  • #9262 BUG: fix missing keyword rename for common block in numpy.f2py
  • #9263 BUG: handle resize of 0d array
  • #9267 DOC: update f2py front page and some doc build metadata.
  • #9299 BUG: Fix Intel compilation on Unix.
  • #9317 BUG: fix wrong ndim used in empty where check
  • #9319 BUG: Make extensions compilable with MinGW on Py2.7
  • #9339 BUG: Prevent crash if ufunc doc string is null
  • #9340 BUG: umath: un-break ufunc where= when no out= is given
  • #9371 DOC: Add isnat/positive ufunc to documentation
  • #9372 BUG: Fix error in fromstring function from numpy.core.records...
  • #9373 BUG: ')' is printed at the end pointer of the buffer in numpy.f2py.
  • #9374 DOC: Create NumPy 1.13.1 release notes.
  • #9376 BUG: Prevent hang traversing ufunc userloop linked list
  • #9377 DOC: Use x1 and x2 in the heaviside docstring.
  • #9378 DOC: Add $PARAMS to the isnat docstring
  • #9379 DOC: Update the 1.13.1 release notes
Contributors

A total of 12 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

  • Andras Deak +
  • Bob Eldering +
  • Charles Harris
  • Daniel Hrisca +
  • Eric Wieser
  • Joshua Leahy +
  • Julian Taylor
  • Michael Seifert
  • Pauli Virtanen
  • Ralf Gommers
  • Roland Kaufmann
  • Warren Weckesser
Checksums MD5
010a6325ec8e7df2f305e716c871880a  numpy-1.13.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
7774a1a5f93b45bfa7045b98eb102cca  numpy-1.13.1-cp27-cp27m-manylinux1_i686.whl
7906018278f3471a9a166a3975523ddd  numpy-1.13.1-cp27-cp27m-manylinux1_x86_64.whl
7ecd9304c319fc6b9ea481d6bf2e5051  numpy-1.13.1-cp27-cp27mu-manylinux1_i686.whl
de272621d41b7856e1580307be9d1fba  numpy-1.13.1-cp27-cp27mu-manylinux1_x86_64.whl
21c4dc286991347f506c0e27475f9058  numpy-1.13.1-cp27-none-win32.whl
245e3ebe32cf60d9d16e7267aa4292fc  numpy-1.13.1-cp27-none-win_amd64.whl
3eee3605dd61f02583264eb5697d8207  numpy-1.13.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
4a9f08ad5f3073ecaeea939158eaf955  numpy-1.13.1-cp34-cp34m-manylinux1_i686.whl
c51520d0d3836c91cba18d1fa8cf299c  numpy-1.13.1-cp34-cp34m-manylinux1_x86_64.whl
b1f13004ee992203d8c15940d60d0e7c  numpy-1.13.1-cp34-none-win32.whl
062bf4ed9e0fd5af995a17360e7bdec9  numpy-1.13.1-cp34-none-win_amd64.whl
b14a4749abbab74c21ef0743f7426245  numpy-1.13.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
a5b6bffc5a0e4950748ab0969457a728  numpy-1.13.1-cp35-cp35m-manylinux1_i686.whl
4558a2357849d9ef7b80260a76b7c990  numpy-1.13.1-cp35-cp35m-manylinux1_x86_64.whl
dd062ef029279bd795653a768d50180d  numpy-1.13.1-cp35-none-win32.whl
4df5bb3eb4787ff9850c1a5694922ab4  numpy-1.13.1-cp35-none-win_amd64.whl
449926c081bd27655d8bf76e03c5c75c  numpy-1.13.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
6ab8632d38c0313d9e063841a7e43edf  numpy-1.13.1-cp36-cp36m-manylinux1_i686.whl
a3664260fc73c6c2645a00b22109a2b8  numpy-1.13.1-cp36-cp36m-manylinux1_x86_64.whl
0a5d74ebce74e2a557d7bc0183398ac1  numpy-1.13.1-cp36-none-win32.whl
ab789d91bc6e423084df7fc73e667270  numpy-1.13.1-cp36-none-win_amd64.whl
6d459e4a24f5035f720dda3c57716a92  numpy-1.13.1.tar.gz
2c3c0f4edf720c3a7b525dacc825b9ae  numpy-1.13.1.zip
SHA256
91a4f5c6594a61b57b0ab6031a084fa3686b1e847cc2215983e444583594b529  numpy-1.13.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
ab6abc2083013dd86a8fcba2ba16bab00690cb81db62588781d656572809c9a9  numpy-1.13.1-cp27-cp27m-manylinux1_i686.whl
02e6279d95081086469e6ed83c708c4c48ed03a28ab87c71bea28af3b95fa56d  numpy-1.13.1-cp27-cp27m-manylinux1_x86_64.whl
05a7a81397e1391ae34cc0d14764a31ab6f73dbd0abe0952b3550d3ad4df265d  numpy-1.13.1-cp27-cp27mu-manylinux1_i686.whl
73fd54d9787f4f8747f823a7e2d0693da94c66b670ccf436e4bb488bbcd5ce8c  numpy-1.13.1-cp27-cp27mu-manylinux1_x86_64.whl
4b7da62ba159bfc5fee6f54709b0708686ee15081f16dc5f81cda7f1e0e77941  numpy-1.13.1-cp27-none-win32.whl
1980c4bc1eb495624c8414f3763da83b91d37c3c69772ab6912e9a857a143cdb  numpy-1.13.1-cp27-none-win_amd64.whl
436d47018c3cd2b9723ed3cd4ed4698ea7641449c71096781478ef6a20ae3bd0  numpy-1.13.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
43722270fbfb07d91558985a3da37aa92a2d4e2d271182526959a5773f9fb12a  numpy-1.13.1-cp34-cp34m-manylinux1_i686.whl
838e48df3703c8747f355cd6386e0680b906a2f7b2bbd304e8a2d531692484ce  numpy-1.13.1-cp34-cp34m-manylinux1_x86_64.whl
1400ec59c7f6c4f9390cc3bc5e56a6cbae2c30b39024eef317a0b52fe9c174c6  numpy-1.13.1-cp34-none-win32.whl
ed6a909a78e29a4056e30f918a26b231e33edc77bd785bbceb461877baf9feb5  numpy-1.13.1-cp34-none-win_amd64.whl
c1833829526ce8f5177a3e07554b6c98c194072f66f018839ecd1ef2d15e6c4a  numpy-1.13.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
a09a4707066fe9431c6b79a1be922bc126f4bc50502ae7e9f67d40917d0cc6d4  numpy-1.13.1-cp35-cp35m-manylinux1_i686.whl
9a8515002f143a5934f25ad2aacdfd1fcf57a7f5da6142c439eb8787ef65e8a6  numpy-1.13.1-cp35-cp35m-manylinux1_x86_64.whl
b49caeb170e54cc59863017a199667a51526bd906bcd5ee340fcf0e01bd7fa94  numpy-1.13.1-cp35-none-win32.whl
405c3dbb6a57415ec8576ff1c0248f332ac1c3be2e5eea04d498dad8431bf57b  numpy-1.13.1-cp35-none-win_amd64.whl
42b3cf886701bb16f3bdf2ae6c39af67b464cdd67d5fc86619ef2a876a23de27  numpy-1.13.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
94cb6ef9ffd15d7d904d0825ada642a51dc8890cdc06f1e4fb8e46cff79fe2ef  numpy-1.13.1-cp36-cp36m-manylinux1_i686.whl
d910a24f536f926bd56fb30d6f17ae8b89a1406e105087a49e014e000b00e8db  numpy-1.13.1-cp36-cp36m-manylinux1_x86_64.whl
b064211a4d86fc8009ef90c66d1443ba4a0c56d481659e085a190299569955e3  numpy-1.13.1-cp36-none-win32.whl
f4b4b2da8c1b4f7c212742d2be03aa9277d46fd7b309025d930ad554e5739932  numpy-1.13.1-cp36-none-win_amd64.whl
de020ec06f1e9ce1115a50161a38bf8d4c2525379900f9cb478cc613a1e7cd93  numpy-1.13.1.tar.gz
c9b0283776085cb2804efff73e9955ca279ba4edafd58d3ead70b61d209c4fbb  numpy-1.13.1.zip

1.13.0

6 years ago

==========================

NumPy 1.13.0 Release Notes

This release supports Python 2.7 and 3.4 - 3.6.

Highlights
  • Operations like a + b + c will reuse temporaries on some platforms, resulting in less memory use and faster execution.
  • Inplace operations check if inputs overlap outputs and create temporaries to avoid problems.
  • New __array_ufunc__ attribute provides improved ability for classes to override default ufunc behavior.
  • New np.block function for creating blocked arrays.
New functions
  • New np.positive ufunc.
  • New np.divmod ufunc provides more efficient divmod.
  • New np.isnat ufunc tests for NaT special values.
  • New np.heaviside ufunc computes the Heaviside function.
  • New np.isin function, improves on in1d.
  • New np.block function for creating blocked arrays.
  • New PyArray_MapIterArrayCopyIfOverlap added to NumPy C-API.

See below for details.

Deprecations
  • Calling np.fix, np.isposinf, and np.isneginf with f(x, y=out) is deprecated - the argument should be passed as f(x, out=out), which matches other ufunc-like interfaces.
  • Use of the C-API NPY_CHAR type number deprecated since version 1.7 will now raise deprecation warnings at runtime. Extensions built with older f2py versions need to be recompiled to remove the warning.
  • np.ma.argsort, np.ma.minimum.reduce, and np.ma.maximum.reduce should be called with an explicit axis argument when applied to arrays with more than 2 dimensions, as the default value of this argument (None) is inconsistent with the rest of numpy (-1, 0, and 0, respectively).
  • np.ma.MaskedArray.mini is deprecated, as it almost duplicates the functionality of np.MaskedArray.min. Exactly equivalent behaviour can be obtained with np.ma.minimum.reduce.
  • The single-argument form of np.ma.minimum and np.ma.maximum is deprecated. np.maximum. np.ma.minimum(x) should now be spelt np.ma.minimum.reduce(x), which is consistent with how this would be done with np.minimum.
  • Calling ndarray.conjugate on non-numeric dtypes is deprecated (it should match the behavior of np.conjugate, which throws an error).
  • Calling expand_dims when the axis keyword does not satisfy -a.ndim - 1 <= axis <= a.ndim, where a is the array being reshaped, is deprecated.
Future Changes
  • Assignment between structured arrays with different field names will change in NumPy 1.14. Previously, fields in the dst would be set to the value of the identically-named field in the src. In numpy 1.14 fields will instead be assigned 'by position': The n-th field of the dst wi