3 ms·
Semver hasn't failed anyone--web developers and the bozos in the Node community (of which I cheerfully count myself as a member) are lacking in discipline. You
by angersock 12y ago
Semver hasn't failed anyone--web developers and the bozos in the Node community (of which I cheerfully count myself as a member) are lacking in discipline.
You should be fast to get to 1.x.x. If your app breaks on a patch release (that was only a bugfix and provided that interfaces stayed consistent), maybe you shouldn't rely on buggy behavior and maybe you should fix your code.
This isn't a failing of semver--this is a failure of being responsible engineers.
EDIT:
The best example from the article is the bit talking about how people interpret 0.x vs 1.x vs 2.x. Folks, it's just a damned version number, and a number that only indicates you may have to refactor you application to handle changed interfaces. Any other psychological baggage you attach to it is just that, baggage. Aaaargh.
- nmjohn 12y agoI don't disagree, but unfortunately believing that humans - no matter how logical CS people tend to be - will always think completely logical and rational is a flawed line of thinking. Yes, people _should_ get over changes in version number, but in reality they don't. So library authors cater to reality, not how they wish things should be. That is the problem, and why semvar is broken. Not in principle it isn't, but in how it actually functions in the hands of humans.
- cwyers 12y agoWell, people use version number to communicate a lot of things that aren't captured by the strict, rigid form of semver. And when you follow semver, you omit communication about all of those other things. Now, if you think that the only things worth caring about are what semver says matters, then you don't view this as important. But there's a lot more to the world than package managers, and expecting people to do things the way that's most convenient for package managers is just a little bit silly, no? Package managers are there to serve us, not the other way around. So maybe instead of "fixing" version numbers so that they're the most convenient for package managers, maybe we can fix package managers so that they use something better suited to handling dependencies than version numbers, so that we can use version numbers to communicate with people, not just package managers.
- nmjohn 12y agoI should have added a conclusion to my post but I sometimes feel they don't always further technical discussions because once a conclusion is applied, dissenters tend to ignore the logic leading up to it no matter how valid. But I do agree that package managers are there to serve us, not the other way around. The unfortunate thing is this issue is one of differences in human nature and how a given person prefers their system to be - rigid and concrete maximizing efficiency; or fluid and communicative adding overhead but increasing understandability.