99jobs :
1010 is-duplicate :
1111 name : Is Duplicate
12- runs-on : ubuntu-latest
12+ runs-on : ubuntu-24.04
1313 outputs :
1414 should_skip : ${{ steps.skip-check.outputs.should_skip }}
1515 permissions :
3030 if : needs.is-duplicate.outputs.should_skip != 'true'
3131 strategy :
3232 matrix :
33- os : [ubuntu-latest, macos-latest, windows-latest]
33+ # List of runner versions:
34+ # https://docs.github.com/en/actions/reference/runners/github-hosted-runners
35+ os : [ubuntu-24.04, macos-26-intel, windows-2025]
36+
37+ # List of Python versions:
38+ # https://devguide.python.org/versions/
3439 python-version : ["3.10", "3.11", "3.12", "3.13"]
3540
3641 steps :
6772 )
6873 strategy :
6974 matrix :
70- os : [ubuntu-latest, macos-latest, windows-latest]
75+ # List of runner versions:
76+ # https://docs.github.com/en/actions/reference/runners/github-hosted-runners
77+ os : [ubuntu-24.04, macos-26-intel, windows-2025]
7178
7279 steps :
7380 - name : Check out code
8693
8794 build-sdist :
8895 name : Build source distribution
89- runs-on : ubuntu-latest
96+ runs-on : ubuntu-24.04
9097 needs : test-code
9198 if : |
9299 !failure() &&
@@ -118,7 +125,7 @@ jobs:
118125 publish-to-test-pypi :
119126 name : Publish to TestPyPI
120127 environment : staging
121- runs-on : ubuntu-latest
128+ runs-on : ubuntu-24.04
122129 needs : [build-sdist, build-wheels]
123130 if : |
124131 !failure() &&
@@ -143,7 +150,7 @@ jobs:
143150 publish-to-pypi :
144151 name : Publish to PyPI
145152 environment : production
146- runs-on : ubuntu-latest
153+ runs-on : ubuntu-24.04
147154 needs : [publish-to-test-pypi]
148155 if : |
149156 !failure() &&
0 commit comments