-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Description
Description
@quasar/app-vite@2.5.3 declares engines.node: ^30 || ^28 || ^26 || ^24 || ^22, so Node 22 is an officially supported version.
However, it depends on isbinaryfile@^6.0.0. The only version matching that range is 6.0.0, which declares engines.node >= 24.0.0. This is inconsistent β a transitive dependency requires a higher Node version than the package itself supports.
This causes an EBADENGINE warning on every npm install for projects running Node 22:
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE package: 'isbinaryfile@6.0.0',
npm warn EBADENGINE required: { node: '>= 24.0.0' },
npm warn EBADENGINE current: { node: 'v22.22.1', npm: '11.12.0' }
npm warn EBADENGINE }
Projects using npm install --engine-strict or CI pipelines that treat warnings as errors will fail outright.
Suggested fix
Relax the isbinaryfile dependency to ^5.0.7 (which supports Node >= 18), or pin to a version compatible with Node 22, until isbinaryfile releases a version that aligns with @quasar/app-vite's own engine range.
Workaround
Add an npm override in the consuming project's package.json:
"overrides": {
"isbinaryfile": "~5.0.7"
}Environment
@quasar/app-vite: 2.5.3- Node: 22.22.1
- npm: 11.12.0
- OS: Linux (Ubuntu)