From 9cb2295b39e934dc2667b1a98bee9eab5695e4c0 Mon Sep 17 00:00:00 2001 From: Nikhil Dabas Date: Tue, 15 Sep 2026 09:57:18 +0100 Subject: [PATCH 1/3] Add Windows ARM64 build --- .github/workflows/build_and_upload.yml | 6 +++--- .github/workflows/tests.yml | 8 ++++++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build_and_upload.yml b/.github/workflows/build_and_upload.yml index 2696de5..a736922 100644 --- a/.github/workflows/build_and_upload.yml +++ b/.github/workflows/build_and_upload.yml @@ -14,7 +14,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-latest, windows-latest] + os: [ubuntu-latest, macos-latest, windows-latest, windows-11-arm] steps: - uses: "actions/checkout@v4" with: @@ -27,7 +27,7 @@ jobs: - name: "Build wheels" uses: "pypa/cibuildwheel@v3.3.0" env: - CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-*" # FIXME + CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-* cp310-win_arm64" # FIXME CIBW_ARCHS_LINUX: "auto aarch64" CIBW_TEST_REQUIRES: "pytest" CIBW_TEST_COMMAND: "pytest {project}/tests --doctest-modules" @@ -35,7 +35,7 @@ jobs: with: path: "./wheelhouse/*.whl" name: wheel-${{ matrix.os }} - + make_sdist: name: "Build source distribution" runs-on: ubuntu-latest diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 3b38e6d..ba4f1d8 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -14,14 +14,18 @@ jobs: strategy: matrix: python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] - os: [ubuntu-latest, macos-latest, windows-latest] + os: [ubuntu-latest, macos-latest, windows-latest, windows-11-arm] + exclude: + # CPython has no official win_arm64 release before 3.11. + - os: windows-11-arm + python-version: "3.10" fail-fast: false steps: - uses: "actions/checkout@v4" with: submodules: true - - uses: "actions/setup-python@v4" + - uses: "actions/setup-python@v7" with: python-version: "${{ matrix.python-version }}" - name: "Install dependencies" From 5382c8325c648bb6aab11ac2d4c7216d1bbfecbf Mon Sep 17 00:00:00 2001 From: Nikhil Dabas Date: Tue, 15 Sep 2026 10:03:36 +0100 Subject: [PATCH 2/3] Move Linux ARM64 build to native runner --- .github/workflows/build_and_upload.yml | 8 +------- .github/workflows/tests.yml | 2 +- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build_and_upload.yml b/.github/workflows/build_and_upload.yml index a736922..3e46059 100644 --- a/.github/workflows/build_and_upload.yml +++ b/.github/workflows/build_and_upload.yml @@ -14,21 +14,15 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-latest, windows-latest, windows-11-arm] + os: [ubuntu-latest, ubuntu-24.04-arm, macos-latest, windows-latest, windows-11-arm] steps: - uses: "actions/checkout@v4" with: submodules: true - - name: "Set up QEMU" - if: matrix.os == 'ubuntu-latest' - uses: "docker/setup-qemu-action@v3" - with: - platforms: arm64 - name: "Build wheels" uses: "pypa/cibuildwheel@v3.3.0" env: CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-* cp310-win_arm64" # FIXME - CIBW_ARCHS_LINUX: "auto aarch64" CIBW_TEST_REQUIRES: "pytest" CIBW_TEST_COMMAND: "pytest {project}/tests --doctest-modules" - uses: "actions/upload-artifact@v4" diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ba4f1d8..a3304d0 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] - os: [ubuntu-latest, macos-latest, windows-latest, windows-11-arm] + os: [ubuntu-latest, ubuntu-24.04-arm, macos-latest, windows-latest, windows-11-arm] exclude: # CPython has no official win_arm64 release before 3.11. - os: windows-11-arm From a955b1ec0ef53c849fd01f1371917a437b7f551b Mon Sep 17 00:00:00 2001 From: Nikhil Dabas Date: Tue, 15 Sep 2026 10:08:50 +0100 Subject: [PATCH 3/3] cibuildwheel doesn't support cp36/cp37 anymore --- .github/workflows/build_and_upload.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_upload.yml b/.github/workflows/build_and_upload.yml index 3e46059..42df75f 100644 --- a/.github/workflows/build_and_upload.yml +++ b/.github/workflows/build_and_upload.yml @@ -22,7 +22,7 @@ jobs: - name: "Build wheels" uses: "pypa/cibuildwheel@v3.3.0" env: - CIBW_SKIP: "pp* cp36-* cp37-* cp38-* cp39-* cp310-win_arm64" # FIXME + CIBW_SKIP: "pp* cp38-* cp39-* cp310-win_arm64" CIBW_TEST_REQUIRES: "pytest" CIBW_TEST_COMMAND: "pytest {project}/tests --doctest-modules" - uses: "actions/upload-artifact@v4"