Skip to content

Releases: numpy/numpy

2.4.0 (Dec 20, 2025)

20 Dec 18:20
Immutable release. Only release title and notes can be modified.
v2.4.0
c5ab79c

Choose a tag to compare

NumPy 2.4.0 Release Notes

The NumPy 2.4.0 release continues the work to improve free threaded Python
support, user dtypes implementation, and annotations. There are many expired
deprecations and bug fixes as well.

This release supports Python versions 3.11-3.14

Highlights

Apart from annotations and same_value kwarg, the 2.4 highlights are mostly
of interest to downstream developers. They should help in implementing new user
dtypes.

  • Many annotation improvements. In particular, runtime signature introspection.
  • New casting kwarg 'same_value' for casting by value.
  • New PyUFunc_AddLoopsFromSpec function that can be used to add user sort
    loops using the ArrayMethod API.
  • New __numpy_dtype__ protocol.

Deprecations

Setting the strides attribute is deprecated

Setting the strides attribute is now deprecated since mutating
an array is unsafe if an array is shared, especially by multiple
threads. As an alternative, you can create a new view (no copy) via:

  • np.lib.stride_tricks.strided_window_view if applicable,
  • np.lib.stride_tricks.as_strided for the general case,
  • or the np.ndarray constructor (buffer is the original array) for a
    light-weight version.

(gh-28925)

Positional out argument to np.maximum, np.minimum is deprecated

Passing the output array out positionally to numpy.maximum and
numpy.minimum is deprecated. For example, np.maximum(a, b, c) will emit
a deprecation warning, since c is treated as the output buffer rather than
a third input.

Always pass the output with the keyword form, e.g. np.maximum(a, b, out=c).
This makes intent clear and simplifies type annotations.

(gh-29052)

align= must be passed as boolean to np.dtype()

When creating a new dtype a VisibleDeprecationWarning will be given if
align= is not a boolean. This is mainly to prevent accidentally passing a
subarray align flag where it has no effect, such as np.dtype("f8", 3)
instead of np.dtype(("f8", 3)). We strongly suggest to always pass
align= as a keyword argument.

(gh-29301)

Assertion and warning control utilities are deprecated

np.testing.assert_warns and np.testing.suppress_warnings are
deprecated. Use warnings.catch_warnings, warnings.filterwarnings,
pytest.warns, or pytest.filterwarnings instead.

(gh-29550)

np.fix is pending deprecation

The numpy.fix function will be deprecated in a future release. It is
recommended to use numpy.trunc instead, as it provides the same
functionality of truncating decimal values to their integer parts. Static type
checkers might already report a warning for the use of numpy.fix.

(gh-30168)

in-place modification of ndarray.shape is pending deprecation

Setting the ndarray.shape attribute directly will be deprecated in a future
release. Instead of modifying the shape in place, it is recommended to use the
numpy.reshape function. Static type checkers might already report a
warning for assignments to ndarray.shape.

(gh-30282)

Deprecation of numpy.lib.user_array.container

The numpy.lib.user_array.container class is deprecated and will be removed
in a future version.

(gh-30284)

Expired deprecations

Removed deprecated MachAr runtime discovery mechanism.

(gh-29836)

Raise TypeError on attempt to convert array with ndim > 0 to scalar

Conversion of an array with ndim > 0 to a scalar was deprecated in NumPy
1.25. Now, attempting to do so raises TypeError. Ensure you extract a
single element from your array before performing this operation.

(gh-29841)

Removed numpy.linalg.linalg and numpy.fft.helper

The following were deprecated in NumPy 2.0 and have been moved to private
modules:

  • numpy.linalg.linalg
    Use numpy.linalg instead.
  • numpy.fft.helper
    Use numpy.fft instead.

(gh-29909)

Removed interpolation parameter from quantile and percentile functions

The interpolation parameter was deprecated in NumPy 1.22.0 and has been
removed from the following functions:

  • numpy.percentile
  • numpy.nanpercentile
  • numpy.quantile
  • numpy.nanquantile

Use the method parameter instead.

(gh-29973)

Removed numpy.in1d

numpy.in1d has been deprecated since NumPy 2.0 and is now removed in favor of numpy.isin.

(gh-29978)

Removed numpy.ndindex.ndincr()

The ndindex.ndincr() method has been deprecated since NumPy 1.20 and is now
removed; use next(ndindex) instead.

(gh-29980)

Removed fix_imports parameter from numpy.save

The fix_imports parameter was deprecated in NumPy 2.1.0 and is now removed.
This flag has been ignored since NumPy 1.17 and was only needed to support
loading files in Python 2 that were written in Python 3.

(gh-29984)

Removal of four undocumented ndarray.ctypes methods

Four undocumented methods of the ndarray.ctypes object have been removed:

  • _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)

These methods have been deprecated since NumPy 1.21.

(gh-29986)

Removed newshape parameter from numpy.reshape

The newshape parameter was deprecated in NumPy 2.1.0 and has been
removed from numpy.reshape. Pass it positionally or use shape=
on newer NumPy versions.

(gh-29994)

Removal of deprecated functions and arguments

The following long-deprecated APIs have been removed:

  • numpy.trapz --- deprecated since NumPy 2.0 (2023-08-18). Use numpy.trapezoid or
    scipy.integrate functions instead.
  • disp function --- deprecated from 2.0 release and no longer functional. Use
    your own printing function instead.
  • bias and ddof arguments in numpy.corrcoef --- these had no effect
    since NumPy 1.10.

(gh-29997)

Removed delimitor parameter from numpy.ma.mrecords.fromtextfile()

The delimitor parameter was deprecated in NumPy 1.22.0 and has been
removed from numpy.ma.mrecords.fromtextfile(). Use delimiter instead.

(gh-30021)

numpy.array2string and numpy.sum deprecations finalized

The following long-deprecated APIs have been removed or converted to errors:

  • The style parameter has been removed from numpy.array2string.
    This argument had no effect since Numpy 1.14.0. Any arguments following
    it, such as formatter have now been made keyword-only.
  • Calling np.sum(generator) directly on a generator object now raises a
    TypeError. This behavior was deprecated in NumPy 1.15.0. Use
    np.sum(np.fromiter(generator)) or the python sum builtin instead.

(gh-30068)

Compatibility notes

  • NumPy's C extension modules have begun to use multi-phase initialisation, as
    defined by PEP 489. As part of this, a new explicit check has been added that
    each such module is only imported once per Python process. This comes with
    the side-effect that deleting numpy from sys.modules and re-importing
    it will now fail with an ImportError. This has always been unsafe, with
    unexpected side-effects, though did not previously raise an error.

    (gh-29030)

  • numpy.round now always returns a copy. Previously, it returned a view
    for integer inputs for decimals >= 0 and a copy in all other cases.
    This change brings round in line with ceil, floor and trunc.

    (gh-29137)

  • Type-checkers will no longer accept calls to numpy.arange with
    start as a keyword argument. This was done for compatibility with
    the Array API standard. At runtime it is still possible to use
    numpy.arange with start as a keyword argument.

    (gh-30147)

  • The Macro NPY_ALIGNMENT_REQUIRED has been removed The macro was defined in
    the npy_cpu.h file, so might be regarded as semi public. As it turns out,
    with modern compilers and hardware it is almost always the case that
    alignment is required, so numpy no longer uses the macro. It is unlikely
    anyone uses it, but you might want to compile with the -Wundef flag or
    equivalent to be sure.

    (gh-29094)

C API changes

The NPY_SORTKIND enum has been enhanced with new variables

This is of interest if you are using PyArray_Sort or PyArray_ArgSort.
We have changed the semantics of the old names in the NPY_SORTKIND enum and
added new ones. The changes are backward compatible, and no recompilation is
needed. The new names of interest are:

  • NPY_SORT_DEFAULT -- default sort (same value as NPY_QUICKSORT)
  • NPY_SORT_STABLE -- the sort must be stable (same value as NPY_MERGESORT)
  • NPY_SORT_DESCENDING -- the sort must be descending

