Skip to content

Releases: numpy/numpy

v1.19.5

05 Jan 17:49
v1.19.5
Compare
Choose a tag to compare

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

v1.20.0rc2

25 Dec 03:36
v1.20.0rc2
Compare
Choose a tag to compare
v1.20.0rc2 Pre-release
Pre-release

NumPy 1.20.0 Release Notes

This NumPy release is the largest so made to date, some 670 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]{.title-ref} 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]{.title-ref} 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 is also simply not
useful.

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.

In many cases, it may have been intended to use the types from the third
column. Be aware that use of these types may result in subtle but
desirable behavior changes.

Deprecated name Identical to Possibly intended numpy type


numpy.bool bool [numpy.bool_]{.title-ref}
numpy.int int [numpy.int_]{.title-ref} (default int dtype), [numpy.cint]{.title-ref} (C int)
numpy.float float [numpy.float_]{.title-ref}, [numpy.double]{.title-ref} (equivalent)
numpy.complex complex [numpy.complex_]{.title-ref}, [numpy.cdouble]{.title-ref} (equivalent)
numpy.object object [numpy.object_]{.title-ref}
numpy.str str [numpy.str_]{.title-ref}
numpy.long int (long on Python 2) [numpy.int_]{.title-ref} (C long), [numpy.longlong]{.title-ref} (largest integer type)
numpy.unicode str (unicode on Python 2) [numpy.unicode_]{.title-ref}

Note that for technical reasons these deprecation warnings will only be
emitted on Python 3.7 and above.

(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]{.title-ref} 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]{.title-ref} is deprecated. Instead of importing
functions from [numpy.dual]{.title-ref}, 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]{.title-ref} 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...

Read more

v1.20.0rc1

03 Dec 20:58
v1.20.0rc1
Compare
Choose a tag to compare
v1.20.0rc1 Pre-release
Pre-release

NumPy 1.20.0 Release Notes

This NumPy release is the largest so made to date, some 654 PRs
contributed by 182 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]{.title-ref} 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]{.title-ref} 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 is also simply not
useful.

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.

In many cases, it may have been intended to use the types from the third
column. Be aware that use of these types may result in subtle but
desirable behavior changes.

Deprecated name Identical to Possibly intended numpy type


numpy.bool bool [numpy.bool_]{.title-ref}
numpy.int int [numpy.int_]{.title-ref} (default int dtype), [numpy.cint]{.title-ref} (C int)
numpy.float float [numpy.float_]{.title-ref}, [numpy.double]{.title-ref} (equivalent)
numpy.complex complex [numpy.complex_]{.title-ref}, [numpy.cdouble]{.title-ref} (equivalent)
numpy.object object [numpy.object_]{.title-ref}
numpy.str str [numpy.str_]{.title-ref}
numpy.long int (long on Python 2) [numpy.int_]{.title-ref} (C long), [numpy.longlong]{.title-ref} (largest integer type)
numpy.unicode str (unicode on Python 2) [numpy.unicode_]{.title-ref}

Note that for technical reasons these deprecation warnings will only be
emitted on Python 3.7 and above.

(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]{.title-ref} 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]{.title-ref} is deprecated. Instead of importing
functions from [numpy.dual]{.title-ref}, 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]{.title-ref} 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)

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

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....

Read more

v1.19.4

02 Nov 16:22
v1.19.4
Compare
Choose a tag to compare

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

v1.19.3

29 Oct 01:55
v1.19.3
Compare
Choose a tag to compare

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

v1.19.2

10 Sep 18:16
v1.19.2
Compare
Choose a tag to compare

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

v1.19.1

21 Jul 21:30
v1.19.1
Compare
Choose a tag to compare

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

v1.19.0

20 Jun 20:43
v1.19.0
Compare
Choose a tag to compare

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 (s...

Read more

v1.18.5

04 Jun 00:40
v1.18.5
Compare
Choose a tag to compare

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

v1.19.0rc2

31 May 23:36
v1.19.0rc2
Compare
Choose a tag to compare
v1.19.0rc2 Pre-release
Pre-release

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)

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)

Depreca...

Read more