Open3.popen3 creates a broken stdout pipe
|ruby -v:||ruby 2.0.0p195 (2013-05-14 revision 40734) [universal.x86_64-darwin13]||Backport:||1.9.3: UNKNOWN, 2.0.0: UNKNOWN|
When I create a subprocess using Open3, the stdout pipe that is returned does allow reading.
Using the sample code provided, Ruby will block indefinitely waiting to read from the subprocess, though the subprocess has printed out to standard output.
If you change the test script to print/read from standard error instead, then everything works.