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