Skip to content
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

What does count actually mean? #128

Open
TheDevelolper opened this issue Aug 24, 2023 · 3 comments
Open

What does count actually mean? #128

TheDevelolper opened this issue Aug 24, 2023 · 3 comments

Comments

@TheDevelolper
Copy link

Hey, I tried going through the readme but I cannot figure out what the count is? It's not obvious or at least not obvious enough for my small brain?

@ranyitz
Copy link
Owner

ranyitz commented Aug 24, 2023

If you mean the "count" header when running "qnm doctor", this is the amount of occurrences of this module within the node_modules
image

In the picture above it says that we have 18 instances of @types/node which together weight 27.42mb

@dylang
Copy link

dylang commented Dec 20, 2023

count currently isn't helpful because if they are all the same version, then there will just be one copy on disk, and one copy inserted in web bundles.

It would be helpful if count was how many different/unique versions are specified in the lockfile. Different versions means each version must be downloaded and saved on disk. If included in web bundles, multiple versions of a dependency will cause rapidly increases bundle size.

This is why lockfile deduplication is helpful and important.

@ranyitz
Copy link
Owner

ranyitz commented Dec 21, 2023

if they are all the same version, then there will just be one copy on disk, and one copy inserted in web bundles

@dylang It depends on the package manager and the installation strategy. qnm is not a bundle analyzer, but if you have multiple instances of lodash in the node_modules it means you could have multiple instances of lodash with the same version in the bundle.

"count" checks how many occurrences you have in the node_modules, e.g. if you have 16 directories of lodash it will say that count is 16. Those 16 directories could be from different versions, or from the same version. qnm reads the lock file to get additional information, but it shows count data based on what you have in the file system as the source of truth.

I agree that having multiple versions of the same module is bad, and that deduplication is helpful and important. I'm willing to add another column of "versions" (in addition to the current "count" column). I would happily accept a PR that adds it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants