diff --git a/.github/workflows/cibuildwheel.yml b/.github/workflows/cibuildwheel.yml index e258ea38c482..13922eb724ca 100644 --- a/.github/workflows/cibuildwheel.yml +++ b/.github/workflows/cibuildwheel.yml @@ -1,38 +1,13 @@ --- name: Build CI wheels -on: - # Save CI by only running this on release branches or tags. - push: - branches: - - main - - v[0-9]+.[0-9]+.x - tags: - - v* - # Also allow running this action on PRs if requested by applying the - # "Run cibuildwheel" label. - pull_request: - types: - - opened - - synchronize - - reopened - - labeled +on: push permissions: contents: read jobs: build_sdist: - if: >- - github.event_name == 'push' || - github.event_name == 'pull_request' && ( - ( - github.event.action == 'labeled' && - github.event.label.name == 'CI: Run cibuildwheel' - ) || - contains(github.event.pull_request.labels.*.name, - 'CI: Run cibuildwheel') - ) name: Build sdist runs-on: ubuntu-20.04 outputs: @@ -76,16 +51,6 @@ jobs: if-no-files-found: error build_wheels: - if: >- - github.event_name == 'push' || - github.event_name == 'pull_request' && ( - ( - github.event.action == 'labeled' && - github.event.label.name == 'CI: Run cibuildwheel' - ) || - contains(github.event.pull_request.labels.*.name, - 'CI: Run cibuildwheel') - ) needs: build_sdist name: Build wheels on ${{ matrix.os }} for ${{ matrix.cibw_archs }} runs-on: ${{ matrix.os }} @@ -116,6 +81,7 @@ jobs: MACOSX_DEPLOYMENT_TARGET: "10.12" MPL_DISABLE_FH4: "yes" strategy: + fail-fast: false matrix: include: - os: ubuntu-20.04 @@ -142,50 +108,6 @@ jobs: name: cibw-sdist path: dist/ - - name: Build wheels for CPython 3.13 - uses: pypa/cibuildwheel@bd033a44476646b606efccdd5eed92d5ea1d77ad # v2.20.0 - with: - package-dir: dist/${{ needs.build_sdist.outputs.SDIST_NAME }} - env: - CIBW_BUILD: "cp313-* cp313t-*" - # No free-threading wheels for NumPy; musllinux skipped for main builds also. - CIBW_SKIP: "cp313t-win_amd64 *-musllinux_aarch64" - CIBW_BUILD_FRONTEND: - "pip; args: --pre --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple" - CIBW_FREE_THREADED_SUPPORT: true - # No free-threading wheels available for aarch64 on Pillow. - CIBW_TEST_SKIP: "cp313t-manylinux_aarch64" - # We need pre-releases to get the nightly wheels. - CIBW_BEFORE_TEST: >- - pip install --pre - --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple - contourpy numpy pillow - CIBW_ARCHS: ${{ matrix.cibw_archs }} - - - name: Build wheels for CPython 3.12 - uses: pypa/cibuildwheel@bd033a44476646b606efccdd5eed92d5ea1d77ad # v2.20.0 - with: - package-dir: dist/${{ needs.build_sdist.outputs.SDIST_NAME }} - env: - CIBW_BUILD: "cp312-*" - CIBW_ARCHS: ${{ matrix.cibw_archs }} - - - name: Build wheels for CPython 3.11 - uses: pypa/cibuildwheel@bd033a44476646b606efccdd5eed92d5ea1d77ad # v2.20.0 - with: - package-dir: dist/${{ needs.build_sdist.outputs.SDIST_NAME }} - env: - CIBW_BUILD: "cp311-*" - CIBW_ARCHS: ${{ matrix.cibw_archs }} - - - name: Build wheels for CPython 3.10 - uses: pypa/cibuildwheel@bd033a44476646b606efccdd5eed92d5ea1d77ad # v2.20.0 - with: - package-dir: dist/${{ needs.build_sdist.outputs.SDIST_NAME }} - env: - CIBW_BUILD: "cp310-*" - CIBW_ARCHS: ${{ matrix.cibw_archs }} - - name: Build wheels for PyPy uses: pypa/cibuildwheel@bd033a44476646b606efccdd5eed92d5ea1d77ad # v2.20.0 with: @@ -200,32 +122,3 @@ jobs: name: cibw-wheels-${{ runner.os }}-${{ matrix.cibw_archs }} path: ./wheelhouse/*.whl if-no-files-found: error - - publish: - if: github.event_name == 'push' && github.ref_type == 'tag' - name: Upload release to PyPI - needs: [build_sdist, build_wheels] - runs-on: ubuntu-latest - environment: release - permissions: - id-token: write - attestations: write - contents: read - steps: - - name: Download packages - uses: actions/download-artifact@v4 - with: - pattern: cibw-* - path: dist - merge-multiple: true - - - name: Print out packages - run: ls dist - - - name: Generate artifact attestation for sdist and wheel - uses: actions/attest-build-provenance@310b0a4a3b0b78ef57ecda988ee04b132db73ef8 # v1.4.1 - with: - subject-path: dist/matplotlib-* - - - name: Publish package distributions to PyPI - uses: pypa/gh-action-pypi-publish@ec4db0b4ddc65acdf4bff5fa45ac92d78b56bdf0 # v1.9.0