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

node-gyp is infuriating #2287

Closed
ensemblebd opened this issue Dec 23, 2020 · 4 comments
Closed

node-gyp is infuriating #2287

ensemblebd opened this issue Dec 23, 2020 · 4 comments
Labels
Node Sass --> Dart Sass https://github.com/sass/node-sass/issues/2952

Comments

@ensemblebd
Copy link

ensemblebd commented Dec 23, 2020

No matter what OS I install this on, no matter what repo, no matter what version of Node or NPM, this product ALWAYS breaks and destroys all mental logic with comparison to a working install on another machine.

This isn't a bug report, just a unsolid complaint. Close/Delete as preferred...

I KNOW it's user error. I know it's not concretely, specifically, your fault. I KNOW it's due to folder permissions, dependency chain discrepancies, node and npm version changes, lack of build tools, vendor product not properly referencing dependency versions that are uptodate with NPM version, etc , etc, etc, etc.... But jesus baby in the freaking manger save me from node-gyp daily.
I regret writing this already but how else can one express it.

GO ahead i dare you to clone a repo to a different machine and run npm install. I dare you! I dare me.

@cclauss
Copy link
Contributor

cclauss commented Dec 23, 2020

@ensemblebd We feel your pain. Node-gyp is open source so please help us to improve it in any areas that are frustrating you. One way that you could help would be to create GitHub Actions that fail. Pull requests that put Actions into https://github.com/nodejs/node-gyp/tree/master/.github/workflows would give the community shared demonstration of failures that could be fixed. You can pick Linux, macOS, or Windows and install any package or repo. If we have a public working demonstration of failure then we can work to fix it.

@ensemblebd
Copy link
Author

ensemblebd commented Dec 23, 2020

sorry on the rant, i know it was 100% unnecessary and uncalled for. Just been a day. I will definitely take a look.
My pain points seem to revolve around sass and bcrypt 99% of the time, on multi platform. So by way of Actions that might be of use to you. Will try to produce towards that end :)

@cclauss cclauss added the Node Sass --> Dart Sass https://github.com/sass/node-sass/issues/2952 label Dec 23, 2020
@cclauss
Copy link
Contributor

cclauss commented Dec 23, 2020

Understood. Node Sass is deprecated in favor of Dart Saas and we have so many issues on that package that we have a label for Node Sass --> Dart Sass. We also have four pages of issues mentioning bcrypt so we could probably have a bcrypt label too.

Public demonstrations of failure are super helpful and GitHub Actions is a great way way of creating them. Your active participation can help us to improve.

@rvagg
Copy link
Member

rvagg commented Dec 31, 2020

@ensemblebd the dirty little secret is that we all hate it too but are stuck with it for legacy reasons and because nobody has spent the time on coming up with a better solution - or the ecosystem hasn't coalesced on an alternative yet at least.

But, if you spend enough time with cross-platform build tools, these same kinds of issues come up again and again and a lot of it revolves around communicating clearly to the user what the nature of the problem is. Projects like CMake have to put in a lot of effort on that front to paper over the difficulties. We just don't have the developer-hours available to us to invest in a product that we didn't invent in the first place. We're stuck with Google's abandonware.

@rvagg rvagg closed this as completed Dec 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Node Sass --> Dart Sass https://github.com/sass/node-sass/issues/2952
Projects
None yet
Development

No branches or pull requests

3 participants