diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 26d5fbb..d9164fa 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,22 +78,20 @@ jobs: python: "cp313t" - 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" +# include: +# - buildplat: [ ubuntu-22.04, pyodide_wasm32, "" ] +# python: "cp313" env: IS_32_BIT: ${{ matrix.buildplat[1] == 'win32' }} # used in a cibw_*.sh script 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,10 +147,11 @@ 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 + CIBW_ARCHS_MACOS: "x86_64" with: package-dir: numpy-src output-dir: dist @@ -169,7 +168,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,10 +198,11 @@ 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 + ref: ${{ env.SOURCE_REF_TO_BUILD }} persist-credentials: false - name: Build sdist @@ -234,12 +234,20 @@ 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 + merge-multiple: true + + - 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 + uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 with: repository-url: https://test.pypi.org/legacy/ skip-existing: true @@ -254,7 +262,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 +296,20 @@ 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 + merge-multiple: true + + - 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 + uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4 with: print-hash: true attestations: true 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