The semantic change is that NPY_HEAPSORT is mapped to `NPY_QUICK...

Read more

2.4.0rc1 (Dec 3, 2025)

03 Dec 16:00
Immutable release. Only release title and notes can be modified.
v2.4.0rc1
2daac82

Choose a tag to compare

Pre-release

NumPy 2.4.0 Release Notes

The NumPy 2.4.0 release continues the work to improve free threaded Python
support, user dtypes implementation, and annotations. There are many expired
deprecations and bug fixes as well.

This release supports Python versions 3.11-3.14

Highlights

Apart from annotations and same_value kwarg, the 2.4 highlights are mostly
of interest to downstream developers. They should help in implementing new user
dtypes.

  • Many annotation improvements. In particular, runtime signature introspection.
  • New casting kwarg 'same_value' for casting by value.
  • New PyUFunc_AddLoopsFromSpec function that can be used to add user sort
    loops using the ArrayMethod API.
  • New __numpy_dtype__ protocol.

Deprecations

Setting the strides attribute is deprecated

Setting the strides attribute is now deprecated since mutating
an array is unsafe if an array is shared, especially by multiple
threads. As an alternative, you can create a new view (no copy) via:

  • np.lib.stride_tricks.strided_window_view if applicable,
  • np.lib.stride_tricks.as_strided for the general case,
  • or the np.ndarray constructor (buffer is the original array) for a
    light-weight version.

(gh-28925)

Positional out argument to np.maximum, np.minimum is deprecated

Passing the output array out positionally to numpy.maximum and
numpy.minimum is deprecated. For example, np.maximum(a, b, c) will emit
a deprecation warning, since c is treated as the output buffer rather than
a third input.

Always pass the output with the keyword form, e.g. np.maximum(a, b, out=c).
This makes intent clear and simplifies type annotations.

(gh-29052)

align= must be passed as boolean to np.dtype()

When creating a new dtype a VisibleDeprecationWarning will be given if
align= is not a boolean. This is mainly to prevent accidentally passing a
subarray align flag where it has no effect, such as np.dtype("f8", 3)
instead of np.dtype(("f8", 3)). We strongly suggest to always pass
align= as a keyword argument.

(gh-29301)

Assertion and warning control utilities are deprecated

np.testing.assert_warns and np.testing.suppress_warnings are
deprecated. Use warnings.catch_warnings, warnings.filterwarnings,
pytest.warns, or pytest.filterwarnings instead.

(gh-29550)

np.fix is pending deprecation

The numpy.fix function will be deprecated in a future release. It is
recommended to use numpy.trunc instead, as it provides the same
functionality of truncating decimal values to their integer parts. Static type
checkers might already report a warning for the use of numpy.fix.

(gh-30168)

in-place modification of ndarray.shape is pending deprecation

Setting the ndarray.shape attribute directly will be deprecated in a future
release. Instead of modifying the shape in place, it is recommended to use the
numpy.reshape function. Static type checkers might already report a
warning for assignments to ndarray.shape.

(gh-30282)

Deprecation of numpy.lib.user_array.container

The numpy.lib.user_array.container class is deprecated and will be removed
in a future version.

(gh-30284)

Expired deprecations

Removed deprecated MachAr runtime discovery mechanism.

(gh-29836)

Raise TypeError on attempt to convert array with ndim > 0 to scalar

Conversion of an array with ndim > 0 to a scalar was deprecated in NumPy
1.25. Now, attempting to do so raises TypeError. Ensure you extract a
single element from your array before performing this operation.

(gh-29841)

Removed numpy.linalg.linalg and numpy.fft.helper

The following were deprecated in NumPy 2.0 and have been moved to private
modules:

  • numpy.linalg.linalg
    Use numpy.linalg instead.
  • numpy.fft.helper
    Use numpy.fft instead.

(gh-29909)

Removed interpolation parameter from quantile and percentile functions

The interpolation parameter was deprecated in NumPy 1.22.0 and has been
removed from the following functions:

  • numpy.percentile
  • numpy.nanpercentile
  • numpy.quantile
  • numpy.nanquantile

Use the method parameter instead.

(gh-29973)

Removed numpy.in1d

numpy.in1d has been deprecated since NumPy 2.0 and is now removed in favor of numpy.isin.

(gh-29978)

Removed numpy.ndindex.ndincr()

The ndindex.ndincr() method has been deprecated since NumPy 1.20 and is now
removed; use next(ndindex) instead.

(gh-29980)

Removed fix_imports parameter from numpy.save

The fix_imports parameter was deprecated in NumPy 2.1.0 and is now removed.
This flag has been ignored since NumPy 1.17 and was only needed to support
loading files in Python 2 that were written in Python 3.

(gh-29984)

Removal of four undocumented ndarray.ctypes methods

Four undocumented methods of the ndarray.ctypes object have been removed:

  • _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)

These methods have been deprecated since NumPy 1.21.

(gh-29986)

Removed newshape parameter from numpy.reshape

The newshape parameter was deprecated in NumPy 2.1.0 and has been
removed from numpy.reshape. Pass it positionally or use shape=
on newer NumPy versions.

(gh-29994)

Removal of deprecated functions and arguments

The following long-deprecated APIs have been removed:

  • numpy.trapz --- deprecated since NumPy 2.0 (2023-08-18). Use numpy.trapezoid or
    scipy.integrate functions instead.
  • disp function --- deprecated from 2.0 release and no longer functional. Use
    your own printing function instead.
  • bias and ddof arguments in numpy.corrcoef --- these had no effect
    since NumPy 1.10.

(gh-29997)

Removed delimitor parameter from numpy.ma.mrecords.fromtextfile()

The delimitor parameter was deprecated in NumPy 1.22.0 and has been
removed from numpy.ma.mrecords.fromtextfile(). Use delimiter instead.

(gh-30021)

numpy.array2string and numpy.sum deprecations finalized

The following long-deprecated APIs have been removed or converted to errors:

  • The style parameter has been removed from numpy.array2string.
    This argument had no effect since Numpy 1.14.0. Any arguments following
    it, such as formatter have now been made keyword-only.
  • Calling np.sum(generator) directly on a generator object now raises a
    TypeError. This behavior was deprecated in NumPy 1.15.0. Use
    np.sum(np.fromiter(generator)) or the python sum builtin instead.

(gh-30068)

Compatibility notes

  • NumPy's C extension modules have begun to use multi-phase initialisation, as
    defined by PEP 489. As part of this, a new explicit check has been added that
    each such module is only imported once per Python process. This comes with
    the side-effect that deleting numpy from sys.modules and re-importing
    it will now fail with an ImportError. This has always been unsafe, with
    unexpected side-effects, though did not previously raise an error.

    (gh-29030)

  • numpy.round now always returns a copy. Previously, it returned a view
    for integer inputs for decimals >= 0 and a copy in all other cases.
    This change brings round in line with ceil, floor and trunc.

    (gh-29137)

  • Type-checkers will no longer accept calls to numpy.arange with
    start as a keyword argument. This was done for compatibility with
    the Array API standard. At runtime it is still possible to use
    numpy.arange with start as a keyword argument.

    (gh-30147)

  • The Macro NPY_ALIGNMENT_REQUIRED has been removed The macro was defined in
    the npy_cpu.h file, so might be regarded as semi public. As it turns out,
    with modern compilers and hardware it is almost always the case that
    alignment is required, so numpy no longer uses the macro. It is unlikely
    anyone uses it, but you might want to compile with the -Wundef flag or
    equivalent to be sure.

    (gh-29094)

C API changes

The NPY_SORTKIND enum has been enhanced with new variables

This is of interest if you are using PyArray_Sort or PyArray_ArgSort.
We have changed the semantics of the old names in the NPY_SORTKIND enum and
added new ones. The changes are backward compatible, and no recompilation is
needed. The new names of interest are:

  • NPY_SORT_DEFAULT -- default sort (same value as NPY_QUICKSORT)
  • NPY_SORT_STABLE -- the sort must be stable (same value as NPY_MERGESORT)
  • NPY_SORT_DESCENDING -- the sort must be descending

The semantic change is that NPY_HEAPSORT is mapped to `NPY_QUICK...

Read more

2.3.5 (Nov 16, 2025)

16 Nov 23:15
Immutable release. Only release title and notes can be modified.
v2.3.5
c3d60fc

Choose a tag to compare

NumPy 2.3.5 Release Notes

The NumPy 2.3.5 release is a patch release split between a number of maintenance
updates and bug fixes. This release supports Python versions 3.11-3.14.

Contributors

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

  • Aaron Kollasch +
  • Charles Harris
  • Joren Hammudoglu
  • Matti Picus
  • Nathan Goldbaum
  • Rafael Laboissière +
  • Sayed Awad
  • Sebastian Berg
  • Warren Weckesser
  • Yasir Ashfaq +

Pull requests merged

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

  • #29979: MAINT: Prepare 2.3.x for further development
  • #30026: SIMD, BLD: Backport FPMATH mode on x86-32 and filter successor...
  • #30029: MAINT: Backport write_release.py
  • #30041: TYP: Various typing updates
  • #30059: BUG: Fix np.strings.slice if stop=None or start and stop >= len...
  • #30063: BUG: Fix np.strings.slice if start > stop
  • #30076: BUG: avoid negating INT_MIN in PyArray_Round implementation (#30071)
  • #30090: BUG: Fix resize when it contains references (#29970)
  • #30129: BLD: update scipy-openblas, use -Dpkg_config_path (#30049)
  • #30130: BUG: Avoid compilation error of wrapper file generated with SWIG...
  • #30157: BLD: use scipy-openblas 0.3.30.7 (#30132)
  • #30158: DOC: Remove nonexistent order parameter docs of ma.asanyarray...
  • #30185: BUG: Fix check of PyMem_Calloc return value. (#30176)
  • #30217: DOC: fix links for newly rebuilt numpy-tutorials site
  • #30218: BUG: Fix build on s390x with clang (#30214)
  • #30237: ENH: Make FPE blas check a runtime check for all apple arm systems

v2.3.4 (Oct 15, 2025)

15 Oct 23:15
Immutable release. Only release title and notes can be modified.
v2.3.4
1458b9e

Choose a tag to compare

NumPy 2.3.4 Release Notes

The NumPy 2.3.4 release is a patch release split between a number of maintenance
updates and bug fixes. This release supports Python versions 3.11-3.14. This
release is based on Python 3.14.0 final.

Changes

The npymath and npyrandom libraries now have a .lib rather than a
.a file extension on win-arm64, for compatibility for building with MSVC and
setuptools. Please note that using these static libraries is discouraged
and for existing projects using it, it's best to use it with a matching
compiler toolchain, which is clang-cl on Windows on Arm.

(gh-29750)

Contributors

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

  • !DWesl
  • Charles Harris
  • Christian Barbia +
  • Evgeni Burovski
  • Joren Hammudoglu
  • Maaz +
  • Mateusz Sokół
  • Matti Picus
  • Nathan Goldbaum
  • Ralf Gommers
  • Riku Sakamoto +
  • Sandeep Gupta +
  • Sayed Awad
  • Sebastian Berg
  • Sergey Fedorov +
  • Warren Weckesser
  • dependabot[bot]

