@@ -65,15 +65,14 @@ jobs:
65
65
gdb --batch --quiet --nx --nh --ex 'py import rpyc; print(rpyc.version.version)'
66
66
67
67
- name : Set up Python ${{ matrix.python_version }}
68
- uses : actions /setup-python @v5
68
+ uses : astral-sh /setup-uv @v5
69
69
with :
70
70
python-version : ${{ matrix.python_version }}
71
- cache : ' pip '
72
- cache-dependency-path : |
71
+ enable- cache : true
72
+ cache-dependency-glob : |
73
73
**/pyproject.toml
74
74
**/requirements*.txt
75
75
76
-
77
76
- name : Verify tag against version
78
77
if : github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
79
78
env :
@@ -122,16 +121,13 @@ jobs:
122
121
123
122
- name : Install dependencies
124
123
run : |
125
- pip install --upgrade pip
126
- pip install --upgrade wheel build
127
- pip install --upgrade flake8 appdirs
128
- pip install --upgrade --editable .
124
+ uv pip install --upgrade --editable .
129
125
130
126
- name : Sanity checks
131
127
run : PWNLIB_NOTERM=1 python -bb -c 'from pwn import *; print(pwnlib.term.term_mode)'
132
128
133
129
- name : Install documentation dependencies
134
- run : pip install -r docs/requirements.txt
130
+ run : uv pip install -r docs/requirements.txt
135
131
136
132
- name : Disable yama ptrace_scope
137
133
run : |
@@ -219,7 +215,7 @@ jobs:
219
215
220
216
- name : Build source and wheel distributions
221
217
run : |
222
- python -m build
218
+ uv build
223
219
224
220
- uses : actions/upload-artifact@v4
225
221
if : matrix.python_version == '3.10'
@@ -248,11 +244,11 @@ jobs:
248
244
- uses : actions/checkout@v4
249
245
250
246
- name : Set up Python 3.12
251
- uses : actions /setup-python @v5
247
+ uses : astral-sh /setup-uv @v5
252
248
with :
253
249
python-version : ' 3.12'
254
- cache : ' pip '
255
- cache-dependency-path : |
250
+ enable- cache : true
251
+ cache-dependency-glob : |
256
252
**/pyproject.toml
257
253
**/requirements*.txt
258
254
@@ -288,21 +284,18 @@ jobs:
288
284
289
285
- name : Install dependencies
290
286
run : |
291
- pip install --upgrade pip
292
- pip install --upgrade wheel build
293
- pip install --upgrade flake8 appdirs
294
- pip install --upgrade --editable .
287
+ uv pip install --upgrade --editable .
295
288
296
289
- name : Sanity checks
297
290
run : PWNLIB_NOTERM=1 python -c 'from pwn import *; print(pwnlib.term.term_mode)'
298
291
299
292
- name : Install documentation dependencies
300
- run : pip install -r docs/requirements.txt
293
+ run : uv pip install -r docs/requirements.txt
301
294
302
295
- name : Coverage Doctests (Android Only)
303
296
run : |
304
297
source .android.env
305
- PWNLIB_NOTERM=1 coverage run -m sphinx -b doctest docs/source docs/build/doctest docs/source/adb.rst
298
+ PWNLIB_NOTERM=1 python -bb -m coverage run -m sphinx -b doctest docs/source docs/build/doctest docs/source/adb.rst
306
299
307
300
- uses : actions/upload-artifact@v4
308
301
with :
@@ -318,17 +311,20 @@ jobs:
318
311
- uses : actions/checkout@v4
319
312
320
313
- name : Set up Python 3.12
321
- uses : actions /setup-python @v5
314
+ uses : astral-sh /setup-uv @v5
322
315
with :
323
316
python-version : ' 3.12'
317
+ enable-cache : true
318
+ cache-dependency-glob : |
319
+ **/pyproject.toml
320
+ **/requirements*.txt
324
321
325
322
- name : Install dependencies
326
323
run : |
327
- pip install --upgrade pip
328
- pip install --upgrade --editable .
324
+ uv pip install --upgrade --editable .
329
325
330
326
- name : Install documentation dependencies
331
- run : pip install -r docs/requirements.txt
327
+ run : uv pip install -r docs/requirements.txt
332
328
333
329
- name : Sanity checks
334
330
run : |
0 commit comments