Up: Release types [Contents][Index]
Release version numbers can often be used to derive the intended
release type. The algorithm used to do so depends on the version
semantics. As of version 1.1, grayupload
supports two distinct semantics: gnu
and kernel
. Both
assume that the version number consists at least of two decimal
numbers, major and minor, delimited by a single dot. The
minor number can be followed by another dot and a decimal number,
called patch-level.
The gnu
version semantics is used by GNU projects. If the
version number contains only major and minor parts, the release type
is ‘stable’. If the patch-level part is present, its value is
taken into account. If it is greater than or equal to 90, this is an
‘alpha’ release. Otherwise, this is a ‘stable’ release.
Another version semantics is kernel
, called so because it is
used in Linux kernel version numbering. When this semantics is
selected, release type is determined by the version major number:
even major numbers correspond to ‘stable’ releases, whereas odd
ones correspond to ‘alpha’ releases.
To determine release types automatically, use the
version_semantics
statement in your configuration file
(see Configuration) to define the version semantics. For example,
to use ‘gnu’ semantics:
version_semantics gnu
When this statement is present, grayupload
scans the list of
upload file names. It extracts the version number from each file name
argument and tries to determine release type from it using the
requested semantics. If all file names yield the same release type,
it is used to determine the upload destination as described in
Release types.
Notice the following important points. First of all, version semantics is applied only if the release type is not specified explicitly in the command line (using the --release-type option). Secondly, it applies only if at least one file to be uploaded is supplied in the command line. In particular, it won’t be applied if only standalone options are present in the command line (see Standalone Options). And finally, if more than one upload file is given, version semantics is used only if it produces the same result when applied to each file name.
Up: Release types [Contents][Index]