Skip to content

Commit 0666f98

Browse files
committed
build(ci): upgrade GitHub Actions to @v5 + drop Node 20 from matrix
Addresses the Node.js 20 deprecation warning observed on every job log: Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Bumped across every workflow: actions/checkout@v4 → @v5 actions/setup-node@v4 → @v5 actions/upload-artifact@v4 → @v5 actions/cache@v4 → @v5 Files touched: .github/workflows/ci.yml .github/workflows/coverage.yml .github/workflows/browser-matrix-nightly.yml .github/workflows/e2e-playwright.yml .github/workflows/build-artifacts.yml Also dropped Node 20.x from the ci.yml matrix. Node 20 left active LTS in April 2026 (this month). Matrix is now [22.x, 24.x] — active LTS + current — which halves the matrix cost (6 → 4 jobs) and stays forward-looking. Matrix change is ci.yml only; e2e-playwright + coverage + build-artifacts pin 22.x explicitly and are unchanged. Refs: #24 Track: adopt-lightpanda
1 parent 92ac46f commit 0666f98

5 files changed

Lines changed: 26 additions & 24 deletions

File tree

.github/workflows/browser-matrix-nightly.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ jobs:
3737
browser_channel: [chrome, chromium, brave, edge]
3838

3939
steps:
40-
- uses: actions/checkout@v4
40+
- uses: actions/checkout@v5
4141

42-
- uses: actions/setup-node@v4
42+
- uses: actions/setup-node@v5
4343
with:
4444
node-version: "22.x"
4545
cache: npm
@@ -59,7 +59,7 @@ jobs:
5959
sudo apt-get update -qq && sudo apt-get install -y brave-browser
6060
6161
- name: Cache Playwright browsers
62-
uses: actions/cache@v4
62+
uses: actions/cache@v5
6363
id: pw-cache
6464
with:
6565
path: ~/.cache/ms-playwright
@@ -87,9 +87,9 @@ jobs:
8787
browser_channel: [chrome, brave, edge]
8888

8989
steps:
90-
- uses: actions/checkout@v4
90+
- uses: actions/checkout@v5
9191

92-
- uses: actions/setup-node@v4
92+
- uses: actions/setup-node@v5
9393
with:
9494
node-version: "22.x"
9595
cache: npm
@@ -102,7 +102,7 @@ jobs:
102102
run: brew install --cask brave-browser
103103

104104
- name: Cache Playwright browsers
105-
uses: actions/cache@v4
105+
uses: actions/cache@v5
106106
id: pw-cache
107107
with:
108108
path: ~/Library/Caches/ms-playwright
@@ -168,9 +168,9 @@ jobs:
168168
browser_channel: [chrome, edge]
169169

170170
steps:
171-
- uses: actions/checkout@v4
171+
- uses: actions/checkout@v5
172172

173-
- uses: actions/setup-node@v4
173+
- uses: actions/setup-node@v5
174174
with:
175175
node-version: "22.x"
176176
cache: npm
@@ -179,7 +179,7 @@ jobs:
179179
run: npm ci
180180

181181
- name: Cache Playwright browsers
182-
uses: actions/cache@v4
182+
uses: actions/cache@v5
183183
id: pw-cache
184184
with:
185185
path: "%LOCALAPPDATA%\\ms-playwright"

.github/workflows/build-artifacts.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ jobs:
2020
os: [ubuntu-latest, macos-latest, windows-latest]
2121

2222
steps:
23-
- uses: actions/checkout@v4
23+
- uses: actions/checkout@v5
2424

25-
- uses: actions/setup-node@v4
25+
- uses: actions/setup-node@v5
2626
with:
2727
node-version: "22.x"
2828
cache: npm
@@ -36,7 +36,7 @@ jobs:
3636
run: npm run build
3737

3838
- name: Upload dist artifact
39-
uses: actions/upload-artifact@v4
39+
uses: actions/upload-artifact@v5
4040
with:
4141
name: dist-${{ matrix.os }}
4242
path: dist/

.github/workflows/ci.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,16 @@ jobs:
1919
matrix:
2020
# Cross-platform smoke: Linux is primary; macOS and Windows catch
2121
# platform-specific path/binary issues early.
22+
# Node 20 left active LTS in April 2026 — test 22 (active LTS)
23+
# and 24 (current). Drop 20 to halve matrix cost.
2224
os: [ubuntu-latest, macos-latest, windows-latest]
23-
node: ["20.x", "22.x"]
25+
node: ["22.x", "24.x"]
2426

2527
steps:
26-
- uses: actions/checkout@v4
28+
- uses: actions/checkout@v5
2729

2830
- name: Setup Node ${{ matrix.node }}
29-
uses: actions/setup-node@v4
31+
uses: actions/setup-node@v5
3032
with:
3133
node-version: ${{ matrix.node }}
3234
cache: npm

.github/workflows/coverage.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ jobs:
1414
runs-on: ubuntu-latest
1515

1616
steps:
17-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v5
1818

19-
- uses: actions/setup-node@v4
19+
- uses: actions/setup-node@v5
2020
with:
2121
node-version: "22.x"
2222
cache: npm
@@ -35,7 +35,7 @@ jobs:
3535
# Upload full coverage report as an artifact for inspection; summary
3636
# appears in the Actions job log via @vitest/coverage-v8.
3737
- name: Upload coverage artifact
38-
uses: actions/upload-artifact@v4
38+
uses: actions/upload-artifact@v5
3939
if: always()
4040
with:
4141
name: coverage-report

.github/workflows/e2e-playwright.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ jobs:
2020
browser: [chromium]
2121

2222
steps:
23-
- uses: actions/checkout@v4
23+
- uses: actions/checkout@v5
2424

25-
- uses: actions/setup-node@v4
25+
- uses: actions/setup-node@v5
2626
with:
2727
node-version: "22.x"
2828
cache: npm
@@ -33,7 +33,7 @@ jobs:
3333
# Cache Playwright browser binaries keyed on Playwright version +
3434
# browser list; avoids re-downloading ~100 MB per run.
3535
- name: Cache Playwright browsers
36-
uses: actions/cache@v4
36+
uses: actions/cache@v5
3737
id: pw-cache
3838
with:
3939
path: |
@@ -56,9 +56,9 @@ jobs:
5656
needs: e2e-fast
5757

5858
steps:
59-
- uses: actions/checkout@v4
59+
- uses: actions/checkout@v5
6060

61-
- uses: actions/setup-node@v4
61+
- uses: actions/setup-node@v5
6262
with:
6363
node-version: "22.x"
6464
cache: npm
@@ -67,7 +67,7 @@ jobs:
6767
run: npm ci
6868

6969
- name: Cache Playwright browsers
70-
uses: actions/cache@v4
70+
uses: actions/cache@v5
7171
id: pw-cache
7272
with:
7373
path: ~/.cache/ms-playwright

0 commit comments

Comments
 (0)