Skip to content

chore: node 26 support#1224

Merged
chimurai merged 1 commit intomasterfrom
node26
May 5, 2026
Merged

chore: node 26 support#1224
chimurai merged 1 commit intomasterfrom
node26

Conversation

@chimurai
Copy link
Copy Markdown
Owner

@chimurai chimurai commented May 5, 2026

Summary by CodeRabbit

  • Chores
    • Added support for Node.js 26.x alongside existing 22.x and 24.x versions
    • Updated development container and CI pipeline to test across all supported Node.js versions

@chimurai chimurai added this to the v4 milestone May 5, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 5, 2026

📝 Walkthrough

Walkthrough

The PR expands Node.js version support across the project by updating runtime engine constraints, upgrading the dev container base image from Node 22 to 24, extending CI test coverage to Node 26.x, and adding a changelog entry. VS Code theme preference is also adjusted in the dev container configuration.

Changes

Node.js Version Support Expansion

Layer / File(s) Summary
Engine Constraints
package.json
engines.node expanded to support ^22.15.0 || ^24.0.0 || >=26.0.0, broadening from the previous ^22.15.0 || >=24.0.0.
Development & CI Configuration
.devcontainer/devcontainer.json, .github/workflows/ci.yml
Dev container base image upgraded from Node 22 to Node 24; CI test matrix expanded to include Node 26.x alongside 22.x and 24.x.
Documentation & Settings
CHANGELOG.md, .devcontainer/devcontainer.json
New changelog entry "chore: node 26 support" added to the "next" section; VS Code workbench.colorTheme adjusted from Default Dark+ to Dark+ in dev container settings.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

🐰 Hopping to Node twenty-six, what a delight!
Twenty-two, twenty-four, all versions feel right.
Dev container and CI now march in sync,
Supporting new futures—swift as a blink!
This rabbit's toolchain is ready to fly. 🚀

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'chore: node 26 support' directly and clearly summarizes the main change: adding Node.js 26 support across the project (dev container, CI matrix, engines, and changelog).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch node26

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
.github/workflows/ci.yml (1)

134-149: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Include Node version in cache key to avoid cross-version cache poisoning.

With Line 134 introducing a multi-version matrix, using the same cache key across 22.x/24.x/26.x can cause flaky installs/tests due to incompatible cached modules. Add ${{ matrix.node-version }} to the key (and restore prefix).

Suggested patch
       - uses: actions/cache@v5
         id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
         with:
           path: '**/node_modules'
-          key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
+          key: ${{ runner.os }}-node-${{ matrix.node-version }}-yarn-${{ hashFiles('**/yarn.lock') }}
           restore-keys: |
-            ${{ runner.os }}-yarn-
+            ${{ runner.os }}-node-${{ matrix.node-version }}-yarn-
+            ${{ runner.os }}-yarn-
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/ci.yml around lines 134 - 149, The cache key for
actions/cache@v5 is missing the Node matrix identifier and can be poisoned
across node-version variants; update the cache key and restore-keys used by the
yarn-cache step to include `${{ matrix.node-version }}` (e.g., append or prefix
`${{ matrix.node-version }}` to the existing key and its restore-keys) so that
the key used by steps.yarn-cache.outputs.cache-hit is unique per Node version
and avoids cross-version cache reuse.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In @.github/workflows/ci.yml:
- Around line 134-149: The cache key for actions/cache@v5 is missing the Node
matrix identifier and can be poisoned across node-version variants; update the
cache key and restore-keys used by the yarn-cache step to include `${{
matrix.node-version }}` (e.g., append or prefix `${{ matrix.node-version }}` to
the existing key and its restore-keys) so that the key used by
steps.yarn-cache.outputs.cache-hit is unique per Node version and avoids
cross-version cache reuse.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f92565db-48eb-469b-8173-5cb49be4c63c

📥 Commits

Reviewing files that changed from the base of the PR and between 9a1cdb5 and 54c67a3.

📒 Files selected for processing (4)
  • .devcontainer/devcontainer.json
  • .github/workflows/ci.yml
  • CHANGELOG.md
  • package.json

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 5, 2026

npm i https://pkg.pr.new/http-proxy-middleware@1224

commit: 54c67a3

@coveralls
Copy link
Copy Markdown

Coverage Status

coverage: 94.07%. remained the same — node26 into master

@chimurai chimurai merged commit 7d7f9b0 into master May 5, 2026
26 checks passed
@chimurai chimurai deleted the node26 branch May 5, 2026 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants