From: Zac Medico Date: Tue, 15 Apr 2008 17:16:01 +0000 (-0000) Subject: Comment some more on the significance of passing the graph_db and parent X-Git-Tag: v2.1.5~170 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=22e8332a63e4bd94beef6dd5b687100dad666eeb;p=portage.git 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. (trunk r9904) svn path=/main/branches/2.1.2/; revision=9905 --- diff --git a/bin/emerge b/bin/emerge index ad5cce225..f665bfcef 100755 --- a/bin/emerge +++ b/bin/emerge @@ -1748,7 +1748,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 @@ -1759,6 +1758,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 = []