Currently SpawnProcess._start requirea fd_pipes in order to monitor for subprocess exit via closing of the either the subprocess stdout/stderr or else self._dummy_pipe_fd when stdout/stderr are not piped. The fd_pipes should by optional (maybe via parameter to SpawnProcess._start), so that ForkProcess can still use it when using the multiprocessing spawn start method which does not support fd_pipes (bug 915123).
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=919567592eb2292def12877420f280e082cc881a commit 919567592eb2292def12877420f280e082cc881a Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2023-10-03 19:07:37 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2023-10-03 19:43:08 +0000 SpawnProcess: Make fd_pipes optional Since fd_pipes is incompatible with the multiprocessing spawn start method, allow empty fd_pipes so that ForkProcess can inherit SpawnProcess and still be compatible with multiprocessing spawn. Bug: https://bugs.gentoo.org/915128 Signed-off-by: Zac Medico <zmedico@gentoo.org> lib/_emerge/SpawnProcess.py | 111 +++++++++++++++------------- lib/portage/tests/ebuild/test_ipc_daemon.py | 9 ++- 2 files changed, 68 insertions(+), 52 deletions(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3500483f75789c36e379c1b6546a09df7c11e2b1 commit 3500483f75789c36e379c1b6546a09df7c11e2b1 Author: Sam James <sam@gentoo.org> AuthorDate: 2023-10-20 00:49:33 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-10-20 00:51:00 +0000 sys-apps/portage: add 3.0.53 Closes: https://bugs.gentoo.org/915120 Closes: https://bugs.gentoo.org/821529 Closes: https://bugs.gentoo.org/914441 Closes: https://bugs.gentoo.org/914722 Closes: https://bugs.gentoo.org/914873 Closes: https://bugs.gentoo.org/915099 Closes: https://bugs.gentoo.org/915123 Closes: https://bugs.gentoo.org/915128 Closes: https://bugs.gentoo.org/915136 Closes: https://bugs.gentoo.org/915330 Closes: https://bugs.gentoo.org/915494 Closes: https://bugs.gentoo.org/915834 Closes: https://bugs.gentoo.org/915903 Closes: https://bugs.gentoo.org/900224 Signed-off-by: Sam James <sam@gentoo.org> sys-apps/portage/Manifest | 1 + sys-apps/portage/portage-3.0.53.ebuild | 238 +++++++++++++++++++++++++++++++++ 2 files changed, 239 insertions(+)