Lines 107-113
def _wildcard_set(atoms):
Link Here
|
107 |
|
107 |
|
108 |
class _frozen_depgraph_config(object): |
108 |
class _frozen_depgraph_config(object): |
109 |
|
109 |
|
110 |
def __init__(self, settings, trees, myopts, spinner): |
110 |
def __init__(self, settings, trees, myopts, params, spinner): |
111 |
self.settings = settings |
111 |
self.settings = settings |
112 |
self.target_root = settings["EROOT"] |
112 |
self.target_root = settings["EROOT"] |
113 |
self.myopts = myopts |
113 |
self.myopts = myopts |
Lines 115-120
class _frozen_depgraph_config(object):
Link Here
|
115 |
if settings.get("PORTAGE_DEBUG", "") == "1": |
115 |
if settings.get("PORTAGE_DEBUG", "") == "1": |
116 |
self.edebug = 1 |
116 |
self.edebug = 1 |
117 |
self.spinner = spinner |
117 |
self.spinner = spinner |
|
|
118 |
self.requested_depth = params.get("deep", 0) |
118 |
self._running_root = trees[trees._running_eroot]["root_config"] |
119 |
self._running_root = trees[trees._running_eroot]["root_config"] |
119 |
self.pkgsettings = {} |
120 |
self.pkgsettings = {} |
120 |
self.trees = {} |
121 |
self.trees = {} |
Lines 508-514
class depgraph(object):
Link Here
|
508 |
frozen_config=None, backtrack_parameters=BacktrackParameter(), allow_backtracking=False): |
509 |
frozen_config=None, backtrack_parameters=BacktrackParameter(), allow_backtracking=False): |
509 |
if frozen_config is None: |
510 |
if frozen_config is None: |
510 |
frozen_config = _frozen_depgraph_config(settings, trees, |
511 |
frozen_config = _frozen_depgraph_config(settings, trees, |
511 |
myopts, spinner) |
512 |
myopts, myparams, spinner) |
512 |
self._frozen_config = frozen_config |
513 |
self._frozen_config = frozen_config |
513 |
self._dynamic_config = _dynamic_depgraph_config(self, myparams, |
514 |
self._dynamic_config = _dynamic_depgraph_config(self, myparams, |
514 |
allow_backtracking, backtrack_parameters) |
515 |
allow_backtracking, backtrack_parameters) |
Lines 2167-2172
class depgraph(object):
Link Here
|
2167 |
if allow_unsatisfied: |
2168 |
if allow_unsatisfied: |
2168 |
self._dynamic_config._unsatisfied_deps.append(dep) |
2169 |
self._dynamic_config._unsatisfied_deps.append(dep) |
2169 |
return 1 |
2170 |
return 1 |
|
|
2171 |
|
2172 |
# The following case occurs when |
2173 |
# _solve_non_slot_operator_slot_conflicts calls |
2174 |
# _create_graph. In this case, ignore unsatisfied deps for |
2175 |
# installed packages only if their depth is beyond the depth |
2176 |
# requested by the user and the dep was initially |
2177 |
# unsatisfied (not broken by a slot conflict in the current |
2178 |
# graph). See bug #520950. |
2179 |
# NOTE: This currently does not apply to removal actions, |
2180 |
# since all existing removal actions traverse all installed |
2181 |
# deps deeply via the _complete_graph method. |
2182 |
if ("remove" not in self._dynamic_config.myparams and |
2183 |
self._dynamic_config._complete_mode and |
2184 |
isinstance(dep.parent, Package) and |
2185 |
dep.parent.installed and |
2186 |
self._frozen_config.requested_depth is not True and |
2187 |
dep.parent.depth >= self._frozen_config.requested_depth): |
2188 |
inst_pkg, in_graph = \ |
2189 |
self._select_pkg_from_installed(dep.root, dep.atom) |
2190 |
if inst_pkg is None: |
2191 |
self._dynamic_config._initially_unsatisfied_deps.append(dep) |
2192 |
return 1 |
2193 |
|
2170 |
self._dynamic_config._unsatisfied_deps_for_display.append( |
2194 |
self._dynamic_config._unsatisfied_deps_for_display.append( |
2171 |
((dep.root, dep.atom), {"myparent":dep.parent})) |
2195 |
((dep.root, dep.atom), {"myparent":dep.parent})) |
2172 |
|
2196 |
|
Lines 8487-8493
def _backtrack_depgraph(settings, trees, myopts, myparams, myaction, myfiles, sp
Link Here
|
8487 |
backtracked = 0 |
8511 |
backtracked = 0 |
8488 |
|
8512 |
|
8489 |
frozen_config = _frozen_depgraph_config(settings, trees, |
8513 |
frozen_config = _frozen_depgraph_config(settings, trees, |
8490 |
myopts, spinner) |
8514 |
myopts, myparams, spinner) |
8491 |
|
8515 |
|
8492 |
while backtracker: |
8516 |
while backtracker: |
8493 |
|
8517 |
|
Lines 8569-8575
def _resume_depgraph(settings, trees, mtimedb, myopts, myparams, spinner):
Link Here
|
8569 |
mergelist = mtimedb["resume"]["mergelist"] |
8593 |
mergelist = mtimedb["resume"]["mergelist"] |
8570 |
dropped_tasks = {} |
8594 |
dropped_tasks = {} |
8571 |
frozen_config = _frozen_depgraph_config(settings, trees, |
8595 |
frozen_config = _frozen_depgraph_config(settings, trees, |
8572 |
myopts, spinner) |
8596 |
myopts, myparams, spinner) |
8573 |
while True: |
8597 |
while True: |
8574 |
mydepgraph = depgraph(settings, trees, |
8598 |
mydepgraph = depgraph(settings, trees, |
8575 |
myopts, myparams, spinner, frozen_config=frozen_config) |
8599 |
myopts, myparams, spinner, frozen_config=frozen_config) |
8576 |
- |
|
|