diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-05-30 02:00:50 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-05-30 02:00:50 -0700 |
commit | 9834be8b6d77c735afcf7bd55b26db9aeb441d1a (patch) | |
tree | c48015c833016cc5e9731f9565f86280f087e62d | |
parent | Move imports to the top and use textwrap.wrap() instead of the formatter (diff) | |
download | portage-idfetch-9834be8b6d77c735afcf7bd55b26db9aeb441d1a.tar.gz portage-idfetch-9834be8b6d77c735afcf7bd55b26db9aeb441d1a.tar.bz2 portage-idfetch-9834be8b6d77c735afcf7bd55b26db9aeb441d1a.zip |
Make depgraph._serialize_tasks show a debug message when it
enables 'complete' mode due to an uninstall, and fix the
Package.__str__ method to display uninstall tasks properly.
-rw-r--r-- | pym/_emerge/Package.py | 6 | ||||
-rw-r--r-- | pym/_emerge/depgraph.py | 12 |
2 files changed, 14 insertions, 4 deletions
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py index 963bfd9f..845d3077 100644 --- a/pym/_emerge/Package.py +++ b/pym/_emerge/Package.py @@ -159,15 +159,13 @@ class Package(Task): if self.type_name == "installed": if self.root != "/": s += " in '%s'" % self.root + if self.operation == "uninstall": + s += " scheduled for uninstall" else: if self.operation == "merge": s += " scheduled for merge" if self.root != "/": s += " to '%s'" % self.root - elif self.operation == "uninstall": - s += " scheduled for uninstall" - if self.root != "/": - s += " from '%s'" % self.root s += ")" return s diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 5180c2de..a466e7d8 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -4014,6 +4014,18 @@ class depgraph(object): not complete and \ not unsolvable_blockers: self._dynamic_config.myparams["complete"] = True + if '--debug' in self._frozen_config.myopts: + msg = [] + msg.append("enabling 'complete' depgraph mode " + \ + "due to uninstall task(s):") + msg.append("") + for node in retlist: + if isinstance(node, Package) and \ + node.operation == 'uninstall': + msg.append("\t%s" % (node,)) + writemsg_level("\n%s\n" % \ + "".join("%s\n" % line for line in msg), + level=logging.DEBUG, noiselevel=-1) raise self._serialize_tasks_retry("") # Set satisfied state on blockers, but not before the |