Hi

I have created a patch to make the depsolver error messages show more information.

I objections to this ?

Tim
>From f1ed8565bd595a6fcf0a2068d3693fa256c86732 Mon Sep 17 00:00:00 2001
From: Tim Lauridsen <[EMAIL PROTECTED]>
Date: Fri, 11 Jan 2008 12:20:05 +0100
Subject: [PATCH] make the depsolver errors show the full package names & repo

---
 yum/depsolve.py |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/yum/depsolve.py b/yum/depsolve.py
index d495f40..9a4a81b 100644
--- a/yum/depsolve.py
+++ b/yum/depsolve.py
@@ -404,8 +404,9 @@ class Depsolve(object):
             if self.pkgSack is None:
                 return self._requiringFromTransaction(requiringPo, requirement, errorlist)
             else:
+                prob_pkg = "%s (%s)" % (requiringPo,requiringPo.repoid)
                 msg = 'Unresolvable requirement %s for %s' % (niceformatneed,
-                                                               reqpkg[0])
+                                                               prob_pkg)
                 self.verbose_logger.log(logginglevels.DEBUG_2, msg)
                 checkdeps = 0
                 missingdep = 1
@@ -483,9 +484,10 @@ class Depsolve(object):
 
         if len(provSack) == 0: # unresolveable
             missingdep = 1
+            prob_pkg = "%s (%s)" % (requiringPo,requiringPo.repoid)
             msg = 'Missing Dependency: %s is needed by package %s' % \
             (rpmUtils.miscutils.formatRequire(needname, needversion, needflags),
-                                                                   name)
+                                                                   prob_pkg)
             errorlist.append(msg)
             return checkdeps, missingdep
         
@@ -550,7 +552,8 @@ class Depsolve(object):
         if self.rpmdb.contains(po=best): # is it already installed?
             missingdep = 1
             checkdeps = 0
-            msg = 'Missing Dependency: %s is needed by package %s' % (needname, name)
+            prob_pkg = "%s (%s)" % (requiringPo,requiringPo.repoid)
+            msg = 'Missing Dependency: %s is needed by package %s' % (needname, prob_pkg)
             errorlist.append(msg)
             return checkdeps, missingdep
         
@@ -651,7 +654,8 @@ class Depsolve(object):
             
         else:
             conf = rpmUtils.miscutils.formatRequire(needname, needversion, flags)
-            CheckDeps, conflicts = self._unresolveableConflict(conf, name, errormsgs)
+            prob_pkg = "%s (%s)" % (requiringPo,requiringPo.repoid)
+            CheckDeps, conflicts = self._unresolveableConflict(conf, prob_pkg, errormsgs)
             self.verbose_logger.log(logginglevels.DEBUG_1, '%s conflicts: %s',
                 name, conf)
             if conflicts:
-- 
1.5.3.6

_______________________________________________
Yum-devel mailing list
[email protected]
https://lists.dulug.duke.edu/mailman/listinfo/yum-devel

Reply via email to