66 schedule :
77 - cron : ' 41 16 * * *' # Every day at 16:41 UTC (to avoid high load at exact hour values).
88
9+ env :
10+ UV_NO_SYNC : 1
11+ PYTHON_VERSION : 3.14
12+
913jobs :
1014 tests-full-install :
1115 name : Run tests with full install
1216 runs-on : ${{ matrix.os }}
1317 strategy :
1418 fail-fast : false # Ensure matrix jobs keep running even if one fails
1519 matrix :
16- python-version : ['3.10', '3.11', '3.12', '3.13']
20+ python-version : ['3.10', '3.11', '3.12', '3.13', '3.14' ]
1721 os : [ubuntu-latest, macOS-latest, windows-latest]
1822
1923 steps :
2327 with :
2428 python-version : ${{ matrix.python-version }}
2529 - name : Install default (with full options) and test dependencies
26- run : uv pip install '.[full]' --group test
30+ run : uv pip install --python-version=${{ matrix.python-version }} '.[full]' --group test
2731 - name : Run unit and doc tests with coverage report
2832 run : uv run pytest -W error tests/unit tests/doc --cov=src --cov-report=xml
2933 - name : Upload results to Codecov
3943 - name : Set up uv
4044 uses : astral-sh/setup-uv@v5
4145 with :
42- python-version : ' 3.13 '
46+ python-version : ${{ env.PYTHON_VERSION }}
4347 - name : Install default (without any option) and test dependencies
44- run : uv pip install . --group test
48+ run : uv pip install --python-version=${{ env.PYTHON_VERSION }} . --group test
4549 - name : Run unit and doc tests with coverage report
4650 run : |
4751 uv run pytest -W error tests/unit tests/doc \
@@ -64,10 +68,10 @@ jobs:
6468 - name : Set up uv
6569 uses : astral-sh/setup-uv@v5
6670 with :
67- python-version : ' 3.13 '
71+ python-version : ${{ env.PYTHON_VERSION }}
6872
6973 - name : Install dependencies (default with full options & doc)
70- run : uv pip install '.[full]' --group doc
74+ run : uv pip install --python-version=${{ env.PYTHON_VERSION }} '.[full]' --group doc
7175
7276 - name : Build Documentation
7377 working-directory : docs
@@ -83,10 +87,10 @@ jobs:
8387 - name : Set up uv
8488 uses : astral-sh/setup-uv@v5
8589 with :
86- python-version : ' 3.13 '
90+ python-version : ${{ env.PYTHON_VERSION }}
8791
8892 - name : Install dependencies (default with full options & check)
89- run : uv pip install '.[full]' --group check
93+ run : uv pip install --python-version=${{ env.PYTHON_VERSION }} '.[full]' --group check
9094
9195 - name : Run mypy
9296 run : uv run mypy src/torchjd
0 commit comments