Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-14 Thread Marc Haber
On Sat, Jan 14, 2006 at 03:14:55PM +0100, Florian Weimer wrote:
> I'm inclined to handle ~ versions only if python-apt is installed.
> Would this be acceptable to you?

I think so. Please have your package suggest python-apt and emit a
meaningful warning if python-apt is not found and a ~ version is
encountered.

Greetings
Marc

-- 
-
Marc Haber | "I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things."Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-06 Thread Marc Haber
Package: debsecan
Version: 0.3.4
Severity: normal

Hi,

debsecan complains
"invalid version 1.2.9-1~zg1 of package $PACKAGE"

The version is, however, correct. This should be fixed.

Greetings
Marc


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-zgsrv
Locale: LANG=C, LC_CTYPE=de_DE (charmap=ISO-8859-1)

Versions of packages debsecan depends on:
ii  debconf [debconf-2.0] 1.4.67 Debian configuration management sy
ii  python2.3.5-3An interactive high-level object-o

Versions of packages debsecan recommends:
ii  cron  3.0pl1-92  management of regular background p
ii  exim4-daemon-light [mail-tran 4.60-1 lightweight exim MTA (v4) daemon

-- debconf information excluded


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-06 Thread Florian Weimer
* Marc Haber:

> debsecan complains
> "invalid version 1.2.9-1~zg1 of package $PACKAGE"
>
> The version is, however, correct. This should be fixed.

How?  Is there an official description of the ~ semantics?


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-06 Thread Marc Haber
On Fri, Jan 06, 2006 at 10:55:28AM +0100, Florian Weimer wrote:
> * Marc Haber:
> > debsecan complains
> > "invalid version 1.2.9-1~zg1 of package $PACKAGE"
> >
> > The version is, however, correct. This should be fixed.
> 
> How?  Is there an official description of the ~ semantics?

I didn't find any official description short of #150739 and #93386.
The semantics are, that 1.0-1~1 is smaller than 1.0-1 but greater than
1.0-0. This is very useful for creation of backport version numbers.

Greetings
Marc

-- 
-
Marc Haber | "I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things."Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-06 Thread Florian Weimer
* Marc Haber:

> On Fri, Jan 06, 2006 at 10:55:28AM +0100, Florian Weimer wrote:
>> * Marc Haber:
>> > debsecan complains
>> > "invalid version 1.2.9-1~zg1 of package $PACKAGE"
>> >
>> > The version is, however, correct. This should be fixed.
>> 
>> How?  Is there an official description of the ~ semantics?
>
> I didn't find any official description short of #150739 and #93386.
> The semantics are, that 1.0-1~1 is smaller than 1.0-1 but greater than
> 1.0-0.

And this does indeed result in a linear ordering?  What happens if
there are multiple ~?

> This is very useful for creation of backport version numbers.

Uhm, but this would mean that a bug which is fixed in 1.2.9-1 would
still be considered present in 1.2.9-1~zg1 because that version is
smaller.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-06 Thread Marc Haber
On Fri, Jan 06, 2006 at 12:33:09PM +0100, Florian Weimer wrote:
> * Marc Haber:
> > I didn't find any official description short of #150739 and #93386.
> > The semantics are, that 1.0-1~1 is smaller than 1.0-1 but greater than
> > 1.0-0.
> 
> And this does indeed result in a linear ordering?

Probably.

> What happens if there are multiple ~?

They are processed in order.

dpkg --compare-versions handles ~ correctly.

> > This is very useful for creation of backport version numbers.
> 
> Uhm, but this would mean that a bug which is fixed in 1.2.9-1 would
> still be considered present in 1.2.9-1~zg1 because that version is
> smaller.

Well, there are many different uses of the construct. I usually use it
for backports to make sure that the backport replaces the package that
is currently installed, but is replaced by the backport source version
once it reaches the distribution in use.

For example:

At time A, unstable has foo_1.2.9-2, while stable has foo_1.2.9-1. If
my backport is thus named foo_1.2.9-2~zg1, it will replace 1.2.9-1 on
stable, which is intended. When next stable releases and foo_1.2.9-2
reaches stable, this version replaces the backport, which is also
intended.

Greetings
Marc

-- 
-
Marc Haber | "I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany  |  lose things."Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature |  How to make an American Quilt | Fax: *49 621 72739835


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-07 Thread Florian Weimer
* Marc Haber:

>> What happens if there are multiple ~?
>
> They are processed in order.
>
> dpkg --compare-versions handles ~ correctly.

And APT?  Does it behave differently?  (There are differences between
the two in the area of epoch handling.)

I'm going to add something like the following:

  - Split the version strings u, v at ~ into components (u_1, ..., u_m),
(v_1, ..., v_n).

  - If m = 0 and m > 0, then we have v < u.

  - If m = 0 and m = 0, then u = v is the result.

  - If m > 0 and n = 0, then u < v.

  - Otherwise, m,n > 0.  If u_1 < v_1, then u < v is the result.
Conversely, v_1 < u_1 means v < u.  But if u = v, recursively
compare (u_2, ..., u_m) and (v_2, ..., v_n) using this algorithm.

Does this sound reasonable?  (There are a few corner cases involving
empty components and leading and trailing zeros, but let's ignore them
for now, until there is a complete specification.)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#346179: debsecan: doesn't seem to correctly grok ~ in version number

2006-01-14 Thread Florian Weimer
* Florian Weimer:

> I'm going to add something like the following:

Testing reveals that this not what APT does.

I'm inclined to handle ~ versions only if python-apt is installed.
Would this be acceptable to you?


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]