From 04df6746b8df7b0fccdadb2e26599ca843feedcf Mon Sep 17 00:00:00 2001 From: Fergus Cooper <3770306+fcooper8472@users.noreply.github.com> Date: Sat, 27 Sep 2025 22:36:58 +0100 Subject: [PATCH 1/2] Only build a single wheel per OS on PRs --- .github/workflows/python-wheels.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/python-wheels.yml b/.github/workflows/python-wheels.yml index cbb7655..2c2567f 100644 --- a/.github/workflows/python-wheels.yml +++ b/.github/workflows/python-wheels.yml @@ -11,6 +11,10 @@ on: types: - published +env: + PY_VERS_FOR_PRS: "cp312-*" + PY_VERS_FULL: "cp39-* cp310-* cp311-* cp312-* cp313-* cp314-*" + jobs: build_wheels_cloud: name: Build wheels on ${{ matrix.os }} @@ -21,31 +25,27 @@ jobs: include: - os: ubuntu-24.04 arch: x86_64 - py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* before-all: yum groupinstall -y "Development Tools" && dnf -y install ninja-build pkgconf openssl-devel zlib-devel bzip2-devel xz-devel extra-env: "" mdt: "" - os: ubuntu-24.04-arm arch: aarch64 - py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* before-all: yum groupinstall -y "Development Tools" && dnf -y install ninja-build pkgconf openssl-devel zlib-devel bzip2-devel xz-devel extra-env: "" mdt: "" - os: macos-15-intel arch: x86_64 - py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* before-all: brew install pkg-config automake autoconf autoconf-archive libtool ninja openssl zlib bzip2 xz extra-env: CC=clang CXX=clang++ mdt: 11 - os: macos-15 arch: arm64 - py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* before-all: brew install pkg-config automake autoconf autoconf-archive libtool ninja openssl zlib bzip2 xz extra-env: CC=clang CXX=clang++ mdt: 11 env: - CIBW_BUILD: ${{ matrix.py-vers }} + CIBW_BUILD: ${{ github.event_name == 'pull_request' && env.PY_VERS_FOR_PRS || env.PY_VERS_FULL }} CIBW_SKIP: cp3*-musllinux_* CIBW_ARCHS: ${{ matrix.arch }} CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28 From de8d14d2d6410383ebbb068abed87772fb7992c7 Mon Sep 17 00:00:00 2001 From: Fergus Cooper <3770306+fcooper8472@users.noreply.github.com> Date: Sat, 27 Sep 2025 23:05:16 +0100 Subject: [PATCH 2/2] Back to matrix syntax --- .github/workflows/python-wheels.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/python-wheels.yml b/.github/workflows/python-wheels.yml index 2c2567f..e3b545c 100644 --- a/.github/workflows/python-wheels.yml +++ b/.github/workflows/python-wheels.yml @@ -11,10 +11,6 @@ on: types: - published -env: - PY_VERS_FOR_PRS: "cp312-*" - PY_VERS_FULL: "cp39-* cp310-* cp311-* cp312-* cp313-* cp314-*" - jobs: build_wheels_cloud: name: Build wheels on ${{ matrix.os }} @@ -25,27 +21,35 @@ jobs: include: - os: ubuntu-24.04 arch: x86_64 + py-vers-full: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* + py-vers-pr: cp311-* before-all: yum groupinstall -y "Development Tools" && dnf -y install ninja-build pkgconf openssl-devel zlib-devel bzip2-devel xz-devel extra-env: "" mdt: "" - os: ubuntu-24.04-arm arch: aarch64 + py-vers-full: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* + py-vers-pr: cp312-* before-all: yum groupinstall -y "Development Tools" && dnf -y install ninja-build pkgconf openssl-devel zlib-devel bzip2-devel xz-devel extra-env: "" mdt: "" - os: macos-15-intel arch: x86_64 + py-vers-full: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* + py-vers-pr: cp313-* before-all: brew install pkg-config automake autoconf autoconf-archive libtool ninja openssl zlib bzip2 xz extra-env: CC=clang CXX=clang++ mdt: 11 - os: macos-15 arch: arm64 + py-vers-full: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* + py-vers-pr: cp314-* before-all: brew install pkg-config automake autoconf autoconf-archive libtool ninja openssl zlib bzip2 xz extra-env: CC=clang CXX=clang++ mdt: 11 env: - CIBW_BUILD: ${{ github.event_name == 'pull_request' && env.PY_VERS_FOR_PRS || env.PY_VERS_FULL }} + CIBW_BUILD: ${{ github.event_name != 'pull_request' && matrix.py-vers-full || matrix.py-vers-pr }} CIBW_SKIP: cp3*-musllinux_* CIBW_ARCHS: ${{ matrix.arch }} CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28