Skip to content

Duplicate dependencies in store #5504

@belgattitude

Description

@belgattitude

pnpm version: 7.13.4

Code to reproduce the issue:

Warning
Don't look at this issue, it's probably a wrong one. See #5504 (comment)
I'll close when I'm sure.

First of all, pnpm looks great, 🙏.

Foreword: a similar issue exists here. I created a new one because I feel the linked reproduction might help to debug the underlying cause(s).

Got my attention caught by different cache sizes (8s/245MB for pnpm, 2s/160Mb for yarn).

See CI image

image

That lowers the pnpm perf gains.

Looking at the node_modules folder with gdu.

image

Compared to yarn (I'm used to it, new to pnpm), there might be 2 causes

  • Duplicates (yarn dedupe, note that pnpm-deduplicate did not catch this.)
  • Difference with handling of supportedArchitecture (ie: musl + x64). Might be tackled in a different issue though.

PS: I've added strict-peer-dependencies and disabled auto-install-peers explicitely.

How to reproduce:

git clone https://github.com/belgattitude/nextjs-monorepo-example.git
cd nextjs-monorepo-example
git switch test-without-compression
pnpm i
cd node_modules
gdu

PS: the branch is based on this PR (belgattitude/nextjs-monorepo-example#2799) and can be installed by both yarn and pnpm.

Expected behavior:

  • No duplicates (ie: highest startegy)
  • smaller store, faster action/cache restoration.
CI Scenario Install @action/cache restore setup Total Projection
yarn 4 no-comp ±32s 4s (160MB) 0s ±36s 240mins:/mo
pnpm 7 ±17s 8s (245MB) 2s ±27s 180mins/mo

PS: duplicate can create hard to debug bugs also.

Actual behavior:

Described above.

Additional information:

  • node -v prints: 7.13 (but I guess all 7+)
  • Windows, macOS, or Linux?: Ubuntu + github action

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions