Red Hat Bugzilla – Bug 246078
Wrong dependency calculations: kdebindings-3.5.6->3.5.7 upgrade
Last modified: 2014-01-21 17:58:37 EST
With the latest kde update (3.5.7-1.fc7.1) perl(DCOP) is now provided by
kdebindings-dcopperl instead of kdebindings. Unfortunately on multilib systems
yum decides to install kdebindings-3.5.6-1.fc7.i386 (shortest name wins?) even
while at the same time it is about to upgrade the x86_64 version of kdebindings
to the newer version.
Created attachment 158116 [details]
yum update results
A little background wrt what Kostas is seeing:
perl(DCOP) is provided by both kdebindings-3.5.6 and kdebindings-dcopperl-3.5.7
(moved to separate subpkg in update).
kdesdk Requires: perl(DCOP)
On existing system with kdebindings-3.5.6, kdesdk-3.5.6, trying to upgrade to
kde-3.5.7 results in transaction trying to install kdebindings-3.5.6.i386 on
x86_64 systems ?? (presumably to satisfy the perl(DCOP) dep using "shortest
named pkg that provides it).
It was suggested that adding to kdebindings-dcopperl:
Obsoletes: kdebindings < 3.5.7
may help. If so, I'm ok with adding that to kdebindings packaging.
For the record this happens in a machine with no i386 packages installed also.
can you output a yum -d 6 update, please
Created attachment 158119 [details]
yum -d 6 update output
yum -d 6 update output from a different machine (no i386 packages installed at
all on this machine)
Created attachment 158121 [details]
another yum -d6 log
Created attachment 158310 [details]
should sort the 'best' providers by distance from requesting arch
please apply this patch to depsolve.py in yum and see if the problem goes away.
I think it will
No luck with the patch :(, it doesn't do anything in this case since at that
point we have:
best: kdebindings-dcopperl - 3.5.7-1.fc7.1.x86_64
po: kdebindings - 3.5.6-1.fc7.i386
and neither of the if cases are taken so the lowest name wins replaces
kdebindings-dcopperl with the i386 version of kdebindings right after the code
you added in:
if len(po.name) < len(best.name):
best = po
I didn't add it - I failed to add the 'elif' to it.
Try this for me. on line: 592 - add 'el' to the 'if' that's there.
Great, with the elif kdebindings-dcopperl is picked up and everything works
cool, it's committed and I'm closing this upstream
*** Bug 246395 has been marked as a duplicate of this bug. ***
yum-3.2.2-1.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report.
yum-3.2.2-1.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.