this post was submitted on 11 Jan 2024
1805 points (98.4% liked)
Open Source
31367 readers
130 users here now
All about open source! Feel free to ask questions, and share news, and interesting stuff!
Useful Links
- Open Source Initiative
- Free Software Foundation
- Electronic Frontier Foundation
- Software Freedom Conservancy
- It's FOSS
- Android FOSS Apps Megathread
Rules
- Posts must be relevant to the open source ideology
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
- !libre_culture@lemmy.ml
- !libre_software@lemmy.ml
- !libre_hardware@lemmy.ml
- !linux@lemmy.ml
- !technology@lemmy.ml
Community icon from opensource.org, but we are not affiliated with them.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Don’t be that second guy, use Nix.
I agree with OP, but the whole confrontation could’ve been avoided in the first place if all dependencies were spelled out to the letter in the form of a flake.nix with the latest accompanying flake.lock file.
It’s a frontend JavaScript UI library. I can’t control what other dependencies people install alongside my library, or even whether they follow my library’s dependency list.
Isn't package.json for controlling what dependency versions people install with?
I think I'm missing something.
Yes, and I have a package.json that lists dependencies and the versions I test with. You can force a different version though. I don’t think that’s what happened here. I’m guessing it’s a version of some dependency that should work, because it was released as a minor version within the range I specified, but doesn’t actually work.
It could also be an issue with the build system/bundler, which I can’t really control either.
Yeah JavaScript is a horrible language and ecosystem in a lot of ways, but package.json and friends don't really give me much trouble.
And even if you hose something, you should be able to clear it out and reinstall easily.
I'm assuming the maintainer didn't (knowingly) make a breaking change in a minor/patch release. That's a high crime.
It's way worse on C and it's family. I still have nightmares with undocumented embedded dependencies that are so intertwined with the codebase that make JS look like a godsend.