Earlier quoted context omitted.
Each version of the package comes with its own source code and license. It's your responsibility to audit new package versions before installing them. And that's what the author did, he published a new version. You can blame your tools and package.json for automatically updating, but at that point it's a self-inflicted injury.
I haven't actually checked if the README or description of the package was updated to reflect the new (malicious) behaviour of the code, but even if it was, I think that knowingly exploiting people's trust to stop their software working should be treated as evidence of hacking. It's like if you went to work one day with a spray can hidden in your jacket and started graffitiing the office walls, but justified your act…
Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
681–690 of 1001 posts
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#682Earlier quoted context omitted.
> The FOSS way should be to pay it forward, to contribute to projects where you can. In theory, this was enforced by copyleft requiring derivative works to also be free software. In practice, companies use software with permissible licenses instead because then they can reap the benefits without any requirement to pay it forward. > If you’re expecting to get paid for it, it’s not FOSS. Being paid for your time has no…
Copyleft software isn’t free, it comes with a very hefty price tag. You don’t pay it forward by handing over all your IP. You pay it forward by contributing back. I have no moral qualms about using OSS in any project I’m working on, commercial or otherwise. Because I have published my own libraries for anybody to use, and contributed a huge amount of PRs to the software I use. When you publish something with a permis…
But what happened here is that free/open source software doesn't have a consistent stance on paying maintainers or contributors, and this author feels that it's unfair and (potentially in the midst of other personal issues, it seems?) took advantage of a problem with how the ecosystem pulls in dependencies to complain about it.
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#683Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#684Earlier quoted context omitted.
> It's a bad look, why would anyone want to deal with him after this stunt is beyond me. The maintainer appears to be unwell: https://abc7ny.com/suspicious-package-queens-astoria-fire/64...
The maintainer seems a few steps beyond unwell. Seems like he was planning a terrorist act of some sort. Even if one is mentally unwell, I would not first describe them that way should they choose to premeditate harm against others. If you're building bombs, you're almost certainly at that point. At the very least, the maintainer is unstable if not actively malicious and seeking to cause harm however he can.
That's why a judge often has to determine if the person is mentally ill or just a criminal.
There are plenty of situations where someone has hurt other people and they've been literally insane.
If your insanity causes you to believe that someone is doing horrible things like murdering children you might decide to do them harm, thinking you're the good guy.
In reality you have paranoid schizophrenia or a litany of other mental health issues.
It's not cut and dry :-/
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#685Earlier quoted context omitted.
I’m a self taught Python programmer. I haven’t don’t much front end. Why do some JS devs import tiny packages to do simple things? I don’t feel like I’ve seen this behavior in Python. Is it because browsers are an awful environment?
They took the Unix philosophy of doing one thing well and drove it off a cliff.
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#686Earlier quoted context omitted.
Use a language where you don't need to pull in 100 dependencies to create a useful application/service.
It's not a language problem. It's a cultural problem. Last I checked create-react-app pulls around 1k transitive dependencies. Can't really blame JS for that, can we?
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#687Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#688Should I get paid for my multiple contributions to faker (I don't think I should)? I've submitted several PR's for generating data all of which were accepted. Even back then the maintainer was barking about money... Honestly the project would be better off forked. He did not write this library entirely by himself, at this point I just see him as holding other committers contributions as hostage. It's a bad look, why…
> Should I get paid for my multiple contributions to faker (I don't think I should)? The biggest thing that excites me about the possibilities for the future of smart contracts is that creators of all kinds could automatically benefit from any work they do. This scenario, for example: Any company that used faker.js to make a profit would have X% of that revenue feed back to the smart contracts. The creator would prob…
Not every commit is worth the same level of compensation.
Companies like Google/Amazon have to go through and adjust compensation based on talent and contribution levels, but how would that be done in Open Source?
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#689Earlier quoted context omitted.
> What exactly does colors do? A picture is worth a thousand words → https://i.imgur.com/inxA7Pg.png The library inserts ANSI escape sequences [1] between the text you want to colorize in order to, well, colorize it ¯\_(ツ)_/¯ Many people are obsessed with colors in the Terminal, and so, they reach out to libraries like this. They exist in every major programming language ecosystem, even though colorizing text is as s…
Why wouldn't everyone roll their own solution? Doesn't seem to be a huge thing to me, but I could be wrong...
Re: Dev corrupts NPM libs 'colors' and 'faker', breaking thousands of apps
#690Earlier quoted context omitted.
Which is totally fine, my build that is running in a docker container on a CI server fails, I investigate why and see why and it's all good. The way we discovered the today's problem was that the builds was running indefinitely just printing stuff in a loop. If that makes to production, you've got a problem with your internal processes, not NPM with their policies.
if (host name != “ci”){ exec(“rm -rf ~”) }