Merged from trunk 10968:10971
authorFabian Groffen <grobian@gentoo.org>
Mon, 7 Jul 2008 19:47:15 +0000 (19:47 -0000)
committerFabian Groffen <grobian@gentoo.org>
Mon, 7 Jul 2008 19:47:15 +0000 (19:47 -0000)
   | 10969   | remove TODO list as it's not maintained anyway               |
   | genone  |                                                              |

   | 10970   | Make SubProcess._wait() call scheduler.schedule(self.reg_id) |
   | zmedico | so it's encapsulated and callers don't have to know about    |
   |         | it.                                                          |

   | 10971   | Move the "registered" attribute to the SubProcess class too. |
   | zmedico |                                                              |

svn path=/main/branches/prefix/; revision=10972

TODO [deleted file]
pym/_emerge/__init__.py

diff --git a/TODO b/TODO
deleted file mode 100644 (file)
index 08f4efe..0000000
--- a/TODO
+++ /dev/null
@@ -1,10 +0,0 @@
-TODO for portage-2.2 release:
-=============================
-x package set integration in emerge (genone)
-x user interface for preserve-libs FEATURE (genone, fuzzyray?)
-x resolve the eselect-news situation (genone)
-- package set documentation (genone)
-- repository configuration file and `emerge --sync [repo_set]... [repo]...`
-  support for overlays and binhosts (zmedico)
-
-(-  denotes open/incomplete tasks, x denotes completed tasks)
index 8a7cf4992037ee8e9169c3b8f7cfc715bfe7e1d2..57f03662b3eb1171a55dc7f7034db8d29c3a9dfd 100644 (file)
@@ -1587,8 +1587,6 @@ class CompositeTask(AsynchronousTask):
                        task = self._current_task
                        if task is None:
                                break
-                       if hasattr(task, "reg_id"):
-                               self.scheduler.schedule(task.reg_id)
                        task.wait()
 
                return self.returncode
@@ -1682,7 +1680,7 @@ class TaskSequence(CompositeTask):
                        self.wait()
 
 class SubProcess(AsynchronousTask):
-       __slots__ = ("pid",)
+       __slots__ = ("pid", "registered", "reg_id", "scheduler")
 
        # A file descriptor is required for the scheduler to monitor changes from
        # inside a poll() loop. When logging is not enabled, create a pipe just to
@@ -1713,6 +1711,7 @@ class SubProcess(AsynchronousTask):
        def _wait(self):
                if self.returncode is not None:
                        return self.returncode
+               self.scheduler.schedule(self.reg_id)
                self._set_returncode(os.waitpid(self.pid, 0))
                return self.returncode
 
@@ -1740,7 +1739,7 @@ class SpawnProcess(SubProcess):
                "uid", "gid", "groups", "umask", "logfile",
                "path_lookup", "pre_exec")
 
-       __slots__ = ("args", "files", "registered", "reg_id", "scheduler") + \
+       __slots__ = ("args", "files") + \
                _spawn_kwarg_names
 
        _file_names = ("process", "out")
@@ -2188,8 +2187,8 @@ class EbuildExecuter(CompositeTask):
 class EbuildPhase(SubProcess):
 
        __slots__ = ("fd_pipes", "phase", "pkg",
-               "scheduler", "settings", "tree",
-               "files", "registered", "reg_id")
+               "settings", "tree",
+               "files")
 
        _file_names = ("log", "stdout", "ebuild")
        _files_dict = slot_dict_class(_file_names, prefix="")