Opened 7 months ago

Closed 6 months ago

#18710 closed enhancement (fixed)

numpy-1.26.1 (Python module)

Reported by: Bruce Dubbs Owned by: Douglas R. Reno
Priority: normal Milestone: 12.1
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New point version.

Change History (3)

comment:1 by Douglas R. Reno, 6 months ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:2 by Douglas R. Reno, 6 months ago

NumPy 1.26.1 Release Notes

NumPy 1.26.1 is a maintenance release that fixes bugs and regressions discovered after the 1.26.0 release. In addition, it adds new functionality for detecting BLAS and LAPACK when building from source. Highlights are:

Improved detection of BLAS and LAPACK libraries for meson builds

Pickle compatibility with the upcoming NumPy 2.0.

The 1.26.release series is the last planned minor release series before NumPy 2.0. The Python versions supported by this release are 3.9-3.12.

Build system changes

Improved BLAS/LAPACK detection and control

Auto-detection for a number of BLAS and LAPACK is now implemented for Meson. By default, the build system will try to detect MKL, Accelerate (on macOS >=13.3), OpenBLAS, FlexiBLAS, BLIS and reference BLAS/LAPACK. Support for MKL was significantly improved, and support for FlexiBLAS was added.

New command-line flags are available to further control the selection of the BLAS and LAPACK libraries to build against.

To select a specific library, use the config-settings interface via pip or pypa/build. E.g., to select libblas/liblapack, use:

$ pip install numpy -Csetup-args=-Dblas=blas -Csetup-args=-Dlapack=lapack $ # OR $ python -m build . -Csetup-args=-Dblas=blas -Csetup-args=-Dlapack=lapack

This works not only for the libraries named above, but for any library that Meson is able to detect with the given name through pkg-config or CMake.

Besides -Dblas and -Dlapack, a number of other new flags are available to control BLAS/LAPACK selection and behavior:

-Dblas-order and -Dlapack-order: a list of library names to search for in order, overriding the default search order.

-Duse-ilp64: if set to true, use ILP64 (64-bit integer) BLAS and LAPACK. Note that with this release, ILP64 support has been extended to include MKL and FlexiBLAS. OpenBLAS and Accelerate were supported in previous releases.

-Dallow-noblas: if set to true, allow NumPy to build with its internal (very slow) fallback routines instead of linking against an external BLAS/LAPACK library. The default for this flag may be changed to true in a future 1.26.x release, however for 1.26.1 we’d prefer to keep it as false because if failures to detect an installed library are happening, we’d like a bug report for that, so we can quickly assess whether the new auto-detection machinery needs further improvements.

-Dmkl-threading: to select the threading layer for MKL. There are four options: seq, iomp, gomp and tbb. The default is auto, which selects from those four as appropriate given the version of MKL selected.

-Dblas-symbol-suffix: manually select the symbol suffix to use for the library - should only be needed for linking against libraries built in a non-standard way.

New features

numpy._core submodule stubs

numpy._core submodule stubs were added to provide compatibility with pickled arrays created using NumPy 2.0 when running Numpy 1.26.

Pull requests merged

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

#24742: MAINT: Update cibuildwheel version

#24748: MAINT: fix version string in wheels built with setup.py

#24771: BLD, BUG: Fix build failure for host flags e.g. -march=native…

#24773: DOC: Updated the f2py docs to remove a note on -fimplicit-none

#24776: BUG: Fix SIMD f32 trunc test on s390x when baseline is none

#24785: BLD: add libquadmath to licences and other tweaks (#24753)

#24786: MAINT: Activate use-compute-credits for Cirrus.

#24803: BLD: updated vendored-meson/meson for mips64 fix

#24804: MAINT: fix licence path win

#24813: BUG: Fix order of Windows OS detection macros.

#24831: BUG, SIMD: use scalar cmul on bad Apple clang x86_64 (#24828)

#24840: BUG: Fix DATA statements for f2py

#24870: API: Add NumpyUnpickler for backporting

#24872: MAINT: Xfail test failing on PyPy.

#24879: BLD: fix math func feature checks, fix FreeBSD build, add CI…

#24899: ENH: meson: implement BLAS/LAPACK auto-detection and many CI…

#24902: DOC: add a 1.26.1 release notes section for BLAS/LAPACK build…

#24906: MAINT: Backport numpy._core stubs. Remove NumpyUnpickler

#24911: MAINT: Bump pypa/cibuildwheel from 2.16.1 to 2.16.2

#24912: BUG: loongarch doesn’t use REAL(10)

comment:3 by Douglas R. Reno, 6 months ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.