@@ -34,10 +34,15 @@ jobs:
3434 with : {fetch-depth: 0} # deep clone for setuptools-scm
3535 - uses : actions/setup-python@v5
3636 with : {python-version: "3.10"}
37+ - uses : astral-sh/setup-uv@v5
3738 - name : Run static analysis and format checkers
38- run : pipx run --python python3.10 tox -e lint,typecheck
39+ run : >-
40+ uvx --with tox-uv
41+ tox -e lint,typecheck
3942 - name : Build package distribution files
40- run : pipx run --python python3.10 tox -e clean,build
43+ run : >-
44+ uvx --with tox-uv
45+ tox -e clean,build
4146 - name : Record the path of wheel distribution
4247 id : wheel-distribution
4348 run : echo "path=$(ls dist/*.whl)" >> $GITHUB_OUTPUT
7782 - uses : actions/setup-python@v5
7883 with :
7984 python-version : ${{ matrix.python }}
85+ - uses : astral-sh/setup-uv@v5
8086 - name : Retrieve pre-built distribution files
8187 uses : actions/download-artifact@v4
8288 with : {name: python-distribution-files, path: dist/}
8793 path : ${{ env.VALIDATE_PYPROJECT_CACHE_REMOTE }}
8894 - name : Run tests
8995 run : >-
90- pipx run tox
96+ uvx --with tox-uv
97+ tox
9198 --installpkg '${{ needs.prepare.outputs.wheel-distribution }}'
9299 -- -n 5 -rFEx --durations 10 --color yes
93100 - name : Generate coverage report
@@ -118,6 +125,7 @@ jobs:
118125 - uses : actions/checkout@v4
119126 - uses : actions/setup-python@v5
120127 with : {python-version: "3.10"}
128+ - uses : astral-sh/setup-uv@v5
121129 - name : Retrieve pre-built distribution files
122130 uses : actions/download-artifact@v4
123131 with : {name: python-distribution-files, path: dist/}
@@ -127,4 +135,6 @@ jobs:
127135 TWINE_REPOSITORY : pypi
128136 TWINE_USERNAME : __token__
129137 TWINE_PASSWORD : ${{ secrets.PYPI_TOKEN }}
130- run : pipx run tox -e publish
138+ run : >-
139+ uvx --with tox-uv
140+ tox -e publish
0 commit comments