Skip to content

Commit 6ebc4ad

Browse files
committed
ci: upgrade setup-node action runtime
1 parent 8385e9b commit 6ebc4ad

7 files changed

Lines changed: 12 additions & 6 deletions

File tree

.github/workflows/deploy-docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ jobs:
6565
fi
6666
6767
- name: Setup Node.js
68-
uses: actions/setup-node@v4
68+
uses: actions/setup-node@v6
6969
with:
7070
node-version: '20'
7171
cache: 'npm'

.github/workflows/publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
ref: ${{ github.event_name == 'workflow_dispatch' && inputs.release_tag || github.ref }}
3030

3131
- name: Setup Node.js
32-
uses: actions/setup-node@v4
32+
uses: actions/setup-node@v6
3333
with:
3434
node-version: 22
3535
cache: npm

.github/workflows/release-auth-check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- name: Setup Node.js
14-
uses: actions/setup-node@v4
14+
uses: actions/setup-node@v6
1515
with:
1616
node-version: 22
1717
registry-url: https://registry.npmjs.org

.github/workflows/release-preflight.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
uses: actions/checkout@v4
1616

1717
- name: Setup Node.js 20.x
18-
uses: actions/setup-node@v4
18+
uses: actions/setup-node@v6
1919
with:
2020
node-version: '20.x'
2121
cache: 'npm'

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
uses: actions/checkout@v4
2020

2121
- name: Setup Node.js ${{ matrix.node-version }}
22-
uses: actions/setup-node@v4
22+
uses: actions/setup-node@v6
2323
with:
2424
node-version: ${{ matrix.node-version }}
2525
cache: 'npm'
@@ -55,7 +55,7 @@ jobs:
5555
uses: actions/checkout@v4
5656

5757
- name: Setup Node.js 20.x
58-
uses: actions/setup-node@v4
58+
uses: actions/setup-node@v6
5959
with:
6060
node-version: '20.x'
6161
cache: 'npm'

changelogs/v3.0.0.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ v3.0.0 consolidates the unpublished v2.0.7 work into a major release. It adds bo
5656
- Release candidates must be clean, have a valid installed dependency graph, and already exist on `origin`; the same preflight also verifies the docs site and packaged `MIGRATION.md` / `SECURITY.md` consumer guidance.
5757
- A manual pre-tag authentication workflow verifies the repository's current npm publish credential with `npm whoami` without creating a tag or publishing.
5858
- Build and test artifact cleanup retries transient Windows filesystem contention, so repeated release-gate compilation does not fail on short-lived `ENOTEMPTY`, `EPERM`, or `EBUSY` races.
59+
- GitHub workflows use `actions/setup-node@v6`, avoiding the retired Node 20 action runtime while preserving the explicit Node 18/20/22 package test matrix.
5960
- Stable Pages deployment separates immutable release-tag content from current release tooling, so historical stable tags can rebuild their tagged docs with the current audited website toolchain and link gate without deploying unpublished branch content; current releases still require the complete website verification chain.
6061

6162
## Compatibility-impacting changes

test/smoke/release-contract.test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ test('release paths consume the complete single-source preflight gate', () => {
2020
const releaseWorkflow = read('.github/workflows/release-preflight.yml');
2121
const releaseAuthWorkflow = read('.github/workflows/release-auth-check.yml');
2222
const publishWorkflow = read('.github/workflows/publish.yml');
23+
const deployDocsWorkflow = read('.github/workflows/deploy-docs.yml');
2324
const candidateCheck = read('scripts/check-release-candidate.cjs');
2425
const packInstallSmoke = read('scripts/pack-install-smoke.cjs');
2526
const buildScript = read('scripts/build-p1.cjs');
@@ -79,6 +80,10 @@ test('release paths consume the complete single-source preflight gate', () => {
7980
assert.match(publishWorkflow, /GITHUB_STEP_SUMMARY/);
8081
assert.match(publishWorkflow, /releases\/new\?tag=/);
8182
assert.match(publishWorkflow, /Deploy Docs to GitHub Pages/);
83+
for (const workflow of [ci, releaseWorkflow, releaseAuthWorkflow, publishWorkflow, deployDocsWorkflow]) {
84+
assert.doesNotMatch(workflow, /actions\/setup-node@v4/);
85+
assert.match(workflow, /actions\/setup-node@v6/);
86+
}
8287
});
8388

8489
test('stable docs deployment requires an npm-verified release tag', () => {

0 commit comments

Comments
 (0)