[bug]: Dependency resolution error when attempting to install with the latest version of React
Which react-spring target are you using?
- [x]
@react-spring/web - [x]
@react-spring/three - [ ]
@react-spring/native - [ ]
@react-spring/konva - [ ]
@react-spring/zdog
What version of react-spring are you using?
9.7.5
What's Wrong?
The latest version appears to create a dependency conflict with the latest version of react and react-dom (19):
Verbose error log from npm:
0 verbose cli C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js
1 info using [email protected]
2 info using [email protected]
3 silly config load:file:C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\npmrc
4 silly config load:file:C:\Users\Owner\WebstormProjects\portfolio\.npmrc
5 silly config load:file:C:\Users\Owner\.npmrc
6 silly config load:file:C:\Program Files\nodejs\etc\npmrc
7 verbose title npm i react-spring@latest
8 verbose argv "i" "react-spring@latest"
9 verbose logfile logs-max:10 dir:C:\Users\Owner\AppData\Local\npm-cache\_logs\2025-03-14T23_32_02_477Z-
10 verbose logfile C:\Users\Owner\AppData\Local\npm-cache\_logs\2025-03-14T23_32_02_477Z-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 packumentCache corgi:https://registry.npmjs.org/react-spring cache-miss
15 http fetch GET 200 https://registry.npmjs.org/react-spring 275ms (cache miss)
16 silly packumentCache corgi:https://registry.npmjs.org/react-spring set size:undefined disposed:false
17 silly idealTree buildDeps
18 silly fetch manifest [email protected]
19 silly packumentCache full:https://registry.npmjs.org/react-spring cache-miss
20 http cache https://registry.npmjs.org/react-spring 13ms (cache hit)
21 silly packumentCache full:https://registry.npmjs.org/react-spring set size:1191015 disposed:false
22 silly fetch manifest react@^19.0.0
23 silly packumentCache full:https://registry.npmjs.org/react cache-miss
24 http cache https://registry.npmjs.org/react 15ms (cache hit)
25 silly packumentCache full:https://registry.npmjs.org/react set size:5520476 disposed:false
26 silly fetch manifest react@^16.8.0 || ^17.0.0 || ^18.0.0
27 silly packumentCache full:https://registry.npmjs.org/react cache-miss
28 http cache https://registry.npmjs.org/react 14ms (cache hit)
29 silly packumentCache full:https://registry.npmjs.org/react set size:5520476 disposed:false
30 verbose stack Error: unable to resolve dependency tree
30 verbose stack at #failPeerConflict (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:1363:25)
30 verbose stack at #loadPeerSet (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:1329:33)
30 verbose stack at async #buildDepStep (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:904:11)
30 verbose stack at async Arborist.buildIdealTree (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\build-ideal-tree.js:181:7)
30 verbose stack at async Promise.all (index 1)
30 verbose stack at async Arborist.reify (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\reify.js:131:5)
30 verbose stack at async Install.exec (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\lib\commands\install.js:149:5)
30 verbose stack at async Npm.exec (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\lib\npm.js:207:9)
30 verbose stack at async module.exports (C:\Users\Owner\AppData\Roaming\nvm\v23.1.0\node_modules\npm\lib\cli\entry.js:67:5)
31 error code ERESOLVE
32 error ERESOLVE unable to resolve dependency tree
33 error
34 error While resolving: [email protected]
34 error Found: [email protected][2m[22m
34 error [2mnode_modules/react[22m
34 error react@"^19.0.0" from the root project
34 error
34 error Could not resolve dependency:
34 error [95mpeer[39m react@"^16.8.0 || ^17.0.0 || ^18.0.0" from [email protected][2m[22m
34 error [2mnode_modules/react-spring[22m
34 error react-spring@"9.7.5" from the root project
34 error
34 error Fix the upstream dependency conflict, or retry
34 error this command with --force or --legacy-peer-deps
34 error to accept an incorrect (and potentially broken) dependency resolution.
35 error
35 error
35 error For a full report see:
35 error C:\Users\Owner\AppData\Local\npm-cache\_logs\2025-03-14T23_32_02_477Z-eresolve-report.txt
36 silly unfinished npm timer reify 1741995122795
37 silly unfinished npm timer reify:loadTrees 1741995122796
38 silly unfinished npm timer idealTree:buildDeps 1741995123189
39 silly unfinished npm timer idealTree:#root 1741995123190
40 verbose cwd C:\Users\Owner\WebstormProjects\portfolio
41 verbose os Windows_NT 10.0.26100
42 verbose node v23.1.0
43 verbose npm v11.1.0
44 verbose exit 1
45 verbose code 1
To Reproduce
Run:
npm create vite@latest
npm i react-spring@latest
Expected Behaviour
No dependency conflicts
Link to repo
Adding this to package.json is a short-term workaround:
"overrides": {
"@react-spring/web": {
"react": "^19.0.0",
"react-dom": "^19.0.0"
}
}
(It seems to work ... I've got a possible bug with a useSpring not firing on a just-mounted component separately controlled by a useTransition, but I haven't worked out whether that's a bug because I'm using an unsupported version of React yet!)
Same problem here, but the overrides does not seem to force a peer dependency version for me.
related to https://github.com/pmndrs/react-spring/pull/2363
npm i @react-spring/web@latest with alread installed [email protected] and [email protected] finishes with no errors for me. Should be the v10 update that fixes it.