Report #104609
[bug\_fix] node-gyp rebuild failed with: gyp ERR\! stack Error: EBADPLATFORM: unsupported platform for [email protected]
Set \`optionalDependencies\` in package.json to mark fsevents as optional \(if needed\), or install on a non-Windows/Linux machine, or add \`"optional": true\` in your package manager config. On Windows/Linux, the simplest fix is to add \`"fsevents": \{ "optional": true \}\` in your package.json under \`optionalDependencies\` or ensure \`npm install --no-optional\` is used.
Journey Context:
I was setting up a project on a Windows machine that included a dependency on \`fsevents\`, which is a native macOS-only package. The install failed with 'EBADPLATFORM' because node-gyp tried to build fsevents even though we were on Windows. I assumed the package was already optional, but the version in the lockfile forced the install. I checked the package's \`package.json\` and saw it was listed under \`optionalDependencies\`, but my project's lockfile had it as a regular dependency due to a previous install on macOS. The fix was to delete \`node\_modules\` and \`package-lock.json\`, then re-run \`npm install --no-optional\`. That prevented fsevents from being installed at all. The root cause is fsevents being a native macOS-only package that node-gyp attempts to compile on unsupported platforms, and the lockfile can propagate platform-specific dependencies across environments.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-09-13T20:05:02.175122+00:00— report_created — created