-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
[turborepo] "error performing lockfile operation" on 1.9.3 #4757
Comments
Can you provide a lockfile or a reproduction repo? |
Is there a way to share a private lock file with you directly? |
Probably the easiest way would be to create a private repo with the lockfile and add me as a collaborator. Also, |
I was setting up a bare repo for this lockfile, but I think I stumbled on the root of the issue. Npm adds lockfile entries for workspaces that look like this: "node_modules/@myscope/mypackage": {
"resolved": "packages/mypackage",
"link": true
}, It's important to note that
I discovered a couple more instances of private workspace packages that happened to have the same name as some deep transitive dependencies from 3rd parties, so the original 4 errors might all be related to this. |
That sounds correct to me and this is enough information for me to get a repro! I'll work on getting a fix up today. |
@jgoz I spoke too soon. I've been trying to recreate a failing example where there's both a workspace and registry dependency of the same package, but with no luck. When I was testing, Thanks! |
@chris-olszewski Thank you, sent an invite. In general, yes workspace versions are referenced like this:
Though they may also be referenced as both peer and dev dependencies for legacy reasons. We were early adopters of npm's workspaces feature and fought with it every step of the way, especially when strictPeerDependencies was turned on. I suspect there is some significant cleanup we could do around this, and being able to see the specific errors that turborepo has found would be a good first start. |
### Description Fixes #4757 Underlying issue was I was including `peerDependencies` in the dependency crawl. This resulted in an error since we expect to only be looking at external dependencies in the dependency crawl. ### Testing Instructions Added a failing unit test where there's a workspace that's used as a peer dependency that conflicts with a package in the registry.
What version of Turborepo are you using?
1.9.3
What package manager are you using / does the bug impact?
npm
What operating system are you using?
Mac
Describe the Bug
After upgrading to 1.9.3. from 1.8, I'm seeing the following warning when running any turbo command:
I also see it on the canary builds. Turborepo operates the way it used to (from what I can tell) but I can't find a way to determine the actual nature of these errors. Increasing verbosity doesn't appear to help.
Expected Behavior
Expected to see a description of the actual lockfile error(s) so that they can be corrected.
To Reproduce
This happens whenever I run
turbo <command>
. Unable to share a repo link, as it's a private repository.Reproduction Repo
No response
The text was updated successfully, but these errors were encountered: