Release Version Numbering

for the ArsDigita Community System by Ron Henderson

ACS version numbers help identify at a high-level what is in a particular release and what has changed since the last release. A "version number" is really just a string of the form:

major-minor-release

A change in the major version number indicates a fundamental change in the architecture of the system, e.g. ACS 2 to ACS 3. A change in the minor version number signifies the addition of new modules and minor data model changes, e.g. ACS 3.1 to ACS 3.2. The final release number indicates the relative maturity of a release and marks things like bug fixes; it follows the ordered progression:

alpha
beta
0 (public release)
1
2
...
So typical release version numbers would be:
acs-3.2.2
acs-4.0.beta

The first is a relatively mature release of the ACS 3.2 base code and the second is a non-public release of ACS 4.0 that probably still has lots of bugs.

Version numbers are also recorded in the CVS repository so that the code tree can be restored to the exact state it was in for a particular release. To translate between a distribution tar file (acs-3.2.2.tar.gz) and a CVS tag, just swap '.' for '-' and add the release date. The entire release history of the toolkit is recorded in the tags for the top-level readme.txt file:

> cvs log readme.txt
RCS file: /usr/local/cvsroot/acs/readme.txt,v
Working file: readme.txt
head: 3.1
branch:
locks: strict
access list:
symbolic names:
	acs-4-0: 3.1.0.8
	acs-3-2-2-R20000412: 3.1
	acs-3-2-1-R20000327: 3.1
	acs-3-2-0-R20000317: 3.1
	acs-3-2-beta: 3.1
	acs-3-2: 3.1.0.4
	acs-3-1-5-R20000304: 1.7.2.2
	acs-3-1-4-R20000228: 1.7.2.2
	acs-3-1-3-R20000220: 1.7.2.2
	acs-3-1-2-R20000213: 1.7.2.1
	acs-3-1-1-R20000205: 1.7.2.1
	acs-3-1-0-R20000204: 1.7
	acs-3-1-beta: 1.7
	acs-3-1-alpha: 1.7
	acs-3-1: 1.7.0.2
	v24: 1.5
	v23: 1.4
	start: 1.1.1.1
	arsdigita: 1.1.1
keyword substitution: kv
total revisions: 13;	selected revisions: 13
description:
...

In the future, ArsDigita packages should follow this same convention on version numbers.


ron@arsdigita.com