The usual versioning uses 2, 3, or sometimes 4 numbers, for example:
- 1 : Major revision (new UI, lots of new features, conceptual change, breaking changes, etc.)
- 9 : Minor revision (smaller releases, weekly, bi weekly, small sets of new features)
- 0 : Bugfix revision, bugfixes, hotfixes, small tweaks to major or minor revisions.
1 : Build number (if used). You can see that in .NET framework using something like
Currently we increment the so called bugfix revision number on weekly releases, so last it was
0.9.33, and next week it’s going to be
0.9.34. This versioning scheme makes no sense, and makes it harder to release hotfixes.
For example the
0.9.32 release was re-released 4 times with fixes:
All those revisions were bugfix revisions. And should have been incrementing the bugfix number. What should have happened was
0.10.0 is released, and after that
0.10.2, and so on, were hotfixes to that weekly release.
So I propose from next release we start incrementing the minor revision rather than the bugfix revision. Which would make it
0.10.0, rather than
Of course this change in versioning scheme would have to be communicated to the users.