1313 name : Build wheels on ${{ matrix.os }} for ${{ matrix.cibw_archs }}
1414 runs-on : ${{ matrix.os }}
1515 env :
16- # CIBW_BEFORE_BUILD: >-
17- # rm -rf {package}/build
16+ # 3.9, 3.10 seem to not be happy on windows arm64
17+ # because you can't install numpy from a wheel for the build environment
18+ # (and we're not going to try recompiling from source)
19+ CIBW_SKIP : " cp39-win_arm64 cp310-win_arm64"
20+ # TODO: consider turning this on
21+ # CIBW_ENABLE: cpython-freethreading
1822 CIBW_BEFORE_BUILD_WINDOWS : >-
1923 pip install delvewheel
2024 CIBW_REPAIR_WHEEL_COMMAND_WINDOWS : >-
@@ -25,36 +29,32 @@ jobs:
2529 pip install -r {project}/requirements-only-tests-min-locked.txt
2630 CIBW_TEST_COMMAND : >-
2731 pytest {project}/tests
28- # # On Windows, we explicitly request MSVC compilers (as GitHub Action runners have
29- # # MinGW on PATH that would be picked otherwise), switch to a static build for
30- # # runtimes, but use dynamic linking for `VCRUNTIME140.dll`, `VCRUNTIME140_1.dll`,
31- # # and the UCRT. This avoids requiring specific versions of `MSVCP140.dll`, while
32- # # keeping shared state with the rest of the Python process/extensions.
33- # CIBW_CONFIG_SETTINGS_WINDOWS: >-
34- # setup-args="--vsenv"
35- # setup-args="-Db_vscrt=mt"
36- # setup-args="-Dcpp_link_args=['ucrt.lib','vcruntime.lib','/nodefaultlib:libucrt.lib','/nodefaultlib:libvcruntime.lib']"
37- # CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
38- # CIBW_SKIP: "*-musllinux_aarch64"
39- # CIBW_TEST_COMMAND: >-
40- # python {package}/ci/check_version_number.py
41- # MACOSX_DEPLOYMENT_TARGET: "10.12"
32+ MACOSX_DEPLOYMENT_TARGET : " 10.12"
33+ # On Windows, we explicitly request MSVC compilers (as GitHub Action runners have
34+ # MinGW on PATH that would be picked otherwise), switch to a static build for
35+ # runtimes, but use dynamic linking for `VCRUNTIME140.dll`, `VCRUNTIME140_1.dll`,
36+ # and the UCRT. This avoids requiring specific versions of `MSVCP140.dll`, while
37+ # keeping shared state with the rest of the Python process/extensions.
38+ CIBW_CONFIG_SETTINGS_WINDOWS : >-
39+ setup-args="--vsenv"
40+ setup-args="-Db_vscrt=mt"
41+ setup-args="-Dcpp_link_args=['ucrt.lib','vcruntime.lib','/nodefaultlib:libucrt.lib','/nodefaultlib:libvcruntime.lib']"
4242 strategy :
4343 fail-fast : false
4444 matrix :
4545 include :
46- # - os: ubuntu-latest
47- # cibw_archs: "x86_64"
48- # - os: ubuntu-24.04-arm
49- # cibw_archs: "aarch64"
50- # - os: windows-latest
51- # cibw_archs: "AMD64"
46+ - os : ubuntu-latest
47+ cibw_archs : " x86_64"
48+ - os : ubuntu-24.04-arm
49+ cibw_archs : " aarch64"
50+ - os : windows-latest
51+ cibw_archs : " AMD64"
5252 - os : windows-11-arm
5353 cibw_archs : " ARM64"
54- # - os: macos-13
55- # cibw_archs: "x86_64"
56- # - os: macos-14
57- # cibw_archs: "arm64"
54+ - os : macos-13
55+ cibw_archs : " x86_64"
56+ - os : macos-14
57+ cibw_archs : " arm64"
5858
5959 steps :
6060 - uses : actions/checkout@v5
@@ -69,22 +69,13 @@ jobs:
6969 env :
7070 CIBW_ARCHS : ${{ matrix.cibw_archs }}
7171 - name : Build wheels
72- # TODO: remove
73- if : matrix.cibw_archs == 'ARM64'
7472 uses : pypa/cibuildwheel@v3.1.4 # matplotlib had v3.1.3
7573 with :
7674 package-dir : .
7775 output-dir : wheelhouse
7876 config-file : " {package}/pyproject.toml"
7977 env :
80- # 3.9, 3.10 seem to not be happy because you can't install numpy from a wheel
81- # (and we're not going to try recompiling)
82- CIBW_SKIP : " cp39-win_arm64 cp310-win_arm64"
8378 CIBW_ARCHS : ${{ matrix.cibw_archs }}
84- # See: https://github.com/matplotlib/matplotlib/blob/1ddb1eccac8cfc25dee47bc538dc5913384b253f/pyproject.toml#L89C1-L95C23
85- CIBW_BEFORE_BUILD_WINDOWS : >-
86- pip install delvewheel
87- && pip install numpy
8879 # # - name: Setup Python
8980 # # if: ${{ startsWith(matrix.os, 'windows') }}
9081 # # uses: actions/setup-python@v5
0 commit comments