You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The blog CMS runs on Node 22, and Node 22 support ends in April 2027, two years before Node 26's. Node 26 is on Strapi's supported list, but the CMS cannot install on it today, because better-sqlite3 11.3.0 ships no binary past Node 22 and fails to compile on 24 and 26. A trial on a branch for #32 installed, linted and built cleanly on Node 26.12.1 after better-sqlite3 moved to 13.0.3 and the engines range to 22 through 26.
Acceptance criteria
better-sqlite3 and the engines range allow Node 26, in a PR whose CI runs on Node 26
Strapi Cloud deploys the CMS on Node 26, read from the dashboard's General tab
The CI Node version and the Strapi Cloud setting match after the change
Current Node pins on the default branch, read 2026-11-01: .nvmrc22, which CI reads, and engines.node>=22.19.0 <=24.x.x.
Moved in #39. Results in the official Debian trixie images, main on Node 22.23.4 against the pull request on Node 26.13.0:
Step
main, Node 22
main, Node 26
PR, Node 26
npm ci
pass
fails
pass
npm run lint
pass
not reached
pass
strapi build, production
pass
not reached
pass
started server: /_health, /admin
204, 200
not reached
204, 200
/api/users-permissions/roles, /graphql
403, 400
not reached
403, 400
On main, npm ci fails on Node 26 because better-sqlite3 11.3.0 compiles from source and Node 26's V8 dropped Object::GetPrototype. The pull request moves it to 12.11.1, which ships a Node 26 prebuild. The pull request also passes on Node 22.
Strapi 5.59 declares Node 20 through 26.
Source search for APIs removed between Node 22 and 26 found none.
The CMS deploys to Strapi Cloud, which picks its Node line from the project settings, not from this repo. The engines range keeps its Node 22 floor so a deploy still on 22 or 24 does not break. Moving the hosted runtime to 26 is a settings change that should follow, once Strapi Cloud offers Node 26. Until then this issue stays open.
#39 merged on 1 Nov at 12:05Z, which meets the first criterion. The Strapi Cloud runtime setting is the one item left, once Strapi Cloud offers Node 26.
Activity
ecv commentedon Nov 1, 2026
Current Node pins on the default branch, read 2026-11-01:
.nvmrc22, which CI reads, andengines.node>=22.19.0 <=24.x.x.Moved in #39. Results in the official Debian trixie images, main on Node 22.23.4 against the pull request on Node 26.13.0:
npm cinpm run lintstrapi build, production/_health,/admin/api/users-permissions/roles,/graphqlnpm cifails on Node 26 becausebetter-sqlite311.3.0 compiles from source and Node 26's V8 droppedObject::GetPrototype. The pull request moves it to 12.11.1, which ships a Node 26 prebuild. The pull request also passes on Node 22.ecv commentedon Nov 1, 2026
#39 merged on 1 Nov at 12:05Z, which meets the first criterion. The Strapi Cloud runtime setting is the one item left, once Strapi Cloud offers Node 26.