1
- # This file is autogenerated by maturin v1.2.3
1
+ # This file is autogenerated by maturin v1.8.2
2
2
# To update, run
3
3
#
4
4
# maturin generate-ci github
@@ -15,86 +15,137 @@ permissions:
15
15
16
16
jobs :
17
17
linux :
18
- runs-on : ubuntu-latest
18
+ runs-on : ${{ matrix.platform.runner }}
19
19
strategy :
20
20
matrix :
21
- target : [x86_64, x86, aarch64, armv7, s390x, ppc64le]
21
+ platform :
22
+ - runner : ubuntu-22.04
23
+ target : x86_64
24
+ - runner : ubuntu-22.04
25
+ target : x86
26
+ - runner : ubuntu-22.04
27
+ target : aarch64
28
+ - runner : ubuntu-22.04
29
+ target : armv7
30
+ - runner : ubuntu-22.04
31
+ target : s390x
32
+ - runner : ubuntu-22.04
33
+ target : ppc64le
22
34
steps :
23
- - uses : actions/checkout@v3
24
- - uses : actions/setup-python@v4
35
+ - uses : actions/checkout@v4
36
+ - uses : actions/setup-python@v5
25
37
with :
26
- python-version : ' 3.13 '
38
+ python-version : 3.x
27
39
- name : Build wheels
28
40
uses : PyO3/maturin-action@v1
29
41
with :
30
- target : ${{ matrix.target }}
42
+ target : ${{ matrix.platform. target }}
31
43
args : --release --out dist --find-interpreter
32
- sccache : ' true '
44
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
33
45
manylinux : auto
34
46
- name : Upload wheels
35
- uses : actions/upload-artifact@v3
47
+ uses : actions/upload-artifact@v4
48
+ with :
49
+ name : wheels-linux-${{ matrix.platform.target }}
50
+ path : dist
51
+
52
+ musllinux :
53
+ runs-on : ${{ matrix.platform.runner }}
54
+ strategy :
55
+ matrix :
56
+ platform :
57
+ - runner : ubuntu-22.04
58
+ target : x86_64
59
+ - runner : ubuntu-22.04
60
+ target : x86
61
+ - runner : ubuntu-22.04
62
+ target : aarch64
63
+ - runner : ubuntu-22.04
64
+ target : armv7
65
+ steps :
66
+ - uses : actions/checkout@v4
67
+ - uses : actions/setup-python@v5
68
+ with :
69
+ python-version : 3.x
70
+ - name : Build wheels
71
+ uses : PyO3/maturin-action@v1
72
+ with :
73
+ target : ${{ matrix.platform.target }}
74
+ args : --release --out dist --find-interpreter
75
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
76
+ manylinux : musllinux_1_2
77
+ - name : Upload wheels
78
+ uses : actions/upload-artifact@v4
36
79
with :
37
- name : wheels
80
+ name : wheels-musllinux-${{ matrix.platform.target }}
38
81
path : dist
39
82
40
83
windows :
41
- runs-on : windows-latest
84
+ runs-on : ${{ matrix.platform.runner }}
42
85
strategy :
43
86
matrix :
44
- target : [x64, x86]
87
+ platform :
88
+ - runner : windows-latest
89
+ target : x64
90
+ - runner : windows-latest
91
+ target : x86
45
92
steps :
46
- - uses : actions/checkout@v3
47
- - uses : actions/setup-python@v4
93
+ - uses : actions/checkout@v4
94
+ - uses : actions/setup-python@v5
48
95
with :
49
- python-version : ' 3.13 '
50
- architecture : ${{ matrix.target }}
96
+ python-version : 3.x
97
+ architecture : ${{ matrix.platform. target }}
51
98
- name : Build wheels
52
99
uses : PyO3/maturin-action@v1
53
100
with :
54
- target : ${{ matrix.target }}
101
+ target : ${{ matrix.platform. target }}
55
102
args : --release --out dist --find-interpreter
56
- sccache : ' true '
103
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
57
104
- name : Upload wheels
58
- uses : actions/upload-artifact@v3
105
+ uses : actions/upload-artifact@v4
59
106
with :
60
- name : wheels
107
+ name : wheels-windows-${{ matrix.platform.target }}
61
108
path : dist
62
109
63
110
macos :
64
- runs-on : macos-latest
111
+ runs-on : ${{ matrix.platform.runner }}
65
112
strategy :
66
113
matrix :
67
- target : [x86_64, aarch64]
114
+ platform :
115
+ - runner : macos-13
116
+ target : x86_64
117
+ - runner : macos-14
118
+ target : aarch64
68
119
steps :
69
- - uses : actions/checkout@v3
70
- - uses : actions/setup-python@v4
120
+ - uses : actions/checkout@v4
121
+ - uses : actions/setup-python@v5
71
122
with :
72
- python-version : ' 3.13 '
123
+ python-version : 3.x
73
124
- name : Build wheels
74
125
uses : PyO3/maturin-action@v1
75
126
with :
76
- target : ${{ matrix.target }}
127
+ target : ${{ matrix.platform. target }}
77
128
args : --release --out dist --find-interpreter
78
- sccache : ' true '
129
+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
79
130
- name : Upload wheels
80
- uses : actions/upload-artifact@v3
131
+ uses : actions/upload-artifact@v4
81
132
with :
82
- name : wheels
133
+ name : wheels-macos-${{ matrix.platform.target }}
83
134
path : dist
84
135
85
136
sdist :
86
137
runs-on : ubuntu-latest
87
138
steps :
88
- - uses : actions/checkout@v3
139
+ - uses : actions/checkout@v4
89
140
- name : Build sdist
90
141
uses : PyO3/maturin-action@v1
91
142
with :
92
143
command : sdist
93
144
args : --out dist
94
145
- name : Upload sdist
95
- uses : actions/upload-artifact@v3
146
+ uses : actions/upload-artifact@v4
96
147
with :
97
- name : wheels
148
+ name : wheels-sdist
98
149
path : dist
99
150
100
151
check_clippy_python_bindings :
@@ -120,16 +171,26 @@ jobs:
120
171
release :
121
172
name : Release
122
173
runs-on : ubuntu-latest
123
- if : " startsWith(github.ref, 'refs/tags/')"
124
- needs : [linux, windows, macos, sdist, check_clippy_python_bindings]
174
+ if : ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
175
+ needs : [linux, musllinux, windows, macos, sdist, check_clippy_python_bindings]
176
+ permissions :
177
+ # Use to sign the release artifacts
178
+ id-token : write
179
+ # Used to upload release artifacts
180
+ contents : write
181
+ # Used to generate artifact attestation
182
+ attestations : write
125
183
steps :
126
- - uses : actions/download-artifact@v3
184
+ - uses : actions/download-artifact@v4
185
+ - name : Generate artifact attestation
186
+ uses : actions/attest-build-provenance@v1
127
187
with :
128
- name : wheels
188
+ subject-path : ' wheels-*/* '
129
189
- name : Publish to PyPI
190
+ if : ${{ startsWith(github.ref, 'refs/tags/') }}
130
191
uses : PyO3/maturin-action@v1
131
192
env :
132
193
MATURIN_PYPI_TOKEN : ${{ secrets.PYPI_PASSWORD }}
133
194
with :
134
195
command : upload
135
- args : --non-interactive --skip-existing *
196
+ args : --non-interactive --skip-existing wheels-*/ *
0 commit comments