Do not use SIGHUP to stop processes
Open
Nobody has claimed this yet.
whateverable
- Dominant language
- Raku
- Stars
- 19
- Forks
- 16
- PR merge metrics
- No merged PRs in 30d
Description
See this TODO from Whateverable.pm6:
if not $promise.status ~~ Kept { # timed out
$proc.kill; # TODO sends HUP, but should kill the process tree instead
$out.send: “«timed out after $timeout seconds, output»: ”;
}
If I recall correctly, this prevents us from running the bots under nohup (which is not required, but still).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at Whateverable.pm6 around line 100 and inspect how the timeout path uses $proc.kill. Determine how the process tree should be stopped without sending SIGHUP, then verify that timed-out processes and their descendants are terminated while the bots can still run under nohup.
Written by the indexing model from the issue text.
Assessment
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100