2323 runs-on : ubuntu-latest
2424 strategy :
2525 matrix :
26- python-version : ["3.10", "3.11", "3.12"]
26+ python-version : ["3.10", "3.11", "3.12", "3.13" ]
2727 steps :
2828 - uses : actions/checkout@v4
2929 - uses : actions/setup-python@v5
@@ -40,79 +40,97 @@ jobs:
4040 uv run pytest
4141
4242 linux :
43- runs-on : ubuntu-latest
43+ runs-on : ${{ matrix.platform.runner }}
4444 needs : [test]
4545 strategy :
4646 matrix :
47- target : [x86_64, x86, aarch64, armv7, s390x, ppc64le]
47+ platform :
48+ - runner : ubuntu-22.04
49+ target : x86_64
50+ - runner : ubuntu-22.04
51+ target : x86
52+ - runner : ubuntu-22.04
53+ target : aarch64
54+ - runner : ubuntu-22.04
55+ target : armv7
56+ - runner : ubuntu-22.04
57+ target : s390x
58+ - runner : ubuntu-22.04
59+ target : ppc64le
4860 steps :
4961 - uses : actions/checkout@v4
5062 - uses : actions/setup-python@v5
5163 with :
52- python-version : ' 3.10 '
64+ python-version : 3.x
5365 - name : Build wheels
5466 uses : PyO3/maturin-action@v1
5567 with :
56- target : ${{ matrix.target }}
68+ target : ${{ matrix.platform. target }}
5769 args : --release --out dist --find-interpreter
58- sccache : ' true '
70+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
5971 manylinux : auto
6072 - name : Upload wheels
6173 uses : actions/upload-artifact@v4
6274 with :
63- name : wheels-linux-${{ matrix.target }}
75+ name : wheels-linux-${{ matrix.platform. target }}
6476 path : dist
6577
6678 windows :
67- runs-on : windows-latest
79+ runs-on : ${{ matrix.platform.runner }}
6880 needs : [test]
6981 strategy :
7082 matrix :
71- target : [x64, x86]
83+ platform :
84+ - runner : windows-latest
85+ target : x64
86+ - runner : windows-latest
87+ target : x86
7288 steps :
7389 - uses : actions/checkout@v4
7490 - uses : actions/setup-python@v5
7591 with :
76- python-version : ' 3.10 '
77- architecture : ${{ matrix.target }}
92+ python-version : 3.x
93+ architecture : ${{ matrix.platform. target }}
7894 - name : Build wheels
7995 uses : PyO3/maturin-action@v1
8096 with :
81- target : ${{ matrix.target }}
97+ target : ${{ matrix.platform. target }}
8298 args : --release --out dist --find-interpreter
83- sccache : ' true '
99+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
84100 - name : Upload wheels
85101 uses : actions/upload-artifact@v4
86102 with :
87- name : wheels-windows-${{ matrix.target }}
103+ name : wheels-windows-${{ matrix.platform. target }}
88104 path : dist
89105
90106 macos :
91- runs-on : macos-latest
92- needs : [test]
107+ runs-on : ${{ matrix.platform.runner }}
93108 strategy :
94109 matrix :
95- target : [x86_64, aarch64]
110+ platform :
111+ - runner : macos-13
112+ target : x86_64
113+ - runner : macos-14
114+ target : aarch64
96115 steps :
97116 - uses : actions/checkout@v4
98117 - uses : actions/setup-python@v5
99118 with :
100- python-version : ' 3.10 '
119+ python-version : 3.x
101120 - name : Build wheels
102121 uses : PyO3/maturin-action@v1
103122 with :
104- target : ${{ matrix.target }}
123+ target : ${{ matrix.platform. target }}
105124 args : --release --out dist --find-interpreter
106- sccache : ' true '
125+ sccache : ${{ !startsWith(github.ref, 'refs/tags/') }}
107126 - name : Upload wheels
108127 uses : actions/upload-artifact@v4
109128 with :
110- name : wheels-macos-${{ matrix.target }}
129+ name : wheels-macos-${{ matrix.platform. target }}
111130 path : dist
112131
113132 sdist :
114133 runs-on : ubuntu-latest
115- needs : [test]
116134 steps :
117135 - uses : actions/checkout@v4
118136 - name : Build sdist
0 commit comments