Well, someone sufficiently motivated should write it using the low-level API, and then we can see what's needed. On Feb 19, 2014 8:40 AM, "Victor Stinner" <[email protected]> wrote:
> 2014-02-19 17:05 GMT+01:00 Guido van Rossum <[email protected]>: > > Why are you posting code that uses an internal API (stdout._fileno) and > > which you know is broken? > > It's just to show you what I tried. > > > I'm confident it can be done using the lower-level API (event loop > methods). > > You will have to call os.pipe() yourself and pass one end to the first > > process, another to the second. You may use some of the helper classes > from > > asyncio/subprocess.py to tie the outer ends to streams. (Maybe those > classes > > need to be made officially public.) > > Yes for the low-level API, but I would like to use the Process API. > > > But why not use shell syntax using '|'? > > I don't like shell quotes, it's quite easy to introduce a security > vulnerability (inject arbitrary shell command). And it creates an > useless process (the shell interpreter), no? > > Victor >
