NumPy 1.16.6 Release Notes

The NumPy 1.16.6 release fixes bugs reported against the 1.16.5 release, and also backports several enhancements from master that seem appropriate for a release series that is the last to support Python 2.7. The wheels on PyPI are linked with OpenBLAS v0.3.7, which should fix errors on Skylake series cpus.

Downstream developers building this release should use Cython >= 0.29.2 and, if using OpenBLAS, OpenBLAS >= v0.3.7. The supported Python versions are 2.7 and 3.5-3.7.

Highlights

  • The np.testing.utils functions have been updated from 1.19.0-dev0. This improves the function documentation and error messages as well extending the assert_array_compare function to additional types.

New functions

Allow matmul (@ operator) to work with object arrays.

This is an enhancement that was added in NumPy 1.17 and seems reasonable to include in the LTS 1.16 release series.

Compatibility notes

Fix regression in matmul (@ operator) for boolean types

Booleans were being treated as integers rather than booleans, which was a regression from previous behavior.

Improvements

Array comparison assertions include maximum differences

Error messages from array comparison tests such as testing.assert_allclose now include “max absolute difference” and “max relative difference,” in addition to the previous “mismatch” percentage. This information makes it easier to update absolute and relative error tolerances.

Contributors

A total of 10 people contributed to this release.

  • CakeWithSteak

  • Charles Harris

  • Chris Burr

  • Eric Wieser

  • Fernando Saravia

  • Lars Grueter

  • Matti Picus

  • Maxwell Aladago

  • Qiming Sun

  • Warren Weckesser

Pull requests merged

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

  • #14211: BUG: Fix uint-overflow if padding with linear_ramp and negative…

  • #14275: BUG: fixing to allow unpickling of PY3 pickles from PY2

  • #14340: BUG: Fix misuse of .names and .fields in various places (backport…

  • #14423: BUG: test, fix regression in converting to ctypes.

  • #14434: BUG: Fixed maximum relative error reporting in assert_allclose

  • #14509: BUG: Fix regression in boolean matmul.

  • #14686: BUG: properly define PyArray_DescrCheck

  • #14853: BLD: add ‘apt update’ to shippable

  • #14854: BUG: Fix _ctypes class circular reference. (#13808)

  • #14856: BUG: Fix np.einsum errors on Power9 Linux and z/Linux

  • #14863: BLD: Prevent -flto from optimising long double representation…

  • #14864: BUG: lib: Fix histogram problem with signed integer arrays.

  • #15172: ENH: Backport improvements to testing functions.

  • #15191: REL: Prepare for 1.16.6 release.