From bfe0dbbd104ae8dcab80da54e3afe049198dc151 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Thu, 7 May 2026 10:25:37 -0700 Subject: [PATCH 1/4] deps & engine update --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index c6a4bf2..6156cf6 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^6.0.0", - "@npmcli/template-oss": "4.28.1", + "@npmcli/template-oss": "5.0.0", "tap": "^16.3.0" }, "scripts": { @@ -46,7 +46,7 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "4.28.1", + "version": "5.0.0", "publish": "true" } } From d22f0abf069ebd43b0736a7ea87c312aa1991fbd Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Thu, 7 May 2026 10:25:42 -0700 Subject: [PATCH 2/4] feat!: template-oss-apply --- .github/CODEOWNERS | 2 +- .github/workflows/audit.yml | 8 +++---- .github/workflows/ci-release.yml | 29 ++++++++++++++--------- .github/workflows/ci.yml | 29 ++++++++++++++--------- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/post-dependabot.yml | 8 +++---- .github/workflows/pull-request.yml | 8 +++---- .github/workflows/release-integration.yml | 8 +++---- .github/workflows/release.yml | 16 ++++++------- 9 files changed, 62 insertions(+), 48 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 2c54b0d..b6ec921 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,3 +1,3 @@ # This file is automatically added by @npmcli/template-oss. Do not edit. -* @npm/cli-team +* @npm/cli-team @npm/cli-triage diff --git a/.github/workflows/audit.yml b/.github/workflows/audit.yml index 85282bd..4a2d6af 100644 --- a/.github/workflows/audit.yml +++ b/.github/workflows/audit.yml @@ -21,17 +21,17 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup Git User run: | git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: diff --git a/.github/workflows/ci-release.yml b/.github/workflows/ci-release.yml index e9ab5ff..659c6f3 100644 --- a/.github/workflows/ci-release.yml +++ b/.github/workflows/ci-release.yml @@ -32,7 +32,7 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: ref: ${{ inputs.ref }} - name: Setup Git User @@ -48,11 +48,11 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} sha: ${{ inputs.check-sha }} - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: @@ -85,7 +85,7 @@ jobs: os: macos-latest shell: bash - name: macOS - os: macos-13 + os: macos-15-intel shell: bash - name: Windows os: windows-latest @@ -95,22 +95,28 @@ jobs: - 20.x - 22.9.0 - 22.x + - 24.x + - 26.x exclude: - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 20.17.0 - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 20.x - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 22.9.0 - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 22.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 24.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 26.x runs-on: ${{ matrix.platform.os }} defaults: run: shell: ${{ matrix.platform.shell }} steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: ref: ${{ inputs.ref }} - name: Setup Git User @@ -126,12 +132,13 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} sha: ${{ inputs.check-sha }} - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: node-version: ${{ matrix.node-version }} check-latest: contains(matrix.node-version, '.x') - name: Install Latest npm + if: ${{ !startsWith(matrix.node-version, '22.') }} uses: ./.github/actions/install-latest-npm with: node: ${{ steps.node.outputs.node-version }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 92a33b5..b286e03 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,17 +25,17 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup Git User run: | git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: @@ -61,7 +61,7 @@ jobs: os: macos-latest shell: bash - name: macOS - os: macos-13 + os: macos-15-intel shell: bash - name: Windows os: windows-latest @@ -71,33 +71,40 @@ jobs: - 20.x - 22.9.0 - 22.x + - 24.x + - 26.x exclude: - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 20.17.0 - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 20.x - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 22.9.0 - - platform: { name: macOS, os: macos-13, shell: bash } + - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 22.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 24.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 26.x runs-on: ${{ matrix.platform.os }} defaults: run: shell: ${{ matrix.platform.shell }} steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup Git User run: | git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: node-version: ${{ matrix.node-version }} check-latest: contains(matrix.node-version, '.x') - name: Install Latest npm + if: ${{ !startsWith(matrix.node-version, '22.') }} uses: ./.github/actions/install-latest-npm with: node: ${{ steps.node.outputs.node-version }} diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index af848e1..8c43556 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -26,7 +26,7 @@ jobs: security-events: write steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup Git User run: | git config --global user.email "npm-cli+bot@github.com" diff --git a/.github/workflows/post-dependabot.yml b/.github/workflows/post-dependabot.yml index 3a91911..2d41073 100644 --- a/.github/workflows/post-dependabot.yml +++ b/.github/workflows/post-dependabot.yml @@ -17,7 +17,7 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: ref: ${{ github.event.pull_request.head.ref }} - name: Setup Git User @@ -25,11 +25,11 @@ jobs: git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index c69932d..7cfbbca 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -23,7 +23,7 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 - name: Setup Git User @@ -31,11 +31,11 @@ jobs: git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: diff --git a/.github/workflows/release-integration.yml b/.github/workflows/release-integration.yml index 9ca9a2b..d705f32 100644 --- a/.github/workflows/release-integration.yml +++ b/.github/workflows/release-integration.yml @@ -34,7 +34,7 @@ jobs: id-token: write steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: ref: ${{ fromJSON(inputs.releases)[0].tagName }} - name: Setup Git User @@ -42,11 +42,11 @@ jobs: git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 53ff3c2..c277433 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,17 +30,17 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup Git User run: | git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: @@ -107,7 +107,7 @@ jobs: shell: bash steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 ref: ${{ needs.release.outputs.pr-branch }} @@ -116,11 +116,11 @@ jobs: git config --global user.email "npm-cli+bot@github.com" git config --global user.name "npm CLI robot" - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 id: node with: - node-version: 22.x - check-latest: contains('22.x', '.x') + node-version: 26.x + check-latest: contains('26.x', '.x') - name: Install Latest npm uses: ./.github/actions/install-latest-npm with: From dbf9e7c5e1153854f49219f1f8594e08c190bd2a Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Thu, 7 May 2026 10:25:57 -0700 Subject: [PATCH 3/4] feat!: bump to new node engine range BREAKING CHANGE: `which` now supports node `^22.22.2 || ^24.15.0 || >=26.0.0` --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6156cf6..66c1e59 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ ] }, "engines": { - "node": "^20.17.0 || >=22.9.0" + "node": "^22.22.2 || ^24.15.0 || >=26.0.0" }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", From 2796a0274c01897a1910f0eeefe52c85ef47faf0 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Thu, 7 May 2026 10:26:01 -0700 Subject: [PATCH 4/4] chore: template-oss-apply --- .github/workflows/ci-release.yml | 16 ++++++++-------- .github/workflows/ci.yml | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/ci-release.yml b/.github/workflows/ci-release.yml index 659c6f3..581626f 100644 --- a/.github/workflows/ci-release.yml +++ b/.github/workflows/ci-release.yml @@ -91,23 +91,23 @@ jobs: os: windows-latest shell: cmd node-version: - - 20.17.0 - - 20.x - - 22.9.0 + - 22.22.2 - 22.x + - 24.15.0 - 24.x + - 26.0.0 - 26.x exclude: - platform: { name: macOS, os: macos-15-intel, shell: bash } - node-version: 20.17.0 - - platform: { name: macOS, os: macos-15-intel, shell: bash } - node-version: 20.x - - platform: { name: macOS, os: macos-15-intel, shell: bash } - node-version: 22.9.0 + node-version: 22.22.2 - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 22.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 24.15.0 - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 24.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 26.0.0 - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 26.x runs-on: ${{ matrix.platform.os }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b286e03..3c7e603 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -67,23 +67,23 @@ jobs: os: windows-latest shell: cmd node-version: - - 20.17.0 - - 20.x - - 22.9.0 + - 22.22.2 - 22.x + - 24.15.0 - 24.x + - 26.0.0 - 26.x exclude: - platform: { name: macOS, os: macos-15-intel, shell: bash } - node-version: 20.17.0 - - platform: { name: macOS, os: macos-15-intel, shell: bash } - node-version: 20.x - - platform: { name: macOS, os: macos-15-intel, shell: bash } - node-version: 22.9.0 + node-version: 22.22.2 - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 22.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 24.15.0 - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 24.x + - platform: { name: macOS, os: macos-15-intel, shell: bash } + node-version: 26.0.0 - platform: { name: macOS, os: macos-15-intel, shell: bash } node-version: 26.x runs-on: ${{ matrix.platform.os }}