Skip to content

Commit c3e3ec8

Browse files
committed
Refactor CI workflow for Linux wheels and update Python version compatibility
1 parent 23855ad commit c3e3ec8

2 files changed

Lines changed: 32 additions & 10 deletions

File tree

.github/workflows/wheels.yml

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,44 @@ on:
66
workflow_dispatch: {}
77

88
jobs:
9-
build-linux:
10-
name: Linux wheels (x86_64 & aarch64)
9+
build-linux-x86_64:
10+
name: Linux x86_64 wheels
1111
runs-on: ubuntu-latest
1212
steps:
1313
- uses: actions/checkout@v4
1414

15-
- name: Enable multi-arch emulation (QEMU)
16-
uses: docker/setup-qemu-action@v3
15+
- name: Cache FFTW
16+
uses: actions/cache@v4
17+
with:
18+
path: .cache/fftw-*
19+
key: fftw-${{ runner.os }}-x86_64-3.3.10
20+
21+
- uses: actions/setup-python@v5
1722
with:
18-
platforms: all
23+
python-version: "3.12"
24+
25+
- name: Build wheels
26+
uses: pypa/cibuildwheel@v3.1.3
27+
env:
28+
CIBW_PLATFORM: linux
29+
CIBW_ARCHS: "x86_64"
30+
31+
- uses: actions/upload-artifact@v4
32+
with:
33+
name: wheels-linux-x86_64
34+
path: wheelhouse/*.whl
35+
36+
build-linux-arm64:
37+
name: Linux aarch64 wheels
38+
runs-on: ubuntu-24.04-arm
39+
steps:
40+
- uses: actions/checkout@v4
1941

2042
- name: Cache FFTW
2143
uses: actions/cache@v4
2244
with:
2345
path: .cache/fftw-*
24-
key: fftw-${{ runner.os }}-linux-3.3.10
46+
key: fftw-${{ runner.os }}-aarch64-3.3.10
2547

2648
- uses: actions/setup-python@v5
2749
with:
@@ -31,11 +53,11 @@ jobs:
3153
uses: pypa/cibuildwheel@v3.1.3
3254
env:
3355
CIBW_PLATFORM: linux
34-
CIBW_ARCHS: "x86_64 aarch64"
56+
CIBW_ARCHS: "aarch64"
3557

3658
- uses: actions/upload-artifact@v4
3759
with:
38-
name: wheels-linux
60+
name: wheels-linux-aarch64
3961
path: wheelhouse/*.whl
4062

4163
build-macos-arm:
@@ -108,7 +130,7 @@ jobs:
108130

109131
publish:
110132
name: Publish to PyPI
111-
needs: [build-linux, build-macos-arm, build-macos-intel]
133+
needs: [build-linux-x86_64, build-linux-arm64, build-macos-arm, build-macos-intel]
112134
runs-on: ubuntu-latest
113135
environment: wheels
114136
if: startsWith(github.ref, 'refs/tags/v')

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ CMAKE_CXX_EXTENSIONS = false
4141
CMAKE_OSX_DEPLOYMENT_TARGET = { env = "MACOSX_DEPLOYMENT_TARGET", default = "14.0" }
4242

4343
[tool.cibuildwheel]
44-
build = "cp310-* cp311-* cp312-*"
44+
build = "cp311-* cp312-*"
4545
skip = "pp* *-musllinux_*"
4646

4747
# Copy tests into cibuildwheel's temp dir and run against the installed wheel

0 commit comments

Comments
 (0)