From 84d5f6831efe1f63ead10955dc36f482cbf4cb70 Mon Sep 17 00:00:00 2001 From: Matt Davis Date: Fri, 1 Dec 2023 20:18:53 -0800 Subject: [PATCH] add more 3.13.0a2 CI testing on private container builds * musllinux_1_1_x86_64 * manylinux_2_28_aarch64 --- .github/workflows/ci.yaml | 254 ++++++++++++++++++++------------------ 1 file changed, 134 insertions(+), 120 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 4d4f183b..716d36cc 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -30,81 +30,95 @@ jobs: fail-fast: false matrix: include: - - spec: cp38-manylinux_x86_64 - - spec: cp39-manylinux_x86_64 - - spec: cp310-manylinux_x86_64 - - spec: cp311-manylinux_x86_64 - - spec: cp312-manylinux_x86_64 +# - spec: cp38-manylinux_x86_64 +# - spec: cp39-manylinux_x86_64 +# - spec: cp310-manylinux_x86_64 +# - spec: cp311-manylinux_x86_64 +# - spec: cp312-manylinux_x86_64 - spec: cp313-manylinux_x86_64 # HACK: private cibuildwheel with 3.13 prerelease support cibw_version: https://github.com/nitzmahone/cibuildwheel/archive/refs/heads/py313_support.zip # HACK: private manylinux_2_28 container build with 3.13 prerelease support manylinux_img: quay.io/rolpdog/manylinux_2_28_x86_64:latest - - spec: cp38-manylinux_i686 - - spec: cp39-manylinux_i686 - - spec: cp310-manylinux_i686 - - spec: cp311-manylinux_i686 - - spec: cp312-manylinux_i686 - - - spec: cp39-musllinux_x86_64 - - spec: cp310-musllinux_x86_64 - - spec: cp311-musllinux_x86_64 - - spec: cp312-musllinux_x86_64 - - - spec: cp39-musllinux_i686 - - spec: cp310-musllinux_i686 - - spec: cp311-musllinux_i686 - #- spec: cp312-musllinux_i686 # busted as of 9/22/23 - #- spec: cp313-musllinux_i686 - - - spec: cp38-manylinux_aarch64 - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp39-manylinux_aarch64 - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp310-manylinux_aarch64 - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp311-manylinux_aarch64 - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp312-manylinux_aarch64 - foreign_arch: true - test_args: '{project}/src/c' - - - spec: cp38-manylinux_ppc64le - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp39-manylinux_ppc64le - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp310-manylinux_ppc64le - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp311-manylinux_ppc64le - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp312-manylinux_ppc64le - foreign_arch: true - test_args: '{project}/src/c' - - - spec: cp38-manylinux_s390x - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp39-manylinux_s390x - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp310-manylinux_s390x - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp311-manylinux_s390x - foreign_arch: true - test_args: '{project}/src/c' - - spec: cp312-manylinux_s390x +# - spec: cp38-manylinux_i686 +# - spec: cp39-manylinux_i686 +# - spec: cp310-manylinux_i686 +# - spec: cp311-manylinux_i686 +# - spec: cp312-manylinux_i686 +# +# - spec: cp39-musllinux_x86_64 +# - spec: cp310-musllinux_x86_64 +# - spec: cp311-musllinux_x86_64 +# - spec: cp312-musllinux_x86_64 + - spec: cp313-musllinux_x86_64 + # HACK: private cibuildwheel with 3.13 prerelease support + cibw_version: https://github.com/nitzmahone/cibuildwheel/archive/refs/heads/py313_support.zip + # HACK: private manylinux_2_28 container build with 3.13 prerelease support + manylinux_img: quay.io/rolpdog/musllinux_1_1_x86_64:latest + +# +# - spec: cp39-musllinux_i686 +# - spec: cp310-musllinux_i686 +# - spec: cp311-musllinux_i686 +# - spec: cp312-musllinux_i686 # busted as of 9/22/23 + + +# - spec: cp38-manylinux_aarch64 +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp39-manylinux_aarch64 +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp310-manylinux_aarch64 +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp311-manylinux_aarch64 +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp312-manylinux_aarch64 +# foreign_arch: true +# test_args: '{project}/src/c' + - spec: cp313-manylinux_aarch64 foreign_arch: true test_args: '{project}/src/c' + # HACK: private cibuildwheel with 3.13 prerelease support + cibw_version: https://github.com/nitzmahone/cibuildwheel/archive/refs/heads/py313_support.zip + # HACK: private manylinux_2_28 container build with 3.13 prerelease support + manylinux_img: quay.io/rolpdog/manylinux_2_28_aarch64:latest + + +# - spec: cp38-manylinux_ppc64le +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp39-manylinux_ppc64le +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp310-manylinux_ppc64le +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp311-manylinux_ppc64le +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp312-manylinux_ppc64le +# foreign_arch: true +# test_args: '{project}/src/c' +# +# - spec: cp38-manylinux_s390x +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp39-manylinux_s390x +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp310-manylinux_s390x +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp311-manylinux_s390x +# foreign_arch: true +# test_args: '{project}/src/c' +# - spec: cp312-manylinux_s390x +# foreign_arch: true +# test_args: '{project}/src/c' steps: - name: clone repo @@ -158,52 +172,52 @@ jobs: matrix: include: # build for x86_64 under the default hosted macOS 10.x x86_64 runner - - spec: cp38-macosx_x86_64 - - spec: cp39-macosx_x86_64 - - spec: cp310-macosx_x86_64 - - spec: cp311-macosx_x86_64 - - spec: cp312-macosx_x86_64 +# - spec: cp38-macosx_x86_64 +# - spec: cp39-macosx_x86_64 +# - spec: cp310-macosx_x86_64 +# - spec: cp311-macosx_x86_64 +# - spec: cp312-macosx_x86_64 - spec: cp313-macosx_x86_64 # HACK: private cibuildwheel with 3.13 prerelease support cibw_version: https://github.com/nitzmahone/cibuildwheel/archive/refs/heads/py313_support.zip - # build for arm64 under a hacked macOS 12 self-hosted x86_64-on-arm64 runner until arm64 is fully supported - # FIXME: ? cp38-macosx_arm64 requires special handling and fails some test_zdist tests under cibw 2.1.2, skip it (so Apple's XCode python3 won't have a wheel) - - spec: cp39-macosx_arm64 - deployment_target: '11.0' - runs_on: - - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} - - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} - maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} - run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} - sdkroot: macosx11.3 - - - spec: cp310-macosx_arm64 - deployment_target: '11.0' - runs_on: - - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} - - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} - maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} - run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} - sdkroot: macosx11.3 - - - spec: cp311-macosx_arm64 - deployment_target: '11.0' - runs_on: - - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} - - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} - maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} - run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} - sdkroot: macosx11.3 - - - spec: cp312-macosx_arm64 - deployment_target: '11.0' - runs_on: - - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} - - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} - maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} - run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} - sdkroot: macosx11.3 - +# # build for arm64 under a hacked macOS 12 self-hosted x86_64-on-arm64 runner until arm64 is fully supported +# # FIXME: ? cp38-macosx_arm64 requires special handling and fails some test_zdist tests under cibw 2.1.2, skip it (so Apple's XCode python3 won't have a wheel) +# - spec: cp39-macosx_arm64 +# deployment_target: '11.0' +# runs_on: +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} +# maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} +# run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} +# sdkroot: macosx11.3 +# +# - spec: cp310-macosx_arm64 +# deployment_target: '11.0' +# runs_on: +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} +# maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} +# run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} +# sdkroot: macosx11.3 +# +# - spec: cp311-macosx_arm64 +# deployment_target: '11.0' +# runs_on: +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} +# maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} +# run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} +# sdkroot: macosx11.3 +# +# - spec: cp312-macosx_arm64 +# deployment_target: '11.0' +# runs_on: +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'self-hosted' || 'ubuntu-latest' }} +# - ${{ vars.run_macos_arm64_jobs == 'true' && 'macOS' || 'ubuntu-latest' }} +# maybe_skip: ${{ vars.run_macos_arm64_jobs != 'true' && 'skip' }} +# run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} +# sdkroot: macosx11.3 +# - spec: cp313-macosx_arm64 deployment_target: '11.0' runs_on: @@ -261,20 +275,20 @@ jobs: fail-fast: false matrix: include: - - spec: cp38-win_amd64 - - spec: cp39-win_amd64 - - spec: cp310-win_amd64 - - spec: cp311-win_amd64 - - spec: cp312-win_amd64 +# - spec: cp38-win_amd64 +# - spec: cp39-win_amd64 +# - spec: cp310-win_amd64 +# - spec: cp311-win_amd64 +# - spec: cp312-win_amd64 - spec: cp313-win_amd64 # HACK: private cibuildwheel with 3.13 prerelease support cibw_version: https://github.com/nitzmahone/cibuildwheel/archive/refs/heads/py313_support.zip # test_command: python -m pytest {project} - - spec: cp38-win32 - - spec: cp39-win32 - - spec: cp310-win32 - - spec: cp311-win32 - - spec: cp312-win32 +# - spec: cp38-win32 +# - spec: cp39-win32 +# - spec: cp310-win32 +# - spec: cp311-win32 +# - spec: cp312-win32 - spec: cp313-win32 # HACK: private cibuildwheel with 3.13 prerelease support cibw_version: https://github.com/nitzmahone/cibuildwheel/archive/refs/heads/py313_support.zip