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

Proposal: A tool to make it easier to resolve multiple versions issues #1153

Open
matthewp opened this issue Dec 20, 2018 · 0 comments
Open
Labels

Comments

@matthewp
Copy link
Contributor

tldr; create a utility to help resolve multiple versions of can package problems.

The problem

Talking to donejs developers that utilize package-lock.json, they often run into issues when upgrading one dependency such as can. The issue is caused because when you update can, and for example can-observation version has changed, it will upgrade the version in node_modules/can/node_modules/can-observation but leave the old version in the root node_modules/can-observation folder. This happens because other donejs dependencies, such as done-autorender also (indirectly) depend on these global packages.

Proposal

I propose an additional command in donejs checks for multiple versions of common dependencies and outputs information (a more detailed version of npm ls perhaps) to help developers figure out what went wrong.

If possible it would be nice if we could even fix it for them. I'm thinking something like:

> donejs doctor

*Warning* multiple versions of:
  - can-observation (4.0.0 and 4.0.3)

And running:

> donejs doctor --fix

*Warning* multiple versions of:
  - can-observation (4.0.0 and 4.0.3)

*Fixing*.....

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

No branches or pull requests

2 participants