Packaging Policy: Version Numbering

Elysium GNU/Linux Packaging Policy
Chapter 3: Version Numbering

Every package must contain a Version and Release number. Optionally, an Epoch may be specified to guarantee an upgrade over past broken version numbers. Usage of Epoch is strongly discouraged. No epoch is assumed as 0, and specifying an Epoch of 0 will have the same effect as not specifying an Epoch at all.

Each Version and Release may only be period-separated numeric values. This is to prevent problems arising when using alpha characters in version numbers where a pre-release would sort higher than the actual release, forcing an Epoch to be used. Instead, to handle upstream pre-release versions, the Release should be specified as a zero-padded, period-separated number. For example, encompass-0.5.0a2.tar.gz should be translated to encompass-0.5.0-0.0.2.ppc.emp. The extra 0 is to allow resetting of the prerelease number, when a beta comes out after an alpha, and the pre-number is reset. So then, encompass-0.5.0b1.tar.gz should be translated into encompass-0.5.0-0.1.1.ppc.emp. Post-release patch levels also have a similar effect. As an example, automake-1.4p5.tar.gz should be converted to automake-1.4-1.5.noarch.emp, assuming 1 is the currently built release of the Elysium package. When building snapshot packages, where the date should be part of the version number, the Version should be appended with a 0, and then the date in the format YYYYMMDD. For example, if sawfish was at version 1.0.1 in CVS, the Version should be sawfish-1.0.1.0.20091107-1.ppc.emp.

[ Back ] [ Top ] [ Next ]

Copyright © 2001-2002 Elysium GNU/Linux