Page MenuHomePhabricator

Merge "ExecFuture" and "PhutilExecPassthru" and support selective passthru of individual pipes
Open, LowPublic

Description

The "ExecFuture" and "PhutilExecPassthru" classes are basically the same thing, but the latter passes all the parent process pipes to the child process.

There's no way to do "pass my stderr, but don't pass my stdout", but this is useful for invoking subprocesses which emit machine-readable results to stdout and human-readable progress or diagnostic information to stderr, as many Phacility deployment processes do (or could, in theory).

A better API for this is likely an ExecFuture with methods that let you control which pipes are passed through.