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

Re: Debian part of a version number when epoch is bumped

 ❦ 14 février 2018 16:09 +0200, Lars Wirzenius <liw@liw.fi> :

>> > It's not only an infrastructure problem. If you Depends on X (>= 1.8),
>> > this will be true with X 1:1.6 as well.
>> Only if your program is severely buggy.
>> Hint: either it matches dpkg --compare-versions exactly, or it is a
>> severe bug.
> For extra clarity:
> $ if dpkg --compare-versions 1.8 '>=' 1:1.6; then echo 1.8 comes after
> 1:1.6; else echo no it does not; fi
> no it does not
> $ 
> A version with a lower epoch (or no epoch, which is implicitly a zero
> epoch) always compares less than one with a higher epoch. This is
> regardless of what comes after the epoch in a version number.
> Otherwise there would be little point to epochs.

That's exactly the point. You wanted X >= 1.8 and you get X 1.6.

More concrete example (now a bit in the past). On Wheezy, you want to
depend on a 1.8 JRE (you package independently). You put
default-jre-headless (>= 1.8). Since you have forgotten about the epoch,
this pulls Wheezy default-jre-headless (1:1.7-47+deb7u2). So you add the
epoch to both your own package version default-jre-headless (1:1.8-1)
and to the dependency. All good. You upgrade to Jessie and rebuild
everything. Jessie comes with default-jre-headless (2:1.7-52) which
shadows your default-jre-headless (1:1.8-1) package.
A horse!  A horse!  My kingdom for a horse!
		-- Wm. Shakespeare, "Richard III"

Attachment: signature.asc
Description: PGP signature

Reply to: