Repository navigation
chore: require Node.js 26 LTS - #439
Merged
Merged
Conversation
Move CI, engines, docs, and @types/node onto Node 26 now that 26 is Active LTS. CI pins 26.13.0 and @types/node is 26.6.6. Co-authored-by: otaki0413.it <otaki0413.it@gmail.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Move the template from Node.js 24 to Node.js 26 LTS now that 26 is Active LTS.
Node.js Release schedule: 26.x is Active LTS (codename Lithium, initial release 2026-05-05, Active LTS start 2026-10-28, maintenance start 2027-10-20, EOL 2029-04-30). 24.x is Maintenance LTS.
The newest Node 26 LTS patch that is at least one day old is 26.13.0 (released 2026-10-28). There is no 26.13.1 or 26.14.0 on the official release index. The newest
@types/node26.x that satisfiesminimumReleaseAge: 1440is 26.6.6 (published 2026-10-28T18:36:36Z). No newer 26.x exists on npm.minimumReleaseAgeis unchanged.pnpm exec intent listonly showed TanStack Router and Start skills. None match a Node version pin, so none were loaded.Files
.github/workflows/ci.ymlnode-version24.19.0→26.13.0viavoidzero-dev/setup-vp(action stillv1.22.0)package.jsonengines.node>=26(noenginesordevEnginesfield existed).@types/node24.19.2→26.6.6pnpm-lock.yaml@types/node@26.6.6. Other dependency versions are unchanged; peer keys now resolve against 26.6.6README.mdAGENTS.mdNo
.nvmrcor.node-versionexisted, and none was added. No other workflow,devEngines, Wrangler, or docs pin mentioned Node 24.Unchanged on purpose:
@cloudflare/vite-plugin1.66.0,wrangler4.156.0,packageManagerpnpm@12.16.1,setup-vpv1.22.0, TanStack, React, andvite-plus1.4.0. Nothing in install, check, test, or build required bumping them.Workers runtime
Nothing in the Workers runtime config needs to change.
wrangler.jsoncstill hascompatibility_date2026-09-16andcompatibility_flags: ["nodejs_compat"]. The deployed runtime is workerd, not the Node.js binary CI uses to install and build.nodejs_compatturns on a subset of Node.js APIs inside that runtime; it is not a Node version pin. For compatibility dates on or after 2026-08-04, Workers already enables that behavior by default, and the existing flag is left as-is.@types/nodetypes the toolchain for TypeScript.worker-configuration.d.tsis generated from wrangler/workerd and did not need a regeneration. Version-specific EOL flags such asremove_nodejs_compat_eol_v24follow the compatibility date (the v24 flag defaults in 2028-04-30), not the developer Node version.Verification
Commands ran on Node v26.13.0 with pnpm 12.16.1.
pnpm install— exit 0. Lockfile passed supply-chain policies.@types/nodemoved from 24.19.2 to 26.6.6.pnpm check— exit 0.pnpm test— exit 0. Vitest 5.0.5: 1 file passed, 1 test passed.pnpm build— exit 0. Client and SSR (workerd) bundles built. The build printed a non-failingvite:css-postsourcemap notice (SOURCEMAP_BROKEN) and still exited 0.pnpm exec vp run cf-typegen --check— exit 0. Wrangler 4.156.0 reportedworker-configuration.d.tsis up to date.