How to Read Version Numbers
ST/X version Numbers
For the packaged Smalltalk/X, a 4-part version numbering scheme is used:
The major number is only incremented if a class of the base-system has changed such that
old binary classes (i.e. compiled linrary-dll's) are no longer binary compatible and must be recompiled.
Typically this happens, when an instance variable is added to a class like "View", which has many
subclasses. We therefore try hard to avoid this.
We also increment the major number, if source incompatibilities are to be expected with
respect to previous versions,
which means that as a developer, you will likely have to change your code.
The last major number increase was when the stream protocols default positioning was changed
from 1- to 0-based indexing.
The minor number is incremented for every publication which contains major new features,
such as a new tool or a new communication framework.
It is also incremented for minor incompatibilities,
which affect only tools or other subsets of the base system
(but usually do not affect other applications).
The revision number is incremented for minor new features or bug fixes.
The release number is only used internally within exept (it is actually the build number
which is automatically generated from jenkins).
Class Version Numbers ("version" Methods)
The version number provides the version from which the binary was last built.
It is usually a copy of the "version_CVS" number, iff the binary was checked out and
built from the CVS repository. We are in the process of migrating to another SCM
(Source Code Management) system (Mercurial), so these might change in the near future.
CVS Class Version Numbers ("version_CVS" Methods)
These version numbers are generated and used by CVS. We only use the default 2-part scheme,
where the first major number is never incremented. Occasionally, a class temporarily may get a 3-part number,
when it is part of a branch in the modification history.
Such branch versions do not make it into a public release, though.
Other Class Version Numbers ("version_XXX" Methods)
These are used to track version info for other SCM (Source Code Management) systems which
are in use at eXept. Currently you may occasionally find SVN, Mercurial and Monticello numbers.
For feedback and error reporting, please ignore those and always provide us with
either the "version" info, which reflects the version from which the binary was compiled.
Copyright © 2008 eXept Software AG, all rights reserved