Skip to content

feat: add node 26 support and bump current#1938

Merged
JesusPaz merged 1 commit into
masterfrom
jesus/node-26-support
May 5, 2026
Merged

feat: add node 26 support and bump current#1938
JesusPaz merged 1 commit into
masterfrom
jesus/node-26-support

Conversation

@JesusPaz
Copy link
Copy Markdown
Contributor

@JesusPaz JesusPaz commented May 5, 2026

Summary by CodeRabbit

  • New Features

    • Added support for Node.js version 26, including new installation scripts for Debian and RPM-based systems.
  • Chores

    • Updated CI/CD workflow to include Node.js 26 in the test matrix across all job types.
    • Updated script generators to create setup files for Node.js 26.x as the current release version.

@JesusPaz JesusPaz self-assigned this May 5, 2026
@JesusPaz JesusPaz requested a review from riosje May 5, 2026 15:53
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 5, 2026

Walkthrough

Node.js major version 26 is added to the distributions repository's setup and testing infrastructure. The CI workflow matrices are expanded to include version 26 across three job types, new setup scripts for Debian and RPM systems are created, script generators are updated to target version 26 as current, and NSolid installation checks are skipped for both versions 25 and 26.

Changes

Node.js 26 Support

Layer / File(s) Summary
CI Matrix & Generator Configuration
.github/workflows/ci.yaml, scripts/deb/script_generator/generator.sh, scripts/rpm/script_generator/generator.sh
Version 26 is added to test matrices (deb, rpm, rpm-minimal jobs). Script generators update version arrays to include "26" and bump current_version from "25" to "26".
New Debian Setup Script
scripts/deb/setup_26.x
Complete new setup script for Node 26 on Debian-based systems, including OS validation, prerequisite installation, NodeSource key management, and repository configuration with APT pinning rules.
New RPM Setup Script
scripts/rpm/setup_26.x
Complete new setup script for Node 26 on RPM-based systems, including OS validation, architecture detection, repository cleanup, NodeSource and conditional N|Solid repository configuration, and package manager cache refresh.
Current Version Updates
scripts/deb/setup_current.x, scripts/rpm/setup_current.x
NODE_VERSION variable is updated from "25.x" to "26.x", redirecting the current setup script to target version 26.
NSolid Skip Conditions
.github/workflows/ci.yaml
In all three CI job types (deb, rpm, rpm-minimal), the Install NSolid and Validate NSolid Version step conditions are updated from matrix.version != 25 to matrix.version != 25 && matrix.version != 26, causing NSolid setup to be skipped for both versions.

🐰 A new version hops into view,
Version 26, shiny and new!
Setup scripts in place for deb and rpm,
NSolid skips 25 and 26, done!
The matrix expands, all set to review!

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • nodesource/distributions#1911: Modifies deb scripts and APT repository configuration patterns that are also updated in this PR's setup scripts.
  • nodesource/distributions#1891: Adds support for consecutive Node.js major versions using the same pattern (CI matrix, generators, and setup scripts).
  • nodesource/distributions#1862: Follows the same template for adding a new Node.js major version support across CI, generators, and setup scripts.

Suggested reviewers

  • riosje
  • 007-1305
🚥 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 accurately describes the main changes: adding support for Node.js version 26 and bumping the current version from 25 to 26 across all relevant configuration files and scripts.
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 docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jesus/node-26-support

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.

Actionable comments posted: 1

🤖 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.

Inline comments:
In `@scripts/deb/setup_26.x`:
- Around line 92-110: The deb configure_repo should only add N|Solid APT pinning
and print the "To install N|solid" success/info messages when the current Node
major version is in the LTS set; update the configure_repo logic to check the
Node version (e.g., via the existing NODE_MAJOR or NODE_VERSION variable or an
is_lts_version helper) and wrap the blocks that write
/etc/apt/preferences.d/nsolid and the log calls that reference N|solid (the echo
lines creating nsolid pin files and the log "To install N|solid Runtime..." /
"You can use N|solid Runtime..." messages) so they run only when the version is
LTS, matching the RPM script behavior.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 81d95fda-d774-49e8-9604-fc10e852371d

📥 Commits

Reviewing files that changed from the base of the PR and between 279cfb8 and 8268aab.

📒 Files selected for processing (7)
  • .github/workflows/ci.yaml
  • scripts/deb/script_generator/generator.sh
  • scripts/deb/setup_26.x
  • scripts/deb/setup_current.x
  • scripts/rpm/script_generator/generator.sh
  • scripts/rpm/setup_26.x
  • scripts/rpm/setup_current.x

Comment thread scripts/deb/setup_26.x
@JesusPaz JesusPaz merged commit 46a5867 into master May 5, 2026
69 checks passed
@JesusPaz JesusPaz deleted the jesus/node-26-support branch May 5, 2026 16:29
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