Pull requests merged

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

  • #29725: MAINT: Prepare 2.3.x for further development
  • #29781: MAINT: Pin some upstream dependences
  • #29782: BLD: enable x86-simd-sort to build on KNL with -mavx512f
  • #29783: BUG: Include python-including headers first (#29281)
  • #29784: TYP: fix np.number and np.*integer method declaration
  • #29785: TYP: mypy 1.18.1
  • #29788: TYP: replace scalar type __init__ with __new__
  • #29790: BUG: Fix dtype refcount in __array__ (#29715)
  • #29791: TYP: fix method declarations in floating, timedelta64, and datetime64Backport
  • #29792: MAINT: delete unused variables in unary logical dispatch
  • #29797: BUG: Fix pocketfft umath strides for AIX compatibility (#29768)
  • #29798: BUG: np.setbufsize should raise ValueError for negative input
  • #29799: BUG: Fix assert in nditer buffer setup
  • #29800: BUG: Stable ScalarType ordering
  • #29838: TST: Pin pyparsing to avoid matplotlib errors.
  • #29839: BUG: linalg: emit a MemoryError on a malloc failure (#29811)
  • #29840: BLD: change file extension for libnpymath on win-arm64 from .a...
  • #29864: CI: Fix loongarch64 CI (#29856)
  • #29865: TYP: Various typing fixes
  • #29910: BUG: Fix float16-sort failures on 32-bit x86 MSVC (#29908)
  • #29911: TYP: add missing __slots__ (#29901)
  • #29913: TYP: wrong argument defaults in testing._private (#29902)
  • #29920: BUG: avoid segmentation fault in string_expandtabs_length_promoter
  • #29921: BUG: Fix INT_MIN % -1 to return 0 for all signed integer types...
  • #29922: TYP: minor fixes related to errstate (#29914)
  • #29923: TST: use requirements/test_requirements across CI (#29919)
  • #29926: BUG: fix negative samples generated by Wald distribution (#29609)
  • #29940: MAINT: Bump pypa/cibuildwheel from 3.1.4 to 3.2.1
  • #29949: STY: rename @classmethod arg to cls
  • #29950: MAINT: Simplify string arena growth strategy (#29885)

2.3.3 (Sep 9, 2025)

09 Sep 17:37
v2.3.3
f2a77a7

Choose a tag to compare

NumPy 2.3.3 Release Notes

The NumPy 2.3.3 release is a patch release split between a number of maintenance
updates and bug fixes. This release supports Python versions 3.11-3.14. Note
that the 3.14.0 final is currently expected in Oct, 2025. This release is based
on 3.14.0rc2.

Contributors

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

  • Aleksandr A. Voyt +
  • Bernard Roesler +
  • Charles Harris
  • Hunter Hogan +
  • Joren Hammudoglu
  • Maanas Arora
  • Matti Picus
  • Nathan Goldbaum
  • Raghuveer Devulapalli
  • Sanjay Kumar Sakamuri Kamalakar +
  • Tobias Markus +
  • Warren Weckesser
  • Zebreus +

Pull requests merged

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

  • #29440: MAINT: Prepare 2.3.x for further development.
  • #29446: BUG: Fix test_configtool_pkgconfigdir to resolve PKG_CONFIG_DIR...
  • #29447: BLD: allow targeting webassembly without emscripten
  • #29460: MAINT: Backport write_release.py
  • #29473: MAINT: Bump pypa/cibuildwheel from 3.1.0 to 3.1.2
  • #29500: BUG: Always return a real dtype from linalg.cond (gh-18304) (#29333)
  • #29501: MAINT: Add .file entry to all .s SVML files
  • #29556: BUG: Casting from one timedelta64 to another didn't handle NAT.
  • #29562: BLD: update vendored Meson to 1.8.3 [wheel build]
  • #29563: BUG: Fix metadata not roundtripping when pickling datetime (#29555)
  • #29587: TST: update link and version for Intel SDE download
  • #29593: TYP: add sorted kwarg to unique
  • #29672: MAINT: Update pythoncapi-compat from main.
  • #29673: MAINT: Update cibuildwheel.
  • #29674: MAINT: Fix typo in wheels.yml
  • #29683: BUG, BLD: Correct regex for ppc64 VSX3/VSX4 feature detection
  • #29684: TYP: ndarray.fill() takes no keyword arguments
  • #29685: BUG: avoid thread-unsafe refcount check in temp elision
  • #29687: CI: replace comment-hider action in mypy_primer workflow
  • #29689: BLD: Add missing <unordered_map> include
  • #29691: BUG: use correct input dtype in flatiter assignment
  • #29700: TYP: fix np.bool method declarations
  • #29701: BUG: Correct ambiguous logic for s390x CPU feature detection

v2.3.2 (Jul 24, 2025)

24 Jul 21:44
v2.3.2
bc5e4f8

Choose a tag to compare

NumPy 2.3.2 Release Notes

The NumPy 2.3.2 release is a patch release with a number of bug fixes
and maintenance updates. The highlights are:

  • Wheels for Python 3.14.0rc1
  • PyPy updated to the latest stable release
  • OpenBLAS updated to 0.3.30

This release supports Python versions 3.11-3.14

Contributors

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

  • !DWesl
  • Charles Harris
  • Joren Hammudoglu
  • Maanas Arora
  • Marco Edward Gorelli
  • Matti Picus
  • Nathan Goldbaum
  • Sebastian Berg
  • kostayScr +

Pull requests merged

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

  • #29256: MAINT: Prepare 2.3.x for further development
  • #29283: TYP: Work around a mypy issue with bool arrays (#29248)
  • #29284: BUG: fix fencepost error in StringDType internals
  • #29287: BUG: handle case in mapiter where descriptors might get replaced...
  • #29350: BUG: Fix shape error path in array-interface
  • #29412: BUG: Allow reading non-npy files in npz and add test
  • #29413: TST: Avoid uninitialized values in test (#29341)
  • #29414: BUG: Fix reference leakage for output arrays in reduction functions
  • #29415: BUG: fix casting issue in center, ljust, rjust, and zfill (#29369)
  • #29416: TYP: Fix overloads in np.char.array and np.char.asarray...
  • #29417: BUG: Any dtype should call square on arr \*\* 2 (#29392)
  • #29424: MAINT: use a stable pypy release in CI
  • #29425: MAINT: Support python 314rc1
  • #29429: MAINT: Update highway to match main.
  • #29430: BLD: use github to build macos-arm64 wheels with OpenBLAS and...
  • #29437: BUG: fix datetime/timedelta hash memory leak (#29411)

Checksums

MD5

e35c637ea9fba77eabfdf70e26eaa16d  numpy-2.3.2-cp311-cp311-macosx_10_9_x86_64.whl
3dede42d11c843cfacff422f65a80e47  numpy-2.3.2-cp311-cp311-macosx_11_0_arm64.whl
f5c485a43210eb3541b254c8c9d6ac9e  numpy-2.3.2-cp311-cp311-macosx_14_0_arm64.whl
658950eb37e19b42920635ee60830a1d  numpy-2.3.2-cp311-cp311-macosx_14_0_x86_64.whl
9a864a280798829cc522521bc5d9c7e2  numpy-2.3.2-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
085e1ff7746d327a1320672ab86966c3  numpy-2.3.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
6acefa06c38bc616352b76174d4f19d2  numpy-2.3.2-cp311-cp311-musllinux_1_2_aarch64.whl
4dd3469970dbfba60dad41b9923c5a5a  numpy-2.3.2-cp311-cp311-musllinux_1_2_x86_64.whl
ad090139b8b872a9157b92c840566c5e  numpy-2.3.2-cp311-cp311-win32.whl
09b023f808432e60633e36a13630dc13  numpy-2.3.2-cp311-cp311-win_amd64.whl
c80f2a1c4c829ccb6745a6d0803b7177  numpy-2.3.2-cp311-cp311-win_arm64.whl
307fc28e0c630dbc5a6ff4051ee9ec6c  numpy-2.3.2-cp312-cp312-macosx_10_13_x86_64.whl
4af1ffb81bdec235aef1b9bdf7c1566d  numpy-2.3.2-cp312-cp312-macosx_11_0_arm64.whl
8003e8df1badaffee163a603bf05656b  numpy-2.3.2-cp312-cp312-macosx_14_0_arm64.whl
e703fab1c371fd27389401caa34a5cbd  numpy-2.3.2-cp312-cp312-macosx_14_0_x86_64.whl
5fdc228f15ec5de78b89c7aa4c137019  numpy-2.3.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
f3bc10b89911c09777c4c5d9752f35b0  numpy-2.3.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
5d0128aa0f6aa3a5122364a727a72eba  numpy-2.3.2-cp312-cp312-musllinux_1_2_aarch64.whl
ef392070c44709321d7f87ab15bbd674  numpy-2.3.2-cp312-cp312-musllinux_1_2_x86_64.whl
909e05dcd1164cc02d5fccc1cc6c9ca6  numpy-2.3.2-cp312-cp312-win32.whl
3ba0b657682fc54d9433b4d7244c9264  numpy-2.3.2-cp312-cp312-win_amd64.whl
05755e8c591b1ac2fff05a06d76ac414  numpy-2.3.2-cp312-cp312-win_arm64.whl
c1e323fa1986bc99ae96c46126a30f93  numpy-2.3.2-cp313-cp313-macosx_10_13_x86_64.whl
9a89327ef3550581017ea6e2a47c1a8e  numpy-2.3.2-cp313-cp313-macosx_11_0_arm64.whl
3c7236116911c5c19de0091d7ac81f65  numpy-2.3.2-cp313-cp313-macosx_14_0_arm64.whl
1809c7adafae6492741864cf4dda7d1e  numpy-2.3.2-cp313-cp313-macosx_14_0_x86_64.whl
ee68f94ec5f9c0c7f9423d7329bc085e  numpy-2.3.2-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
24c4e95f0a615356787e2920378e5c6f  numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
5c53a2c915d177b7c305c0386ba21b43  numpy-2.3.2-cp313-cp313-musllinux_1_2_aarch64.whl
c4607ea441320a0078d942ca21ef2411  numpy-2.3.2-cp313-cp313-musllinux_1_2_x86_64.whl
09f2fdeb35d952751ba269ca5fa77e7a  numpy-2.3.2-cp313-cp313-win32.whl
47a7326544ce192df844b3e9750c7704  numpy-2.3.2-cp313-cp313-win_amd64.whl
9b5adab8ee4eb97ccf90d73d63671db4  numpy-2.3.2-cp313-cp313-win_arm64.whl
7169baf4160b9a75790650cef23a73e1  numpy-2.3.2-cp313-cp313t-macosx_10_13_x86_64.whl
0338f2a78981d84d84e5f693ed6112d5  numpy-2.3.2-cp313-cp313t-macosx_11_0_arm64.whl
b0c1c28add9716f7cee433d53fb43067  numpy-2.3.2-cp313-cp313t-macosx_14_0_arm64.whl
d2d8d43c535184095550420169858b90  numpy-2.3.2-cp313-cp313t-macosx_14_0_x86_64.whl
745bb6930958f4d7980cd705621abc25  numpy-2.3.2-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
96412f8c9687d468e260aacdfb9cca02  numpy-2.3.2-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
11ce971fe997bf5c0784516db85891ff  numpy-2.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl
e71ba272e9db74bc753ca056e76fdf5b  numpy-2.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl
82feb6822f2cf04a9edf38cf7f7d4806  numpy-2.3.2-cp313-cp313t-win32.whl
c6c8a1a2e94a9fc2dad9d161a6666e54  numpy-2.3.2-cp313-cp313t-win_amd64.whl
29e65f132c4a916214a0e82bca214717  numpy-2.3.2-cp313-cp313t-win_arm64.whl
2b99d343001495b182027843bf2148b2  numpy-2.3.2-cp314-cp314-macosx_10_13_x86_64.whl
40d04ac18cd9db3c380224d3d5607770  numpy-2.3.2-cp314-cp314-macosx_11_0_arm64.whl
871631874c6839719d1c1b3ad81835cd  numpy-2.3.2-cp314-cp314-macosx_14_0_arm64.whl
4d4098888f19de85dd18646c2f955cd2  numpy-2.3.2-cp314-cp314-macosx_14_0_x86_64.whl
813e47e3c07cd28bf0458a1e513d6619  numpy-2.3.2-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
1fe080566baca813e6ac4635011a408a  numpy-2.3.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
bd44ab38b53a4b5b6130b6f01ffaf5fa  numpy-2.3.2-cp314-cp314-musllinux_1_2_aarch64.whl
f2fda217bec39ede344b42fef2cbd9e5  numpy-2.3.2-cp314-cp314-musllinux_1_2_x86_64.whl
c02218de0d0666769c91513eafaf251f  numpy-2.3.2-cp314-cp314-win32.whl
d419eb806a6f5debb366d4bcf0f5bde0  numpy-2.3.2-cp314-cp314-win_amd64.whl
851529ffdf2b0d4b66eb1ac99c24da3e  numpy-2.3.2-cp314-cp314-win_arm64.whl
2306e8b73fcd2d46116c6a95034e4d3a  numpy-2.3.2-cp314-cp314t-macosx_10_13_x86_64.whl
b4d4ce3339cb9f0b0f2b339db803f39c  numpy-2.3.2-cp314-cp314t-macosx_11_0_arm64.whl
6ae336ac461d5d89811c8a236b442842  numpy-2.3.2-cp314-cp314t-macosx_14_0_arm64.whl
351f35dd00bfb35e6cad2447a14c7cdf  numpy-2.3.2-cp314-cp314t-macosx_14_0_x86_64.whl
0e0b26b34024f24a5f59809a1778ace0  numpy-2.3.2-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
bc77a7f5826bb0a38154d31d8444abb7  numpy-2.3.2-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
cd1e335e2a8437339475db12ee30f26d  numpy-2.3.2-cp314-cp314t-musllinux_1_2_aarch64.whl
5c8093e713bd7e5f8512458d53fefeed  numpy-2.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl
66125a7e4e311fc2dedfa8c25ee577f2  numpy-2.3.2-cp314-cp314t-win32.whl
97713f41a5d4a08e8ed3d629d07678d3  numpy-2.3.2-cp314-cp314t-win_amd64.whl
848c4c409b643c2b42c431f51b310095  numpy-2.3.2-cp314-cp314t-win_arm64.whl
e240eed2fc098f7a0ae9813abead8a05  numpy-2.3.2-pp311-pypy311_pp73-macosx_10_15_x86_64.whl
7e46ebe46530596019ae6b5db8a7a564  numpy-2.3.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl
82077182e608a0d366eba700902463b5  numpy-2.3.2-pp311-pypy311_pp73-macosx_14_0_arm64.whl
67db17064907cd22a74676b50de1ab6d  numpy-2.3.2-pp311-pypy311_pp73-macosx_14_0_x86_64.whl
6d59903ecd732d53dd230ca59cdc2c34  numpy-2.3.2-pp311-pypy311_pp73-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
baae8d6875e1de409ffef875896c4b4f  numpy-2.3.2-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
5d92d6c39f2f0b28149ed15437b13cf7  numpy-2.3.2-pp311-pypy311_pp73-win_amd64.whl
f8d3d3b3ecd2b6e98889e88f6bbdc1a3  numpy-2.3.2.tar.gz

SHA256

852ae5bed3478b92f093e30f785c98e0cb62fa0a939ed057c31716e18a7a22b9  numpy-2.3.2-cp311-cp311-macosx_10_9_x86_64.whl
7a0e27186e781a69959d0230dd9909b5e26024f8da10683bd6344baea1885168  numpy-2.3.2-cp311-cp311-macosx_11_0_arm64.whl
f0a1a8476ad77a228e41619af2fa9505cf69df928e9aaa165746584ea17fed2b  numpy-2.3.2-cp311-cp311-macosx_14_0_arm64.whl
cbc95b3813920145032412f7e33d12080f11dc776262df1712e1638207dde9e8  numpy-2.3.2-cp311-cp311-macosx_14_0_x86_64.whl
f75018be4980a7324edc5930fe39aa391d5734531b1926968605416ff58c332d  numpy-2.3.2-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
20b8200721840f5621b7bd03f8dcd78de33ec522fc40dc2641aa09537df010c3  numpy-2.3.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
1f91e5c028504660d606340a084db4b216567ded1056ea2b4be4f9d10b67197f  numpy-2.3.2-cp311-cp3...
Read more

v2.3.1 (Jun 21, 2025)

21 Jun 13:02
v2.3.1
4d833e5

Choose a tag to compare

NumPy 2.3.1 Release Notes

The NumPy 2.3.1 release is a patch release with several bug fixes,
annotation improvements, and better support for OpenBSD. Highlights are:

  • Fix bug in matmul for non-contiguous out kwarg parameter
  • Fix for Accelerate runtime warnings on M4 hardware
  • Fix new in NumPy 2.3.0 np.vectorize casting errors
  • Improved support of cpu features for FreeBSD and OpenBSD

This release supports Python versions 3.11-3.13, Python 3.14 will be
supported when it is released.

Contributors

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

  • Brad Smith +
  • Charles Harris
  • Developer-Ecosystem-Engineering
  • François Rozet
  • Joren Hammudoglu
  • Matti Picus
  • Mugundan Selvanayagam
  • Nathan Goldbaum
  • Sebastian Berg

Pull requests merged

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

  • #29140: MAINT: Prepare 2.3.x for further development
  • #29191: BUG: fix matmul with transposed out arg (#29179)
  • #29192: TYP: Backport typing fixes and improvements.
  • #29205: BUG: Revert np.vectorize casting to legacy behavior (#29196)
  • #29222: TYP: Backport typing fixes
  • #29233: BUG: avoid negating unsigned integers in resize implementation...
  • #29234: TST: Fix test that uses uninitialized memory (#29232)
  • #29235: BUG: Address interaction between SME and FPSR (#29223)
  • #29237: BUG: Enforce integer limitation in concatenate (#29231)
  • #29238: CI: Add support for building NumPy with LLVM for Win-ARM64
  • #29241: ENH: Detect CPU features on OpenBSD ARM and PowerPC64
  • #29242: ENH: Detect CPU features on FreeBSD / OpenBSD RISC-V64.

Checksums

MD5

c353ac75ea083594a6cb674b5f943d83  numpy-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl
fdb5454e372d399cf570868ea7e2b192  numpy-2.3.1-cp311-cp311-macosx_11_0_arm64.whl
dc0f17823bb1826519d6974c2b95fa90  numpy-2.3.1-cp311-cp311-macosx_14_0_arm64.whl
7e3118fe383af697a8868ba191b9eac0  numpy-2.3.1-cp311-cp311-macosx_14_0_x86_64.whl
705aafad1250aa3e41502c5710a26ed5  numpy-2.3.1-cp311-cp311-manylinux_2_28_aarch64.whl
003d6268344577b804205098e11cdaa0  numpy-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl
7d0c0fd11c573c510a25dd7513e4ae0a  numpy-2.3.1-cp311-cp311-musllinux_1_2_aarch64.whl
d99f993ef05966ead99df736df18b521  numpy-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl
96933cac225fb8b60a9cc2c0efa14d36  numpy-2.3.1-cp311-cp311-win32.whl
f777712419f3dd586ac294ddce84b274  numpy-2.3.1-cp311-cp311-win_amd64.whl
1fe2615669de5c271a48b99356fa3528  numpy-2.3.1-cp311-cp311-win_arm64.whl
fccca48846d41d38966cc75395787f79  numpy-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl
fa389e78db43f3c2841ce127c1205422  numpy-2.3.1-cp312-cp312-macosx_11_0_arm64.whl
2554944d786abd284db4a699d4edfe1e  numpy-2.3.1-cp312-cp312-macosx_14_0_arm64.whl
7fec491834803a8ffa3765ef3d03cea5  numpy-2.3.1-cp312-cp312-macosx_14_0_x86_64.whl
7c2d8b4412f12b9b02e98349fb5cd760  numpy-2.3.1-cp312-cp312-manylinux_2_28_aarch64.whl
94dcc636a2f2478666d820e21fc91682  numpy-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl
404128939d89d1ea26be105fb03b5028  numpy-2.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
e89d8d460060e8315c3ba68b2b649db0  numpy-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
a767bd10267ad6baef9655fb08db3fd3  numpy-2.3.1-cp312-cp312-win32.whl
f753b957fcb7f06f043cf9c6114f294c  numpy-2.3.1-cp312-cp312-win_amd64.whl
58ffa7c69587f9bf8f6025794fec7f63  numpy-2.3.1-cp312-cp312-win_arm64.whl
22a2a9a568dd0866b288ad8bd8bb3e90  numpy-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl
5e1593fcc8bb3447e995622f2dca017b  numpy-2.3.1-cp313-cp313-macosx_11_0_arm64.whl
894d56072db9358e0096538710a1a8ce  numpy-2.3.1-cp313-cp313-macosx_14_0_arm64.whl
593cb311f5170cbcfcefb587cdcc70bb  numpy-2.3.1-cp313-cp313-macosx_14_0_x86_64.whl
22935447e75acda4075c57b332c0236a  numpy-2.3.1-cp313-cp313-manylinux_2_28_aarch64.whl
5aa2040f947204e15e95ec87461a7e91  numpy-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl
6516337f0347974fada21a23a818be64  numpy-2.3.1-cp313-cp313-musllinux_1_2_aarch64.whl
ec956eb37b874b1ec52d6ffccda6ef65  numpy-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
0aaed62cb1bae9c1b1a44d1a4eda2db7  numpy-2.3.1-cp313-cp313-win32.whl
57829996fc12f649547f0258443bbb20  numpy-2.3.1-cp313-cp313-win_amd64.whl
a0d0dd68bbf0ab378142b2daff0a8e06  numpy-2.3.1-cp313-cp313-win_arm64.whl
b22dc66970a8017e4d0ce83ef8c938af  numpy-2.3.1-cp313-cp313t-macosx_10_13_x86_64.whl
93c17afb38cf8fd876ca2bd9ea7e9612  numpy-2.3.1-cp313-cp313t-macosx_11_0_arm64.whl
283064dabb434f3dbc1a5e2514b9cb29  numpy-2.3.1-cp313-cp313t-macosx_14_0_arm64.whl
5b8c778033c98b4a0ce6e5bfc7625f05  numpy-2.3.1-cp313-cp313t-macosx_14_0_x86_64.whl
2340bd78962f194bcdbee6531d954acc  numpy-2.3.1-cp313-cp313t-manylinux_2_28_aarch64.whl
43a92ad37dc68d719bdeeeb65b3f4d2f  numpy-2.3.1-cp313-cp313t-manylinux_2_28_x86_64.whl
eb110c4aa0d73558187397ddfba179ad  numpy-2.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl
1f7f0076411ed4afa9c4553eb06564cb  numpy-2.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl
30f30dde6f806070b2164e48a632a350  numpy-2.3.1-cp313-cp313t-win32.whl
2375e2f2a5b75c5f5c908af6bb85d639  numpy-2.3.1-cp313-cp313t-win_amd64.whl
b421530a87bb8e9e3d4dc34c75d5d953  numpy-2.3.1-cp313-cp313t-win_arm64.whl
b1bc3cbf9cd407964b2bb25dfe86ca3d  numpy-2.3.1-pp311-pypy311_pp73-macosx_10_15_x86_64.whl
4c2e234eb4f346f362d6e6c620fa7a56  numpy-2.3.1-pp311-pypy311_pp73-macosx_14_0_arm64.whl
98ec3c19a365d0ae926113bb349e323b  numpy-2.3.1-pp311-pypy311_pp73-macosx_14_0_x86_64.whl
e0c7bcd526cde46489d5a8f12e06cc77  numpy-2.3.1-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl
41f535aa1f1acaf3d8a32a462a4cd4c8  numpy-2.3.1-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl
2abf906a6688c98693045cbbc655d5b7  numpy-2.3.1-pp311-pypy311_pp73-win_amd64.whl
886559a4c541298b37245e389ce8bf10  numpy-2.3.1.tar.gz

SHA256

6ea9e48336a402551f52cd8f593343699003d2353daa4b72ce8d34f66b722070  numpy-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl
5ccb7336eaf0e77c1635b232c141846493a588ec9ea777a7c24d7166bb8533ae  numpy-2.3.1-cp311-cp311-macosx_11_0_arm64.whl
0bb3a4a61e1d327e035275d2a993c96fa786e4913aa089843e6a2d9dd205c66a  numpy-2.3.1-cp311-cp311-macosx_14_0_arm64.whl
e344eb79dab01f1e838ebb67aab09965fb271d6da6b00adda26328ac27d4a66e  numpy-2.3.1-cp311-cp311-macosx_14_0_x86_64.whl
467db865b392168ceb1ef1ffa6f5a86e62468c43e0cfb4ab6da667ede10e58db  numpy-2.3.1-cp311-cp311-manylinux_2_28_aarch64.whl
afed2ce4a84f6b0fc6c1ce734ff368cbf5a5e24e8954a338f3bdffa0718adffb  numpy-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl
0025048b3c1557a20bc80d06fdeb8cc7fc193721484cca82b2cfa072fec71a93  numpy-2.3.1-cp311-cp311-musllinux_1_2_aarch64.whl
a5ee121b60aa509679b682819c602579e1df14a5b07fe95671c8849aad8f2115  numpy-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl
a8b740f5579ae4585831b3cf0e3b0425c667274f82a484866d2adf9570539369  numpy-2.3.1-cp311-cp311-win32.whl
d4580adadc53311b163444f877e0789f1c8861e2698f6b2a4ca852fda154f3ff  numpy-2.3.1-cp311-cp311-win_amd64.whl
ec0bdafa906f95adc9a0c6f26a4871fa753f25caaa0e032578a30457bff0af6a  numpy-2.3.1-cp311-cp311-win_arm64.whl
2959d8f268f3d8ee402b04a9ec4bb7604555aeacf78b360dc4ec27f1d508177d  numpy-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl
762e0c0c6b56bdedfef9a8e1d4538556438288c4276901ea008ae44091954e29  numpy-2.3.1-cp312-cp312-macosx_11_0_arm64.whl
867ef172a0976aaa1f1d1b63cf2090de8b636a7674607d514505fb7276ab08fc  numpy-2.3.1-cp312-cp312-macosx_14_0_arm64.whl
4e602e1b8682c2b833af89ba641ad4176053aaa50f5cacda1a27004352dde943  numpy-2.3.1-cp312-cp312-macosx_14_0_x86_64.whl
8e333040d069eba1652fb08962ec5b76af7f2c7bce1df7e1418c8055cf776f25  numpy-2.3.1-cp312-cp312-manylinux_2_28_aarch64.whl
e7cbf5a5eafd8d230a3ce356d892512185230e4781a361229bd902ff403bc660  numpy-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl
5f1b8f26d1086835f442286c1d9b64bb3974b0b1e41bb105358fd07d20872952  numpy-2.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
ee8340cb48c9b7a5899d1149eece41ca535513a9698098edbade2a8e7a84da77  numpy-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
e772dda20a6002ef7061713dc1e2585bc1b534e7909b2030b5a46dae8ff077ab  numpy-2.3.1-cp312-cp312-win32.whl
cfecc7822543abdea6de08758091da655ea2210b8ffa1faf116b940693d3df76  numpy-2.3.1-cp312-cp312-win_amd64.whl
7be91b2239af2658653c5bb6f1b8bccafaf08226a258caf78ce44710a0160d30  numpy-2.3.1-cp312-cp312-win_arm64.whl
25a1992b0a3fdcdaec9f552ef10d8103186f5397ab45e2d25f8ac51b1a6b97e8  numpy-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl
7dea630156d39b02a63c18f508f85010230409db5b2927ba59c8ba4ab3e8272e  numpy-2.3.1-cp313-cp313-macosx_11_0_arm64.whl
bada6058dd886061f10ea15f230ccf7dfff40572e99fef440a4a857c8728c9c0  numpy-2.3.1-cp313-cp313-macosx_14_0_arm64.whl
a894f3816eb17b29e4783e5873f92faf55b710c2519e5c351767c51f79d8526d  numpy-2.3.1-cp313-cp313-macosx_14_0_x86_64.whl
18703df6c4a4fee55fd3d6e5a253d01c5d33a295409b03fda0c86b3ca2ff41a1  numpy-2.3.1-cp313-cp313-manylinux_2_28_aarch64.whl
5902660491bd7a48b2ec16c23ccb9124b8abfd9583c5fdfa123fe6b421e03de1  numpy-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl
36890eb9e9d2081137bd78d29050ba63b8dab95dff7912eadf1185e80074b2a0 ...
Read more

v2.3.0 (June 7, 2025)

07 Jun 15:08
v2.3.0
0532af4

Choose a tag to compare

NumPy 2.3.0 Release Notes

The NumPy 2.3.0 release continues the work to improve free threaded
Python support and annotations together with the usual set of bug fixes.
It is unusual in the number of expired deprecations, code
modernizations, and style cleanups. The latter may not be visible to
users, but is important for code maintenance over the long term. Note
that we have also upgraded from manylinux2014 to manylinux_2_28.

Users running on a Mac having an M4 cpu might see various warnings about
invalid values and such. The warnings are a known problem with
Accelerate. They are annoying, but otherwise harmless. Apple promises to
fix them.

This release supports Python versions 3.11-3.13, Python 3.14 will be
supported when it is released.

Highlights

  • Interactive examples in the NumPy documentation.
  • Building NumPy with OpenMP Parallelization.
  • Preliminary support for Windows on ARM.
  • Improved support for free threaded Python.
  • Improved annotations.

New functions

New function numpy.strings.slice

The new function numpy.strings.slice was added, which implements fast
native slicing of string arrays. It supports the full slicing API
including negative slice offsets and steps.

(gh-27789)

Deprecations

  • The numpy.typing.mypy_plugin has been deprecated in favor of
    platform-agnostic static type inference. Please remove
    numpy.typing.mypy_plugin from the plugins section of your mypy
    configuration. If this change results in new errors being reported,
    kindly open an issue.

    (gh-28129)

  • The numpy.typing.NBitBase type has been deprecated and will be
    removed in a future version.

    This type was previously intended to be used as a generic upper
    bound for type-parameters, for example:

    import numpy as np
    import numpy.typing as npt
    
    def f[NT: npt.NBitBase](x: np.complexfloating[NT]) -> np.floating[NT]: ...

    But in NumPy 2.2.0, float64 and complex128 were changed to
    concrete subtypes, causing static type-checkers to reject
    x: np.float64 = f(np.complex128(42j)).

    So instead, the better approach is to use typing.overload:

    import numpy as np
    from typing import overload
    
    @overload
    def f(x: np.complex64) -> np.float32: ...
    @overload
    def f(x: np.complex128) -> np.float64: ...
    @overload
    def f(x: np.clongdouble) -> np.longdouble: ...

    (gh-28884)

