Version numbers, what are they good for?
[Posted January 9, 2003 by ris]
Somewhere in last year's LWN mail there were a couple of letters wanting to
know more about the version numbers in Linux distributions. Do they mean
anything? What do they tell you about a product? This subject has also
prompted a lively debate on the Debian-devel mailing list (beginning with
this
post).
The bottom line is, version numbers are arbitrary constructs and
meaningless when comparing different distributions. Within a distribution
the numbers do say more. For example, Red Hat Linux 8.0 is a major new
release with lots of new features, while Red Hat Linux 8.1 will add mostly
security and bug fixes. The same is true for other major new releases such
SCO Linux 4.0 (powered by UnitedLinux 1.0) and Mandrake Linux 9.0.
The difference between a major and minor release can also be subjective.
Is it the number of new packages that have been added? Maybe its just one
or two new packages that add significant features. Are the upgraded
packages bug fix releases of the previous version, or do they add new
features. Is there a new Linux kernel packaged with the new version, and
does it add new features or provide patches? While most new features are
held until the next x.0 release, some may creep into a distribution by the
x.3 release. It's all up to the distribution provider.
The major.minor scheme is not the only one. A version 3.0 might next
become 3.0.1, if the developer feels it is somehow less than a 3.1
release. Names and dates are also used in distribution versioning. Debian
GNU/Linux 3.0 is known as woody. Woody was preceeded by potato (2.2) and
is succeeded by sarge. Sarge doesn't have a number yet, just the name.
Red Hat names beta releases. The beta known as Psyche became 8.0. Phoebe
is available now as an unnumbered beta, which when ready will become 8.1.
In other schemes Phoebe could be called 8.1 beta or maybe 8.1rc1. Somehow
calling a version a "release candidate" makes it sound more stable than a
"beta", but that doesn't make it so. Adding a date to the version number
is an easy way of telling whether or not the release is current. DistroX
20030108 would be more current than DistroX 20021103, but the major/minor
aspect is lost.
Even where a distribution begins numbering is quite arbitrary. Some are
released at version 1.0, others start at 0.5 or perhaps 0.0.1, or maybe 5.1
because they are based on someone else's 5.1 release. No wonder then that
a 4.0 release from one distribution is as current as a 9.0 release from a
another distribution. There is no standard, and there is not likely to be
one any time soon. Names are fun, but pretty meaningless. Dates are
great, especially when combined with a major.minor number such as KNOPPIX
(currently at v3.1-2003-01-01). Whatever the scheme, we can only hope that
each distribution provider picks one scheme and sticks to it, so that
DistroX 20021103 doesn't become DistroX 3.2 next.
(
Log in to post comments)