Skip to content

Consider downgrade Node to latest LTS #89

@jhnns

Description

@jhnns

I've encountered a situation where I can't use the latest Node version. Some NPM dependencies only support the latest LTS because they need time to keep up with the latest changes, e.g. semantic-release (see their explanation).

We should consider downgrading to the latest LTS for the template to not run into these issues. I've already downgraded template-public-package to v25 because of this. But now npm install fails there because there are dependencies that only support LTS versions and the latest. And since v25 is not the latest anymore (and odd numbered), it's not supported anymore:

npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'json-parse-even-better-errors@6.0.0',
npm warn EBADENGINE   required: { node: '^22.22.2 || ^24.15.0 || >=26.0.0' },
npm warn EBADENGINE   current: { node: 'v25.9.0', npm: '11.12.1' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'npm-normalize-package-bin@6.0.0',
npm warn EBADENGINE   required: { node: '^22.22.2 || ^24.15.0 || >=26.0.0' },
npm warn EBADENGINE   current: { node: 'v25.9.0', npm: '11.12.1' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'npm-run-all2@9.0.1',
npm warn EBADENGINE   required: { node: '^22.22.2 || ^24.15.0 || >=26.0.0', npm: '>= 10' },
npm warn EBADENGINE   current: { node: 'v25.9.0', npm: '11.12.1' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'which@7.0.0',
npm warn EBADENGINE   required: { node: '^22.22.2 || ^24.15.0 || >=26.0.0' },
npm warn EBADENGINE   current: { node: 'v25.9.0', npm: '11.12.1' }
npm warn EBADENGINE }
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: 'read-package-json-fast@6.0.0',
npm warn EBADENGINE   required: { node: '^22.22.2 || ^24.15.0 || >=26.0.0' },
npm warn EBADENGINE   current: { node: 'v25.9.0', npm: '11.12.1' }
npm warn EBADENGINE }

This leaves me with the conclusion that we should also stick to the latest LTS, although I don't like it.
What do you think @niklashaug ?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions