summaryrefslogtreecommitdiffstats
path: root/pym/portage
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-04-30 08:30:11 +0000
committerZac Medico <zmedico@gentoo.org>2008-04-30 08:30:11 +0000
commit66502efa800c888e1b313f873398eabee13f5c66 (patch)
treee32b10dab6e5043dec338a6ad21168dce29eabc9 /pym/portage
parenta1a04478d9eb5a00a3412f7f20309aa9e8c5bfe3 (diff)
downloadportage-66502efa800c888e1b313f873398eabee13f5c66.tar.gz
portage-66502efa800c888e1b313f873398eabee13f5c66.tar.bz2
portage-66502efa800c888e1b313f873398eabee13f5c66.zip
* Fix dep_check() so that it doesn't expand virtual blockers since the
un-expanded virtual atom is more useful for maintaining a cache of blocker atoms. * Expand virtual blockers in depgraph.validate_blockers(), since it's not done by dep_check() anymore. * If blocker data from the graph is available, use it to validate the blocker cache and update the cache if it seems invalid. * Make BlockerCache._load() more tolerant to installs/uninstalls so so that cache isn't rebuilt every time. svn path=/main/trunk/; revision=10041
Diffstat (limited to 'pym/portage')
-rw-r--r--pym/portage/__init__.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 1a75bac16..c98fee116 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -5371,6 +5371,12 @@ def _expand_new_virtuals(mysplit, edebug, mydbapi, mysettings, myroot="/",
continue
mychoices = myvirtuals.get(mykey, [])
isblocker = x.startswith("!")
+ if isblocker:
+ # Virtual blockers are no longer expanded here since
+ # the un-expanded virtual atom is more useful for
+ # maintaining a cache of blocker atoms.
+ newsplit.append(x)
+ continue
match_atom = x
if isblocker:
match_atom = x[1:]