From 3f3fa0dcbb3ba8c9920004e64378d5e1674fdd1b Mon Sep 17 00:00:00 2001 From: Andrew Nelson Date: Wed, 27 Aug 2025 07:44:10 +1000 Subject: [PATCH 1/5] CI: apply gha-update (#8) updates hashes and appends version numbers --- .github/workflows/wheels.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 26d5fbb..422d5e6 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -88,12 +88,12 @@ jobs: steps: - name: Checkout numpy-release - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false - name: Checkout numpy - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: repository: numpy/numpy ref: ${{ env.SOURCE_REF_TO_BUILD }} @@ -149,7 +149,7 @@ jobs: echo "CIBW_PLATFORM=pyodide" >> "$GITHUB_ENV" - name: Build wheels - uses: pypa/cibuildwheel@c923d83ad9c1bc00211c5041d0c3f73294ff88f6 + uses: pypa/cibuildwheel@c923d83ad9c1bc00211c5041d0c3f73294ff88f6 # v3.1.4 env: CIBW_BUILD: ${{ matrix.python }}-${{ matrix.buildplat[1] }} SRC: ${{ github.workspace }}/numpy-src @@ -169,7 +169,7 @@ jobs: - name: install micromamba # win-arm64 is unsupported by micromamba at the moment if: github.event_name == 'schedule' && matrix.buildplat[1] != 'win_arm64' - uses: mamba-org/setup-micromamba@b09ef9b599704322748535812ca03efb2625677b + uses: mamba-org/setup-micromamba@b09ef9b599704322748535812ca03efb2625677b # v2.0.5 with: # For installation of anaconda-client, required for upload to anaconda.org init-shell: bash @@ -199,7 +199,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout numpy - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: repository: numpy/numpy submodules: true @@ -234,12 +234,12 @@ jobs: id-token: write # mandatory for trusted publishing steps: - name: Download sdist and wheels - uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v.4.3.0 + uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 with: path: dist - name: Publish - uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 + uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 with: repository-url: https://test.pypi.org/legacy/ skip-existing: true @@ -254,7 +254,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout numpy - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: repository: numpy/numpy ref: ${{ env.SOURCE_REF_TO_BUILD }} @@ -288,12 +288,12 @@ jobs: id-token: write # mandatory for trusted publishing steps: - name: Download sdist and wheels - uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v.4.3.0 + uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 with: path: dist - name: Publish - uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 + uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 with: print-hash: true attestations: true From 4793c4895f8ce8552799b34975afda9732c5236c Mon Sep 17 00:00:00 2001 From: Andrew Nelson Date: Tue, 2 Sep 2025 13:29:38 +1000 Subject: [PATCH 2/5] BLD don't allow wasm wheels to be published (#9) * BLD don't allow wasm wheels to be published --- .github/workflows/wheels.yml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 422d5e6..5ff5c94 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -79,8 +79,6 @@ jobs: - buildplat: [ macos13, macosx_x86_64, openblas ] python: "cp314t" include: - - buildplat: [ ubuntu-22.04, pyodide_wasm32, "" ] - python: "cp312" - buildplat: [ ubuntu-22.04, pyodide_wasm32, "" ] python: "cp313" env: @@ -238,6 +236,13 @@ jobs: with: path: dist + - name: Remove wasm wheels + run: | + cd dist + ls -al + rm -r *wasm* + ls -al + - name: Publish uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 with: @@ -292,6 +297,13 @@ jobs: with: path: dist + - name: Remove wasm wheels + run: | + cd dist + ls -al + rm -r *wasm* + ls -al + - name: Publish uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 with: From 40fd86c275cc93a840d9b664aa0793d49a62a071 Mon Sep 17 00:00:00 2001 From: Ralf Gommers Date: Tue, 9 Sep 2025 21:16:44 +0200 Subject: [PATCH 3/5] MAINT: sync fixes accumulated during the v2.3.3 release process (#10) * MAINT: update OpenBLAS to 0.3.30.0.1 (cherry picked from commit 6af445cbd9ecc672a9dd2e9c324a542c18f4abac) * MAINT: update delvewheel, Cython, meson to latest versions (cherry picked from commit 0199f2c7a4f66e5ae099d0d55b76747c9dcd06b3) * CI: use `merge-multiple` to ensure downloaded artifacts are in one dir (cherry picked from commit a8afeac8b5e22ca054e8d4db878e70fa33c01d30) * CI: ensure the sdist version built is correct (cherry picked from commit 8621c134ecb4d90f77defbae1e41d5f12054cd08) --- .github/workflows/wheels.yml | 3 +++ requirements/delvewheel_requirements.txt | 2 +- requirements/openblas_requirements.txt | 5 ++--- requirements/wheel_test_requirements.txt | 4 ++-- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 5ff5c94..45008d9 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -201,6 +201,7 @@ jobs: with: repository: numpy/numpy submodules: true + ref: ${{ env.SOURCE_REF_TO_BUILD }} persist-credentials: false - name: Build sdist @@ -235,6 +236,7 @@ jobs: uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 with: path: dist + merge-multiple: true - name: Remove wasm wheels run: | @@ -296,6 +298,7 @@ jobs: uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 with: path: dist + merge-multiple: true - name: Remove wasm wheels run: | diff --git a/requirements/delvewheel_requirements.txt b/requirements/delvewheel_requirements.txt index 6fd6e86..d618271 100644 --- a/requirements/delvewheel_requirements.txt +++ b/requirements/delvewheel_requirements.txt @@ -1 +1 @@ -delvewheel==1.10.1 ; sys_platform == 'win32' +delvewheel==1.11.1 ; sys_platform == 'win32' diff --git a/requirements/openblas_requirements.txt b/requirements/openblas_requirements.txt index 90270cd..0ab5c0b 100644 --- a/requirements/openblas_requirements.txt +++ b/requirements/openblas_requirements.txt @@ -1,3 +1,2 @@ -scipy-openblas32==0.3.29.265.0 ; sys_platform == 'win32' and platform_machine == 'ARM64' -# Note there is not yet a win-arm64 wheel, so we currently only exclude win-arm64 -scipy-openblas64==0.3.29.0.0 ; sys_platform != 'win32' or platform_machine != 'ARM64' +scipy-openblas32==0.3.30.0.1 +scipy-openblas64==0.3.30.0.1 diff --git a/requirements/wheel_test_requirements.txt b/requirements/wheel_test_requirements.txt index b5be2ff..f9592f9 100644 --- a/requirements/wheel_test_requirements.txt +++ b/requirements/wheel_test_requirements.txt @@ -1,9 +1,9 @@ -Cython==3.1.2 +Cython==3.1.3 setuptools==65.5.1 ; python_version < '3.12' setuptools==80.9.0 ; python_version >= '3.12' hypothesis==6.104.1 pytest==7.4.0 -meson==1.8.2 +meson==1.9.0 ninja==1.11.1.4; sys_platform != "emscripten" pytest-xdist==3.8.0 threadpoolctl==3.6.0 From 1f14871d4de16ba887368751c8d728d629606dc0 Mon Sep 17 00:00:00 2001 From: Andrew Nelson Date: Thu, 11 Sep 2025 09:02:15 +1000 Subject: [PATCH 4/5] BLD --- .github/workflows/wheels.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 45008d9..b98ee78 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -48,20 +48,20 @@ jobs: # Github Actions doesn't support pairing matrix values together, let's improvise # https://github.com/github/feedback/discussions/7835#discussioncomment-1769026 buildplat: - - [ubuntu-22.04, manylinux_x86_64, ""] - - [ubuntu-22.04, musllinux_x86_64, ""] - - [ubuntu-22.04-arm, manylinux_aarch64, ""] - - [ubuntu-22.04-arm, musllinux_aarch64, ""] - - [macos-13, macosx_x86_64, openblas] +# - [ubuntu-22.04, manylinux_x86_64, ""] +# - [ubuntu-22.04, musllinux_x86_64, ""] +# - [ubuntu-22.04-arm, manylinux_aarch64, ""] +# - [ubuntu-22.04-arm, musllinux_aarch64, ""] +# - [macos-13, macosx_x86_64, openblas] # targeting macos >= 14. Could probably build on macos-14, but it would be a cross-compile - - [macos-13, macosx_x86_64, accelerate] - - [macos-14, macosx_arm64, openblas] - - [macos-14, macosx_arm64, accelerate] - - [windows-2022, win_amd64, ""] - - [windows-2022, win32, ""] - - [windows-11-arm, win_arm64, ""] - python: ["cp311", "cp312", "cp313", "cp313t", "cp314", "cp314t", "pp311"] + - [macos-14, macosx_x86_64, accelerate] +# - [macos-14, macosx_arm64, openblas] +# - [macos-14, macosx_arm64, accelerate] +# - [windows-2022, win_amd64, ""] +# - [windows-2022, win32, ""] +# - [windows-11-arm, win_arm64, ""] + python: ["cp311"]#, "cp312", "cp313", "cp313t", "cp314", "cp314t", "pp311"] exclude: # Don't build PyPy 32-bit windows - buildplat: [windows-2022, win32, ""] @@ -78,9 +78,9 @@ jobs: python: "cp313t" - buildplat: [ macos13, macosx_x86_64, openblas ] python: "cp314t" - include: - - buildplat: [ ubuntu-22.04, pyodide_wasm32, "" ] - python: "cp313" +# include: +# - buildplat: [ ubuntu-22.04, pyodide_wasm32, "" ] +# python: "cp313" env: IS_32_BIT: ${{ matrix.buildplat[1] == 'win32' }} # used in a cibw_*.sh script From 4fc29d89ec2a699e68b4a3260ca66b952cf3628e Mon Sep 17 00:00:00 2001 From: Andrew Nelson Date: Thu, 11 Sep 2025 09:08:20 +1000 Subject: [PATCH 5/5] BLD --- .github/workflows/wheels.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index b98ee78..d9164fa 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -151,6 +151,7 @@ jobs: env: CIBW_BUILD: ${{ matrix.python }}-${{ matrix.buildplat[1] }} SRC: ${{ github.workspace }}/numpy-src + CIBW_ARCHS_MACOS: "x86_64" with: package-dir: numpy-src output-dir: dist