yum conflict

Michael Schwendt fedora at wir-sind-cool.org
Sun Aug 14 10:31:25 UTC 2005


On Sat, 13 Aug 2005 22:30:38 -0400, Neal Becker wrote:

> Michael Schwendt wrote:
> 
> > On Sat, 13 Aug 2005 17:11:19 -0400, Neal Becker wrote:
> > 
> > 
> >> ---> Package libmad.i386 0:0.15.1-0.lvn.1.b.4 set to be updated
> > 
> >> --> Running transaction check
> >> --> Processing Conflict: libid3tag conflicts libmad < 0.15.1b
> >> --> Finished Dependency Resolution
> >> Error: libid3tag conflicts with libmad < 0.15.1b
> > 
> > Interesting. Can you tell which libid3tag package you have installed and
> > where it comes from? Making libid3tag conflict explicitly with libmad
> > looks really weird. I don't think the Livna package does that,
> > 
> > $ rpm -q libid3tag --conflicts
> > (none)
> > 
> > $ rpm -q libid3tag
> > libid3tag-0.15.1-3.b
> > 
> > and Livna's libmad is 0.15.1b, so it's a sufficient software version:
> > 
> > $ rpm -q libmad
> > libmad-0.15.1-0.lvn.1.b.4
> > 
> Yeah, I don't understand that either.  Then again, I'm not sure what
> semantics are for comparing the versions.
 
In Fedora Extras and e.g. Livna, the 'b' is kept out of the main version
field, as non-numerical parts of a version are known to change in a way
that would require an Epoch bump in order to make RPM understand which
package is "newer". Else it would see 1.0b being higher than 1.0.  The 'b'
in MAD is for 'beta'. Sometimes developers switch from 1.0b to 1.0 or from
2.0.0rc1 to 2.0.0 and things like that.

> rpm -q libid3tag
> libid3tag-0.15.1b-3.2.fc4.rf

.rf = rpmforge, I guess, unless somebody else used the repotag, too.

> [nbecker at nbecker2 ~]$ rpm -q libid3tag --conflicts
> libmad < 0.15.1b

That's bad.  It enforces a specific package versioning scheme through an
explicit "Conflicts:" tag, whereas it should suffice if the same repository
simply provided an updated libmad package, which would _not_ conflict.

I travelled to rpmforge's subversion server in order to take a look at the
latest spec. It's from August 2004 and doesn't contain a comment as why
this particular Conflict was/is necessary. The packages don't depend on
eachother, so what's the reason for the explicit conflict?

As a wild guess, maybe libmad contained and shipped a copy of libid3tag?
If so, my aforementioned theory is valid in that an upgrade of both
packages would get rid of the conflict already. Explicit "Conflicts:"
are no way to foster compatibility of repositories.




More information about the fedora-test-list mailing list