Skip to content

Commit 776fdd9

Browse files
committed
update CI matrix
1 parent 9fffe31 commit 776fdd9

File tree

1 file changed

+47
-51
lines changed

1 file changed

+47
-51
lines changed

.github/workflows/ci.yml

Lines changed: 47 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,9 @@ jobs:
5252
rust-target: "x86_64-unknown-linux-gnu",
5353
},
5454
{
55-
os: "macos-15-intel",
56-
python-architecture: "x64",
57-
rust-target: "x86_64-apple-darwin",
55+
os: "macOS-latest",
56+
python-architecture: "arm64",
57+
rust-target: "aarch64-apple-darwin",
5858
},
5959
{
6060
os: "windows-latest",
@@ -70,36 +70,28 @@ jobs:
7070
include:
7171
# ubuntu-24.04 does not support 3.7
7272
- python-version: 3.7
73-
platform:
74-
{
75-
os: "ubuntu-22.04",
76-
python-architecture: "x64",
77-
rust-target: "x86_64-unknown-linux-gnu",
78-
}
79-
# Older versions of CPython are not available for AArch64.
80-
- python-version: 3.12
81-
platform:
82-
{
83-
os: "macOS-latest",
84-
python-architecture: "arm64",
85-
rust-target: "aarch64-apple-darwin",
86-
}
73+
platform: { os: "ubuntu-22.04", python-architecture: "x64", rust-target: "x86_64-unknown-linux-gnu" }
74+
# not available on arm64 macOS, test on x64
75+
- python-version: 3.7
76+
platform: { os: "macos-15-intel", python-architecture: "x64", rust-target: "x86_64-apple-darwin" }
77+
- python-version: 3.8
78+
platform: { os: "macos-15-intel", python-architecture: "x64", rust-target: "x86_64-apple-darwin" }
79+
- python-version: 3.9
80+
platform: { os: "macos-15-intel", python-architecture: "x64", rust-target: "x86_64-apple-darwin" }
8781
exclude:
8882
# ubuntu-24.04 does not support 3.7
8983
- python-version: 3.7
90-
platform:
91-
{
92-
os: "ubuntu-latest",
93-
python-architecture: "x64",
94-
rust-target: "x86_64-unknown-linux-gnu",
95-
}
84+
platform: { os: "ubuntu-latest", python-architecture: "x64", rust-target: "x86_64-unknown-linux-gnu" }
85+
# not available on arm64 macOS
86+
- python-version: 3.7
87+
platform: { os: "macOS-latest", python-architecture: "arm64", rust-target: "aarch64-apple-darwin" }
88+
- python-version: 3.8
89+
platform: { os: "macOS-latest", python-architecture: "arm64", rust-target: "aarch64-apple-darwin" }
90+
- python-version: 3.9
91+
platform: { os: "macOS-latest", python-architecture: "arm64", rust-target: "aarch64-apple-darwin" }
92+
# no 32 bit windows PyPy
9693
- python-version: pypy-3.11
97-
platform:
98-
{
99-
os: "windows-latest",
100-
python-architecture: "x86",
101-
rust-target: "i686-pc-windows-msvc",
102-
}
94+
platform: { os: "windows-latest", python-architecture: "x86", rust-target: "i686-pc-windows-msvc" }
10395
steps:
10496
- uses: actions/checkout@v4
10597
- name: Set up Python ${{ matrix.python-version }}
@@ -133,7 +125,7 @@ jobs:
133125
strategy:
134126
fail-fast: ${{ !contains(github.event.pull_request.labels.*.name, 'CI-no-fail-fast') }}
135127
matrix:
136-
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
128+
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] # last numpy 1 release for 3.12
137129
platform:
138130
[
139131
{
@@ -142,9 +134,9 @@ jobs:
142134
rust-target: "x86_64-unknown-linux-gnu",
143135
},
144136
{
145-
os: "macos-15-intel",
146-
python-architecture: "x64",
147-
rust-target: "x86_64-apple-darwin",
137+
os: "macOS-latest",
138+
python-architecture: "arm64",
139+
rust-target: "aarch64-apple-darwin",
148140
},
149141
{
150142
os: "windows-latest",
@@ -160,21 +152,25 @@ jobs:
160152
include:
161153
# ubuntu-24.04 does not support 3.7
162154
- python-version: 3.7
163-
platform:
164-
{
165-
os: "ubuntu-22.04",
166-
python-architecture: "x64",
167-
rust-target: "x86_64-unknown-linux-gnu",
168-
}
155+
platform: { os: "ubuntu-22.04", python-architecture: "x64", rust-target: "x86_64-unknown-linux-gnu" }
156+
# not available on arm64 macOS, test on x64
157+
- python-version: 3.7
158+
platform: { os: "macos-15-intel", python-architecture: "x64", rust-target: "x86_64-apple-darwin" }
159+
- python-version: 3.8
160+
platform: { os: "macos-15-intel", python-architecture: "x64", rust-target: "x86_64-apple-darwin" }
161+
- python-version: 3.9
162+
platform: { os: "macos-15-intel", python-architecture: "x64", rust-target: "x86_64-apple-darwin" }
169163
exclude:
170164
# ubuntu-24.04 does not support 3.7
171165
- python-version: 3.7
172-
platform:
173-
{
174-
os: "ubuntu-latest",
175-
python-architecture: "x64",
176-
rust-target: "x86_64-unknown-linux-gnu",
177-
}
166+
platform: { os: "ubuntu-latest", python-architecture: "x64", rust-target: "x86_64-unknown-linux-gnu" }
167+
# not available on arm64 macOS
168+
- python-version: 3.7
169+
platform: { os: "macOS-latest", python-architecture: "arm64", rust-target: "aarch64-apple-darwin" }
170+
- python-version: 3.8
171+
platform: { os: "macOS-latest", python-architecture: "arm64", rust-target: "aarch64-apple-darwin" }
172+
- python-version: 3.9
173+
platform: { os: "macOS-latest", python-architecture: "arm64", rust-target: "aarch64-apple-darwin" }
178174
steps:
179175
- uses: actions/checkout@v4
180176
- name: Set up Python ${{ matrix.python-version }}
@@ -206,7 +202,7 @@ jobs:
206202
- uses: actions/checkout@v4
207203
- uses: actions/setup-python@v5
208204
with:
209-
python-version: "3.12"
205+
python-version: "3.14"
210206
- uses: messense/maturin-action@v1
211207
with:
212208
target: aarch64
@@ -220,7 +216,7 @@ jobs:
220216
- uses: actions/checkout@v4
221217
- uses: actions/setup-python@v5
222218
with:
223-
python-version: "3.12"
219+
python-version: "3.14"
224220
- uses: dtolnay/rust-toolchain@stable
225221
- uses: Swatinem/rust-cache@v2
226222
continue-on-error: true
@@ -238,7 +234,7 @@ jobs:
238234
- uses: actions/checkout@v4
239235
- uses: actions/setup-python@v5
240236
with:
241-
python-version: "3.12"
237+
python-version: "3.14"
242238
- uses: dtolnay/rust-toolchain@nightly
243239
- uses: Swatinem/rust-cache@v2
244240
continue-on-error: true
@@ -254,7 +250,7 @@ jobs:
254250
- name: Set up Python
255251
uses: actions/setup-python@v5
256252
with:
257-
python-version: "3.12"
253+
python-version: "3.14"
258254
- name: Install Rust
259255
uses: dtolnay/[email protected]
260256
- uses: Swatinem/rust-cache@v2
@@ -294,7 +290,7 @@ jobs:
294290
- uses: actions/checkout@v4
295291
- uses: actions/setup-python@v5
296292
with:
297-
python-version: "3.12"
293+
python-version: "3.14"
298294
- name: Install OpenBLAS
299295
run: sudo apt install --yes libopenblas-dev
300296
- name: Install Rust
@@ -314,7 +310,7 @@ jobs:
314310
- uses: actions/checkout@v4
315311
- uses: actions/setup-python@v5
316312
with:
317-
python-version: "3.12"
313+
python-version: "3.14"
318314
- name: Install numpy
319315
run: pip install "numpy" ml_dtypes
320316
- uses: Swatinem/rust-cache@v2

0 commit comments

Comments
 (0)