The difference is that I can update all dependencies without having to verify whether they contain breaking changes, because I can just look at the number.
Conformism helps us think less. Imagine if every website had their own way of scrolling or logging in. Press T to login. Triple click here.
Semver helps me update 10 dependencies in 5 seconds without opening any release notes.
Developers are under no obligations, but one should not go out of their way to make others’ lives harder. Just use semver.
That is precisely what I mean about not materializing, reality is not like that. Maintainers make mistakes, are not diligent about following semver, and after enough “minor” upgrades that break everything you simply lose all trust in the numbers.
Not exactly 10 dependencies, but I do that many times by using version ranges like ^1.0.0. So to answer your question: What you are updating and why... mostly patch and minor versions that include vulnerability and performance fixes. And I read release notes... but the number gives me a good idea what to read in more detail.
Now the problem of TS not following the convention is that many projects have ranges like ^3.7.1 in their package.json without knowing that a simple install removing package-lock may break your build because 3.8 and 3.9 have breaking changes in it.
Conformism helps us think less. Imagine if every website had their own way of scrolling or logging in. Press T to login. Triple click here.
Semver helps me update 10 dependencies in 5 seconds without opening any release notes.
Developers are under no obligations, but one should not go out of their way to make others’ lives harder. Just use semver.