This project is mirrored from https://github.com/haskell/process.
Pull mirroring updated .
- 20 Mar, 2020 5 commits
-
-
Michael Snoyman authored
-
Michael Snoyman authored
Revert "Check return value of QueryInformationJobObject"
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
This reverts commit 062a69e2.
-
- 17 Mar, 2020 3 commits
-
-
Michael Snoyman authored
This reverts commit 5bb78b5d.
-
Michael Snoyman authored
-
Ben Gamari authored
Bump version to 1.6.8.1
-
- 16 Mar, 2020 3 commits
-
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
- 15 Mar, 2020 2 commits
-
-
Ben Gamari authored
Avoid redundant pattern match warning on Windows
-
Ben Gamari authored
-
- 14 Mar, 2020 1 commit
-
-
Ben Gamari authored
-
- 10 Feb, 2020 3 commits
-
-
Michael Snoyman authored
-
Michael Snoyman authored
-
Michael Snoyman authored
Make readCreateProcess example typecheck
-
- 09 Feb, 2020 1 commit
-
-
Marcelo Lazaroni authored
-
- 06 Feb, 2020 1 commit
-
-
Michael Snoyman authored
Fix job support
-
- 05 Feb, 2020 1 commit
-
-
Ben Gamari authored
-
- 04 Feb, 2020 3 commits
-
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
Previously in order to wait on a job object we would create an IO Completion Port, configure the job object to emit notifications to it with SetInformationJobObject, and wait for JOB_OBJECT_MSG_EXIT_PROCESS notifications until all processes have died. This followed one piece of guidance from Microsoft [1] but according to Microsoft's own documentation, this cannot work reliably as delivery of job notifications is not guaranteed [2]. I have seen cases where the processes hang waiting on job objects so I can only guess that message loss is indeed possible. Instead we now take a simpler approach: look at the processes in the job, if there are none then we are done. If there are still processes, choose one and wait for it to finish. Iterate until the job is empty. Credit for this approach goes to Davean Scies. [1] https://devblogs.microsoft.com/oldnewthing/20130405-00/?p=4743 [2] https://docs.microsoft.com/en-us/windows/win32/api/winnt/ns-winnt-jobobject_associate_completion_port
-
- 03 Feb, 2020 3 commits
-
-
Ben Gamari authored
Previously we would rely on the exit This fixes a few nasty bugs: * System.Process.waitForProcess failed to keep the ProcessHandle's MVar alive, potentially resulting in the finalizer being run while waitForJobCompletion is executing. This would cause the process handles to be closed, resulting in waitForJobCompletion to fail. * waitForProcess failed to explicitly close the job, process, and IOCP handles. * waitForProcess failed to stop delegation of Ctrl-C in processes using jobs.
-
Ben Gamari authored
-
Ben Gamari authored
-
- 29 Jan, 2020 2 commits
-
-
Michael Snoyman authored
Changed "\home\bob" to "/home/bob" in docs for System.Process.createProcess
-
Daniel Bramucci authored
"\home\bob" does not form valid Haskell as there is no "\h" character. Therefore, this line was changed to the *nix directory location it was intended to be.
-
- 07 Jan, 2020 2 commits
-
-
Michael Snoyman authored
testsuite: Qualify import of Data.List
-
Ben Gamari authored
Silences -Wcompat-unqualified-import warning.
-
- 19 Nov, 2019 2 commits
-
-
Michael Snoyman authored
-
Michael Snoyman authored
-
- 12 Nov, 2019 2 commits
-
-
Michael Snoyman authored
Bump base upper bound to 4.15
-
Ben Gamari authored
-
- 09 Nov, 2019 2 commits
-
-
Michael Snoyman authored
testsuite: Tests broken threaded2 are broken in all concurrent ways
-
Ben Gamari authored
Previously we marked tests that aren't expected to pass under concurrent execution as broken/fragile in threaded2, as that was the only way which implied concurrent execution. However, this is not longer true due to the introduction of the nonmoving_thr way.
-
- 05 Nov, 2019 4 commits
-
-
Michael Snoyman authored
Don't exit when even isn't ours
-
Tamar Christina authored
-
Michael Snoyman authored
Windows: Check if all processes really exited and released resources
-
Tamar Christina authored
-