Skip to content

feat!: drop node@20 - #624

Draft
styfle wants to merge 1 commit into
mainfrom
update-minimum-node-version-to-22
Draft

styfle wants to merge 1 commit into
mainfrom
update-minimum-node-version-to-22

Conversation

@styfle

@styfle styfle commented Nov 6, 2026

Copy link
Copy Markdown
Member

BREAKING CHANGE: requires node@22 or newer

Node.js 20 reached end-of-life on 2026-04-30, so node@22 is now the minimum supported version.

  • engines.node is now >=22
  • CI matrix drops node@20, leaving [22, 24, 26]
  • tsconfig.json target moves es2023 → es2024, which node@22 supports in full

It also clears out the version gates that can no longer be false:

  • The "module-sync" export condition was auto-selected behind a getNodeMajorVersion() >= 22 check. With node@22 as the floor that check is always true, so it is gone along with src/utils/node-version.ts and the module-sync-condition-{es,cjs}-node20 fixtures, which only covered the node@20 branch and were already skipped on every supported version.
  • Dropped the node@18-only sharp-pnpm.js skip and the skipOnNode20AndBelow / skipOnNode22AndAbove lists from the test harness.

Generated via styfle's devbox

BREAKING CHANGE: requires node@22 or newer

Node.js 20 reached end-of-life on 2026-04-30, so node@22 is now the minimum.

- `engines.node` is now `>=22` and the CI matrix drops node@20
- `tsconfig.json` target moves `es2023` -> `es2024`
- the `module-sync` export condition is always auto-selectable now, so the
  `getNodeMajorVersion() >= 22` gate and its node@20-only fixtures are gone

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Co-Authored-By: Steven <229881+styfle@users.noreply.github.com>
@styfle
styfle requested review from a team, icyJoseph and ijjk as code owners November 6, 2026 15:41
@mischnic

mischnic commented Nov 6, 2026

Copy link
Copy Markdown
Member

(That means we wouldn't be able to update NFT anymore in Next.js until the next Next.js major version)

@styfle styfle changed the title feat: drop node@20 feat!: drop node@20 Nov 6, 2026
@styfle
styfle marked this pull request as draft November 6, 2026 16:09
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.

3 participants