[Rpm-maint] [RFC/PATCH] comparisons without release

Michael Schroeder mls at suse.de
Mon Nov 29 18:26:49 UTC 2010


On Mon, Nov 29, 2010 at 01:10:25PM -0500, James Antill wrote:
>  I'm not sure what you mean by explain ... I assume you know why it's
> doing what it's doing, so I guess you are saying "explain why we would
> want it to do that"?
> 
>  To which I'd say, why would we want it to match on:
> 
> Provides: foo > 1.2
> Conflicts: foo = 1.2-1

Oh, I do *not* want that to match (and my patch doesn't make it
match). I'm arguing that rpm's current behavior is confusing
and inconsistent:

Provides: foo >= 1.2-2  Requires: foo = 1.2   ->    match
Provides: foo >  1.2-1  Requires: foo = 1.2   ->    no match

"> 1.2-1" provides more than ">= 1.2-2", so why doesn't it match?

>  One problem here is that, due to ancient bugs in rpm, when yum wants to
> compare:
> 
> Provides: foo > 1.2-1
> Requires: foo = 1.2
> 
> ...it actually changes that to:
> 
> Provides: foo > 1.2
> Requires: foo = 1.2
> 
> ...before rpm even sees it. Does that still change?

Uh, you're confusing me. "Provides: foo > 1.2, Requires foo = 1.2"
does not match, both with and without the patch. But the patch
makes "foo > 1.2-1" match "foo = 1.2". So you probably need to
remove the yum workaround and rely on rpm doing the right thing.

Cheers,
  Michael.

-- 
Michael Schroeder                                   mls at suse.de
SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg
main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);}


More information about the Rpm-maint mailing list