||6 years ago|
|src||6 years ago|
|testcases||6 years ago|
|.babelrc||6 years ago|
|.gitignore||6 years ago|
|.npmignore||6 years ago|
|README.md||6 years ago|
|gulpfile.js||6 years ago|
|local-server.js||6 years ago|
|package.json||6 years ago|
Why is NPM broken?
This is the source code for the
npm install error analysis tool at http://cryto.net/why-is-npm-broken/.
This tool takes
npm install output, tries to determine what error occurred, and presents it to the user in an easily understable format - where possible, including instructions on how to resolve the issue.
- It's not the nicest code. This tool was thrown together in a hurry, and I haven't yet had the time to make it nicer.
- It doesn't yet understand every possible error. I add detection rules whenever I run across new error cases in the #Node.js channel and elsewhere. If you run into a new case, please file an issue.
- While for "missing library" issues it tries to determine which library you're missing, the database of known libraries (
src/known-libraries.js) is currently very limited. Again, if you run into an unrecognized library, please file an issue.
- The error detection logic in this tool is currently developed in-tree because its output format is still subject to potential changes, but it will eventually be moved into its own module. Hopefully, one day NPM will integrate it into their client directly.
WTFPL or CC0, whichever you prefer. A donation and/or attribution are appreciated, but not required.
Maintaining open-source projects takes a lot of time, and the more donations I receive, the more time I can dedicate to open-source. If this module is useful to you, consider making a donation!
You can donate using Bitcoin, PayPal, Flattr, cash-in-mail, SEPA transfers, and pretty much anything else. Thank you!
Pull requests welcome. Please make sure your modifications are in line with the overall code style, and ensure that you're editing the files in
src/, not those in
Build tool of choice is
gulp; simply run
gulp while developing, and it will watch for changes.
Be aware that by making a pull request, you agree to release your modifications under the licenses stated above.