1+ name : Testing
2+
13on :
24 push :
35 branches :
46 - main
57 tags :
6- - ' v* '
8+ - " v* "
79 pull_request :
810 branches :
911 - main
12+
1013jobs :
1114 lint :
1215 runs-on : ubuntu-latest
1316
1417 steps :
1518 - uses : actions/checkout@v4
19+ - uses : astral-sh/setup-uv@v5
1620 - uses : actions/setup-python@v5
1721 with :
18- python-version : " 3.11"
19- cache : pip
20- cache-dependency-path : pyproject.toml
22+ python-version : " 3.13"
2123
2224 - name : Install dependencies
23- run : |
24- python -m pip install --upgrade pip
25- pip install .[tests,dev]
25+ run : uv pip install --system .[tests,dev]
2626
2727 - name : Lint
28- run : |
29- pre-commit run --all-files --show-diff-on-failure
28+ run : pre-commit run --all-files --show-diff-on-failure
3029
3130 test :
3231 runs-on : ubuntu-latest
3332 strategy :
3433 matrix :
35- python-version : ["3.10", "3.11", "3.12"]
34+ python-version : ["3.10", "3.11", "3.12", "3.13" ]
3635
3736 steps :
38- - uses : actions/checkout@v4
39-
40- - uses : actions/setup-python@v5
41- with :
42- python-version : ${{ matrix.python-version }}
43-
44- - uses : actions/cache@v2
45- with :
46- path : ~/.cache/pip
47- key : ${{ runner.os }}-${{ matrix.python-version }}-pip-${{ hashFiles('**/setup.py') }}
48- restore-keys : |
49- ${{ runner.os }}-${{ matrix.python-version }}-pip-
50-
51- - name : Install dependencies
52- run : |
53- python -m pip install --upgrade pip
54- pip install .[tests]
55-
56- - name : Test
57- run : |
58- pytest --cov=pyrho --cov-report=xml
59-
60- - uses : codecov/codecov-action@v1
61- if : matrix.python-version == 3.11
62- with :
63- token : ${{ secrets.CODECOV_TOKEN }}
64- file : ./coverage.xml
37+ - uses : actions/checkout@v4
38+ - uses : astral-sh/setup-uv@v5
39+ with :
40+ enable-cache : true
41+ cache-dependency-glob : " pyproject.toml"
42+
43+ - uses : actions/setup-python@v5
44+ with :
45+ python-version : ${{ matrix.python-version }}
46+
47+ - name : Install dependencies
48+ run : uv pip install --system .[tests]
49+
50+ - name : Test
51+ run : pytest --cov=pyrho --cov-report=xml
52+
53+ - uses : codecov/codecov-action@v4
54+ if : matrix.python-version == 3.13
55+ with :
56+ token : ${{ secrets.CODECOV_TOKEN }}
57+ files : ./coverage.xml
6558
6659 docs :
6760 runs-on : ubuntu-latest
@@ -72,14 +65,18 @@ jobs:
7265 - name : Install pandoc
7366 run : sudo apt-get install pandoc
7467
68+ - uses : astral-sh/setup-uv@v5
69+ with :
70+ enable-cache : true
71+ cache-dependency-glob : " pyproject.toml"
72+
7573 - uses : actions/setup-python@v5
7674 with :
77- python-version : 3.11
75+ python-version : 3.13
7876
7977 - name : Install dependencies
80- run : |
81- python -m pip install --upgrade pip lxml[html_clean]
82- pip install -e .[docs]
78+ run : uv pip install --system -e .[docs]
79+
8380 - name : Build
8481 run : sphinx-build docs/source _build
8582
0 commit comments