From e3371a89efb5f10bc00fe871e3c91b7de5eaeb86 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 14 Aug 2020 13:21:03 -0400 Subject: analysis and followup q to bremner --- ...ent_4_c4c75ff6c06fbb3de5b4c23e5ba2fd1e._comment | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 doc/forum/propellor:_waitForProcess:_does_not_exist___40__No_child_processes__41__/comment_4_c4c75ff6c06fbb3de5b4c23e5ba2fd1e._comment (limited to 'doc') diff --git a/doc/forum/propellor:_waitForProcess:_does_not_exist___40__No_child_processes__41__/comment_4_c4c75ff6c06fbb3de5b4c23e5ba2fd1e._comment b/doc/forum/propellor:_waitForProcess:_does_not_exist___40__No_child_processes__41__/comment_4_c4c75ff6c06fbb3de5b4c23e5ba2fd1e._comment new file mode 100644 index 00000000..22ad0b9b --- /dev/null +++ b/doc/forum/propellor:_waitForProcess:_does_not_exist___40__No_child_processes__41__/comment_4_c4c75ff6c06fbb3de5b4c23e5ba2fd1e._comment @@ -0,0 +1,42 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 4""" + date="2020-08-14T17:06:46Z" + content=""" +So the relevant change in that commit, I think, is that +waitForProcessConcurrent used to do its own locking, +and would sometimes not even call waitForProcess, but instead +waitAny. And now it just calls waitForProcess. + +That change comes from concurrent-output commit +1c330fa3814baadf23c1934a8014c91a3251234a +Which removed a workaround for +https://github.com/haskell/process/issues/46 and added +a depend on `process (>= 1.6)` which fixed its bug. + +Propellor does not depend on any particular version of process, +so it's exposed to the old bug. + +But, David, is your system really using an older version of process to +build propellor? +(Bearing in mind that the system might ship with a newer version but cabal +may have chosen to use an older version for whatever reason.) +Probably the easiest way to check is, edit propellor.cabal, +make it depend on `process (>= 1.6)`, and rebuild and see if you still have +the problem. + +Anyway, we can either revert 1c330fa3814baadf23c1934a8014c91a3251234a in +propellor, or revert the whole 162e1d4e82e24f0fe3e2bd3114e4366ddb1062c0 +but I'd really rather not do that because it's been stuck on the old +version of concurrent-output forever. + +Or, it propellor could depend on the fixed process. process-1.6 +was bundled with ghc-8.2.2. That works back to debian stable, but not +oldstable, which is still a supported target of propellor. + +I guess, if we can confirm the old version of process is really the issue, +I'm leaning toward reverting 1c330fa3814baadf23c1934a8014c91a3251234a, +until the far-future time when we emerge blinking from the oldstable stasis +chamber and propellor can finally depend on concurrent-output rather than +bundling it. +"""]] -- cgit v1.2.3