Hadrian's stdout/stderr capture can capture unbounded output
Currently the Hadrian.Builder.cmd'
utility used by Hadrian to run builders forces capture of stdout
and stderr
. These are apparently buffered in memory. This can easily backfire if faced with a process that emits a large quantity of output (e.g. GHC with dump flags or even the testsuite driver with some test failures).
We should either:
- disable this behavior by default,
- bound the quantity of output that we collect, or
- buffer to file instead of in memory