NumPy 2.4.5 Release Notes#

NumPy 2.4.5 is a patch release that fixes bugs discovered after the 2.4.4 release, has some typing improvements, and maintains infrastructure.

This release supports Python versions 3.11-3.14

Contributors#

A total of 17 people contributed to this release. People with a “+” by their names contributed a patch for the first time.

  • Aleksei Nikiforov

  • Anarion Zuo +

  • Ankit Ahlawat

  • Breno Favaretto +

  • Charles Harris

  • Igor Krivenko +

  • Ijtihed Kilani +

  • Joren Hammudoglu

  • Maarten Baert +

  • Matti Picus

  • Nathan Goldbaum

  • Praneeth Kodumagulla +

  • Ralf Gommers

  • RoomWithOutRoof +

  • Sebastian Berg

  • Warren Weckesser

  • div +

Pull requests merged#

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

  • #31093: MAINT: Prepare 2.4.x for further development

  • #31182: TYP: fix np.shape assignability issue for python lists (#31171)

  • #31197: ENH: Return rank 0 for empty matrices in matrix_rank (#30422)

  • #31198: CI/BUG: add native jobs for s390x, fix bug in pack_inner

  • #31199: BUG: f2py map complex_long_double to NPY_CLONGDOUBLE

  • #31205: MAINT: f2py: Stop setting re._MAXCACHE to 50.

  • #31206: BUG: fix heap buffer overflow in timedelta to string casts

  • #31207: MAINT: Rename ppc64le and s390x workflow (#31121)

  • #31208: BUG: Fix matvec/vecmat in-place aliasing (out=input produces…

  • #31209: TYP: tile: accept numpy scalars and arrays as second argument…

  • #31211: DEP: Undo deprecation for np.dtype() signature used by old pickles…

  • #31212: REV: Manual revert of float16 svml use (#31178)

  • #31222: TYP: ix_ fix for boolean and non-1d input (#31218)

  • #31329: BUG: incorrect temp elision for new-style (NEP 43) user-defined…

  • #31330: TYP: fix sliding_window_view axis parameter typing

  • #31335: BUG: Prevent deadlock due to downstream importing NumPy in dlopen…

  • #31336: BUG: Fix segfault in nditer.multi_index when __getitem__ raises…

  • #31338: TYP: Fix ruff lint error

  • #31357: BUG: fix memory leak in np.zeros when fill-zero loop raises (#31320)

  • #31358: BUG: np.einsum() fails with a 0-dimensional out argument and…

  • #31379: BUG: Fix signed overflow issue in npy_gcd for INT_MIN on s390x…

  • #31383: CI: remove Cirrus CI FreeBSD job (#31380)

  • #31390: BUILD: newer MKL uses so.3

  • #31391: BLD/MAINT: improve support for Intel LLVM compilers

  • #31401: BUG: Avoid UB in safe_[add,sub,mul] helpers (#31396)

  • #31402: BUG: exclude __pycache__ directories from wheels (#31397)

  • #31404: TYP: _NestedSequence type parameter default to work around…

  • #31426: TYP: Fix DTypeLike runtime type-checker support (#31425)