From 4713d124d3233f6c3c4898808cf1b53e1fcdb87b Mon Sep 17 00:00:00 2001
From: Russ Allbery
Date: Mon, 4 Jun 2007 00:50:10 +0000
Subject: [PATCH] Document ~ behavior in version numbers
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit
Allow ~ in package versions and update the sorting rules to reflect ~'s
behavior of sorting before any other character or the empty string.
Thanks to Nicolas François and Marc Brockschmidt for wording
suggestions.
git-archimport-id: rra@debian.org--lenny/debian-policy--devel--3.7--patch-1
---
debian/changelog | 7 +++++++
policy.sgml | 18 +++++++++++++-----
upgrading-checklist.html | 3 +++
3 files changed, 23 insertions(+), 5 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 2c0734b..911135c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+debian-policy (3.7.3.0) UNRELEASED; urgency=low
+
+ * Bug fix: "[PROPOSAL] Document ~ behavior in version numbers", thanks
+ to Nicolas François and Marc Brockschmidt (Closes: #382612).
+
+ --
+
debian-policy (3.7.2.2) unstable; urgency=low
* Bug fix: "clarify 12.3 Additional documentation", thanks to Peter
diff --git a/policy.sgml b/policy.sgml
index ba97952..4acf402 100644
--- a/policy.sgml
+++ b/policy.sgml
@@ -2649,8 +2649,8 @@ Package: libc6
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
+ : ~ (full stop, plus, hyphen, colon,
+ tilde) 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.
@@ -2663,8 +2663,8 @@ Package: libc6
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
+ + . ~ (plus, full stop,
+ tilde) and is compared in the same way as the
upstream_version is.
@@ -2713,7 +2713,15 @@ Package: libc6
which may be empty) are compared lexically. If a difference
is found it is returned. The lexical comparison is a
comparison of ASCII values modified so that all the letters
- sort earlier than all the non-letters.
+ sort earlier than all the non-letters and so that a tilde
+ sorts before anything, even the end of a part. For example,
+ the following parts are in sorted order from earliest to
+ latest: ~~, ~~a, ~, the empty part,
+ a.
+ One common use of ~ is for upstream pre-releases.
+ For example, 1.0~beta1~svn1245 sorts earlier than
+ 1.0~beta1, which sorts earlier than 1.0.
+
diff --git a/upgrading-checklist.html b/upgrading-checklist.html
index 0cb73b8..4fe8c71 100644
--- a/upgrading-checklist.html
+++ b/upgrading-checklist.html
@@ -53,6 +53,9 @@ picking your way through this list.
The checklist
+3.7.3.0 unreleased
+ * Package version numbers may contain tildes, which sort before
+ anything, even the end of a part. [5.6.12]
3.7.2.2 Oct 2006
* Maintainer scripts must not be world writeable (up from a
should to a must) [6.1]
--
2.39.5