@tibbe We were consuming the output concurrently when streaming was enabled. The tests would freeze when streaming *wasn't* enabled.

I'm also worried about lazy I/O troubles. I don't know if you remember, but this is not the first time we've had trouble with tests and lazy I/O. So, what we can do is strictly read the test output one character at a time. We can build up a buffer of the output (for the final log) and print it to stdout (when `--show-details=streaming`). This is what the `tee` command does (I checked the source). We will want a variation on `rawSystemIOWithEnv` that doesn't block so we can do the IO in the same thread that spawned the test process. I'm working on this, but it's a little more involved. I wanted to get a bug fix out the door quickly, because it is a pretty serious bug.