Skip to content

Redesign the process monitor - #237

Merged
SeanTAllen merged 1 commit into
mainfrom
redesign-process-monitor-rfc
Aug 12, 2026
Merged

Redesign the process monitor#237
SeanTAllen merged 1 commit into
mainfrom
redesign-process-monitor-rfc

Conversation

@SeanTAllen

Copy link
Copy Markdown
Member

Redesign the standard library's process package so ProcessMonitor detects a child's exit from a native per-platform operating-system event, not from its output pipes reaching end-of-file.

The pipe-based model can't distinguish a child's exit from a pipe that something else still holds open, so it reports the exit late or never and the program hangs. Detecting the exit directly also closes a kill-after-reap race and a file-descriptor leak on a failed start.

The design was worked out in ponylang/ponyc#5769, with a working implementation in ponylang/ponyc#5770.

@ponylang-main ponylang-main added status - new The RFC is new and ready for discussion. discuss during sync Should be discussed during an upcoming sync labels Jul 31, 2026
@SeanTAllen SeanTAllen added status - final comment period The RFC is finalized. Waiting for final comments. and removed status - new The RFC is new and ready for discussion. labels Aug 7, 2026
@SeanTAllen SeanTAllen removed the status - final comment period The RFC is finalized. Waiting for final comments. label Aug 12, 2026
@SeanTAllen
SeanTAllen merged commit 46e6984 into main Aug 12, 2026
8 checks passed
@SeanTAllen
SeanTAllen deleted the redesign-process-monitor-rfc branch August 12, 2026 23:37
@ponylang-main ponylang-main removed the discuss during sync Should be discussed during an upcoming sync label Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants