Skip to content

v1.26.0b1

Pre-release
Pre-release
Compare
Choose a tag to compare
@charris charris released this 14 Aug 00:45
· 3374 commits to main since this release
v1.26.0b1
7bc1803

NumPy 1.26.0 Release Notes

The NumPy 1.26.0 release is a continuation of the 1.25.x release cycle
with the addition of Python 3.12.0 support. Python 3.12 dropped
distutils, consequently supporting it required finding a replacement for
the setup.py/distutils based build system NumPy was using. We have
chosen to use the Meson build system instead, and this is the first
NumPy release supporting it. This is also the first release that
supports Cython 3.0 in addition to retaining 0.29.X compatibility.
Supporting those two upgrades was a large project, over 100 files have
been touched in this release. The changelog doesn't capture the full
extent of the work, special thanks to Ralf Gommers, Sayed Adel, Stéfan
van der Walt, and Matti Picus who did much of the work in the main
development branch.

The highlights of this release are:

  • Python 3.12.0 support.
  • Cython 3.0.0 compatibility.
  • Use of the Meson build system
  • Updated SIMD support

The Python versions supported in this release are 3.9-3.12.

Build system changes

In this release, NumPy has switched to Meson as the build system and
meson-python as the build backend. Installing NumPy or building a wheel
can be done with standard tools like pip and pypa/build. The
following are supported:

  • Regular installs: pip install numpy or (in a cloned repo)
    pip install .
  • Building a wheel: python -m build (preferred), or pip wheel .
  • Editable installs: pip install -e . --no-build-isolation
  • Development builds through the custom CLI implemented with
    spin: spin build.

All the regular pip and pypa/build flags (e.g.,
--no-build-isolation) should work as expected.

NumPy-specific build customization

Many of the NumPy-specific ways of customizing builds have changed. The
NPY_* environment variables which control BLAS/LAPACK, SIMD,
threading, and other such options are no longer supported, nor is a
site.cfg file to select BLAS and LAPACK. Instead, there are
command-line flags that can be passed to the build via pip/build's
config-settings interface. These flags are all listed in the
meson_options.txt file in the root of the repo. Detailed documented
will be available before the final 1.26.0 release; for now please see
the SciPy "building from source"docs since most
build customization works in an almost identical way in SciPy as it does
in NumPy.

Build dependencies

While the runtime dependencies of NumPy have not changed, the build
dependencies have. Because we temporarily vendor Meson and meson-python,
there are several new dependencies - please see the [build-system]
section of pyproject.toml for details.

Troubleshooting

This build system change is quite large. In case of unexpected issues,
it is still possible to use a setup.py-based build as a temporary
workaround (on Python 3.9-3.11, not 3.12), by copying
pyproject.toml.setuppy to pyproject.toml. However, please open an
issue with details on the NumPy issue tracker. We aim to phase out
setup.py builds as soon as possible, and therefore would like to see
all potential blockers surfaced early on in the 1.26.0 release cycle.

Contributors

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

  • Bas van Beek
  • Charles Harris
  • Matti Picus
  • Melissa Weber Mendonça
  • Ralf Gommers
  • Sayed Adel
  • Sebastian Berg
  • Stefan van der Walt
  • Tyler Reddy
  • Warren Weckesser

Pull requests merged

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

  • #24305: MAINT: Prepare 1.26.x branch for development
  • #24308: MAINT: Massive update of files from main for numpy 1.26
  • #24322: CI: fix wheel builds on the 1.26.x branch
  • #24326: BLD: update openblas to newer version
  • #24327: TYP: Trim down the _NestedSequence.__getitem__ signature
  • #24328: BUG: fix choose refcount leak
  • #24337: TST: fix running the test suite in builds without BLAS/LAPACK
  • #24338: BUG: random: Fix generation of nan by dirichlet.
  • #24340: MAINT: Dependabot updates from main
  • #24342: MAINT: Add back NPY_RUN_MYPY_IN_TESTSUITE=1
  • #24353: MAINT: Update extbuild.py from main.
  • #24356: TST: fix distutils tests for deprecations in recent setuptools...
  • #24375: MAINT: Update cibuildwheel to version 2.15.0
  • #24381: MAINT: Fix codespaces setup.sh script
  • #24403: ENH: Vendor meson for multi-target build support
  • #24404: BLD: vendor meson-python to make the Windows builds with SIMD...
  • #24405: BLD, SIMD: The meson CPU dispatcher implementation
  • #24406: MAINT: Remove versioneer

