Files
Zoltan Kochan 1fdda1ec2f fix: hold link: workspace dependencies under dedicated lockfiles with injection (#17177)
Under `sharedWorkspaceLockfile: false` and `injectWorkspacePackages: true`, an
injected workspace dependency is copied into the dependent project and covered
by that project's own install, whereas a dependency declared with the `link:`
protocol remains a symlink whose target project still needs its own install.

- In `pnpm-cli` (`projects_to_verify`) and `pnpm-package-manager`
  (`WorkspaceProjectIndex::dep_targets`), keep walking `link:` edges when
  `!config.shares_one_lockfile() && config.inject_workspace_packages` instead
  of dropping all workspace dependency edges.
- In `@pnpm/workspace.projects-graph`, rewrite `link:` prefixes to `file:`
  before passing specs to `@pnpm/npm-package-arg`, which otherwise throws
  `EUNSUPPORTEDPROTOCOL` and drops `link:` workspace edges from the project
  graph used by `--filter` and `selectProjectsToVerify`.

Closes https://github.com/pnpm/tasks/issues/179
2026-10-21 07:15:08 +02:00
..