From a1aebeb3ab73c51a6dc3b9f3c0c2db087264b530 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 6 Aug 2026 09:58:46 +0000 Subject: [PATCH] chore: bump Node.js runtime to 22 Node 20 reached end-of-life in April 2026. Bump the runtime used for CI, releases, and the published Docker image to Node 22: - .nvmrc: v20 -> v22 (used by ci, release, canary-deploy, docs workflows) - Dockerfile: node:20 / node:20-slim -> node:22 / node:22-slim (both remain Debian bookworm, so glibc compatibility of prebuilt native deps is unchanged) - validate-python-types.yml: use .nvmrc instead of a hardcoded node-version for consistency - publish-deps.yml: update glibc comment to reference node:22 package.json engines is left at >=20 on purpose: what consumers of the npm package may run on is a separate decision from what we build and ship on. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_018Qan7ZWehTJKYRDSRSEDqk --- .github/workflows/publish-deps.yml | 2 +- .github/workflows/validate-python-types.yml | 2 +- .nvmrc | 2 +- Dockerfile | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/publish-deps.yml b/.github/workflows/publish-deps.yml index 8d3293e03..7df74a6ca 100644 --- a/.github/workflows/publish-deps.yml +++ b/.github/workflows/publish-deps.yml @@ -10,7 +10,7 @@ permissions: jobs: publish: - # Must match glibc verison in node:20 + # Must match glibc verison in node:22 runs-on: ubuntu-22.04 steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 diff --git a/.github/workflows/validate-python-types.yml b/.github/workflows/validate-python-types.yml index e335c4e21..b5fe182e6 100644 --- a/.github/workflows/validate-python-types.yml +++ b/.github/workflows/validate-python-types.yml @@ -17,7 +17,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 with: - node-version: '20' + node-version-file: '.nvmrc' cache: 'npm' - name: Install dependencies diff --git a/.nvmrc b/.nvmrc index 85aee5a53..92f279e3e 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -v20 \ No newline at end of file +v22 \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index df79412a6..2cccf7e62 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20 AS build +FROM node:22 AS build WORKDIR /usr/src/app # Do `npm ci` separately so we can cache `node_modules` # https://nodejs.org/en/docs/guides/nodejs-docker-webapp/ @@ -7,7 +7,7 @@ RUN npm clean-install COPY . . RUN npm run build && npm prune --omit=dev -FROM node:20-slim +FROM node:22-slim RUN apt-get update && apt-get install -y \ ca-certificates \ && rm -rf /var/lib/apt/lists/*