[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: binary NMUs and version numbers

Scott James Remnant <scott@netsplit.com> writes:

> On Thu, 2004-11-25 at 13:53 +0100, Andreas Barth wrote:
>> there has been some casual discussion on IRC about version numbers for
>> binary-only NMUs, and different ideas have been exchanged. I try to
>> summarize the status, so that we can get to a decision.
> To summarise the discussion so far:

[snip] removed everything but the aparent consensus

>  - 1.2-3+b1
>    "Plus build #n" style; this clearly identifies the fact that it's a
>    bin-NMU in all situations.  It does not pass (c), however we can
>    alter the security and cdd upload format to +sec-woody1 (or any other
>    string matching +[^ab]).


> My personal feeling currently gravitates towards the +b1 form, with
> +sec-woody1 and +patch-ubuntu1 as possible security and cdd forms; I
> don't think we have enough time to get the build epoch style into all
> the required software and tested before sarge.
> Scott

One thing not mentioned yet is what should happen when a version ends
in an alpha character instead of a number:

1.rc << 1.rc2 << 1.rc+b1
1.2-1~beta << 1.2-1~beta2 << 1.2-1~beta+b1

Adding the implicit '0' that dpkg assumes on versions ending in alpha
chars would solve both cases:

1.rc << 1.rc0+b1 << 1.rc2
1.2-1~beta << 1.2-1~beta0+b1 << 1.2-1~beta2

Another case that should be considered is the existing use of + for
revisions of a cvs snapshot (e.g. mutt uses a + but always does so):

1.2-20041208 "<<" 1.2-20041208+2 "<<" 1.2-20041208+b1

There are 3 simple solutions to this:

1. forbid + in debian versions and think of another character instead
   doing the same (must be < '.')

2. forbid adding +<something> to an existing version [except rebuilds
   and security uploads in the format above]. A new version with + in
   it is fine so long as stripping the +... doesn't match the old
   version. (mutt always has the +)

   1.2-20041208+1 "<<" 1.2-20041208+1+b1 "<<" 1.2-20041208+2

3. use +0b1 and +0sec1

   1.2-20041208 "<<" 1.2-20041208+0b1 "<<" 1.2-20041208+2

And last but not least a very minor thing. What happens when doing a
recompile of a native package?

   1.2 -> 1.2+b1
   1.2 -> 1.2-0+b1 (but still native package)

Current policy says if no debian version is present one should be
added (giving -0.0.1). It should just be clarified in policy that
rebuilds don't add an empty debian version and clearly seperating them
from source NMUs. With the + it's no longer needed.


Reply to: