My small brain can't understand this. Why developers shipping the version of their software starting with 0.0.0 whywouldnt you start with 1,2,3 and so on. There are a lot of numbers in existence
Discussion
Semantic versioning. Helps keep track of major + minor releases and bug fixes
Yeah but it can be really much more simplified.
As nabismo said, thereās a standard called āSemantic Versioningā that defines what each part means and when they should change based on whatās included in each release.
Oh! So its a standard! Okay okay!
The idea is that the x.0.0 is the start of a new, backward-incompatible feature-/function-set, while the numbers after '.' have less impact.
Some schemes have this system with a possible '-2', to indicate the 2nd revision for e.g. packaging the same version of the software. It has become fairly standard although it differs how strict the meaning of the positions is respected.
Yee. Itās described well here: https://semver.org/
You can take it a step further by using what are called āconventional commitsā where your git commit message contains the scope of the changed code. Then a GitHub Action can automatically make the version changes that reflect your code changes.
My Nostr relay implementation, Memorelay, works this way.
I don't know anything, but from what I have observed, beta/test releases are 0.x.x while production releases start at 1.x.x
In computers we always start with 0