Feature request: Backport Node.js 24 engine support to 5.x
Is your feature request related to a problem? Please describe.
@strapi/sdk-plugin@5.x declares "node": ">=18.0.0 <=22.x.x" in its engines field, which produces an EBADENGINE warning on Node.js 24:
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE package: '@strapi/sdk-plugin@5.4.0',
npm warn EBADENGINE required: { node: '>=18.0.0 <=22.x.x', npm: '>=6.0.0' },
npm warn EBADENGINE current: { node: 'v24.x.x', npm: '11.x.x' }
npm warn EBADENGINE }
Issue #101 was resolved by removing the upper bound on main (v6.0.0), but the fix was not backported to the 5.x release line. Upgrading to v6 is not viable for projects that:
- Rely on
packup.config.ts for custom build configuration (removed in v6 in favor of package.json exports-derived config).
- Are pinned to v5 by a transitive Strapi dependency or plugin compatibility constraint.
- Cannot adopt the v6 build-system breaking changes on their current release schedule.
For these consumers, v5 is effectively the last supported line, and the artificial Node 22 upper bound blocks them from moving to Node.js 24 LTS — which Strapi core itself supports since v5.31 (strapi/strapi#24586).
Describe the solution you'd like
Release a 5.x patch (e.g. 5.4.1 or 5.5.0) that updates the engines field to allow Node.js 24:
"engines": {
"node": ">=18.0.0",
"npm": ">=6.0.0"
}
This is the same change that landed on main in v6.0.0 and should be a low-risk, engines-only patch — no source changes required if CI on 5.x passes on Node 24.
Ideally this would also include:
- Adding Node 24 to the CI matrix for the
5.x branch.
- A note in the v5 changelog/README clarifying supported Node versions.
Describe alternatives you've considered
- Upgrading to v6 — blocked by the
packup.config.ts removal / build-system breaking changes.
- Forking and patching
engines locally (via pnpm.overrides / npm overrides / patch-package) — works but isn't sustainable for teams and doesn't help the wider community hitting the same wall.
- Running with
--engine-strict=false — silences the warning but obscures genuine engine mismatches and doesn't help in environments where strict engine checks are enforced (some CI setups, Docker base images, corporate registries).
Additional context
Environment
@strapi/sdk-plugin version: <e.g. 5.4.0>
- Reason v6 is not an option: <e.g. "uses packup.config.ts" / "pinned by Strapi x.y.z">
- Node.js version: <e.g. v24.11.0>
- npm version: <e.g. 11.4.2>
- OS: <e.g. macOS 14.5 / Ubuntu 24.04>
Feature request: Backport Node.js 24 engine support to
5.xIs your feature request related to a problem? Please describe.
@strapi/sdk-plugin@5.xdeclares"node": ">=18.0.0 <=22.x.x"in itsenginesfield, which produces anEBADENGINEwarning on Node.js 24:Issue #101 was resolved by removing the upper bound on
main(v6.0.0), but the fix was not backported to the5.xrelease line. Upgrading to v6 is not viable for projects that:packup.config.tsfor custom build configuration (removed in v6 in favor ofpackage.jsonexports-derived config).For these consumers, v5 is effectively the last supported line, and the artificial Node 22 upper bound blocks them from moving to Node.js 24 LTS — which Strapi core itself supports since v5.31 (strapi/strapi#24586).
Describe the solution you'd like
Release a
5.xpatch (e.g.5.4.1or5.5.0) that updates theenginesfield to allow Node.js 24:This is the same change that landed on
mainin v6.0.0 and should be a low-risk, engines-only patch — no source changes required if CI on5.xpasses on Node 24.Ideally this would also include:
5.xbranch.Describe alternatives you've considered
packup.config.tsremoval / build-system breaking changes.engineslocally (viapnpm.overrides/npm overrides/patch-package) — works but isn't sustainable for teams and doesn't help the wider community hitting the same wall.--engine-strict=false— silences the warning but obscures genuine engine mismatches and doesn't help in environments where strict engine checks are enforced (some CI setups, Docker base images, corporate registries).Additional context
main): #101Environment
@strapi/sdk-pluginversion: <e.g. 5.4.0>