Control: reassign -1 devscripts 2.20.5

[ See below for why I'm reassigning back. ]

On Fri, 2020-12-11 at 22:01:21 +0100, Xavier wrote:
> Le 11/12/2020 à 12:58, Guillem Jover a écrit :
> > On Tue, 2020-12-08 at 12:14:06 +0100, Jonas Smedegaard wrote:
> >> A package version 1.2.3+ds can be repackaged as 1.2.3+ds1 and again as
> >> 1.2.3~ds2.
> >>
> >> If adding a component group, synthesized version uses hardcoded delimiter 
> >> +~.
> >>
> >> A package with component group version 1.2.3+ds+~4.5.6 cannot be similarly
> >> repackaged, but need to "bump" the repackaging keyword itself e.g. to
> >> 1.2.3+repack+~4.5.6, and repackaging again then need another ugly bump 
> >> e.g. to
> >> 1.2.3+zrepack+~4.5.6
> >>
> >>
> >> Please make component group delimiter configurable, to allow more 
> >> flexibility
> >> in situations where initial use of + is not needed - e.g. when introducing
> >> components at the same time as bumping main version where ~+ would suffice.
> > 
> > Xavier, how is this a libdpkg-perl issue? This grouping feature seems
> > entirely specific to uscan?

> no it isn't specific to uscan but to all debian tools. '+~' was chosen
> to have:
> 
>   normal version < package + components < package+ds.
> 
> Now Jonas suggests that 1.0.0+ds+~xxx should be lower than
> 1.0.0+ds1+~xxx.

That's not what I read in the request. I read a request to be able to
use something else than the default «+~» as group delimiter, which is
something that uscan decides on.

> Like other Debian tools, uscan uses Dpkg::Version to order versions.
> in uscan
> Doing a change in uscan only will produce packages refused by dch and
> other tools.
> 
> Problem is not related to component but to the Dpkg::Version algorithm:
> 
>  dpkg --compare-versions '1.1+repack+ds-1' lt '1.1+repack1+ds-1' \
>     && echo OK || echo BAD
>  => BAD
> 
> which is counter intuitive.

This is how the version comparison is specified, it should not be
surprising if one has read it. :) It cannot be intuitive with no
context as there are many ways one could decide to sort versions.

> I think that "+" should be considered as a separator (like ".")

The version comparison does not know about any separator besides the
epoch (:) and the revision (-) ones. Anything else is just sorted in
the following order ~, digits, alpha and the rest in ASCII order.

Changing the semantics of an existing character is pretty much a
non-starter. The algorithm cannot be changed or the entire ecosystem
would break down. If you decide this is not to be improved in uscan,
then please just close it instead of reassigning, as what you request
is not actionable here.

Thanks,
Guillem

Reply via email to