mirror of
https://github.com/pnpm/pnpm.git
synced 2026-04-27 18:46:18 -04:00
* fix: preserve pnpm 10 peer suffix encoding for linked paths The filenamify upgrade from v4 to v7 changed the peer-suffix "version" token for linked dependency paths: `../packages/b` became `+packages+b` instead of `packages+b`, causing lockfile churn for workspaces with packages linked from outside the workspace root. Replace the filenamify call with a small inline encoder that reproduces v4's output for link paths, and drop the now-unused dependency. Closes #11272. * chore: avoid cspell-flagged word in peer suffix comment * test: cover linkPathToPeerVersion and clarify its lossy encoding Address Copilot review feedback on #11297: - Correct the comment — any leading run of `.` is dropped, not just `./` and `../` segments (so `.hidden/pkg` becomes `hidden+pkg`). - Export the helper and add a focused test that pins the exact token output for link paths, so future lockfile-breaking regressions get caught by the test suite. * refactor: extract linkPathToPeerVersion into its own file