Tuesday, June 23, 2026

numpy 2.5.0

https://github.com/numpy/numpy/releases/tag/v2.5.0 excerpt from the top: "Numpy 2.5.0 is a transitional release. It drops support for Python 3.11, marking the end of distutils, and expires a large number of deprecations made in the 2.0.x release. It also improves free threading and brings sorting into compliance with the array-api standard with the addition of descending sorts. There is also a fair amount of preparation for Python 3.15, which will be supported starting with the first rc." Given the deprecations, if we're wanting to move to 2.5+ in this release cycle, we want this sooner rather than later so that we have more chance to fix problems. Test results so far: amd64: old: = 40 failed, 47208 passed, 1790 skipped, 2817 deselected, 32 xfailed, 2 xpassed, 14 warnings in 1386.01s (0:23:06) = new: = 40 failed, 47051 passed, 1749 skipped, 3634 deselected, 32 xfailed, 2 xpassed, 14 warnings in 259.71s (0:04:19) = aarch64: old: = 99 failed, 46433 passed, 394 skipped, 2817 deselected, 32 xfailed, 2 xpassed, 76 warnings in 638.22s (0:10:38) = new: = 99 failed, 46276 passed, 353 skipped, 3634 deselected, 32 xfailed, 2 xpassed, 76 warnings in 258.86s (0:04:18) = amd64 tests were run on a busy machine so I wouldn't pay too much attention to timings there, however aarch64 was otherwise idle and that's quite a serious improvement... I'll also do tests + bulk build on i386 at a good point in the dpb cycle on the build machines (it will miss some things that have too-chunky dependencies, though I don't think there are too many amongst numpy-using ports). Anyone interested in running other tests? Index: Makefile =================================================================== RCS file: /cvs/ports/math/py-numpy/Makefile,v diff -u -p -r1.103 Makefile --- Makefile 19 May 2026 09:42:33 -0000 1.103 +++ Makefile 23 Jun 2026 10:54:48 -0000 @@ -1,6 +1,6 @@ COMMENT= fast array and numeric programming library for Python -MODPY_DISTV= 2.4.6 +MODPY_DISTV= 2.5.0 DISTNAME= numpy-${MODPY_DISTV} PKGNAME= py-${DISTNAME} Index: distinfo =================================================================== RCS file: /cvs/ports/math/py-numpy/distinfo,v diff -u -p -r1.28 distinfo --- distinfo 19 May 2026 09:42:33 -0000 1.28 +++ distinfo 23 Jun 2026 10:54:48 -0000 @@ -1,2 +1,2 @@ -SHA256 (numpy-2.4.6.tar.gz) = 86NXDEoqFnRqwsMafHx7DBhrlc6QLjPbbygJTtc4fdo= -SIZE (numpy-2.4.6.tar.gz) = 20735807 +SHA256 (numpy-2.5.0.tar.gz) = WhKVeAGTEbbla91xQlDxm1GPfc7uuNGvVJD0lC0/iRw= +SIZE (numpy-2.5.0.tar.gz) = 20652461 Index: patches/patch-numpy__core_meson_build =================================================================== RCS file: /cvs/ports/math/py-numpy/patches/patch-numpy__core_meson_build,v diff -u -p -r1.4 patch-numpy__core_meson_build --- patches/patch-numpy__core_meson_build 12 Jan 2026 05:39:02 -0000 1.4 +++ patches/patch-numpy__core_meson_build 23 Jun 2026 10:54:48 -0000 @@ -5,7 +5,7 @@ with unresolved symbols. Index: numpy/_core/meson.build --- numpy/_core/meson.build.orig +++ numpy/_core/meson.build -@@ -313,7 +313,6 @@ endforeach +@@ -376,7 +376,6 @@ endforeach # Other optional functions optional_misc_funcs = [ Index: patches/patch-numpy_distutils_command_build_src_py =================================================================== RCS file: patches/patch-numpy_distutils_command_build_src_py diff -N patches/patch-numpy_distutils_command_build_src_py --- patches/patch-numpy_distutils_command_build_src_py 11 Mar 2022 19:36:29 -0000 1.6 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,14 +0,0 @@ -fix build of other packages (e.g. py-scipy) in some cases (e.g. when -WRKOBJDIR has a trailing slash) - -Index: numpy/distutils/command/build_src.py ---- numpy/distutils/command/build_src.py.orig -+++ numpy/distutils/command/build_src.py -@@ -366,6 +366,7 @@ class build_src(build_ext.build_ext): - # incl_dirs.append(self.build_src) - build_dir = os.path.join(*([self.build_src] - +name.split('.')[:-1])) -+ build_dir = os.path.normpath(build_dir) - self.mkpath(build_dir) - - if self.verbose_cfg: Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/math/py-numpy/pkg/PLIST,v diff -u -p -r1.28 PLIST --- pkg/PLIST 19 May 2026 09:42:33 -0000 1.28 +++ pkg/PLIST 23 Jun 2026 10:54:48 -0000 @@ -231,9 +231,6 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/_core/include/numpy/utils.h lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/ @static-lib lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/libnpymath.a -lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/npy-pkg-config/ -lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/npy-pkg-config/mlib.ini -lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/npy-pkg-config/npymath.ini lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/pkgconfig/ lib/python${MODPY_VERSION}/site-packages/numpy/_core/lib/pkgconfig/numpy.pc lib/python${MODPY_VERSION}/site-packages/numpy/_core/memmap.py @@ -434,6 +431,7 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/examples/limited_api/limited_api1.c lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/examples/limited_api/limited_api2.pyx lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/examples/limited_api/limited_api_latest.c +lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/examples/limited_api/limited_api_opaque.c lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/examples/limited_api/meson.build lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/examples/limited_api/setup.py lib/python${MODPY_VERSION}/site-packages/numpy/_core/tests/test__exceptions.py @@ -579,14 +577,14 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}/ lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_convertions.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} -lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_convertions.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_conversions.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} +lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_conversions.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_inspect.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_inspect.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_pep440.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/_utils/${MODPY_PYCACHE}_pep440.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_convertions.py -lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_convertions.pyi +lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_conversions.py +lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_conversions.pyi lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_inspect.py lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_inspect.pyi lib/python${MODPY_VERSION}/site-packages/numpy/_utils/_pep440.py @@ -645,22 +643,35 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/core/_dtype_ctypes.py lib/python${MODPY_VERSION}/site-packages/numpy/core/_dtype_ctypes.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/_internal.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/_internal.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/_multiarray_umath.py lib/python${MODPY_VERSION}/site-packages/numpy/core/_utils.py lib/python${MODPY_VERSION}/site-packages/numpy/core/arrayprint.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/arrayprint.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/defchararray.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/defchararray.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/einsumfunc.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/einsumfunc.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/fromnumeric.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/fromnumeric.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/function_base.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/function_base.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/getlimits.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/getlimits.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/multiarray.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/multiarray.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/numeric.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/numeric.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/numerictypes.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/numerictypes.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/overrides.py lib/python${MODPY_VERSION}/site-packages/numpy/core/overrides.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/records.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/records.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/shape_base.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/shape_base.pyi lib/python${MODPY_VERSION}/site-packages/numpy/core/umath.py +lib/python${MODPY_VERSION}/site-packages/numpy/core/umath.pyi lib/python${MODPY_VERSION}/site-packages/numpy/ctypeslib/ lib/python${MODPY_VERSION}/site-packages/numpy/ctypeslib/__init__.py lib/python${MODPY_VERSION}/site-packages/numpy/ctypeslib/__init__.pyi @@ -731,14 +742,10 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}_backend.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}_backend.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}_distutils.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} -lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}_distutils.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}_meson.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/${MODPY_PYCACHE}_meson.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/_backend.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/_backend.pyi -lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/_distutils.py -lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/_distutils.pyi lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/_meson.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/_meson.pyi lib/python${MODPY_VERSION}/site-packages/numpy/f2py/_backends/meson.build.template @@ -805,6 +812,8 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_f2cmap.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_f2py2e.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_f2py2e.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_inplace.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_inplace.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_isoc.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_isoc.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/${MODPY_PYCACHE}test_kind.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} @@ -898,6 +907,8 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/f2cmap/ lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/f2cmap/.f2py_f2cmap lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/f2cmap/isoFortranEnvMap.f90 +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/inplace/ +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/inplace/foo.f lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/isocintrin/ lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/isocintrin/isoCtests.f90 lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/kind/ @@ -929,6 +940,8 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/ lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/AB.inc lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/assignOnlyModule.f90 +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/complex_struct_compat.f90 +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/complex_struct_compat.pyf lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/datonly.f90 lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/f77comments.f lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/src/regression/f77fixedform.f95 @@ -984,6 +997,7 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_docs.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_f2cmap.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_f2py2e.py +lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_inplace.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_isoc.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_kind.py lib/python${MODPY_VERSION}/site-packages/numpy/f2py/tests/test_mixed.py

No comments:

Post a Comment