@@ -50,13 +50,10 @@ jobs:
50
50
runs-on : ubuntu-latest
51
51
timeout-minutes : 60
52
52
steps :
53
- - name : Setup Python
54
- uses : actions /setup-python@v5
53
+ - name : Install the latest version of uv
54
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
55
55
with :
56
56
python-version : ${{ matrix.python-version }}
57
- allow-prereleases : true
58
- - name : Install uv
59
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
60
57
- name : Checkout pydantic
61
58
run : git clone --depth=1 https://github.com/pydantic/pydantic.git || git clone --depth=1 https://github.com/pydantic/pydantic.git
62
59
- name : Checkout typing_extensions
@@ -83,12 +80,10 @@ jobs:
83
80
runs-on : ubuntu-latest
84
81
timeout-minutes : 60
85
82
steps :
86
- - name : Setup Python
87
- uses : actions /setup-python@v5
83
+ - name : Install the latest version of uv
84
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
88
85
with :
89
86
python-version : ${{ matrix.python-version }}
90
- - name : Install uv
91
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
92
87
- name : Checkout typing_inspect
93
88
run : git clone --depth=1 https://github.com/ilevkivskyi/typing_inspect.git || git clone --depth=1 https://github.com/ilevkivskyi/typing_inspect.git
94
89
- name : Checkout typing_extensions
@@ -100,15 +95,15 @@ jobs:
100
95
run : |
101
96
set -x
102
97
cd typing_inspect
103
- uv pip install --system -r test-requirements.txt --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
98
+ uv venv .venv
99
+ uv pip install -r test-requirements.txt --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
104
100
- name : Install typing_extensions latest
105
- run : uv pip install --system "typing-extensions @ ./typing-extensions-latest"
101
+ run : cd typing_inspect; uv pip install "typing-extensions @ . ./typing-extensions-latest"
106
102
- name : List all installed dependencies
107
- run : uv pip freeze
103
+ run : cd typing_inspect; uv pip freeze
108
104
- name : Run typing_inspect tests
109
105
run : |
110
- cd typing_inspect
111
- pytest
106
+ cd typing_inspect; uv run --no-project pytest
112
107
113
108
pycroscope :
114
109
name : pycroscope tests
@@ -120,13 +115,10 @@ jobs:
120
115
runs-on : ubuntu-latest
121
116
timeout-minutes : 60
122
117
steps :
123
- - name : Setup Python
124
- uses : actions /setup-python@v5
118
+ - name : Install the latest version of uv
119
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
125
120
with :
126
121
python-version : ${{ matrix.python-version }}
127
- allow-prereleases : true
128
- - name : Install uv
129
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
130
122
- name : Check out pycroscope
131
123
run : git clone --depth=1 https://github.com/JelleZijlstra/pycroscope.git || git clone --depth=1 https://github.com/JelleZijlstra/pycroscope.git
132
124
- name : Checkout typing_extensions
@@ -138,15 +130,15 @@ jobs:
138
130
run : |
139
131
set -x
140
132
cd pycroscope
141
- uv pip install --system 'pycroscope[tests] @ .' --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
133
+ uv venv .venv
134
+ uv pip install 'pycroscope[tests] @ .' --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
142
135
- name : Install typing_extensions latest
143
- run : uv pip install --system "typing-extensions @ ./typing-extensions-latest"
136
+ run : cd pycroscope; uv pip install "typing-extensions @ . ./typing-extensions-latest"
144
137
- name : List all installed dependencies
145
- run : uv pip freeze
138
+ run : cd pycroscope; uv pip freeze
146
139
- name : Run pycroscope tests
147
140
run : |
148
- cd pycroscope
149
- pytest pycroscope/
141
+ cd pycroscope; uv run --no-project pytest pycroscope/
150
142
151
143
typeguard :
152
144
name : typeguard tests
@@ -158,13 +150,10 @@ jobs:
158
150
runs-on : ubuntu-latest
159
151
timeout-minutes : 60
160
152
steps :
161
- - name : Setup Python
162
- uses : actions /setup-python@v5
153
+ - name : Install the latest version of uv
154
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
163
155
with :
164
156
python-version : ${{ matrix.python-version }}
165
- allow-prereleases : true
166
- - name : Install uv
167
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
168
157
- name : Check out typeguard
169
158
run : git clone --depth=1 https://github.com/agronholm/typeguard.git || git clone --depth=1 https://github.com/agronholm/typeguard.git
170
159
- name : Checkout typing_extensions
@@ -176,16 +165,16 @@ jobs:
176
165
run : |
177
166
set -x
178
167
cd typeguard
179
- uv pip install --system "typeguard @ ." --group test --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
168
+ uv venv .venv
169
+ uv pip install "typeguard @ ." --group test --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
180
170
- name : Install typing_extensions latest
181
- run : uv pip install --system "typing-extensions @ ./typing-extensions-latest"
171
+ run : cd typeguard; uv pip install "typing-extensions @ . ./typing-extensions-latest"
182
172
- name : List all installed dependencies
183
- run : uv pip freeze
173
+ run : cd typeguard; uv pip freeze
184
174
- name : Run typeguard tests
185
175
run : |
186
- cd typeguard
187
176
export PYTHON_COLORS=0 # A test fails if tracebacks are colorized
188
- pytest
177
+ cd typeguard; uv run --no-project pytest
189
178
190
179
typed-argument-parser :
191
180
name : typed-argument-parser tests
@@ -197,12 +186,10 @@ jobs:
197
186
runs-on : ubuntu-latest
198
187
timeout-minutes : 60
199
188
steps :
200
- - name : Setup Python
201
- uses : actions /setup-python@v5
189
+ - name : Install the latest version of uv
190
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
202
191
with :
203
192
python-version : ${{ matrix.python-version }}
204
- - name : Install uv
205
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
206
193
- name : Check out typed-argument-parser
207
194
run : git clone --depth=1 https://github.com/swansonk14/typed-argument-parser.git || git clone --depth=1 https://github.com/swansonk14/typed-argument-parser.git
208
195
- name : Checkout typing_extensions
@@ -220,16 +207,16 @@ jobs:
220
207
run : |
221
208
set -x
222
209
cd typed-argument-parser
223
- uv pip install --system "typed-argument-parser @ ." --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
224
- uv pip install --system pytest --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
210
+ uv venv .venv
211
+ uv pip install "typed-argument-parser @ ." --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
212
+ uv pip install pytest --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
225
213
- name : Install typing_extensions latest
226
- run : uv pip install --system "typing-extensions @ ./typing-extensions-latest"
214
+ run : cd typed-argument-parser; uv pip install "typing-extensions @ . ./typing-extensions-latest"
227
215
- name : List all installed dependencies
228
- run : uv pip freeze
216
+ run : cd typed-argument-parser; uv pip freeze
229
217
- name : Run typed-argument-parser tests
230
218
run : |
231
- cd typed-argument-parser
232
- pytest
219
+ cd typed-argument-parser; uv run --no-project pytest
233
220
234
221
mypy :
235
222
name : stubtest & mypyc tests
@@ -241,13 +228,10 @@ jobs:
241
228
runs-on : ubuntu-latest
242
229
timeout-minutes : 60
243
230
steps :
244
- - name : Setup Python
245
- uses : actions /setup-python@v5
231
+ - name : Install the latest version of uv
232
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
246
233
with :
247
234
python-version : ${{ matrix.python-version }}
248
- allow-prereleases : true
249
- - name : Install uv
250
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
251
235
- name : Checkout mypy for stubtest and mypyc tests
252
236
run : git clone --depth=1 https://github.com/python/mypy.git || git clone --depth=1 https://github.com/python/mypy.git
253
237
- name : Checkout typing_extensions
@@ -259,16 +243,16 @@ jobs:
259
243
run : |
260
244
set -x
261
245
cd mypy
262
- uv pip install --system -r test-requirements.txt --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
263
- uv pip install --system -e .
246
+ uv venv .venv
247
+ uv pip install -r test-requirements.txt --exclude-newer "$(git show -s --date=format:'%Y-%m-%dT%H:%M:%SZ' --format=%cd HEAD)"
248
+ uv pip install -e .
264
249
- name : Install typing_extensions latest
265
- run : uv pip install --system "typing-extensions @ ./typing-extensions-latest"
250
+ run : cd mypy; uv pip install "typing-extensions @ . ./typing-extensions-latest"
266
251
- name : List all installed dependencies
267
- run : uv pip freeze
252
+ run : cd mypy; uv pip freeze
268
253
- name : Run stubtest & mypyc tests
269
254
run : |
270
- cd mypy
271
- pytest -n 2 ./mypy/test/teststubtest.py ./mypyc/test/test_run.py ./mypyc/test/test_external.py
255
+ cd mypy; uv run --no-project pytest -n 2 ./mypy/test/teststubtest.py ./mypyc/test/test_run.py ./mypyc/test/test_external.py
272
256
273
257
cattrs :
274
258
name : cattrs tests
@@ -280,8 +264,8 @@ jobs:
280
264
runs-on : ubuntu-latest
281
265
timeout-minutes : 60
282
266
steps :
283
- - name : Setup Python
284
- uses : actions /setup-python@v5
267
+ - name : Install the latest version of uv
268
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
285
269
with :
286
270
python-version : ${{ matrix.python-version }}
287
271
- name : Checkout cattrs
@@ -291,19 +275,14 @@ jobs:
291
275
with :
292
276
path : typing-extensions-latest
293
277
persist-credentials : false
294
- - name : Install pdm for cattrs
295
- run : pip install pdm
296
- - name : Add latest typing-extensions as a dependency
297
- run : |
298
- cd cattrs
299
- pdm remove typing-extensions
300
- pdm add --dev ../typing-extensions-latest
301
- - name : Install cattrs test dependencies
302
- run : cd cattrs; pdm install --dev -G :all
303
- - name : List all installed dependencies
304
- run : cd cattrs; pdm list -vv
305
- - name : Run cattrs tests
306
- run : cd cattrs; pdm run pytest tests
278
+ - name : Add local version of typing_extensions as a dependency
279
+ run : cd cattrs; uv add --editable ../typing-extensions-latest
280
+ - name : Install test dependencies
281
+ run : cd cattrs; uv sync --group test --all-extras
282
+ - name : List installed dependencies
283
+ run : cd cattrs; uv pip list
284
+ - name : Run tests
285
+ run : cd cattrs; uv run pytest tests
307
286
308
287
sqlalchemy :
309
288
name : sqlalchemy tests
@@ -320,32 +299,21 @@ jobs:
320
299
runs-on : ubuntu-22.04
321
300
timeout-minutes : 60
322
301
steps :
323
- - name : Setup Python
324
- uses : actions /setup-python@v5
302
+ - name : Install the latest version of uv
303
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
325
304
with :
326
305
python-version : ${{ matrix.python-version }}
327
- allow-prereleases : true
328
- - name : Install uv
329
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
330
306
- name : Checkout sqlalchemy
331
307
run : git clone -b ${{ matrix.checkout-ref }} --depth=1 https://github.com/sqlalchemy/sqlalchemy.git || git clone -b ${{ matrix.checkout-ref }} --depth=1 https://github.com/sqlalchemy/sqlalchemy.git
332
308
- name : Checkout typing_extensions
333
309
uses : actions/checkout@v4
334
310
with :
335
311
path : typing-extensions-latest
336
312
persist-credentials : false
337
- - name : Install sqlalchemy test dependencies
338
- run : uv pip install --system tox setuptools
339
- - name : List installed dependencies
340
- # Note: tox installs SQLAlchemy and its dependencies in a different isolated
341
- # environment before running the tests. To see the dependencies installed
342
- # in the test environment, look for the line 'freeze> python -m pip freeze --all'
343
- # in the output of the test step below.
344
- run : uv pip list
345
313
- name : Run sqlalchemy tests
346
314
run : |
347
315
cd sqlalchemy
348
- tox -e github-nocext \
316
+ uvx --with setuptools tox -e github-nocext \
349
317
--force-dep "typing-extensions @ file://$(pwd)/../typing-extensions-latest" \
350
318
-- -q --nomemory --notimingintensive
351
319
@@ -360,8 +328,8 @@ jobs:
360
328
matrix :
361
329
python-version : [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
362
330
steps :
363
- - name : Setup Python
364
- uses : actions /setup-python@v5
331
+ - name : Install the latest version of uv
332
+ uses : astral-sh /setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
365
333
with :
366
334
python-version : ${{ matrix.python-version }}
367
335
- name : Checkout litestar
@@ -371,8 +339,6 @@ jobs:
371
339
with :
372
340
path : typing-extensions-latest
373
341
persist-credentials : false
374
- - name : Install uv
375
- run : curl -LsSf https://astral.sh/uv/install.sh | sh
376
342
- name : Run litestar tests
377
343
run : uv run --with=../typing-extensions-latest -- python -m pytest tests/unit/test_typing.py tests/unit/test_dto
378
344
working-directory : litestar
0 commit comments