summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-04-15 17:14:51 +0000
committerZac Medico <zmedico@gentoo.org>2008-04-15 17:14:51 +0000
commitfb9113f81d22da0810a7649ab17245902cefd932 (patch)
tree9b93011af1acd0dea25b8828632f27359d244c30
parent9bae76041ef0cf61cda0ae8dbd331bb4a370c2f5 (diff)
downloadportage-fb9113f81d22da0810a7649ab17245902cefd932.tar.gz
portage-fb9113f81d22da0810a7649ab17245902cefd932.tar.bz2
portage-fb9113f81d22da0810a7649ab17245902cefd932.zip
Comment some more on the significance of passing the graph_db and parent
into depgraph._select_atoms() to solve some cases of bug #1343 while avoiding unresolvable direct circular dependencies. svn path=/main/trunk/; revision=9904
-rw-r--r--pym/_emerge/__init__.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index e5c9b0ca9..ab1bb3543 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -1609,7 +1609,6 @@ class depgraph(object):
pass
filtered_tree.dbapi = self._dep_check_composite_db(self, myroot)
self._filtered_trees[myroot]["porttree"] = filtered_tree
- self._filtered_trees[myroot]["graph_db"] = graph_tree.dbapi
# Passing in graph_tree as the vartree here could lead to better
# atom selections in some cases by causing atoms for packages that
@@ -1620,6 +1619,14 @@ class depgraph(object):
# gwydion-dylan-bin. In case gwydion-dylan is not yet installed,
# gwydion-dylan-bin needs to be selected in order to avoid a
# an unresolvable direct circular dependency.
+ #
+ # To solve the problem described above, pass in "graph_db" so that
+ # packages that have been added to the graph are distinguishable
+ # from other available packages and installed packages. Also, pass
+ # the parent package into self._select_atoms() calls so that
+ # unresolvable direct circular dependencies can be detected and
+ # avoided when possible.
+ self._filtered_trees[myroot]["graph_db"] = graph_tree.dbapi
self._filtered_trees[myroot]["vartree"] = self.trees[myroot]["vartree"]
dbs = []