Checksums

MD5

875d02016f215f8ce2513453393f0089  numpy-1.26.0b1-cp310-cp310-macosx_10_9_x86_64.whl
7df1856729096fbbbbb82b58c1695810  numpy-1.26.0b1-cp310-cp310-macosx_11_0_arm64.whl
928037510906572ecadb154b8089853f  numpy-1.26.0b1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
93fb7c8a0e7af169c9bf42d8bfa17c2c  numpy-1.26.0b1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
a865069d224bf3830671de8e1f374344  numpy-1.26.0b1-cp310-cp310-musllinux_1_1_x86_64.whl
c53d1d8cb653fc08bd3f931e4c965430  numpy-1.26.0b1-cp310-cp310-win_amd64.whl
c7e212fbb7e64231747c6c8aac0f8678  numpy-1.26.0b1-cp311-cp311-macosx_10_9_x86_64.whl
f2df03cdaee283c1f7486d2f66e497dd  numpy-1.26.0b1-cp311-cp311-macosx_11_0_arm64.whl
8af359b78166474b7a621a482f3073fd  numpy-1.26.0b1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4eec2761b87ccd43028697410ed8909d  numpy-1.26.0b1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
d9f0b03e455e9e99bdbe69e2e729c197  numpy-1.26.0b1-cp311-cp311-musllinux_1_1_x86_64.whl
dd1c5e4492988e2b3641602b295e7de3  numpy-1.26.0b1-cp311-cp311-win_amd64.whl
88e35ab901c8315ccdb172abc0d2350c  numpy-1.26.0b1-cp312-cp312-macosx_10_9_x86_64.whl
ad426a4203844eaa8de6b519e94dc2c0  numpy-1.26.0b1-cp312-cp312-macosx_11_0_arm64.whl
2e0e7a297de88cfe930c205b1ab8fdb0  numpy-1.26.0b1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
5d4ea12ab53e506a9887ab8a587f68f6  numpy-1.26.0b1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1b3c3a80d2fb928b753545ded60312f3  numpy-1.26.0b1-cp312-cp312-musllinux_1_1_x86_64.whl
e27356122ee42d84f6965ac802792bc3  numpy-1.26.0b1-cp312-cp312-win_amd64.whl
1cc0d71476548fa30c27a542e3c3f9bf  numpy-1.26.0b1-cp39-cp39-macosx_10_9_x86_64.whl
ec4882af449c1754cc7af84a82305aed  numpy-1.26.0b1-cp39-cp39-macosx_11_0_arm64.whl
142493180019de1ec22c4510bf650366  numpy-1.26.0b1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4a0c76b75fa36c54c0d2a9107c838910  numpy-1.26.0b1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
cb4d1c3b95e3a2662f94475b4b525da0  numpy-1.26.0b1-cp39-cp39-musllinux_1_1_x86_64.whl
afa3f60467530e022eb1a584a8c48f84  numpy-1.26.0b1-cp39-cp39-win_amd64.whl
35c77e2f2b25225ae62354f91c26a693  numpy-1.26.0b1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
1986181def7286ae37ced5df7c0ca312  numpy-1.26.0b1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
e013942d0d71cb6a680afa89c9aa5259  numpy-1.26.0b1-pp39-pypy39_pp73-win_amd64.whl
3268568cee06327fa34175aa3805829d  numpy-1.26.0b1.tar.gz

SHA256

9a74361204dc604ba53916ed55aef0ca73e7aa3d0b7e47e1c28aece8c2ad4f59  numpy-1.26.0b1-cp310-cp310-macosx_10_9_x86_64.whl
ab9e86bb7c9d3e009945b24a92318ff5d8c245e0e0aaaa765825c4561c292d53  numpy-1.26.0b1-cp310-cp310-macosx_11_0_arm64.whl
b0b73599c80b29dfa7f812cb2e8738ce3f058b413e9f2f478e3cc4e038bb8f8e  numpy-1.26.0b1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
4a6d4c99396c57e02b0181f01ba42b482f327774057e51fb7fb390a130c95cff  numpy-1.26.0b1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
02af7482f34aeb9658ece615c922942f1a3908c449a9a6cd9f33fa233ce486d4  numpy-1.26.0b1-cp310-cp310-musllinux_1_1_x86_64.whl
5a8f04e957259ef93a1e4a29da0b64d49ee842af456257bbb7253925cfe2f7bd  numpy-1.26.0b1-cp310-cp310-win_amd64.whl
f71e10402e705aaa5908464e489d38e6583c48e40a4721f83195772178c7da9f  numpy-1.26.0b1-cp311-cp311-macosx_10_9_x86_64.whl
94d5572fea8dca0fa929da9d17fa49e525ceee1e59b04372dfa5bd8a5f688f5f  numpy-1.26.0b1-cp311-cp311-macosx_11_0_arm64.whl
1f88e6fe42b0d6418e53332e525b299762dbd9e33055d2e0398e6298da5b0cc9  numpy-1.26.0b1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
c466707e5ce5a44caadb85fd672a5ce0bfc060012df465771e7b10506e1e5dad  numpy-1.26.0b1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
16313a28cf703ae722b3ac139809360ffef81a45e758f196e538be3bcbee85c9  numpy-1.26.0b1-cp311-cp311-musllinux_1_1_x86_64.whl
ea85e8e297af49d30830177ecb0c54d1cbca051e4306161f3ceabfa66560b17c  numpy-1.26.0b1-cp311-cp311-win_amd64.whl
321a063fabc302931029f831f284cf43c301fdeead1b15df2f8aa87673294d4d  numpy-1.26.0b1-cp312-cp312-macosx_10_9_x86_64.whl
dc36a9e8df48b72dad668d6f4036ed477d8bc2cb1f7a23b688e8e8057afdfee3  numpy-1.26.0b1-cp312-cp312-macosx_11_0_arm64.whl
3c6c5804671fa1697e3d0cbc608a65c55794fb6682f4e04e9f6d65d0ddfc47c7  numpy-1.26.0b1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
3aa806da215e9c10ba89e9037a69c7a56367e059615679ef1a5cf937eedfbf61  numpy-1.26.0b1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
b66135c02ee55f9113dce3c8c5130b5feaead8767cd2c7ad36547a3d5e264230  numpy-1.26.0b1-cp312-cp312-musllinux_1_1_x86_64.whl
87f2799f475e9e7aee69254dfe357975b163d409550d4641a0bca4cb4f64b725  numpy-1.26.0b1-cp312-cp312-win_amd64.whl
2b258f67ca4a8245c74470da66a87684ddb3f06dde98760efc7ca792a44ee254  numpy-1.26.0b1-cp39-cp39-macosx_10_9_x86_64.whl
a31d9109ffed9fc5566e73346a076fffbc7db00e626579ae4d5dfec933b29bfc  numpy-1.26.0b1-cp39-cp39-macosx_11_0_arm64.whl
18e29ab806ec5e0b05df900d44b3b257a5901c32fc3ddaeb818c520cd9279b4e  numpy-1.26.0b1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
216b47882877ea5272f279c08bf7e42935728f35c6db2e4843b37db7b29ce016  numpy-1.26.0b1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
eea337d6d5ab2b6eb657b3f18e8b57a280f16fb5f94df484d9c1a8d3450d9ae9  numpy-1.26.0b1-cp39-cp39-musllinux_1_1_x86_64.whl
db698c9008217c54a8005ea58bd5836241d7b519c8bb16a698a1b4ec4ca296a8  numpy-1.26.0b1-cp39-cp39-win_amd64.whl
f250b3099649137f1021f8f95a9404273bcb7539f0bef6d6cf2c91260285edc4  numpy-1.26.0b1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
22584a41b1be30543dd8c030affc90d8cb7ec19a56fda7f27fc33f64f8b0fbaa  numpy-1.26.0b1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
8aefe8ab1228e00146e5ae88290c7fdb8221aef45b357aed7f3dff6ac3b3b25a  numpy-1.26.0b1-pp39-pypy39_pp73-win_amd64.whl
c67eea90827e1e9aa220a3fc380ce8776428deba8ac9e7c931ce7b69e8dce115  numpy-1.26.0b1.tar.gz