Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(445)

Unified Diff: pym/_emerge/PackageMerge.py

Issue 6713043: Merge packages asynchronously in Portage. (Closed)
Patch Set: Don't set _task_queues.merge.max_jobs Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pym/_emerge/MergeListItem.py ('k') | pym/portage/dbapi/_MergeProcess.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pym/_emerge/PackageMerge.py
diff --git a/pym/_emerge/PackageMerge.py b/pym/_emerge/PackageMerge.py
index 4aecf8adbb0dd196e1cbcb9d8327da4c94540a58..45d2e7dc67c05fe7510907f89e989485acf968ef 100644
--- a/pym/_emerge/PackageMerge.py
+++ b/pym/_emerge/PackageMerge.py
@@ -4,11 +4,6 @@
from _emerge.AsynchronousTask import AsynchronousTask
from portage.output import colorize
class PackageMerge(AsynchronousTask):
- """
- TODO: Implement asynchronous merge so that the scheduler can
- run while a merge is executing.
- """
-
__slots__ = ("merge",)
def _start(self):
@@ -40,6 +35,9 @@ class PackageMerge(AsynchronousTask):
not self.merge.build_opts.buildpkgonly:
self.merge.statusMessage(msg)
- self.returncode = self.merge.merge()
- self.wait()
+ self.merge.merge(self.exit_handler)
+
+ def exit_handler(self, task):
+ self.returncode = task.returncode
+ self._wait_hook()
« no previous file with comments | « pym/_emerge/MergeListItem.py ('k') | pym/portage/dbapi/_MergeProcess.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698