From 40e19fcccf4aea0cd6787785fe36865ec785bf6e Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Fri, 1 May 2026 14:55:16 -0700 Subject: [PATCH 1/4] chore(ci): bump checkout/setup-node to versions running on Node.js 24 GitHub is forcing JavaScript actions to Node 24 by default on 2026-06-02 and removing Node 20 from runners on 2026-09-16. - actions/checkout@v4 -> v5 - actions/setup-node@v4 -> v5 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index df40e2c..dc58111 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,9 +14,9 @@ jobs: os: [ubuntu-latest, macos-15, windows-latest] runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Use Node.js 20 - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: '20' cache: 'npm' From c267a54c8cfa68e529c70c5619439ffa5f9af173 Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Fri, 1 May 2026 14:58:24 -0700 Subject: [PATCH 2/4] chore(ci): bump CI Node.js from 20 to 22 Node.js 20 reached end-of-life in April 2026. --- .github/workflows/ci.yml | 4 ++-- .github/workflows/publish.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dc58111..0de8f87 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,10 +15,10 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v5 - - name: Use Node.js 20 + - name: Use Node.js 22 uses: actions/setup-node@v5 with: - node-version: '20' + node-version: '22' cache: 'npm' - name: Install dependencies run: npm ci diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 1622c62..f6f5f27 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v5 - uses: actions/setup-node@v5 with: - node-version: 20 + node-version: 22 registry-url: https://registry.npmjs.org/ # Ensure npm 11.5.1 or later is installed (for OIDC npm publishing) - run: npm install -g npm@latest From 3a5d13747ff747e45b2414b20f008aec5b2043e3 Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Fri, 1 May 2026 15:12:06 -0700 Subject: [PATCH 3/4] chore(ci): pin Node.js to 24, drop bundled npm upgrade Node 24 ships npm 11.12.1, which already satisfies the npm 11.5.1+ requirement for OIDC npm publishing. --- .github/workflows/ci.yml | 4 ++-- .github/workflows/publish.yml | 4 +--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0de8f87..12b601e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,10 +15,10 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v5 - - name: Use Node.js 22 + - name: Use Node.js 24 uses: actions/setup-node@v5 with: - node-version: '22' + node-version: '24' cache: 'npm' - name: Install dependencies run: npm ci diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index f6f5f27..e5d77b3 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -15,9 +15,7 @@ jobs: - uses: actions/checkout@v5 - uses: actions/setup-node@v5 with: - node-version: 22 + node-version: 24 registry-url: https://registry.npmjs.org/ - # Ensure npm 11.5.1 or later is installed (for OIDC npm publishing) - - run: npm install -g npm@latest - run: npm ci - run: npm publish From 499ab8d14e898896ef3a8ba93176c1e8cf6e58a7 Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Fri, 1 May 2026 15:14:29 -0700 Subject: [PATCH 4/4] chore(ci): keep CI on Node.js 22 (oldest active LTS) Use the oldest supported LTS in CI to catch any reliance on newer-Node-only behavior. Publish job stays on 24 for the bundled npm 11. --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 12b601e..0de8f87 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,10 +15,10 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v5 - - name: Use Node.js 24 + - name: Use Node.js 22 uses: actions/setup-node@v5 with: - node-version: '24' + node-version: '22' cache: 'npm' - name: Install dependencies run: npm ci