Add flag to register shutdown hooks for os.call
and os.spawn
APIs, overhaul destroy
APIs #324
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
Backports the functionality from Mill to allow us to register shutdown hooks such that when the parent process terminates the subprocesses are shut down as well. This allows the same logic to be used consistently across all
.call
and.spawn
invocationsConsolidate
SubProcess#destroy
andSubProcess#destroyForcibly
into a singleSubProcess#destroy
method which takes some default parameters, allowing the user to chooseasync = true
or configure theshutdownGracePeriod: Long
.The default behavior of
SubProcess#destroy
has changed to block on the subprocess actually exiting, which I think is more intuitive. The old behavior is available underdestroy(async = true)
Best reviewed with
Hide whitespace
. Added some simple unit tests to assert the new functionality, existing unit tests should assert on existing workflows