Skip to content

Commit 4149c5d

Browse files
authored
ci: update matrix and bump actions (#518)
1 parent 2ea4b0c commit 4149c5d

File tree

3 files changed

+67
-71
lines changed

3 files changed

+67
-71
lines changed

.github/workflows/ci.yml

Lines changed: 65 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
lint:
1616
runs-on: ubuntu-latest
1717
steps:
18-
- uses: actions/checkout@v4
18+
- uses: actions/checkout@v6
1919
- uses: dtolnay/rust-toolchain@stable
2020
with:
2121
components: rustfmt, clippy
@@ -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,40 +70,32 @@ 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:
104-
- uses: actions/checkout@v4
96+
- uses: actions/checkout@v6
10597
- name: Set up Python ${{ matrix.python-version }}
106-
uses: actions/setup-python@v5
98+
uses: actions/setup-python@v6
10799
with:
108100
python-version: ${{ matrix.python-version }}
109101
architecture: ${{ matrix.platform.python-architecture }}
@@ -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,25 +152,29 @@ 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:
179-
- uses: actions/checkout@v4
175+
- uses: actions/checkout@v6
180176
- name: Set up Python ${{ matrix.python-version }}
181-
uses: actions/setup-python@v5
177+
uses: actions/setup-python@v6
182178
with:
183179
python-version: ${{ matrix.python-version }}
184180
architecture: ${{ matrix.platform.python-architecture }}
@@ -203,10 +199,10 @@ jobs:
203199
runs-on: ubuntu-latest
204200
needs: [lint, check-msrv, examples]
205201
steps:
206-
- uses: actions/checkout@v4
207-
- uses: actions/setup-python@v5
202+
- uses: actions/checkout@v6
203+
- uses: actions/setup-python@v6
208204
with:
209-
python-version: "3.12"
205+
python-version: "3.14"
210206
- uses: messense/maturin-action@v1
211207
with:
212208
target: aarch64
@@ -217,10 +213,10 @@ jobs:
217213
runs-on: ubuntu-latest
218214
needs: [lint, check-msrv, examples]
219215
steps:
220-
- uses: actions/checkout@v4
221-
- uses: actions/setup-python@v5
216+
- uses: actions/checkout@v6
217+
- uses: actions/setup-python@v6
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
@@ -235,10 +231,10 @@ jobs:
235231
runs-on: ubuntu-latest
236232
needs: [lint, check-msrv, examples]
237233
steps:
238-
- uses: actions/checkout@v4
239-
- uses: actions/setup-python@v5
234+
- uses: actions/checkout@v6
235+
- uses: actions/setup-python@v6
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
@@ -250,11 +246,11 @@ jobs:
250246
check-msrv:
251247
runs-on: ubuntu-latest
252248
steps:
253-
- uses: actions/checkout@v4
249+
- uses: actions/checkout@v6
254250
- name: Set up Python
255-
uses: actions/setup-python@v5
251+
uses: actions/setup-python@v6
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
@@ -291,10 +287,10 @@ jobs:
291287
examples:
292288
runs-on: ubuntu-latest
293289
steps:
294-
- uses: actions/checkout@v4
295-
- uses: actions/setup-python@v5
290+
- uses: actions/checkout@v6
291+
- uses: actions/setup-python@v6
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
@@ -311,10 +307,10 @@ jobs:
311307
runs-on: ubuntu-latest
312308
needs: [lint, check-msrv, examples]
313309
steps:
314-
- uses: actions/checkout@v4
315-
- uses: actions/setup-python@v5
310+
- uses: actions/checkout@v6
311+
- uses: actions/setup-python@v6
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
@@ -327,7 +323,7 @@ jobs:
327323
- name: Generate code coverage
328324
run: cargo llvm-cov --all-features --codecov --output-path coverage.json
329325
- name: Upload coverage to Codecov
330-
uses: codecov/codecov-action@v4
326+
uses: codecov/codecov-action@v5
331327
with:
332328
file: coverage.json
333329
token: ${{ secrets.CODECOV_TOKEN }}

.github/workflows/doc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
deploy:
1010
runs-on: ubuntu-latest
1111
steps:
12-
- uses: actions/checkout@v2
12+
- uses: actions/checkout@v6
1313
- name: Build the doc
1414
run: |
1515
cargo doc --all-features --no-deps

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
id-token: write
1818
steps:
1919
- name: Checkout repository
20-
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
20+
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
2121
with:
2222
# The tag to build or the tag received by the tag event
2323
ref: ${{ github.event.inputs.version || github.ref }}

0 commit comments

Comments
 (0)