@@ -14,21 +14,37 @@ jobs:
1414 project-euler :
1515 runs-on : ubuntu-latest
1616 steps :
17- - uses : actions/checkout@v5
18- - uses : astral-sh/setup-uv@v6
17+ - run :
18+ sudo apt-get update && sudo apt-get install -y libtiff5-dev libjpeg8-dev libopenjp2-7-dev
19+ zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python3-tk
20+ libharfbuzz-dev libfribidi-dev libxcb1-dev
21+ libxml2-dev libxslt-dev
22+ libhdf5-dev
23+ libopenblas-dev
24+ - uses : actions/checkout@v6
25+ - uses : astral-sh/setup-uv@v7
1926 - uses : actions/setup-python@v6
2027 with :
21- python-version : 3.x
28+ python-version : 3.14
29+ allow-prereleases : true
2230 - run : uv sync --group=euler-validate --group=test
2331 - run : uv run pytest --doctest-modules --cov-report=term-missing:skip-covered --cov=project_euler/ project_euler/
2432 validate-solutions :
2533 runs-on : ubuntu-latest
2634 steps :
27- - uses : actions/checkout@v5
28- - uses : astral-sh/setup-uv@v6
35+ - run :
36+ sudo apt-get update && sudo apt-get install -y libtiff5-dev libjpeg8-dev libopenjp2-7-dev
37+ zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python3-tk
38+ libharfbuzz-dev libfribidi-dev libxcb1-dev
39+ libxml2-dev libxslt-dev
40+ libhdf5-dev
41+ libopenblas-dev
42+ - uses : actions/checkout@v6
43+ - uses : astral-sh/setup-uv@v7
2944 - uses : actions/setup-python@v6
3045 with :
31- python-version : 3.x
46+ python-version : 3.14
47+ allow-prereleases : true
3248 - run : uv sync --group=euler-validate --group=test
3349 - run : uv run pytest scripts/validate_solutions.py
3450 env :
0 commit comments