-
Notifications
You must be signed in to change notification settings - Fork 597
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[rush] Rush install fails when there is a preferred version, possibly only with a peer depedency #1349
Comments
Can you please provide a repro repo to dig into this further? |
@rakeshpatnaik clone: https://github.com/kelseyyoung/RushInstallError and run 'rush install' |
Thanks for the repro! This issue is caused by the file format changes in PNPM 3. If I regenerate your shrinkwrap file using PNPM 2.x (latest), I get this: dependencies:
'@rush-temp/test-app': 'file:projects/test-app.tgz'
react: 16.8.6
react-dom: 16.8.6
react-loadable: 5.5.0
packages:
. . .
/react-loadable/5.5.0:
dependencies:
prop-types: 15.7.2
dev: false
peerDependencies:
react: '*'
resolution:
integrity: sha512-C8Aui0ZpMd4KokxRdVAm2bQtI03k2RMRNzOB+IipV3yxFTSVICv7WoUr5L9ALB5BmKO1iHgZtWM8EvYG83otdg==
/react-loadable/5.5.0/[email protected]:
dependencies:
prop-types: 15.7.2
react: 16.8.6 ...whereas with PNPM 3 it looks like this: dependencies:
'@rush-temp/test-app': 'file:projects/test-app.tgz'
react: 16.8.6
react-dom: [email protected]
react-loadable: [email protected]
packages:
. . .
/react-loadable/[email protected]:
dependencies:
prop-types: 15.7.2
react: 16.8.6 Thus the version Rush's installation logic validates the That causes the bad token Seems like that code was already handling the |
Any update on this? This is preventing us from upgrading, and seems like a very common issue... |
@kelseyyoung this should be fixed now in version 5.10.1 |
Using pnpm 3.5.3 and rush 5.10.0
If you add a library to preferredVersions that has a peer dependency, after an initial rush update any install or update will fail with an "Error: Invalid version"
I don't have an example pushed up to github, but locally I was using react-loadable (which has a peer of react) and so in the pnpm-lock looked like this:
My preferredVersions has react-loadable here:
And both are included as dependencies in a package.json. The error I see is:
ERROR: Invalid Version: [email protected]
Removing react-loadable from preferredVersions removes the error, and so I think the issue stems from there
The text was updated successfully, but these errors were encountered: