@@ -113,7 +113,13 @@ jobs:
113
113
fail-fast : false
114
114
matrix :
115
115
os : ['ubuntu-latest', 'windows-latest', 'macos-13', 'macos-latest']
116
- python-version : ["3.9", "3.10", "3.11", "3.12", "3.13", "3.13t"]
116
+ python-version :
117
+ - " 3.9"
118
+ - " 3.10"
119
+ - " 3.11"
120
+ - " 3.12"
121
+ - " 3.13"
122
+ - " 3.13t"
117
123
architecture : ['x86', 'x64', 'arm64']
118
124
dependencies : ['full', 'pre']
119
125
include :
@@ -128,6 +134,12 @@ jobs:
128
134
architecture : ' x64'
129
135
dependencies : ' min'
130
136
exclude :
137
+ # Pre-release builds only for dev Python
138
+ - python-version : " 3.14-dev"
139
+ dependencies : full
140
+ - python-version : " 3.14t-dev"
141
+ dependencies : full
142
+
131
143
# Use ubuntu-latest to cover the whole range of Python. For Windows
132
144
# and OSX, checking oldest and newest should be sufficient.
133
145
- os : windows-latest
@@ -190,34 +202,18 @@ jobs:
190
202
- name : Install the latest version of uv
191
203
uses : astral-sh/setup-uv@v6
192
204
- name : Set up Python ${{ matrix.python-version }}
193
- if : " !endsWith(matrix.python-version, 't')"
194
205
uses : actions/setup-python@v5
195
206
with :
196
207
python-version : ${{ matrix.python-version }}
197
208
architecture : ${{ matrix.architecture }}
198
209
allow-prereleases : true
199
- - name : Set up Python ${{ matrix.python-version }}
200
- if : endsWith(matrix.python-version, 't')
201
- run : |
202
- echo "UV_PYTHON=${IMPL}-${VERSION}-${OS%-*}-${ARCH}-${LIBC}" >> $GITHUB_ENV
203
- source $GITHUB_ENV
204
- uv python install $UV_PYTHON
205
- env :
206
- IMPL : cpython
207
- VERSION : ${{ matrix.python-version }}
208
- # uv expects linux|macos|windows, we can drop the -* but need to rename ubuntu
209
- OS : ${{ matrix.os == 'ubuntu-latest' && 'linux' || matrix.os }}
210
- # uv expects x86, x86_64, aarch64 (among others)
211
- ARCH : ${{ matrix.architecture == 'x64' && 'x86_64' ||
212
- matrix.architecture == 'arm64' && 'aarch64' ||
213
- matrix.architecture }}
214
- # windows and macos have no options, gnu is the only option for the archs
215
- LIBC : ${{ matrix.os == 'ubuntu-latest' && 'gnu' || 'none' }}
216
210
- name : Display Python version
217
211
run : python -c "import sys; print(sys.version)"
218
212
- name : Install tox
219
213
run : |
220
- uv tool install -v tox --with=git+https://github.com/effigies/tox-gh-actions@abiflags --with=tox-uv
214
+ uv tool install -v tox \
215
+ --with=tox-uv \
216
+ --with=git+https://github.com/effigies/tox-gh-actions@abiflags
221
217
- name : Show tox config
222
218
run : tox c
223
219
- name : Run tox
0 commit comments