4 ms·
So somebody found a project somewhere on the internet with an exceptionally complicated build process, and you use it to say npm scripts are broken? Sorry, that
by Wintamute 10y ago
So somebody found a project somewhere on the internet with an exceptionally complicated build process, and you use it to say npm scripts are broken? Sorry, that's absurd. Looking at that particular build process, I don't think a Makefile could have been crafted to make it much simpler or smaller. In that example, the problem lies with the complexity of what they're having to do, not the tool.
Npm scripts are really just shell scripting, which means all the real progress happens in the unixy Node tools that do the heavy lifting, where it should be. It's a future proof and scalable approach for the vast majority of projects imo.
- Touche 10y agoIt's an inflated example of what all npm script projects become, imo. First you just have "test", then you add "build", then you separate your "test" into one for the browser, one for Node, one for CI, then you need scripts that combine those together; then you create different "start" versions depending on environment... It blows up quickly. > Npm scripts are really just shell scripting, which means all the real progress happens in the unixy Node tools that do the heavy lifting, where it should be. That's fine, but you're missing critical features that Make provides; make won't even rebuild a target if no files have changed.
- krisdol 10y agoI completely disagree that this is what all npm scripts become >then you separate your "test" into one for the browser, one for Node, one for CI, For the love of God why. Don't turn every language into Java
- krisdol 10y agoI completely disagree that this is what all npm scripts become >then you separate your "test" into one for the browser, one for Node, one for CI, For the love of God why. Don't turn every language into Java
- krisdol 10y agoI completely disagree that this is what all npm scripts become >then you separate your "test" into one for the browser, one for Node, one for CI, For the love of God why. Don't turn every language into Java. Plenty of tools will not rebuilt a project if no files have changed, but the dumb, quick and easy way that requires no deendendencies is simply to delete and rebuild. The fact that this functionality is served so well by a simple dependency shows that you don't need overly complex monolithic tools to accomplish small tasks.
- krisdol 10y agoI completely disagree that this is what all npm scripts become >then you separate your "test" into one for the browser, one for Node, one for CI, For the love of God why. Don't turn every language into Java. Plenty of tools will not rebuilt a project if no files have changed, but the dumb, quick and easy way that requires no deendendencies is simply to delete and rebuild. The fact that this functionality is served so well by a simple dependency shows that you don't need overly complex monolithic tools to accomplish small tasks.
- Wintamute 10y agoAdmittedly, my first 2 or 3 npm scripts based build processes did start to get a bit ugly. But I'm much better at writing them now, so they stay pretty sane. > That's fine, but you're missing critical features that Make provides; make won't even rebuild a target if no files have changed. WebPack does this for me too. Also my ava tests don't rerun for files that haven't changed while watching. Genuinely curious, what scenarios precisely do you find this feature of Make useful? Also, Make isn't truly cross platform ... and since I sometimes work with Windows devs this would be a problem.