servo/gaol

Switch to std::process::Command

Opened this issue · 0 comments

Is there any technical reason for gaol to provide its own Command abstraction over using what's available in std::process::Command? The biggest functional difference I noticed is that the gaol provided Command uses execve() to specify the environment on the spawned process while std::process::Command uses execvp(). Despite this difference, however, std::process::Command also allows for the command environment to be set with the env() and envs() methods. Is there any particular barrier preventing gaol from switching wholesale to the std implementation?

I ask because there are some useful crates, e.g. tokio-process, which directly accept or implement extra traits on top of std::process::Command, and it would be quite nice to use gaol with these libraries.