From: Zac Medico Date: Fri, 10 Sep 2010 17:32:04 +0000 (-0700) Subject: Ensure that depgraph._show_unsatisfied_dep() doesn't suggest changes X-Git-Tag: v2.2_rc79~5 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=20c87af26f0ad628befc8feaa9cd196c9d416aef;p=portage.git Ensure that depgraph._show_unsatisfied_dep() doesn't suggest changes to masked or forced USE flags. --- diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 33fed5082..dce1041e9 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -2151,6 +2151,14 @@ class depgraph(object): need_enable = sorted(atom.use.enabled.difference(use).intersection(pkg.iuse.all)) need_disable = sorted(atom.use.disabled.intersection(use).intersection(pkg.iuse.all)) + pkgsettings = self._frozen_config.pkgsettings[pkg.root] + pkgsettings.setcpv(pkg) + untouchable_flags = \ + frozenset(chain(pkgsettings.usemask, pkgsettings.useforce)) + if untouchable_flags.intersection( + chain(need_enable, need_disable)): + continue + required_use = pkg.metadata["REQUIRED_USE"] required_use_warning = "" if required_use: @@ -2194,6 +2202,13 @@ class depgraph(object): involved_flags = set(chain(conditional.equal, conditional.not_equal, \ conditional.enabled, conditional.disabled)) + pkgsettings = self._frozen_config.pkgsettings[myparent.root] + pkgsettings.setcpv(myparent) + untouchable_flags = \ + frozenset(chain(pkgsettings.usemask, pkgsettings.useforce)) + if untouchable_flags.intersection(involved_flags): + continue + required_use = myparent.metadata["REQUIRED_USE"] required_use_warning = "" if required_use: