How do I move off Rspack 1.5 without getting stuck?

Assess whether build infrastructure must move off Node 16 before adopting newer Rspack releases that raised the minimum supported Node runtime.

Upgrade build infrastructure to Node 22 LTS, then adopt Rspack 1.5+, unless you need a short-lived stopgap for locked-down runners; only hold on 1.4 while retiring Node 16.

Blockers

Who this is for

Candidates

Upgrade build infrastructure to Node.js 22 LTS, then adopt Rspack 1.5+

Rspack 1.5 officially dropped Node.js 16 support and raised the floor for `@rspack/core` and `@rsbuild/core` to `>=18.12.0`. The same release notes explicitly recommend Node.js 22 LTS. As of 2026-03-28, Node.js 22 is still in Maintenance LTS on the official Node release page, while Node.js 16 has already been end-of-life since August 8, 2023. This is the cleanest path if you want current Rspack features without pinning build infrastructure to an obsolete runtime.

When to choose

Use this when you can change CI images, developer toolchains, and build containers in the same migration window. It is the best default if the decision is not just 'can Rspack 1.5 run' but 'what runtime should we standardize on now.'

Tradeoffs

Pros: aligns with Rspack's recommendation, avoids Node 16 and Node 18 end-of-life risk, and keeps room for newer toolchain upgrades. Cons: wider infra change than a minimal compatibility bump and may require validation of native modules and CI images.

Cautions

The blocker is real: you cannot stay on Node 16 and move to Rspack 1.5+. Also note that `@rspack/cli` and `@rspack/dev-server` already required `>=18.12.0` even in the v1.4 requirement table, so some Node 16 setups were already on borrowed time before 1.5.

Upgrade only to a supported Node.js 20 line, then adopt Rspack 1.5+

Rspack 1.5 only requires Node.js `18.12.0` or later, so Node.js 20 satisfies the documented runtime floor. As of 2026-03-28, Node.js 20 is still in Maintenance LTS on the official Node release page, unlike Node.js 18, which is already end-of-life as of March 27, 2025. This is a pragmatic compatibility move if your organization is not ready to standardize on Node.js 22 yet.

When to choose

Use this when you need a smaller runtime jump than Node 22 but still need to unblock newer Rspack releases. It fits teams with pinned enterprise base images or slower platform certification cycles.

Tradeoffs

Pros: unblocks Rspack 1.5+ while staying on a currently supported Node line. Cons: it is more of an interim landing zone than a long-horizon standard compared with Node 22.

Cautions

Do not treat Node 18 as the strategic target just because Rspack 1.5 allows it; as of 2026-03-28, Node 18 is already end-of-life. Validate the entire build chain, not just Rspack, because surrounding packages were part of the reason Rspack dropped Node 16.

Hold on Rspack 1.4 or Rsbuild 1.4 temporarily while retiring Node 16

Rspack's official 1.5 announcement includes the prior v1.4 package requirements: `@rspack/core` was `>=16.0.0` in v1.4 and `@rsbuild/core` was `>=16.10.0`, so pre-1.5 can be a temporary compatibility shelter for some Node 16 pipelines. However, that same table shows `@rspack/cli` and `@rspack/dev-server` were already `>=18.12.0` in v1.4. As of 2026-03-28, Node.js 16 has already been end-of-life for years, so this is a containment strategy, not a steady-state plan.

When to choose

Use this only when Node 16 cannot be removed immediately because of locked-down runners, vendor images, or parallel infrastructure work. It is appropriate for short-lived stabilization windows, not for new platform baselines.

Tradeoffs

Pros: buys time for a coordinated runtime migration. Cons: you give up newer Rspack features and remain exposed to an obsolete Node line.

Cautions

This option is narrower than it looks: if your setup depends on `@rspack/cli` or `@rspack/dev-server`, Node 16 may already be unsupported even before Rspack 1.5. Put an explicit end date on this hold, because the underlying Node runtime risk has already materialized.

Facts updated: 2026-03-28
Published: 2026-04-03

Try with your AI agent

$ npm install -g pocketlantern
$ pocketlantern init
# Restart Claude Code, Cursor, or your MCP client, then ask:
# "How do I move off Rspack 1.5 without getting stuck?"
Missing something? Request coverage