Display._blockers(): distinguish hard blocking
authorZac Medico <zmedico@gentoo.org>
Mon, 18 Mar 2013 21:27:57 +0000 (14:27 -0700)
committerZac Medico <zmedico@gentoo.org>
Mon, 18 Mar 2013 21:27:57 +0000 (14:27 -0700)
pym/_emerge/resolver/output.py

index 93a896d4a0ab235d86e392e3f413de544d7f47bb..46a13bf6af4dbc31df7a7634ac42fd76cc867a8c 100644 (file)
@@ -100,13 +100,18 @@ class Display(object):
                block_parents = self.conf.blocker_parents.parent_nodes(blocker)
                block_parents = set(_unicode(pnode.cpv) for pnode in block_parents)
                block_parents = ", ".join(block_parents)
+               if blocker.atom.blocker.overlap.forbid:
+                       blocking_desc = "hard blocking"
+               else:
+                       blocking_desc = "blocking"
                if self.resolved != blocker.atom:
                        addl += colorize(self.blocker_style,
-                               " (\"%s\" is blocking %s)") % \
-                               (_unicode(blocker.atom).lstrip("!"), block_parents)
+                               " (\"%s\" is %s %s)" %
+                               (_unicode(blocker.atom).lstrip("!"),
+                               blocking_desc, block_parents))
                else:
                        addl += colorize(self.blocker_style,
-                               " (is blocking %s)") % block_parents
+                               " (is %s %s)" % (blocking_desc, block_parents))
                if blocker.satisfied:
                        if not self.conf.columns:
                                self.print_msg.append(addl)