On Mon, Jun 13, 2016 at 01:56:54PM +0100, Daniel P. Berrange wrote:
Currently libvirt uses a 3 digit version number, except when it uses
a 4 digit version number. We have the following rules
- major - no one has any clue about when we should bump this
- minor - bump this when some "significant"[*] features appear
- micro - bump this on each new release
- extra - bump this for stable branch releases
[*] for a definition of "significant" that no one knows
Now consider our actual requirements
- A number that increments on each monthly release
- A number that can be incremented for stable branch releases
Ok, the micro + extra digits deal with our two actual requirements, so
one may ask what is the point of the major + minor digits ?
In 11 years of libvirt development we've only bumped the major digit
once, and we didn't have any real reason why we chose to the bump the
major digit, instead of continuing to bump the minor digit. It just
felt like we ought to have a 1.0 release after 7+ years. Our decisions
about when to bump the minor digit have not been that much less arbitray.
We just look at what features are around and randomly decide if any feel
"big enough" to justify a minor digit bump.
Or if we had enough releases, then we bump it, pick one random feature
and say it was because of that =)
I, for one, like the idea. I would just start with 2.0.0 on the first
release in 2017. But that's just to have the full year in each such
release.
Have a nice day,
Martin