When in --nodeps mode, make depgraph._serialize_tasks() preserve the package
authorZac Medico <zmedico@gentoo.org>
Mon, 20 Apr 2009 09:11:35 +0000 (09:11 -0000)
committerZac Medico <zmedico@gentoo.org>
Mon, 20 Apr 2009 09:11:35 +0000 (09:11 -0000)
order given on the command line. Thanks to Markus Duft <mduft@g.o> for
reporting.

svn path=/main/trunk/; revision=13377

pym/_emerge/__init__.py

index 78f58b526f7fa35ad820c9908bafc4d2153965f0..e031ede22a398d7c4a2f28f86901fb82673b0c5b 100644 (file)
@@ -7039,6 +7039,13 @@ class depgraph(object):
                        writemsg("\n", noiselevel=-1)
 
                scheduler_graph = self.digraph.copy()
+
+               if '--nodeps' in self.myopts:
+                       # Preserve the package order given on the command line.
+                       return ([node for node in scheduler_graph \
+                               if isinstance(node, Package) \
+                               and node.operation == 'merge'], scheduler_graph)
+
                mygraph=self.digraph.copy()
                # Prune "nomerge" root nodes if nothing depends on them, since
                # otherwise they slow down merge order calculation. Don't remove