1- # This file is autogenerated by maturin v1.9 .4
1+ # This file is autogenerated by maturin v1.12 .4
22# To update, run
33#
44# maturin generate-ci -o .github/workflows/python.yml -m python/Cargo.toml --pytest github
1111 - main
1212 - master
1313 tags :
14- - " python/*"
14+ - ' python/*'
1515 pull_request :
1616 workflow_dispatch :
1717
@@ -37,21 +37,19 @@ jobs:
3737 - runner : ubuntu-22.04
3838 target : ppc64le
3939 steps :
40- - uses : actions/checkout@v4
41- - uses : actions/setup-python@v5
40+ - uses : actions/checkout@v6
41+ - uses : actions/setup-python@v6
4242 with :
4343 python-version : 3.x
4444 - name : Build wheels
45- env :
46- CFLAGS_aarch64_unknown_linux_gnu : ${{ matrix.platform.target == 'aarch64' && '-D__ARM_ARCH=8' || '' }}
4745 uses : PyO3/maturin-action@v1
4846 with :
4947 target : ${{ matrix.platform.target }}
5048 args : --release --out dist --find-interpreter --manifest-path python/Cargo.toml
5149 sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
5250 manylinux : auto
5351 - name : Upload wheels
54- uses : actions/upload-artifact@v4
52+ uses : actions/upload-artifact@v5
5553 with :
5654 name : wheels-linux-${{ matrix.platform.target }}
5755 path : dist
6260 set -e
6361 python3 -m venv .venv
6462 source .venv/bin/activate
65- pip install theopendictionary --no-index -- find-links dist --force-reinstall
63+ pip install theopendictionary --find-links dist --force-reinstall
6664 pip install pytest syrupy pytest-asyncio
6765 cd python && pytest
6866 - name : pytest
@@ -75,10 +73,10 @@ jobs:
7573 install : |
7674 apt-get update
7775 apt-get install -y --no-install-recommends python3 python3-pip
78- pip3 install -U pip pytest syrupy pytest-asyncio
76+ pip3 install -U pip pytest
7977 run : |
8078 set -e
81- pip3 install theopendictionary --no-index -- find-links dist --force-reinstall
79+ pip3 install theopendictionary --find-links dist --force-reinstall
8280 cd python && pytest
8381
8482 musllinux :
9593 - runner : ubuntu-22.04
9694 target : armv7
9795 steps :
98- - uses : actions/checkout@v4
99- - uses : actions/setup-python@v5
96+ - uses : actions/checkout@v6
97+ - uses : actions/setup-python@v6
10098 with :
10199 python-version : 3.x
102100 - name : Build wheels
@@ -107,24 +105,22 @@ jobs:
107105 sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
108106 manylinux : musllinux_1_2
109107 - name : Upload wheels
110- uses : actions/upload-artifact@v4
108+ uses : actions/upload-artifact@v5
111109 with :
112110 name : wheels-musllinux-${{ matrix.platform.target }}
113111 path : dist
114112 - name : pytest
115113 if : ${{ startsWith(matrix.platform.target, 'x86_64') }}
116- uses : addnab/docker-run-action@v3
117- with :
118- image : alpine:latest
119- options : -v ${{ github.workspace }}:/io -w /io
120- run : |
121- set -e
114+ run : |
115+ set -e
116+ docker run --rm -v ${{ github.workspace }}:/io -w /io alpine:latest sh -c '
122117 apk add py3-pip py3-virtualenv
123118 python3 -m virtualenv .venv
124119 source .venv/bin/activate
125120 pip install theopendictionary --no-index --find-links dist --force-reinstall
126121 pip install pytest syrupy pytest-asyncio
127122 cd python && pytest
123+ '
128124 - name : pytest
129125 if : ${{ !startsWith(matrix.platform.target, 'x86') }}
130126 uses : uraimo/run-on-arch-action@v2
@@ -139,7 +135,7 @@ jobs:
139135 python3 -m virtualenv .venv
140136 source .venv/bin/activate
141137 pip install pytest syrupy pytest-asyncio
142- pip install theopendictionary --no-index -- find-links dist --force-reinstall
138+ pip install theopendictionary --find-links dist --force-reinstall
143139 cd python && pytest
144140
145141 windows :
@@ -149,33 +145,37 @@ jobs:
149145 platform :
150146 - runner : windows-latest
151147 target : x64
148+ python_arch : x64
152149 - runner : windows-latest
153150 target : x86
151+ python_arch : x86
152+ - runner : windows-11-arm
153+ target : aarch64
154+ python_arch : arm64
154155 steps :
155- - uses : actions/checkout@v4
156- - uses : actions/setup-python@v5
156+ - uses : actions/checkout@v6
157+ - uses : actions/setup-python@v6
157158 with :
158- python-version : 3.x
159- architecture : ${{ matrix.platform.target }}
159+ python-version : 3.13
160+ architecture : ${{ matrix.platform.python_arch }}
160161 - name : Build wheels
161162 uses : PyO3/maturin-action@v1
162163 with :
163164 target : ${{ matrix.platform.target }}
164165 args : --release --out dist --find-interpreter --manifest-path python/Cargo.toml
165166 sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
166167 - name : Upload wheels
167- uses : actions/upload-artifact@v4
168+ uses : actions/upload-artifact@v5
168169 with :
169170 name : wheels-windows-${{ matrix.platform.target }}
170171 path : dist
171172 - name : pytest
172- if : ${{ !startsWith(matrix.platform.target, 'aarch64') }}
173173 shell : bash
174174 run : |
175175 set -e
176176 python3 -m venv .venv
177177 source .venv/Scripts/activate
178- pip install theopendictionary --no-index -- find-links dist --force-reinstall
178+ pip install theopendictionary --find-links dist --force-reinstall
179179 pip install pytest syrupy pytest-asyncio
180180 cd python && pytest
181181
@@ -184,13 +184,13 @@ jobs:
184184 strategy :
185185 matrix :
186186 platform :
187- - runner : macos-15
187+ - runner : macos-15-intel
188188 target : x86_64
189- - runner : macos-14
189+ - runner : macos-latest
190190 target : aarch64
191191 steps :
192- - uses : actions/checkout@v4
193- - uses : actions/setup-python@v5
192+ - uses : actions/checkout@v6
193+ - uses : actions/setup-python@v6
194194 with :
195195 python-version : 3.x
196196 - name : Build wheels
@@ -200,7 +200,7 @@ jobs:
200200 args : --release --out dist --find-interpreter --manifest-path python/Cargo.toml
201201 sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
202202 - name : Upload wheels
203- uses : actions/upload-artifact@v4
203+ uses : actions/upload-artifact@v5
204204 with :
205205 name : wheels-macos-${{ matrix.platform.target }}
206206 path : dist
@@ -209,21 +209,21 @@ jobs:
209209 set -e
210210 python3 -m venv .venv
211211 source .venv/bin/activate
212- pip install theopendictionary --no-index -- find-links dist --force-reinstall
212+ pip install theopendictionary --find-links dist --force-reinstall
213213 pip install pytest syrupy pytest-asyncio
214214 cd python && pytest
215215
216216 sdist :
217217 runs-on : ubuntu-latest
218218 steps :
219- - uses : actions/checkout@v4
219+ - uses : actions/checkout@v6
220220 - name : Build sdist
221221 uses : PyO3/maturin-action@v1
222222 with :
223223 command : sdist
224224 args : --out dist --manifest-path python/Cargo.toml
225225 - name : Upload sdist
226- uses : actions/upload-artifact@v4
226+ uses : actions/upload-artifact@v5
227227 with :
228228 name : wheels-sdist
229229 path : dist
@@ -241,16 +241,16 @@ jobs:
241241 # Used to generate artifact attestation
242242 attestations : write
243243 steps :
244- - uses : actions/download-artifact@v4
244+ - uses : actions/download-artifact@v6
245245 - name : Generate artifact attestation
246- uses : actions/attest-build-provenance@v2
246+ uses : actions/attest-build-provenance@v3
247247 with :
248- subject-path : " wheels-*/*"
248+ subject-path : ' wheels-*/*'
249+ - name : Install uv
250+ if : ${{ startsWith(github.ref, 'refs/tags/') }}
251+ uses : astral-sh/setup-uv@v7
249252 - name : Publish to PyPI
250- if : ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
251- uses : PyO3/maturin-action@v1
253+ if : ${{ startsWith(github.ref, 'refs/tags/') }}
254+ run : uv publish 'wheels-*/*'
252255 env :
253- MATURIN_PYPI_TOKEN : ${{ secrets.PYPI_TOKEN }}
254- with :
255- command : upload
256- args : --non-interactive --skip-existing wheels-*/*
256+ UV_PUBLISH_TOKEN : ${{ secrets.PYPI_TOKEN }}
0 commit comments