@@ -10,63 +10,61 @@ jobs:
1010 build :
1111 name : Build
1212 runs-on : ubuntu-24.04
13+ env :
14+ PYTHON_VERSION : " 3.10"
15+ UV_VERSION : " 0.11.13"
1316
1417 steps :
1518 - name : Checkout repository
16- uses : actions/checkout@v6
19+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1720
18- - name : Setup Python
19- uses : actions /setup-python@v6
21+ - name : Install uv
22+ uses : astral-sh /setup-uv@61cb8a9741eeb8a550a1b8544337180c0fc8476b # v7.2.0
2023 with :
21- python-version : " 3.13"
24+ enable-cache : true
25+ version : ${{ env.UV_VERSION }}
2226
23- - name : Install Poetry
24- uses : snok/install-poetry@v1
27+ - name : " Set up Python"
28+ uses : actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # 6.1.0
29+ with :
30+ python-version : ${{ env.PYTHON_VERSION }}
2531
2632 - name : Install dependencies
27- run : poetry install
33+ run : uv sync --locked --all-extras --dev
2834
2935 - name : Lint
30- run : poetry run black -- check .
36+ run : uv run ruff check .
3137
3238 - name : Build
33- run : poetry build
39+ run : uv build
3440
35- # the `coverage xml -i` command is needed to re-write the
36- # coverage report with relative paths
3741 - name : Test
38- run : |
39- poetry run pytest --cov src --cov-report xml tests
40- poetry run coverage xml -i
42+ run : uv run pytest
4143
4244 test :
4345 name : Test
4446 runs-on : ubuntu-24.04
4547 strategy :
4648 fail-fast : false
4749 matrix :
48- python-version : ["3.10", "3.11", "3.12", "3.13"]
49- poetry-version : ["1.8.2"]
50+ python-version : ["3.10", "3.11", "3.12", "3.13", "3.14"]
5051
5152 steps :
5253 - name : Checkout repository
53- uses : actions/checkout@v6
54-
55- - name : Setup python
56- uses : actions/setup-python@v6
57- with :
58- python-version : " ${{ matrix.python-version }}"
54+ uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
5955
60- - name : Install Poetry
61- uses : snok/install-poetry@v1
56+ - name : Install uv
57+ uses : astral-sh/setup-uv@61cb8a9741eeb8a550a1b8544337180c0fc8476b # v7.2.0
6258 with :
63- version : " ${{ matrix.poetry-version }}"
59+ enable-cache : true
60+ version : ${{ env.UV_VERSION }}
61+ python-version : ${{ matrix.python-version }}
6462
6563 - name : Install dependencies
66- run : poetry install
64+ run : uv sync --locked --all-extras --dev
6765
6866 - name : Build
69- run : poetry build
67+ run : uv build
7068
7169 - name : Test
72- run : poetry run tox
70+ run : uv run pytest
0 commit comments