@@ -29,13 +29,16 @@ jobs:
2929 - name : Fetch all tags
3030 run : git fetch --depth=1 --tags
3131
32- - name : Set up Python
32+ - name : Setup Python
3333 uses : actions/setup-python@v5
3434 with :
35- python-version : " 3.11 "
35+ python-version : " 3.12 "
3636
37- - name : Install uv
38- run : pip install uv
37+ - name : Setup uv
38+ uses : astral-sh/setup-uv@v3
39+ with :
40+ enable-cache : true
41+ cache-dependency-glob : pyproject.toml
3942
4043 - name : Install dependencies
4144 run : make setup
@@ -63,11 +66,11 @@ jobs:
6366 echo 'jobs=[
6467 {"os": "macos-latest"},
6568 {"os": "windows-latest"},
66- {"python-version": "3.9"},
6769 {"python-version": "3.10"},
6870 {"python-version": "3.11"},
6971 {"python-version": "3.12"},
70- {"python-version": "3.13"}
72+ {"python-version": "3.13"},
73+ {"python-version": "3.14"}
7174 ]' | tr -d '[:space:]' >> $GITHUB_OUTPUT
7275 else
7376 echo 'jobs=[
@@ -86,31 +89,35 @@ jobs:
8689 - macos-latest
8790 - windows-latest
8891 python-version :
89- - " 3.8"
9092 - " 3.9"
9193 - " 3.10"
9294 - " 3.11"
9395 - " 3.12"
9496 - " 3.13"
97+ - " 3.14"
9598 resolution :
9699 - highest
97100 - lowest-direct
98101 exclude : ${{ fromJSON(needs.exclude-test-jobs.outputs.jobs) }}
99102 runs-on : ${{ matrix.os }}
100- continue-on-error : ${{ matrix.python-version == '3.13 ' }}
103+ continue-on-error : ${{ matrix.python-version == '3.14 ' }}
101104
102105 steps :
103106 - name : Checkout
104107 uses : actions/checkout@v4
105108
106- - name : Set up Python
109+ - name : Setup Python
107110 uses : actions/setup-python@v5
108111 with :
109112 python-version : ${{ matrix.python-version }}
110113 allow-prereleases : true
111114
112- - name : Install uv
113- run : pip install uv
115+ - name : Setup uv
116+ uses : astral-sh/setup-uv@v3
117+ with :
118+ enable-cache : true
119+ cache-dependency-glob : pyproject.toml
120+ cache-suffix : py${{ matrix.python-version }}
114121
115122 - name : Install dependencies
116123 env :
0 commit comments