Expired deprecations

  • Remove deprecated macros like NPY_OWNDATA from Cython interfaces
    in favor of NPY_ARRAY_OWNDATA (deprecated since 1.7)

    (gh-28254)

  • Remove numpy/npy_1_7_deprecated_api.h and C macros like
    NPY_OWNDATA in favor of NPY_ARRAY_OWNDATA (deprecated since 1.7)

    (gh-28254)

  • Remove alias generate_divbyzero_error to
    npy_set_floatstatus_divbyzero and generate_overflow_error to
    npy_set_floatstatus_overflow (deprecated since 1.10)

    (gh-28254)

  • Remove np.tostring (deprecated since 1.19)

    (gh-28254)

  • Raise on np.conjugate of non-numeric types (deprecated since 1.13)

    (gh-28254)

  • Raise when using np.bincount(...minlength=None), use 0 instead
    (deprecated since 1.14)

    (gh-28254)

  • Passing shape=None to functions with a non-optional shape argument
    errors, use () instead (deprecated since 1.20)

    (gh-28254)

  • Inexact matches for mode and searchside raise (deprecated since
    1.20)

    (gh-28254)

  • Setting __array_finalize__ = None errors (deprecated since 1.23)

    (gh-28254)

  • np.fromfile and np.fromstring error on bad data, previously they
    would guess (deprecated since 1.18)

    (gh-28254)

  • datetime64 and timedelta64 construction with a tuple no longer
    accepts an event value, either use a two-tuple of (unit, num) or a
    4-tuple of (unit, num, den, 1) (deprecated since 1.14)

    (gh-28254)

  • When constructing a dtype from a class with a dtype attribute,
    that attribute must be a dtype-instance rather than a thing that can
    be parsed as a dtype instance (deprecated in 1.19). At some point
    the whole construct of using a dtype attribute will be deprecated
    (see #25306)

    (gh-28254)

  • Passing booleans as partition index errors (deprecated since 1.23)

    (gh-28254)

  • Out-of-bounds indexes error even on empty arrays (deprecated since
    1.20)

    (gh-28254)

  • np.tostring has been removed, use tobytes instead (deprecated
    since 1.19)

    (gh-28254)

  • Disallow make a non-writeable array writeable for arrays with a base
    that do not own their data (deprecated since 1.17)

    (gh-28254)

  • concatenate() with axis=None uses same-kind casting by
    default, not unsafe (deprecated since 1.20)

    (gh-28254)

  • Unpickling a scalar with object dtype errors (deprecated since 1.20)

    (gh-28254)

  • The binary mode of fromstring now errors, use frombuffer instead
    (deprecated since 1.14)

    (gh-28254)

  • Converting np.inexact or np.floating to a dtype errors
    (deprecated since 1.19)

    (gh-28254)

  • Converting np.complex, np.integer, np.signedinteger,
    np.unsignedinteger, np.generic to a dtype errors (deprecated
    since 1.19)

    (gh-28254)

  • The Python built-in round errors for complex scalars. Use
    np.round or scalar.round instead (deprecated since 1.19)

    (gh-28254)

  • 'np.bool' scalars can no longer be interpreted as an index
    (deprecated since 1.19)

    (gh-28254)

  • Parsing an integer via a float string is no longer supported.
    (deprecated since 1.23) To avoid this error you can

    • make sure the original data is stored as integers.
    • use the converters=float keyword argument.
    • Use np.loadtxt(...).astype(np.int64)

    (gh-28254)

  • The use of a length 1 tuple for the ufunc signature errors. Use
    dtype or fill the tuple with None (deprecated since 1.19)

    (gh-28254)

  • Special handling of matrix is in np.outer is removed. Convert to a
    ndarray via matrix.A (deprecated since 1.20)

    (gh-28254)

  • Removed the np.compat package source code (removed in 2.0)

    (gh-28961)

C API changes

  • NpyIter_GetTransferFlags is now available to check if the iterator
    needs the Python API or if casts may cause floating point errors
    (FPE). FPEs can for example be set when casting float64(1e300) to
    float32 (overflow to infinity) or a NaN to an integer (invalid
    value).

    (gh-27883)

  • NpyIter now has no limit on the number of operands it supports.

    (gh-28080)

New NpyIter_GetTransferFlags and NpyIter_IterationNeedsAPI change

NumPy now has the new NpyIter_GetTransferFlags function as a more
precise way checking of iterator/buffering needs. I.e. whether the
Python API/GIL is required or floating point errors may occur. This
function is also faster if you already know your needs without
buffering.

The NpyIter_IterationNeedsAPI function now performs all the checks
that were previously performed at setup time. While it was never
necessary to call it multiple times, doing so will now have a larger
cost.

(gh-27998)

New Features

  • The type parameter of np.dtype now defaults to typing.Any. This
    way, static type-checkers will infer dtype: np.dtype as
    dtype: np.dtype[Any], without reporting an error.

    (gh-28669)

  • Static type-checkers now interpret:

    • _: np.ndarray as _: npt.NDArray[typing.Any].
    • _: np.flatiter as _: np.flatiter[np.ndarray].

    This is because their type parameters now have default values.

    (gh-28940)

NumPy now registers its pkg-config paths with the pkgconf PyPI package

The pkgconf PyPI
package provides an interface for projects like NumPy to register their
own paths to be added to the pkg-config search path. This means that
when using pkgconf
from PyPI, NumPy will be discoverable without needin...

Read more

v2.3.0rc1 (May 25, 2025)

25 May 15:39
v2.3.0rc1
3abd587

Choose a tag to compare

Pre-release

NumPy 2.3.0 Release Notes

The NumPy 2.3.0 release continues the work to improve free threaded
Python support and annotations together with the usual set of bug fixes.
It is unusual in the number of expired deprecations and the number of
code modernizations and style cleanups. The latter may not be visible to
users, but is important for code maintenance over the long term. Note
that we have also upgraded from manylinux2014 to manylinux_2_28.

There are known test failures in the rc1 release involving MyPy and
PyPy. The cause of both has been determined and fixes will be applied
before the final release. The current Windows on ARM wheels also lack
OpenBLAS, but they should suffice for initial downstream testing.
OpenBLAS will be incorporated in those wheels when it becomes available.

This release supports Python versions 3.11-3.13, Python 3.14 will be
supported when it is released.

Highlights

  • Interactive examples in the NumPy documentation.
  • Building NumPy with OpenMP Parallelization.
  • Preliminary support for Windows on ARM.
  • Improved support for free threaded Python.
  • Improved annotations.

New functions

New function numpy.strings.slice

The new function numpy.strings.slice was added, which implements fast
native slicing of string arrays. It supports the full slicing API
including negative slice offsets and steps.

(gh-27789)

Deprecations

  • The numpy.typing.mypy_plugin has been deprecated in favor of
    platform-agnostic static type inference. Please remove
    numpy.typing.mypy_plugin from the plugins section of your mypy
    configuration. If this change results in new errors being reported,
    kindly open an issue.

    (gh-28129)

  • The numpy.typing.NBitBase type has been deprecated and will be
    removed in a future version.

    This type was previously intended to be used as a generic upper
    bound for type-parameters, for example:

    import numpy as np
    import numpy.typing as npt
    
    def f[NT: npt.NBitBase](x: np.complexfloating[NT]) -> np.floating[NT]: ...

    But in NumPy 2.2.0, float64 and complex128 were changed to
    concrete subtypes, causing static type-checkers to reject
    x: np.float64 = f(np.complex128(42j)).

    So instead, the better approach is to use typing.overload:

    import numpy as np
    from typing import overload
    
    @overload
    def f(x: np.complex64) -> np.float32: ...
    @overload
    def f(x: np.complex128) -> np.float64: ...
    @overload
    def f(x: np.clongdouble) -> np.longdouble: ...

    (gh-28884)

Expired deprecations

  • Remove deprecated macros like NPY_OWNDATA from Cython interfaces
    in favor of NPY_ARRAY_OWNDATA (deprecated since 1.7)

    (gh-28254)

  • Remove numpy/npy_1_7_deprecated_api.h and C macros like
    NPY_OWNDATA in favor of NPY_ARRAY_OWNDATA (deprecated since 1.7)

    (gh-28254)

  • Remove alias generate_divbyzero_error to
    npy_set_floatstatus_divbyzero and generate_overflow_error to
    npy_set_floatstatus_overflow (deprecated since 1.10)

    (gh-28254)

  • Remove np.tostring (deprecated since 1.19)

    (gh-28254)

  • Raise on np.conjugate of non-numeric types (deprecated since 1.13)

    (gh-28254)

  • Raise when using np.bincount(...minlength=None), use 0 instead
    (deprecated since 1.14)

    (gh-28254)

  • Passing shape=None to functions with a non-optional shape argument
    errors, use () instead (deprecated since 1.20)

    (gh-28254)

  • Inexact matches for mode and searchside raise (deprecated since
    1.20)

    (gh-28254)

  • Setting __array_finalize__ = None errors (deprecated since 1.23)

    (gh-28254)

  • np.fromfile and np.fromstring error on bad data, previously they
    would guess (deprecated since 1.18)

    (gh-28254)

  • datetime64 and timedelta64 construction with a tuple no longer
    accepts an event value, either use a two-tuple of (unit, num) or a
    4-tuple of (unit, num, den, 1) (deprecated since 1.14)

    (gh-28254)

  • When constructing a dtype from a class with a dtype attribute,
    that attribute must be a dtype-instance rather than a thing that can
    be parsed as a dtype instance (deprecated in 1.19). At some point
    the whole construct of using a dtype attribute will be deprecated
    (see #25306)

    (gh-28254)

  • Passing booleans as partition index errors (deprecated since 1.23)

    (gh-28254)

  • Out-of-bounds indexes error even on empty arrays (deprecated since
    1.20)

    (gh-28254)

  • np.tostring has been removed, use tobytes instead (deprecated
    since 1.19)

    (gh-28254)

  • Disallow make a non-writeable array writeable for arrays with a base
    that do not own their data (deprecated since 1.17)

    (gh-28254)

  • concatenate() with axis=None uses same-kind casting by
    default, not unsafe (deprecated since 1.20)

    (gh-28254)

  • Unpickling a scalar with object dtype errors (deprecated since 1.20)

    (gh-28254)

  • The binary mode of fromstring now errors, use frombuffer instead
    (deprecated since 1.14)

    (gh-28254)

  • Converting np.inexact or np.floating to a dtype errors
    (deprecated since 1.19)

    (gh-28254)

  • Converting np.complex, np.integer, np.signedinteger,
    np.unsignedinteger, np.generic to a dtype errors (deprecated
    since 1.19)

    (gh-28254)

  • The Python built-in round errors for complex scalars. Use
    np.round or scalar.round instead (deprecated since 1.19)

    (gh-28254)

  • 'np.bool' scalars can no longer be interpreted as an index
    (deprecated since 1.19)

    (gh-28254)

  • Parsing an integer via a float string is no longer supported.
    (deprecated since 1.23) To avoid this error you can

    • make sure the original data is stored as integers.
    • use the converters=float keyword argument.
    • Use np.loadtxt(...).astype(np.int64)

    (gh-28254)

  • The use of a length 1 tuple for the ufunc signature errors. Use
    dtype or fill the tuple with None (deprecated since 1.19)

    (gh-28254)

  • Special handling of matrix is in np.outer is removed. Convert to a
    ndarray via matrix.A (deprecated since 1.20)

    (gh-28254)

  • Removed the np.compat package source code (removed in 2.0)

    (gh-28961)

C API changes

  • NpyIter_GetTransferFlags is now available to check if the iterator
    needs the Python API or if casts may cause floating point errors
    (FPE). FPEs can for example be set when casting float64(1e300) to
    float32 (overflow to infinity) or a NaN to an integer (invalid
    value).

    (gh-27883)

  • NpyIter now has no limit on the number of operands it supports.

    (gh-28080)

New NpyIter_GetTransferFlags and NpyIter_IterationNeedsAPI change

NumPy now has the new NpyIter_GetTransferFlags function as a more
precise way checking of iterator/buffering needs. I.e. whether the
Python API/GIL is required or floating point errors may occur. This
function is also faster if you already know your needs without
buffering.

The NpyIter_IterationNeedsAPI function now performs all the checks
that were previously performed at setup time. While it was never
necessary to call it multiple times, doing so will now have a larger
cost.

(gh-27998)

New Features

  • The type parameter of np.dtype now defaults to typing.Any. This
    way, static type-checkers will infer dtype: np.dtype as
    dtype: np.dtype[Any], without reporting an error.

    (gh-28669)

  • Static type-checkers now interpret:

    • _: np.ndarray as _: npt.NDArray[typing.Any].
    • _: np.flatiter as _: np.flatiter[np.ndarray].

    This is because their type parameters now have default values.

    (gh-28940)

NumPy now registers its pkg-config paths with the pkgconf PyPI package

The pkgconf PyPI
package provides an interface for projects like NumPy to register their
own paths to be added to the pkg-config search path...

Read more

v2.2.6 (May 17, 2025)

17 May 22:45
v2.2.6
2b686f6

Choose a tag to compare

NumPy 2.2.6 Release Notes

NumPy 2.2.6 is a patch release that fixes bugs found after the 2.2.5
release. It is a mix of typing fixes/improvements as well as the normal
bug fixes and some CI maintenance.

This release supports Python versions 3.10-3.13.

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
  • Ilhan Polat
  • Joren Hammudoglu
  • Marco Gorelli +
  • Matti Picus
  • Nathan Goldbaum
  • Peter Hawkins
  • Sayed Adel

Pull requests merged

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

  • #28778: MAINT: Prepare 2.2.x for further development
  • #28851: BLD: Update vendor-meson to fix module_feature conflicts arguments...
  • #28852: BUG: fix heap buffer overflow in np.strings.find
  • #28853: TYP: fix NDArray[floating] + float return type
  • #28864: BUG: fix stringdtype singleton thread safety
  • #28865: MAINT: use OpenBLAS 0.3.29
  • #28889: MAINT: from_dlpack thread safety fixes
  • #28913: TYP: Fix non-existent CanIndex annotation in ndarray.setfield
  • #28915: MAINT: Avoid dereferencing/strict aliasing warnings
  • #28916: BUG: Fix missing check for PyErr_Occurred() in _pyarray_correlate.
  • #28966: TYP: reject complex scalar types in ndarray.__ifloordiv__

Checksums

MD5

259343f056061f6eadb2f4b8999d06d4  numpy-2.2.6-cp310-cp310-macosx_10_9_x86_64.whl
16fa85488e149489ce7ee044d7b0d307  numpy-2.2.6-cp310-cp310-macosx_11_0_arm64.whl
f01b7aea9d2b76b1eeb49766e615d689  numpy-2.2.6-cp310-cp310-macosx_14_0_arm64.whl
f2ddc2b22517f6e31caa1372b12c2499  numpy-2.2.6-cp310-cp310-macosx_14_0_x86_64.whl
52190e22869884f0870eb3df7a283ca9  numpy-2.2.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
8f382b9ca6770db600edd5ea2447a925  numpy-2.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e604aae2ef6e01fb92ecc39aca0424d9  numpy-2.2.6-cp310-cp310-musllinux_1_2_aarch64.whl
3e5626cf6d8bec95d430a7362e71691c  numpy-2.2.6-cp310-cp310-musllinux_1_2_x86_64.whl
8f4f1982837618ed7636ebd432234aeb  numpy-2.2.6-cp310-cp310-win32.whl
1cfd2ac5609b4800512f0ce304e19acc  numpy-2.2.6-cp310-cp310-win_amd64.whl
116203803ceeaa911dd64810b0305b4c  numpy-2.2.6-cp311-cp311-macosx_10_9_x86_64.whl
0427961f3a70ed92b1c4d2c5516c5803  numpy-2.2.6-cp311-cp311-macosx_11_0_arm64.whl
feb8104ed864d51c68984ff93f7255b5  numpy-2.2.6-cp311-cp311-macosx_14_0_arm64.whl
f640cd91637f1d474947ecdb18d17ee8  numpy-2.2.6-cp311-cp311-macosx_14_0_x86_64.whl
2f87d921a50fe50d04bb62125f8638dd  numpy-2.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
7f986c33f49d5940d6d005ff7039e420  numpy-2.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
0f7073c78e0aede7179c537f64856db7  numpy-2.2.6-cp311-cp311-musllinux_1_2_aarch64.whl
7402bbedcc0b59bd6cef1c483b77dac0  numpy-2.2.6-cp311-cp311-musllinux_1_2_x86_64.whl
93c920d40abbc10d5d056b8bfbcdad74  numpy-2.2.6-cp311-cp311-win32.whl
9162cb90bff0e4ba322f1e61da9f2fba  numpy-2.2.6-cp311-cp311-win_amd64.whl
75e9fa94b0a6ef568b532f6e0773a6a7  numpy-2.2.6-cp312-cp312-macosx_10_13_x86_64.whl
79d8f89e82971bb2a2f61d0ef8f1a677  numpy-2.2.6-cp312-cp312-macosx_11_0_arm64.whl
fb553e49196bce93af4b0d7e1e8fad1e  numpy-2.2.6-cp312-cp312-macosx_14_0_arm64.whl
01a338bc3a5349b5b7db4335fe879810  numpy-2.2.6-cp312-cp312-macosx_14_0_x86_64.whl
f37533a7ae4aa95da824b1df2786ac55  numpy-2.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
2f9ac35f955d9217b6841568ce13d636  numpy-2.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
df530a075c04dbef9abcac95d027c8bc  numpy-2.2.6-cp312-cp312-musllinux_1_2_aarch64.whl
4edf8f80feec739de3e08fffe97195a3  numpy-2.2.6-cp312-cp312-musllinux_1_2_x86_64.whl
3e2664254d9a7bb5c66df2b108aaec2f  numpy-2.2.6-cp312-cp312-win32.whl
ae2e39f1dba9b91d35edcd8736041df8  numpy-2.2.6-cp312-cp312-win_amd64.whl
2faa32e27b81105db53fb2fc25a54e0d  numpy-2.2.6-cp313-cp313-macosx_10_13_x86_64.whl
0d05b1bb5af5059c8775a4f10fa0ec3d  numpy-2.2.6-cp313-cp313-macosx_11_0_arm64.whl
bb404027de8df58312964e26528ef591  numpy-2.2.6-cp313-cp313-macosx_14_0_arm64.whl
1340a90e0f62a31691e475214f773196  numpy-2.2.6-cp313-cp313-macosx_14_0_x86_64.whl
954981f2846e6735798fb33c1e6fba76  numpy-2.2.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4e4eccd129b31fbef3ced7fb338e862e  numpy-2.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
c704c1c56c777bc0fc0d54bbcf9f2ddb  numpy-2.2.6-cp313-cp313-musllinux_1_2_aarch64.whl
fb459919a3433235312673bd5797ab8b  numpy-2.2.6-cp313-cp313-musllinux_1_2_x86_64.whl
9998e8ae155872c375ce6c020654176b  numpy-2.2.6-cp313-cp313-win32.whl
03df8a78963b318b4dfede10b213dce4  numpy-2.2.6-cp313-cp313-win_amd64.whl
d1982e582eae2fb076942c0bbedcefe4  numpy-2.2.6-cp313-cp313t-macosx_10_13_x86_64.whl
cbc7a48b9ca730a8d40927666651430a  numpy-2.2.6-cp313-cp313t-macosx_11_0_arm64.whl
cd1d2271c05ccc502b78827b88ff7670  numpy-2.2.6-cp313-cp313t-macosx_14_0_arm64.whl
c2b4fb7464e42af240ad51c8be5fb1ba  numpy-2.2.6-cp313-cp313t-macosx_14_0_x86_64.whl
6a96c540b8df291a128bb50dfdad0ba4  numpy-2.2.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
113d466026e770badd1061a6e1a8ca92  numpy-2.2.6-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1fce5d26d8d6d021954f717b4bad483c  numpy-2.2.6-cp313-cp313t-musllinux_1_2_aarch64.whl
d980d6c4b486ad09dbf62ac5cf1b0b2a  numpy-2.2.6-cp313-cp313t-musllinux_1_2_x86_64.whl
21571229d4376f3c0458d8eb1be3ba52  numpy-2.2.6-cp313-cp313t-win32.whl
4accc0387feec817565aeaba93c79173  numpy-2.2.6-cp313-cp313t-win_amd64.whl
774589ee5f842137322ff19b56a35270  numpy-2.2.6-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
f934cef42ac65a2094dd5280aa6bf9a2  numpy-2.2.6-pp310-pypy310_pp73-macosx_14_0_x86_64.whl
0e53fbb4195726c62b8f237a4bf545e9  numpy-2.2.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
3c96c89609022ecd27d44b12c2349a06  numpy-2.2.6-pp310-pypy310_pp73-win_amd64.whl
63d66dc1db9d603df0a84c870e703cfc  numpy-2.2.6.tar.gz

SHA256

b412caa66f72040e6d268491a59f2c43bf03eb6c96dd8f0307829feb7fa2b6fb  numpy-2.2.6-cp310-cp310-macosx_10_9_x86_64.whl
8e41fd67c52b86603a91c1a505ebaef50b3314de0213461c7a6e99c9a3beff90  numpy-2.2.6-cp310-cp310-macosx_11_0_arm64.whl
37e990a01ae6ec7fe7fa1c26c55ecb672dd98b19c3d0e1d1f326fa13cb38d163  numpy-2.2.6-cp310-cp310-macosx_14_0_arm64.whl
5a6429d4be8ca66d889b7cf70f536a397dc45ba6faeb5f8c5427935d9592e9cf  numpy-2.2.6-cp310-cp310-macosx_14_0_x86_64.whl
efd28d4e9cd7d7a8d39074a4d44c63eda73401580c5c76acda2ce969e0a38e83  numpy-2.2.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
fc7b73d02efb0e18c000e9ad8b83480dfcd5dfd11065997ed4c6747470ae8915  numpy-2.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
74d4531beb257d2c3f4b261bfb0fc09e0f9ebb8842d82a7b4209415896adc680  numpy-2.2.6-cp310-cp310-musllinux_1_2_aarch64.whl
8fc377d995680230e83241d8a96def29f204b5782f371c532579b4f20607a289  numpy-2.2.6-cp310-cp310-musllinux_1_2_x86_64.whl
b093dd74e50a8cba3e873868d9e93a85b78e0daf2e98c6797566ad8044e8363d  numpy-2.2.6-cp310-cp310-win32.whl
f0fd6321b839904e15c46e0d257fdd101dd7f530fe03fd6359c1ea63738703f3  numpy-2.2.6-cp310-cp310-win_amd64.whl
f9f1adb22318e121c5c69a09142811a201ef17ab257a1e66ca3025065b7f53ae  numpy-2.2.6-cp311-cp311-macosx_10_9_x86_64.whl
c820a93b0255bc360f53eca31a0e676fd1101f673dda8da93454a12e23fc5f7a  numpy-2.2.6-cp311-cp311-macosx_11_0_arm64.whl
3d70692235e759f260c3d837193090014aebdf026dfd167834bcba43e30c2a42  numpy-2.2.6-cp311-cp311-macosx_14_0_arm64.whl
481b49095335f8eed42e39e8041327c05b0f6f4780488f61286ed3c01368d491  numpy-2.2.6-cp311-cp311-macosx_14_0_x86_64.whl
b64d8d4d17135e00c8e346e0a738deb17e754230d7e0810ac5012750bbd85a5a  numpy-2.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
ba10f8411898fc418a521833e014a77d3ca01c15b0c6cdcce6a0d2897e6dbbdf  numpy-2.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
bd48227a919f1bafbdda0583705e547892342c26fb127219d60a5c36882609d1  numpy-2.2.6-cp311-cp311-musllinux_1_2_aarch64.whl
9551a499bf125c1d4f9e250377c1ee2eddd02e01eac6644c080162c0c51778ab  numpy-2.2.6-cp311-cp311-musllinux_1_2_x86_64.whl
0678000bb9ac1475cd454c6b8c799206af8107e310843532b04d49649c717a47  numpy-2.2.6-cp311-cp311-win32.whl
e8213002e427c69c45a52bbd94163084025f533a55a59d6f9c5b820774ef3303  numpy-2.2.6-cp311-cp311-win_amd64.whl
41c5a21f4a04fa86436124d388f6ed60a9343a6f767fced1a8a71c3fbca038ff  numpy-2.2.6-cp312-cp312-macosx_10_13_x86_64.whl
de749064336d37e340f640b05f24e9e3dd678c57318c7289d222a8a2f543e90c  numpy-2.2.6-cp312-cp312-macosx_11_0_arm64.whl
894b3a42502226a1cac872f840030665f33326fc3dac8e57c607905773cdcde3  numpy-2.2.6-cp312-cp312-macosx_14_0_arm64.whl
71594f7c51a18e728451bb50cc60a3ce4e6538822731b2933209a1f3614e9282  numpy-2.2.6-cp312-cp312-macosx_14_0_x86_64.whl
f2618db89be1b4e05f7a1a847a9c1c0abd63e63a1607d892dd54668dd92faf87  numpy-2.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
fd83c01228a688733f1ded5201c678f0c53ecc1006ffbc404db9f7a899ac6249  numpy-2.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64...
Read more