Skip to content

Commit d15bb9d

Browse files
committed
ci: move off the Node 20 runtime
GitHub is deprecating Node 20 and has begun forcing these actions onto Node 24 regardless, so they are already running on a runtime they do not declare. Two actions were responsible. actions/checkout declares node20 and appears on six steps that expand to ten job runs through the two matrices -- which is exactly the ten warnings the last run reported. actions/deploy-pages declares node20 on the one job that publishes. Both move to the major that adopted Node 24. actions/upload-pages-artifact stays at v3 on purpose, and the reason is written beside it so the next person does not finish the job. It is a composite action with no Node runtime of its own, so it was never part of this deprecation, and v3 alongside deploy-pages@v5 is the pairing GitHub ships in its own Pages starter workflow. Newer majors exist; swapping a tested pairing for an untested one to fix a problem it does not have is not an improvement. checkout stops at v5 rather than v7 for the same reason. v6 moves credentials to a separate file and v7 blocks fork-PR checkout for pull_request_target and workflow_run -- neither of which this workflow uses, so v7 would be safe. v5 is the version that fixes Node 20, and a CI file is a poor place for changes that buy nothing. Verified as far as it can be locally: the workflow still parses and still has seven jobs, both target majors exist, and the runtime each action declares was read from its own action.yml rather than assumed. Whether the actions themselves behave is what the next run answers, and a failure would be confined to publish-docs.
1 parent ab81df2 commit d15bb9d

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

.github/workflows/ci.yml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
cc: clang-18
3434
cxx: clang++-18
3535
steps:
36-
- uses: actions/checkout@v4
36+
- uses: actions/checkout@v5
3737

3838
- name: Install toolchain
3939
run: |
@@ -60,7 +60,7 @@ jobs:
6060
matrix:
6161
preset: [asan, tsan]
6262
steps:
63-
- uses: actions/checkout@v4
63+
- uses: actions/checkout@v5
6464
- name: Install toolchain
6565
run: sudo apt-get update && sudo apt-get install -y ninja-build clang-18
6666
- name: Configure
@@ -82,7 +82,7 @@ jobs:
8282
name: benchmarks build and run
8383
runs-on: ubuntu-24.04
8484
steps:
85-
- uses: actions/checkout@v4
85+
- uses: actions/checkout@v5
8686
- name: Install toolchain
8787
run: sudo apt-get update && sudo apt-get install -y ninja-build
8888

@@ -107,7 +107,7 @@ jobs:
107107
name: clang-tidy + clang-format
108108
runs-on: ubuntu-24.04
109109
steps:
110-
- uses: actions/checkout@v4
110+
- uses: actions/checkout@v5
111111
- name: Install toolchain
112112
run: sudo apt-get update && sudo apt-get install -y ninja-build clang-18 clang-tidy-18 clang-format-18
113113

@@ -135,7 +135,7 @@ jobs:
135135
name: installed package is consumable
136136
runs-on: ubuntu-24.04
137137
steps:
138-
- uses: actions/checkout@v4
138+
- uses: actions/checkout@v5
139139
- name: Install toolchain
140140
run: sudo apt-get update && sudo apt-get install -y ninja-build
141141

@@ -332,7 +332,7 @@ jobs:
332332
name: API reference builds clean
333333
runs-on: ubuntu-24.04
334334
steps:
335-
- uses: actions/checkout@v4
335+
- uses: actions/checkout@v5
336336
- name: Install toolchain
337337
run: sudo apt-get update && sudo apt-get install -y ninja-build doxygen
338338

@@ -348,6 +348,10 @@ jobs:
348348
cmake --build build --target docs
349349
350350
- name: Upload for publication
351+
# Deliberately still v3. It is a composite action with no Node runtime
352+
# of its own, so it is not part of the Node 20 deprecation, and v3 with
353+
# deploy-pages@v5 is the pairing GitHub ships in its own Pages starter
354+
# workflow. Newer majors exist; none of them buy anything here.
351355
uses: actions/upload-pages-artifact@v3
352356
with:
353357
path: build/docs/html
@@ -373,4 +377,4 @@ jobs:
373377
steps:
374378
- name: Deploy to GitHub Pages
375379
id: deployment
376-
uses: actions/deploy-pages@v4
380+
uses: actions/deploy-pages@v5

0 commit comments

Comments
 (0)