Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Monotonic versioning [0] seems to be a strictly better scheme; "semantic" versioning doesn't actually include meaning, just the opinions of the authors of code. A language's development environment could enforce the monotonic requirement.

[0] http://blog.appliedcompscilab.com/monotonic_versioning_manif...



That doesn't seem to allow any kind of update to old versions, the most notable of it is security patches for past versions. But also supporting multiple concurrent branches of development (such as angular 1/2, or mobx's 4 and 5 - both are set to be supported for quite some time after their version is updated).


Elm[0], Rust[1] and probably plenty of other languages have "development environments" that enforce the semantic versioning requirements.

[0]: https://elm-lang.org/ "Enforced Semantic Versioning" [1]: https://github.com/rust-dev-tools/rust-semverver




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: