summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-05-29 20:44:08 +0000
committerZac Medico <zmedico@gentoo.org>2008-05-29 20:44:08 +0000
commit69a4bbd95b2f567042542984fbe27fc86b627153 (patch)
tree1cd197f54dee43df226f322a4872efe89504828b /pym/_emerge
parentab3f5baa3dd062c7fd5bae7d2c6324dfd3b163ba (diff)
downloadportage-69a4bbd95b2f567042542984fbe27fc86b627153.tar.gz
portage-69a4bbd95b2f567042542984fbe27fc86b627153.tar.bz2
portage-69a4bbd95b2f567042542984fbe27fc86b627153.zip
When --skipfirst drops packages due to unsatisfied dependencies, display
a warning message with the list of dropped packages. svn path=/main/trunk/; revision=10480
Diffstat (limited to 'pym/_emerge')
-rw-r--r--pym/_emerge/__init__.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index e3a588576..e405e67ae 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -8363,6 +8363,8 @@ def action_build(settings, trees, mtimedb,
del mergelist[i]
break
+ dropped_tasks = set()
+
success = False
try:
while True:
@@ -8378,11 +8380,12 @@ def action_build(settings, trees, mtimedb,
for task in mergelist:
if isinstance(task, list) and \
tuple(task) in unsatisfied_parents:
- continue
+ continue
pruned_mergelist.append(task)
if not pruned_mergelist:
raise
mergelist[:] = pruned_mergelist
+ dropped_tasks.update(unsatisfied_parents)
del e
continue
else:
@@ -8439,7 +8442,15 @@ def action_build(settings, trees, mtimedb,
if show_spinner:
print "\b\b... done!"
- if not success:
+ if success:
+ if dropped_tasks:
+ portage.writemsg("!!! One or more packages have been " + \
+ "dropped due to unsatisfied dependencies:\n\n",
+ noiselevel=-1)
+ for task in dropped_tasks:
+ portage.writemsg(" " + str(task) + "\n", noiselevel=-1)
+ portage.writemsg("\n", noiselevel=-1)
+ else:
mydepgraph.display_problems()
if not (ask or pretend):
# delete the current list and also the backup