what's with the commas in the cyrus-imapd release tag?

Michael Schwendt fedora at wir-sind-cool.org
Wed Aug 4 01:14:33 UTC 2004


On Tue, 03 Aug 2004 20:34:09 -0400, Paul Iadonisi wrote:

> On Tue, 2004-08-03 at 16:11, seth vidal wrote:
> 
> [snip]
> 
> > Just as a heads up - I don't think commas confuse yum at all.
> 
> [snip]
> 
> > This is the first time I've heard of it and quite frankly I'd be
> > surprised b/c yum uses rpm's version comparison functions w/o ANY
> > modification.
> 
>   My mistake.  I believe Seth is correct, here.  I just reproduced the
> problem using 'rpm -Fvh' as well:
> 
> 
> ws187:root:535)# rpm -Fvh cyrus-imapd-* perl-Cyrus-2.2.6-2,FC3,3.i386.rpm error: Failed dependencies:
>         cyrus-imapd = 2.2.6-2 is needed by cyrus-imapd-devel-2.2.6-2,FC3,3
>         FC3 is needed by cyrus-imapd-devel-2.2.6-2,FC3,3
>         3 is needed by cyrus-imapd-devel-2.2.6-2,FC3,3
>         cyrus-imapd = 2.2.6-2 is needed by cyrus-imapd-murder-2.2.6-2,FC3,3
>         FC3 is needed by cyrus-imapd-murder-2.2.6-2,FC3,3
>         3 is needed by cyrus-imapd-murder-2.2.6-2,FC3,3
>         cyrus-imapd = 2.2.6-2 is needed by cyrus-imapd-nntp-2.2.6-2,FC3,3
>         FC3 is needed by cyrus-imapd-nntp-2.2.6-2,FC3,3
>         3 is needed by cyrus-imapd-nntp-2.2.6-2,FC3,3
>         perl-Cyrus = 2.2.6-2 is needed by cyrus-imapd-utils-2.2.6-2,FC3,3
>         FC3 is needed by cyrus-imapd-utils-2.2.6-2,FC3,3
>         3 is needed by cyrus-imapd-utils-2.2.6-2,FC3,3
> 
>   Odd thing is, I was NOT able to reproduce this upgrading balsa from
> 2.0.17-3 to 2.2.0-1,FC3,5:
> 
> ws187:root:576)# rpm -ivh balsa-2.0.17-3.i386.rpm
> Preparing...                ########################################### [100%]
>    1:balsa                  ########################################### [100%]
> ws187:root:577)# rpm -Fvh balsa-2.2.0-1,FC3,5.i386.rpm
> Preparing...                ########################################### [100%]
>    1:balsa                  ########################################### [100%]
> 
>   Bug in rpm's version compare function?

Well, decide yourself:

  $ rpm -qpR cyrus-imapd-devel-2.2.6-2,FC3,3.i386.rpm 
  cyrus-imapd = 2.2.6-2
  FC3  
  3  
  rpmlib(PayloadFilesHavePrefix) <= 4.0-1
  rpmlib(CompressedFileNames) <= 3.0.4-1

Usually, multiple dependencies can be separated with a comma:

  Requires: foo = 1.0, bar = 2.0

Now if the package's EVR contains a comma, this breaks that format
and e.g.

  Requires: cyrus-imapd = 2.2.6-2,FC3,3

is parsed to

  Requires: cyrus-imapd = 2.2.6-2
  Requires: FC3
  Requires: 3

and "voila!" you've got the wreckage ;)

  FC3 is needed by cyrus-imapd-devel-2.2.6-2,FC3,3
  3 is needed by cyrus-imapd-devel-2.2.6-2,FC3,3





More information about the fedora-test-list mailing list