From d7d6c75fdcdc3222ea89da4db16a636c8c493ea3 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 4 Feb 2011 07:41:45 -0800 Subject: depgraph: don't drop deps in _add_dep This will fix bug #353613. We remove a hunk of code that was meant to limit recursion, but is obsolete an buggy. The recursion limiting is now handled by _add_pkg and the _ignored_deps stack. --- pym/_emerge/depgraph.py | 29 ----------------------------- 1 file changed, 29 deletions(-) diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 8b801f5cd..5380de15b 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -703,8 +703,6 @@ class depgraph(object): dep_pkg = dep.child existing_node = self._dynamic_config._slot_pkg_map[ dep.root].get(dep_pkg.slot_atom) - if existing_node is not dep_pkg: - existing_node = None if not dep_pkg: if dep.priority.optional: @@ -753,33 +751,6 @@ class depgraph(object): noiselevel=-1, level=logging.DEBUG) return 0 - # In some cases, dep_check will return deps that shouldn't - # be proccessed any further, so they are identified and - # discarded here. Try to discard as few as possible since - # discarded dependencies reduce the amount of information - # available for optimization of merge order. - if dep.priority.satisfied and \ - dep.priority.satisfied.visible and \ - not dep_pkg.installed and \ - not (existing_node or recurse): - myarg = None - if dep.root == self._frozen_config.target_root: - try: - myarg = next(self._iter_atoms_for_pkg(dep_pkg)) - except StopIteration: - pass - except portage.exception.InvalidDependString: - if not dep_pkg.installed: - # This shouldn't happen since the package - # should have been masked. - raise - if not myarg: - # Existing child selection may not be valid unless - # it's added to the graph immediately, since "complete" - # mode may select a different child later. - dep.child = None - self._dynamic_config._ignored_deps.append(dep) - return 1 if not self._add_pkg(dep_pkg, dep): return 0 -- cgit v1.2.3-1-g7c22