[yum-commits] yum/depsolve.py
James Antill
james at osuosl.org
Mon Aug 26 04:16:58 UTC 2013
yum/depsolve.py | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
New commits:
commit 047844595ff1c37b615887fd70d9db6ba9497250
Author: James Antill <james at and.org>
Date: Mon Aug 26 00:16:45 2013 -0400
Deal with multiple winners in providers vercmp (usually multilib).
diff --git a/yum/depsolve.py b/yum/depsolve.py
index 4d16ef2..dcfd05a 100644
--- a/yum/depsolve.py
+++ b/yum/depsolve.py
@@ -1598,10 +1598,13 @@ class Depsolve(object):
self.verbose_logger.log(logginglevels.DEBUG_4,
_('provides vercmp: %s') % str(req))
newest = sorted(prov_depsolve,
- key = lambda x: PackageEVR(*prov_depsolve[x]))[-1]
- self.verbose_logger.log(logginglevels.DEBUG_4,
- _(' Winner: %s') % newest)
- pkgresults[newest] += 1
+ key = lambda x: PackageEVR(*prov_depsolve[x]))
+ for winner in reversed(newest):
+ if prov_depsolve[winner] != prov_depsolve[newest[-1]]:
+ break
+ self.verbose_logger.log(logginglevels.DEBUG_4,
+ _(' Winner: %s') % winner)
+ pkgresults[winner] += 1
# If we have more than one "best", see what would happen if we picked
# each package ... ie. what things do they require that _aren't_ already
More information about the Yum-commits
mailing list