From e82f6d979f9d9f32ce551a7bf31042523510d385 Mon Sep 17 00:00:00 2001 From: Lin Jen-Shin Date: Fri, 17 May 2019 17:34:40 +0800 Subject: Avoid pipes so it doesn't overflow --- lib/tasks/lint.rake | 35 +++++++++-------------------------- 1 file changed, 9 insertions(+), 26 deletions(-) (limited to 'lib') diff --git a/lib/tasks/lint.rake b/lib/tasks/lint.rake index c5d0f2c292f..2353b2dc659 100644 --- a/lib/tasks/lint.rake +++ b/lib/tasks/lint.rake @@ -37,32 +37,15 @@ unless Rails.env.production? lint:static_verification ].each do |task| pid = Process.fork do - rd_out, wr_out = IO.pipe - rd_err, wr_err = IO.pipe - stdout = $stdout.dup - stderr = $stderr.dup - $stdout.reopen(wr_out) - $stderr.reopen(wr_err) - - begin - Rake::Task[task].invoke - rescue SystemExit => ex - msg = "*** Rake task #{task} exited:" - raise ex - rescue => ex - msg = "*** Rake task #{task} raised #{ex.class}:" - raise ex - ensure - $stdout.reopen(stdout) - $stderr.reopen(stderr) - wr_out.close - wr_err.close - - warn "\n#{msg}\n\n" if msg - - IO.copy_stream(rd_out, $stdout) - IO.copy_stream(rd_err, $stderr) - end + puts "*** Running rake task: #{task} ***" + + Rake::Task[task].invoke + rescue SystemExit => ex + warn "!!! Rake task #{task} exited:" + raise ex + rescue StandardError, ScriptError => ex + warn "!!! Rake task #{task} raised #{ex.class}:" + raise ex end Process.waitpid(pid) -- cgit v1.2.3