summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-08-25 05:09:25 +0000
committerZac Medico <zmedico@gentoo.org>2009-08-25 05:09:25 +0000
commite22b0c6d60345ada11c7c3e1e66e5f76f30f2197 (patch)
tree353c6527fd4b1eb9adb352dc616e726fbf52399f /pym
parentf54c71ac79d76c228dff414581cdc2f6dc6e77a7 (diff)
downloadportage-e22b0c6d60345ada11c7c3e1e66e5f76f30f2197.tar.gz
portage-e22b0c6d60345ada11c7c3e1e66e5f76f30f2197.tar.bz2
portage-e22b0c6d60345ada11c7c3e1e66e5f76f30f2197.zip
Inside depgraph._show_unsatisfied_dep(), show reasons for packages masked due
to backtracking. svn path=/main/trunk/; revision=14155
Diffstat (limited to 'pym')
-rw-r--r--pym/_emerge/depgraph.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index bd2964f3c..b7aa82525 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -1891,9 +1891,8 @@ class depgraph(object):
metadata, mreasons = get_mask_info(root_config, cpv,
pkgsettings, db, pkg_type, built, installed, db_keys)
if metadata is not None:
- pkg = Package(built=built, cpv=cpv,
- installed=installed, metadata=metadata,
- root_config=root_config)
+ pkg = self._pkg(cpv, pkg_type, root_config,
+ installed=installed)
if pkg.cp != atom.cp:
# A cpv can be returned from dbapi.match() as an
# old-style virtual match even in cases when the
@@ -1901,6 +1900,11 @@ class depgraph(object):
# Filter out any such false matches here.
if not atom_set.findAtomForPackage(pkg):
continue
+ if pkg in self._dynamic_config._runtime_pkg_mask:
+ backtrack_reasons = \
+ self._dynamic_config._runtime_pkg_mask[pkg]
+ mreasons.append('backtracking: %s' % \
+ ', '.join(sorted(backtrack_reasons)))
if mreasons:
masked_pkg_instances.add(pkg)
if atom.use: