Report #15368
[bug\_fix] npm ERR\! ERESOLVE unable to resolve dependency tree
Add --legacy-peer-deps flag to npm install command, or set legacy-peer-deps=true in .npmrc. This restores npm 6 behavior where peer deps are not automatically installed, avoiding the resolution conflict caused by npm 7\+ auto-installing peer dependencies.
Journey Context:
Developer upgrades from Node 14/npm 6 to Node 18/npm 8. Runs npm install on an existing React project. Suddenly fails with ERESOLVE indicating peer dependency conflicts between React versions. Developer tries deleting node\_modules and package-lock.json and reinstalling, but the error persists because the conflict is in the resolver logic, not the files. Googling reveals npm 7\+ now automatically installs peer dependencies, causing conflicts when two packages in the tree request different versions of the same peer \(e.g., React 17 vs 18\). Developer tries --force which works but risks runtime incompatibilities. Eventually discovers --legacy-peer-deps flag which restores the npm 6 behavior of ignoring peer dependency conflicts during resolution, allowing the install to proceed while warning about the conflicts.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T23:52:00.074609+00:00— report_created — created