@@ -26,44 +26,32 @@ jobs:
2626 python-version : ${{ matrix.python-version }}
2727 - name : Setup Graphviz
2828 uses : ts-graphviz/setup-graphviz@v1
29- - name : Install Poetry
30- uses : snok/install-poetry@v1
29+ - name : Install uv
30+ uses : astral-sh/setup-uv@v3
3131 with :
32- version : 1.5.1
33- virtualenvs-create : true
34- virtualenvs-in-project : true
35- installer-parallel : true
36- - name : Load cached venv
37- id : cached-poetry-dependencies
38- uses : actions/cache@v3
39- with :
40- path : .venv
41- key : venv-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }}
42- - name : Install dependencies
43- if : steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
44- run : poetry install --no-interaction --no-root --all-extras
32+ enable-cache : true
33+ cache-suffix : " python${{ matrix.python-version }}"
34+ - name : Install the project
35+ run : uv sync --all-extras --dev
4536 - name : Install old pydot for 3.7 only
4637 if : matrix.python-version == 3.7
4738 run : |
48- source .venv/bin/activate
49- pip install pydot==2.0.0
39+ uv pip install pydot==2.0.0
5040 # ----------------------------------------------
5141 # run ruff
5242 # ----------------------------------------------
5343 - name : Linter with ruff
5444 if : matrix.python-version == 3.12
5545 run : |
56- source .venv/bin/activate
57- ruff check .
58- ruff format --check .
46+ uv run ruff check .
47+ uv run ruff format --check .
5948 # ----------------------------------------------
6049 # run pytest
6150 # ----------------------------------------------
6251 - name : Test with pytest
6352 run : |
64- source .venv/bin/activate
65- pytest --cov-report=xml:coverage.xml
66- coverage xml
53+ uv run pytest --cov-report=xml:coverage.xml
54+ uv run coverage xml
6755 # ----------------------------------------------
6856 # upload coverage
6957 # ----------------------------------------------
0 commit comments