From: Manoj Srivastava Date: Thu, 16 Jun 2005 05:11:27 +0000 (+0000) Subject: Chapter 4 done X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=96482414e23857e9e5f13b9d39f7ad4263b0fc59;p=debian%2Fdebian-policy.git Chapter 4 done Author: jdg Date: 2001/04/16 00:39:31 Chapter 4 done git-archimport-id: srivasta@debian.org--etch/debian-policy--devel--3.0--patch-97 --- diff --git a/policy.sgml b/policy.sgml index ac69418..b964aac 100644 --- a/policy.sgml +++ b/policy.sgml @@ -1662,11 +1662,11 @@ - Version numbering + Version numbering

- Every package has a version number, in its Version - control file field. + Every package has a version number recorded in its + Version control file field.

@@ -1681,7 +1681,7 @@

The version number format is: - &lsqbepoch:]upstream-version[-debian-revision] + &lsqbepoch:]upstream_version[-debian_revision]

@@ -1693,7 +1693,7 @@

This is a single (generally small) unsigned integer. It may be omitted, in which case zero is assumed. If it is - omitted then the upstream-version may not + omitted then the upstream_version may not contain any colons.

@@ -1705,81 +1705,81 @@ - upstream-version + upstream_version

- This is the main part of the version. It is usually the - version number of the original (`upstream') package from - which the .deb file has been made, if this is - applicable. Usually this will be in the same format as - that specified by the upstream author(s); however, it - may need to be reformatted to fit into the package - management system's format and comparison scheme. + This is the main part of the version number. It is + usually the version number of the original (`upstream') + package from which the .deb file has been made, + if this is applicable. Usually this will be in the same + format as that specified by the upstream author(s); + however, it may need to be reformatted to fit into the + package management system's format and comparison + scheme.

The comparison behavior of the package management system - with respect to the upstream-version is - described below. The upstream-version + with respect to the upstream_version is + described below. The upstream_version portion of the version number is mandatory.

- The upstream-version may contain only - alphanumerics and the characters . + - - : (full stop, plus, hyphen, colon) - and should start with a digit. If there is no - debian-revision then hyphens are not allowed; + The upstream_version may contain only + alphanumerics + +

Alphanumerics are A-Za-z0-9 only.

+ + and the characters . + - + : (full stop, plus, hyphen, colon) and should + start with a digit. If there is no + debian_revision then hyphens are not allowed; if there is no epoch then colons are not allowed.

- debian-revision + debian_revision

- This part of the version represents the version of the - modifications that were made to the package to make it a - Debian binary package. It is in the same format as the - upstream-version and is compared in the same - way. + This part of the version number specifies the version of + the Debian package based on the upstream version. It + may contain only alphanumerics and the characters + + and . (plus and full stop) and is + compared in the same way as the + upstream_version is.

It is optional; if it isn't present then the - upstream-version may not contain a hyphen. + upstream_version may not contain a hyphen. This format represents the case where a piece of software was written specifically to be turned into a - Debian binary package, and so there is only one - `debianization' of it and therefore no revision - indication is required. + Debian package, and so there is only one `debianization' + of it and therefore no revision indication is required.

It is conventional to restart the - debian-revision at 1 each time the - upstream-version is increased. -

- -

- The package management system will break the - upstream-version and - debian-revision apart at the last hyphen in - the string. The absence of a debian-revision - compares earlier than the presence of one (but note that - the debian-revision is the least significant - part of the version number). + debian_revision at 1 each time the + upstream_version is increased.

- The debian-revision may contain only - alphanumerics and the characters + and - . (plus and full stop). + The package management system will break the version + number apart at the last hyphen in the string (if there + is one) to determine the upstream_version and + debian_revision. The absence of a + debian_revision compares earlier than the + presence of one (but note that the + debian_revision is the least significant part + of the version number).

- The upstream-version and debian-revision + The upstream_version and debian_revision parts are compared by the package management system using the same algorithm:

@@ -1808,21 +1808,22 @@

- These two steps are repeated (chopping initial non-digit - strings and initial digit strings off from the start) until a + These two steps (comparing and removing initial non-digit + strings and initial digit strings) are repeated until a difference is found or both strings are exhausted.

Note that the purpose of epochs is to allow us to leave behind mistakes in version numbering, and to cope with situations - where the version numbering changes. It is not there - to cope with version numbers containing strings of letters - which the package management system cannot interpret (such as - ALPHA or pre-), or with silly orderings (the - author of this manual has heard of a package whose versions - went 1.1, 1.2, 1.3, 1, - 2.1, 2.2, 2 and so forth). + where the version numbering scheme changes. It is + not intended to cope with version numbers containing + strings of letters which the package management system cannot + interpret (such as ALPHA or pre-), or with + silly orderings (the author of this manual has heard of a + package whose versions went 1.1, 1.2, + 1.3, 1, 2.1, 2.2, + 2 and so forth).

@@ -1853,7 +1854,7 @@ too.

- Note, that other version formats based on dates which are + Note that other version formats based on dates which are parsed correctly by the package management system should not be changed.