`npm install` now fails in projects created with `sf project generate` due to unresolvable (ESLint) dependencies
I believe this is a result of the project template updates for Winter '25, but now when I create a new project using the CLI, npm install fails due to unresolvable dependencies, primarily relating to the version numbers of ESLint:
$ sf version --verbose --json
{
"architecture": "win32-arm64",
"cliVersion": "@salesforce/cli/2.62.6",
"nodeVersion": "node-v20.17.0",
"osVersion": "Windows_NT 10.0.26100",
"rootPath": "C:\\Users\\Scott\\AppData\\Roaming\\npm\\node_modules\\@salesforce\\cli",
"shell": "cmd.exe",
"pluginVersions": [
"@oclif/plugin-autocomplete 3.2.5 (core)",
"@oclif/plugin-commands 4.1.3 (core)",
"@oclif/plugin-help 6.2.14 (core)",
"@oclif/plugin-not-found 3.2.22 (core)",
"@oclif/plugin-plugins 5.4.14 (core)",
"@oclif/plugin-search 1.2.11 (core)",
"@oclif/plugin-update 4.6.3 (core)",
"@oclif/plugin-version 2.2.14 (core)",
"@oclif/plugin-warn-if-update-available 3.1.18 (core)",
"@oclif/plugin-which 3.2.15 (core)",
"@salesforce/cli 2.62.6 (core)",
"apex 3.5.1 (core)",
"api 1.3.1 (core)",
"auth 3.6.65 (core)",
"data 3.7.0 (core)",
"deploy-retrieve 3.12.17 (core)",
"info 3.4.9 (core)",
"lightning-dev 1.9.0 (user) published 5 days ago (Fri Oct 11 2024)",
"limits 3.3.32 (core)",
"marketplace 1.2.26 (core)",
"org 4.6.0 (core)",
"packaging 2.8.11 (core)",
"schema 3.3.34 (core)",
"settings 2.3.23 (core)",
"sobject 1.4.41 (core)",
"source 3.5.21 (core)",
"telemetry 3.6.15 (core)",
"templates 56.3.22 (core)",
"trust 3.7.33 (core)",
"user 3.5.32 (core)",
"@salesforce/sfdx-scanner 4.6.0 (user) published 22 days ago (Tue Sep 24 2024)"
]
}
$ sf project generate -d . -n my_new_project
target dir = C:\Users\Scott\IdeaProjects
create my_new_project\config\project-scratch-def.json
create my_new_project\README.md
create my_new_project\sfdx-project.json
create my_new_project\.husky\pre-commit
create my_new_project\.vscode\extensions.json
create my_new_project\.vscode\launch.json
create my_new_project\.vscode\settings.json
create my_new_project\force-app\main\default\lwc\.eslintrc.json
create my_new_project\force-app\main\default\aura\.eslintrc.json
create my_new_project\scripts\soql\account.soql
create my_new_project\scripts\apex\hello.apex
create my_new_project\.forceignore
create my_new_project\.gitignore
create my_new_project\.prettierignore
create my_new_project\.prettierrc
create my_new_project\jest.config.js
create my_new_project\package.json
$ cd my_new_project/
$ npm install
npm error code ERESOLVE
npm error ERESOLVE unable to resolve dependency tree
npm error
npm error While resolving: [email protected]
npm error Found: [email protected]
npm error node_modules/eslint
npm error dev eslint@"^9.9.1" from the root project
npm error peer eslint@"^7.5.0 || ^8.0.0 || ^9.0.0" from @babel/[email protected]
npm error node_modules/@babel/eslint-parser
npm error peer @babel/eslint-parser@"^7" from @lwc/[email protected]
npm error node_modules/@lwc/eslint-plugin-lwc
npm error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
npm error
npm error Could not resolve dependency:
npm error peer eslint@"^7 || ^8" from @lwc/[email protected]
npm error node_modules/@lwc/eslint-plugin-lwc
npm error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error C:\Users\Scott\AppData\Local\npm-cache\_logs\2024-10-17T13_25_12_521Z-eresolve-report.txt
npm error A complete log of this run can be found in: C:\Users\Scott\AppData\Local\npm-cache\_logs\2024-10-17T13_25_12_521Z-debug-0.log
The user must either remove or change these dependencies before npm install will succeed. Let me know if I can provide any other useful diagnostic information.
Hello @SCWells72 :wave: It looks like you didn't include the full Salesforce CLI version information in your issue.
Please provide the output of version --verbose --json for the CLI you're using (sf or sfdx).
A few more things to check:
- Make sure you've provided detailed steps to reproduce your issue.
- A repository that clearly demonstrates the bug is ideal.
- Make sure you've installed the latest version of Salesforce CLI. (docs)
- Better yet, try the
rcornightlyversions. (docs)
- Better yet, try the
- Try running the
doctorcommand to diagnose common issues. - Search GitHub for existing related issues.
Thank you!
Thank you for filing this issue. We appreciate your feedback and will review the issue as soon as possible. Remember, however, that GitHub isn't a mechanism for receiving support under any agreement or SLA. If you require immediate assistance, contact Salesforce Customer Support.
This issue has been linked to a new work item: W-17005525
I am also facing the same issue:
% sf version --verbose --json
{
"architecture": "darwin-arm64",
"cliVersion": "@salesforce/cli/2.63.8",
"nodeVersion": "node-v20.17.0",
"osVersion": "Darwin 23.6.0",
"rootPath": "/Users/hsinghrajawat/.local/share/sf/client/2.63.8-fbf82e0",
"shell": "zsh",
"pluginVersions": [
"@oclif/plugin-autocomplete 3.2.6 (core)",
"@oclif/plugin-commands 4.1.3 (core)",
"@oclif/plugin-help 6.2.15 (core)",
"@oclif/plugin-not-found 3.2.22 (core)",
"@oclif/plugin-plugins 5.4.15 (core)",
"@oclif/plugin-search 1.2.12 (core)",
"@oclif/plugin-update 4.6.4 (core)",
"@oclif/plugin-version 2.2.15 (core)",
"@oclif/plugin-warn-if-update-available 3.1.19 (core)",
"@oclif/plugin-which 3.2.16 (core)",
"@salesforce/cli 2.63.8 (core)",
"apex 3.5.4 (core)",
"api 1.3.1 (core)",
"auth 3.6.68 (core)",
"data 3.7.1 (core)",
"deploy-retrieve 3.15.3 (core)",
"info 3.4.12 (core)",
"limits 3.3.33 (core)",
"marketplace 1.2.26 (core)",
"org 4.7.0 (core)",
"packaging 2.8.12 (core)",
"schema 3.3.36 (core)",
"settings 2.3.24 (core)",
"sobject 1.4.42 (core)",
"source 3.5.21 (core)",
"telemetry 3.6.16 (core)",
"templates 56.3.24 (core)",
"trust 3.7.34 (core)",
"user 3.5.33 (core)",
"@salesforce/sfdx-scanner 4.6.0 (user) published 30 days ago (Tue Sep 24 2024)",
"sfdmu 4.36.3 (user) published 35 days ago (Fri Sep 20 2024)"
% sf project generate -n temp
target dir = /Users/hsinghrajawat/Projects
create temp/config/project-scratch-def.json
create temp/README.md
create temp/sfdx-project.json
create temp/.husky/pre-commit
create temp/.vscode/extensions.json
create temp/.vscode/launch.json
create temp/.vscode/settings.json
create temp/force-app/main/default/lwc/.eslintrc.json
create temp/force-app/main/default/aura/.eslintrc.json
create temp/scripts/soql/account.soql
create temp/scripts/apex/hello.apex
create temp/.forceignore
create temp/.gitignore
create temp/.prettierignore
create temp/.prettierrc
create temp/jest.config.js
create temp/package.json
% npm install
npm error code ERESOLVE
npm error ERESOLVE unable to resolve dependency tree
npm error
npm error While resolving: [email protected]
npm error Found: [email protected]
npm error node_modules/eslint
npm error dev eslint@"^9.9.1" from the root project
npm error peer eslint@"^7.5.0 || ^8.0.0 || ^9.0.0" from @babel/[email protected]
npm error node_modules/@babel/eslint-parser
npm error peer @babel/eslint-parser@"^7" from @lwc/[email protected]
npm error node_modules/@lwc/eslint-plugin-lwc
npm error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
npm error
npm error Could not resolve dependency:
npm error peer eslint@"^7 || ^8" from @lwc/[email protected]
npm error node_modules/@lwc/eslint-plugin-lwc
npm error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /Users/hsinghrajawat/.npm/_logs/2024-10-25T09_44_08_284Z-eresolve-report.txt
npm error A complete log of this run can be found in: /Users/hsinghrajawat/.npm/_logs/2024-10-25T09_44_08_284Z-debug-0.log
% cat /Users/hsinghrajawat/.npm/_logs/2024-10-25T09_44_08_284Z-eresolve-report.txt
'Log files:
/Users/hsinghrajawat/.npm/_logs/2024-10-25T09_44_08_284Z-debug-0.log
# npm resolution error report
While resolving: [email protected]
Found: [email protected]
node_modules/eslint
dev eslint@"^9.9.1" from the root project
peer eslint@"^7.5.0 || ^8.0.0 || ^9.0.0" from @babel/[email protected]
node_modules/@babel/eslint-parser
peer @babel/eslint-parser@"^7" from @lwc/[email protected]
node_modules/@lwc/eslint-plugin-lwc
dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
Could not resolve dependency:
peer eslint@"^7 || ^8" from @lwc/[email protected]
node_modules/@lwc/eslint-plugin-lwc
dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
Fix the upstream dependency conflict, or retry
this command with --force or --legacy-peer-deps
to accept an incorrect (and potentially broken) dependency resolution.
this is fixed on latest sf. Thanks for reporting!
@cristiand391 Still facing the same issue.
Below are the details:
% sf version --verbose --json
{
"architecture": "darwin-arm64",
"cliVersion": "@salesforce/cli/2.64.8",
"nodeVersion": "node-v20.18.0",
"osVersion": "Darwin 23.6.0",
"rootPath": "/usr/local/lib/sf",
"shell": "zsh",
"pluginVersions": [
"@oclif/plugin-autocomplete 3.2.6 (core)",
"@oclif/plugin-commands 4.1.3 (core)",
"@oclif/plugin-help 6.2.16 (core)",
"@oclif/plugin-not-found 3.2.22 (core)",
"@oclif/plugin-plugins 5.4.15 (core)",
"@oclif/plugin-search 1.2.12 (core)",
"@oclif/plugin-update 4.6.6 (core)",
"@oclif/plugin-version 2.2.15 (core)",
"@oclif/plugin-warn-if-update-available 3.1.20 (core)",
"@oclif/plugin-which 3.2.16 (core)",
"@salesforce/cli 2.64.8 (core)",
"apex 3.5.4 (core)",
"api 1.3.1 (core)",
"auth 3.6.70 (core)",
"data 3.8.1 (core)",
"deploy-retrieve 3.13.1 (core)",
"info 3.4.13 (core)",
"limits 3.3.36 (core)",
"marketplace 1.3.0 (core)",
"org 4.7.2 (core)",
"packaging 2.8.12 (core)",
"schema 3.3.37 (core)",
"settings 2.3.24 (core)",
"sobject 1.4.42 (core)",
"source 3.5.21 (core)",
"telemetry 3.6.17 (core)",
"templates 56.3.24 (core)",
"trust 3.7.35 (core)",
"user 3.5.33 (core)"
]
}
% sf project generate -n test
target dir = /Users/hsinghrajawat/Projects
create test/config/project-scratch-def.json
create test/README.md
create test/sfdx-project.json
create test/.husky/pre-commit
create test/.vscode/extensions.json
create test/.vscode/launch.json
create test/.vscode/settings.json
create test/force-app/main/default/lwc/.eslintrc.json
create test/force-app/main/default/aura/.eslintrc.json
create test/scripts/soql/account.soql
create test/scripts/apex/hello.apex
create test/.forceignore
create test/.gitignore
create test/.prettierignore
create test/.prettierrc
create test/jest.config.js
create test/package.json
% npm install
(node:32298) ExperimentalWarning: CommonJS module /opt/homebrew/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /opt/homebrew/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
npm error code ERESOLVE
npm error ERESOLVE unable to resolve dependency tree
npm error
npm error While resolving: [email protected]
npm error Found: [email protected]
npm error node_modules/eslint
npm error dev eslint@"^9.9.1" from the root project
npm error peer eslint@"^7.5.0 || ^8.0.0 || ^9.0.0" from @babel/[email protected]
npm error node_modules/@babel/eslint-parser
npm error peer @babel/eslint-parser@"^7" from @lwc/[email protected]
npm error node_modules/@lwc/eslint-plugin-lwc
npm error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
npm error
npm error Could not resolve dependency:
npm error peer eslint@"^7 || ^8" from @lwc/[email protected]
npm error node_modules/@lwc/eslint-plugin-lwc
npm error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-eresolve-report.txt
npm error A complete log of this run can be found in: /Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-debug-0.log
% cat /Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-debug-0.log
0 verbose cli /opt/homebrew/Cellar/node/23.1.0_1/bin/node /opt/homebrew/bin/npm
1 info using [email protected]
2 info using [email protected]
3 silly config load:file:/opt/homebrew/lib/node_modules/npm/npmrc
4 silly config load:file:/Users/hsinghrajawat/Projects/test/.npmrc
5 silly config load:file:/Users/hsinghrajawat/.npmrc
6 silly config load:file:/opt/homebrew/etc/npmrc
7 verbose title npm install
8 verbose argv "install"
9 verbose logfile logs-max:10 dir:/Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-
10 verbose logfile /Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-debug-0.log
11 silly logfile start cleaning logs, removing 1 files
12 silly packumentCache heap:4345298944 maxSize:1086324736 maxEntrySize:543162368
13 silly logfile done cleaning log files
14 silly idealTree buildDeps
15 silly fetch manifest @lwc/eslint-plugin-lwc@^1.1.2
16 silly packumentCache full:https://registry.npmjs.org/@lwc%2feslint-plugin-lwc cache-miss
17 http fetch GET 200 https://registry.npmjs.org/@lwc%2feslint-plugin-lwc 2154ms (cache revalidated)
18 silly packumentCache full:https://registry.npmjs.org/@lwc%2feslint-plugin-lwc set size:132806 disposed:false
19 silly fetch manifest @babel/eslint-parser@^7
20 silly packumentCache full:https://registry.npmjs.org/@babel%2feslint-parser cache-miss
21 http fetch GET 200 https://registry.npmjs.org/@babel%2feslint-parser 114ms (cache revalidated)
22 silly packumentCache full:https://registry.npmjs.org/@babel%2feslint-parser set size:179330 disposed:false
23 silly fetch manifest @babel/core@^7.11.0
24 silly packumentCache full:https://registry.npmjs.org/@babel%2fcore cache-miss
25 http fetch GET 200 https://registry.npmjs.org/@babel%2fcore 47ms (cache revalidated)
26 silly packumentCache full:https://registry.npmjs.org/@babel%2fcore set size:672875 disposed:false
27 silly fetch manifest eslint@^9.9.1
28 silly packumentCache full:https://registry.npmjs.org/eslint cache-miss
29 http fetch GET 200 https://registry.npmjs.org/eslint 35ms (cache revalidated)
30 silly packumentCache full:https://registry.npmjs.org/eslint set size:1673208 disposed:false
31 silly fetch manifest jiti@*
32 silly packumentCache full:https://registry.npmjs.org/jiti cache-miss
33 http fetch GET 200 https://registry.npmjs.org/jiti 44ms (cache revalidated)
34 silly packumentCache full:https://registry.npmjs.org/jiti set size:351297 disposed:false
35 silly fetch manifest eslint@^7 || ^8
36 silly packumentCache full:https://registry.npmjs.org/eslint cache-miss
37 http fetch GET 200 https://registry.npmjs.org/eslint 8ms (cache hit)
38 silly packumentCache full:https://registry.npmjs.org/eslint set size:1673208 disposed:false
39 verbose stack Error: unable to resolve dependency tree
39 verbose stack at #failPeerConflict (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1363:25)
39 verbose stack at #loadPeerSet (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1356:29)
39 verbose stack at async #buildDepStep (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:904:11)
39 verbose stack at async Arborist.buildIdealTree (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:181:7)
39 verbose stack at async Promise.all (index 1)
39 verbose stack at async Arborist.reify (/opt/homebrew/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:131:5)
39 verbose stack at async Install.exec (/opt/homebrew/lib/node_modules/npm/lib/commands/install.js:150:5)
39 verbose stack at async Npm.exec (/opt/homebrew/lib/node_modules/npm/lib/npm.js:207:9)
39 verbose stack at async module.exports (/opt/homebrew/lib/node_modules/npm/lib/cli/entry.js:74:5)
40 error code ERESOLVE
41 error ERESOLVE unable to resolve dependency tree
42 error
43 error While resolving: [email protected]
43 error Found: [email protected]
43 error node_modules/eslint
43 error dev eslint@"^9.9.1" from the root project
43 error peer eslint@"^7.5.0 || ^8.0.0 || ^9.0.0" from @babel/[email protected]
43 error node_modules/@babel/eslint-parser
43 error peer @babel/eslint-parser@"^7" from @lwc/[email protected]
43 error node_modules/@lwc/eslint-plugin-lwc
43 error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
43 error
43 error Could not resolve dependency:
43 error peer eslint@"^7 || ^8" from @lwc/[email protected]
43 error node_modules/@lwc/eslint-plugin-lwc
43 error dev @lwc/eslint-plugin-lwc@"^1.1.2" from the root project
43 error
43 error Fix the upstream dependency conflict, or retry
43 error this command with --force or --legacy-peer-deps
43 error to accept an incorrect (and potentially broken) dependency resolution.
44 error
44 error
44 error For a full report see:
44 error /Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-eresolve-report.txt
45 silly unfinished npm timer reify 1730580058048
46 silly unfinished npm timer reify:loadTrees 1730580058049
47 silly unfinished npm timer idealTree:buildDeps 1730580058055
48 silly unfinished npm timer idealTree:#root 1730580058055
49 verbose cwd /Users/hsinghrajawat/Projects/test
50 verbose os Darwin 23.6.0
51 verbose node v23.1.0
52 verbose npm v10.9.0
53 verbose exit 1
54 verbose code 1
55 error A complete log of this run can be found in: /Users/hsinghrajawat/.npm/_logs/2024-11-02T20_40_57_743Z-debug-0.log
Same here
{
"cliVersion": "@salesforce/cli/1.86.7-legacy.0",
"architecture": "darwin-x64",
"nodeVersion": "node-v18.15.0",
"osVersion": "Darwin 24.1.0",
"shell": "zsh",
"rootPath": "/Users/dimabondarenko/.local/share/sfdx/client/7.209.6-8ba3197/sf",
"pluginVersions": [
"@oclif/plugin-autocomplete 2.3.1 (core)",
"@oclif/plugin-commands 2.2.17 (core)",
"@oclif/plugin-help 5.2.11 (core)",
"@oclif/plugin-not-found 2.3.26 (core)",
"@oclif/plugin-plugins 3.1.6 (core)",
"@oclif/plugin-search 0.0.18 (core)",
"@oclif/plugin-update 3.1.22 (core)",
"@oclif/plugin-version 1.3.6 (core)",
"@oclif/plugin-warn-if-update-available 2.0.41 (core)",
"@oclif/plugin-which 2.2.22 (core)",
"@salesforce/cli 1.86.7-legacy.0 (core)",
"apex 2.3.4 (core)",
"auth 2.8.4 (core)",
"data 2.4.5 (core)",
"deploy-retrieve 1.13.5 (core)",
"info 2.6.30 (core)",
"limits 2.3.23 (core)",
"login 1.2.15 (core)",
"org 2.9.19 (core)",
"schema 2.3.17 (core)",
"settings 1.4.17 (core)",
"sobject 0.1.32 (core)",
"source 2.10.22 (core)",
"telemetry 2.2.1 (core)",
"templates 55.5.2 (core)",
"trust 2.4.27 (core)",
"user 2.3.20 (core)"
]
}
only started to work when changed eslint version to 8.57.0
"devDependencies": {
"@lwc/eslint-plugin-lwc": "^1.9.0",
"@prettier/plugin-xml": "^3.2.2",
"@salesforce/eslint-config-lwc": "^3.2.3",
"@salesforce/eslint-plugin-aura": "^2.0.0",
"@salesforce/eslint-plugin-lightning": "^1.0.0",
"@salesforce/sfdx-lwc-jest": "^7.0.1",
"eslint": "^8.57.0",
"eslint-plugin-import": "^2.25.4",
"eslint-plugin-jest": "^28.8.1",
"husky": "^9.1.5",
"lint-staged": "^15.1.0",
"prettier": "^3.1.0",
"prettier-plugin-apex": "^2.0.1"
},
your package for @lwc/eslint-plugin-lwc is using 8.57.0, which was deprecated and main package is using eslint 9
devDependencies": {
"@babel/core": "^7.24.4",
"@babel/eslint-parser": "^7.24.1",
"@babel/preset-typescript": "^7.24.6",
"eslint": "^8.57.0",
"husky": "^9.0.11",
"lint-staged": "^15.2.2",
"mocha": "^10.4.0",
"nyc": "^15.1.0",
"prettier": "^3.2.5",
"semver": "^7.6.0"
},
"cliVersion": "@salesforce/cli/1.86.7-legacy.0",
@gonardfreeman that's a +1 year old version of the CLI, try updating to latest.