Hopefully final version of ~ version number policy
Here's a new version of the Policy patch for ~ in version numbers that
hopefully incorporates all of the suggestions. Please let me know if you
see any problems.
--- debian-policy-18.104.22.168/policy.sgml 2006-10-02 15:36:50.000000000 -0700
+++ /home/eagle/dvl/policy/policy.sgml 2006-11-20 22:14:23.000000000 -0800
@@ -2649,8 +2649,8 @@
Alphanumerics are <tt>A-Za-z0-9</tt> only.
and the characters <tt>.</tt> <tt>+</tt> <tt>-</tt>
- <tt>:</tt> (full stop, plus, hyphen, colon) and should
- start with a digit. If there is no
+ <tt>:</tt> <tt>~</tt> (full stop, plus, hyphen, colon,
+ tilde) and should start with a digit. If there is no
<var>debian_revision</var> then hyphens are not allowed;
if there is no <var>epoch</var> then colons are not
@@ -2663,8 +2663,8 @@
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
- <tt>+</tt> and <tt>.</tt> (plus and full stop) and is
- compared in the same way as the
+ <tt>+</tt> <tt>.</tt> <tt>~</tt> (plus, full stop,
+ tilde) and is compared in the same way as the
@@ -2713,7 +2713,15 @@
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: <tt>~~</tt>,
+ <tt>~~a</tt>, <tt>~</tt>, the empty part,
+ One common use of <tt>~</tt> is for upstream pre-releases.
+ For example, <tt>1.0~beta1~svn1245</tt> sorts earlier than
+ <tt>1.0~beta1</tt>, which sorts earlier than <tt>1.0</tt>.
Russ Allbery (email@example.com) <http://www.eyrie.org/~eagle/>