the anarchists, the middle-of-the-roaders, and John Skaller. The control freaks (me, Fred, and Konrad -- at least you two said you agree with me!) are in favour of prescribing *syntax* for version numbers and *suggesting* semantics. The *proposed* syntax and semantics that I
Right, and it seems worth pointing out again why, or rather to what extent, the interpretation of version numbers should be unified. The criterion is that it must be clear both for human users and for installation programs 1) which of two versions is newer 2) if two versions are compatible, i.e. use the same APIs The first criterion could be met by any "reasonable" version numbering scheme, plus a package-specific routine for comparison, as has been pointed out by the "anarchists". But the second one is less obvious to realize. For the installation program, another package-supplied routine would be sufficient, but it should also be clear for a normal user whether version 1.2.3 is merely a bug-fix update to 1.1.0 or uses a non-compatible API. Another distinction that matters for the user is whether code is production level or experimental. Within these limits I am willing to leave all the freedom people want, such as whether to start at 0 or at 1. So perhaps the following scheme might be acceptable: Version numbers start with an API version number, then any combination of letters and punctuation that is likely to make sense to a human reader, followed by an optional "alpha" or "beta" indicator. The first number would change only if a package cannot be used as a drop-in replacement for its predecessors. Is that something the "anarchists" could agree on? Konrad. -- ------------------------------------------------------------------------------- Konrad Hinsen | E-Mail: hinsen@cnrs-orleans.fr Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-2.38.25.55.69 Rue Charles Sadron | Fax: +33-2.38.63.15.17 45071 Orleans Cedex 2 | Deutsch/Esperanto/English/ France | Nederlands/Francais -------------------------------------------------------------------------------