Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency numpy to v1.21.1 - autoclosed #19

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link

@renovate renovate bot commented Jul 26, 2021

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
numpy (source) ==1.19.5 -> ==1.21.1 age adoption passing confidence

Release Notes

numpy/numpy

v1.21.1

Compare Source

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

v1.21.0

Compare Source

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

v1.20.3

Compare Source

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

v1.20.2

Compare Source

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

v1.20.1

Compare Source

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
30ea1c7868e7

Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box.

This PR has been generated by WhiteSource Renovate. View repository job log here.

@renovate renovate bot requested a review from bsoyka as a code owner July 26, 2021 07:03
@renovate renovate bot changed the title Update dependency numpy to v1.21.1 Update dependency numpy to v1.21.1 - autoclosed Jul 27, 2021
@renovate renovate bot closed this Jul 27, 2021
@renovate renovate bot deleted the renovate/numpy-1.x branch July 27, 2021 17:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant