From 145643b789ad2100abb58dbf094d63e8e11c5ac9 Mon Sep 17 00:00:00 2001 From: Olli Paloviita Date: Wed, 12 Aug 2026 21:35:09 +0300 Subject: [PATCH] chore: raise the minimum supported Node.js runtime to 20 Node.js 18 is EOL and the toolchain init installs no longer supports it: current Playwright releases and the skills CLI both require Node.js 20+. Bump engines for screenci and create-screenci, run the CI smoke matrix on Node.js 20, and update the setup docs. --- .github/workflows/ci.yml | 12 ++++++------ create-screenci/package.json | 2 +- docs/manual-setup.mdx | 2 +- package.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b74d9e9..b9dc282 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -63,17 +63,17 @@ jobs: - name: Setup pnpm uses: pnpm/action-setup@v6 with: - # pnpm 11 uses syntax that Node.js 18 cannot parse. Keep smoke tests on - # the minimum supported pnpm release so the Node.js 18 baseline remains - # covered end to end. + # Keep smoke tests on the minimum supported pnpm release so the + # Node.js 20 baseline remains covered end to end. version: 10.26.0 - name: Setup Node.js uses: actions/setup-node@v6 with: - # Smoke tests stay on the minimum supported runtime so CLI init/test flows - # are continuously verified against the Node.js 18 baseline. - node-version: 18 + # Smoke tests stay on the minimum supported runtime so CLI init/test + # flows are continuously verified against the Node.js 20 baseline + # (Node.js 18 is EOL and current Playwright releases require 20+). + node-version: 20 cache: pnpm cache-dependency-path: pnpm-lock.yaml diff --git a/create-screenci/package.json b/create-screenci/package.json index 2f97b1f..62b45d9 100644 --- a/create-screenci/package.json +++ b/create-screenci/package.json @@ -9,7 +9,7 @@ "license": "MIT", "author": "ScreenCI Ltd", "engines": { - "node": ">=18" + "node": ">=20" }, "repository": { "type": "git", diff --git a/docs/manual-setup.mdx b/docs/manual-setup.mdx index c9dd525..40b3b68 100644 --- a/docs/manual-setup.mdx +++ b/docs/manual-setup.mdx @@ -48,7 +48,7 @@ yarn create screenci -If that does not work, install [Node.js 18 or newer](https://nodejs.org/en/download), +If that does not work, install [Node.js 20 or newer](https://nodejs.org/en/download), which comes with npm. No account or setup token is needed: the scaffolded project records immediately diff --git a/package.json b/package.json index ee1783e..a1d0d4b 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "license": "MIT", "author": "ScreenCI Ltd", "engines": { - "node": ">=18" + "node": ">=20" }, "repository": { "type": "git",