From 90c2a96936435a72bd4ae65cbaedc8cb7dc98050 Mon Sep 17 00:00:00 2001 From: Rob Bast Date: Mon, 14 Sep 2015 19:21:18 +0200 Subject: [PATCH] Default to stderr for console helpers (only merge if #15794 gets merged) --- src/Symfony/Component/Console/Helper/ProcessHelper.php | 9 +++++++++ src/Symfony/Component/Console/Helper/ProgressBar.php | 5 +++++ src/Symfony/Component/Console/Helper/QuestionHelper.php | 5 +++++ 3 files changed, 19 insertions(+) diff --git a/src/Symfony/Component/Console/Helper/ProcessHelper.php b/src/Symfony/Component/Console/Helper/ProcessHelper.php index 0c9da73947..a811eb48e6 100644 --- a/src/Symfony/Component/Console/Helper/ProcessHelper.php +++ b/src/Symfony/Component/Console/Helper/ProcessHelper.php @@ -11,6 +11,7 @@ namespace Symfony\Component\Console\Helper; +use Symfony\Component\Console\Output\ConsoleOutputInterface; use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Process\Exception\ProcessFailedException; use Symfony\Component\Process\Process; @@ -37,6 +38,10 @@ class ProcessHelper extends Helper */ public function run(OutputInterface $output, $cmd, $error = null, $callback = null, $verbosity = OutputInterface::VERBOSITY_VERY_VERBOSE) { + if ($output instanceof ConsoleOutputInterface) { + $output = $output->getErrorOutput(); + } + $formatter = $this->getHelperSet()->get('debug_formatter'); if (is_array($cmd)) { @@ -109,6 +114,10 @@ class ProcessHelper extends Helper */ public function wrapCallback(OutputInterface $output, Process $process, $callback = null) { + if ($output instanceof ConsoleOutputInterface) { + $output = $output->getErrorOutput(); + } + $formatter = $this->getHelperSet()->get('debug_formatter'); $that = $this; diff --git a/src/Symfony/Component/Console/Helper/ProgressBar.php b/src/Symfony/Component/Console/Helper/ProgressBar.php index 5bc3de4e73..7f4b2efb8d 100644 --- a/src/Symfony/Component/Console/Helper/ProgressBar.php +++ b/src/Symfony/Component/Console/Helper/ProgressBar.php @@ -11,6 +11,7 @@ namespace Symfony\Component\Console\Helper; +use Symfony\Component\Console\Output\ConsoleOutputInterface; use Symfony\Component\Console\Output\OutputInterface; /** @@ -54,6 +55,10 @@ class ProgressBar */ public function __construct(OutputInterface $output, $max = 0) { + if ($output instanceof ConsoleOutputInterface) { + $output = $output->getErrorOutput(); + } + $this->output = $output; $this->setMaxSteps($max); diff --git a/src/Symfony/Component/Console/Helper/QuestionHelper.php b/src/Symfony/Component/Console/Helper/QuestionHelper.php index 6584377aad..a533f8728d 100644 --- a/src/Symfony/Component/Console/Helper/QuestionHelper.php +++ b/src/Symfony/Component/Console/Helper/QuestionHelper.php @@ -12,6 +12,7 @@ namespace Symfony\Component\Console\Helper; use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\ConsoleOutputInterface; use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Formatter\OutputFormatterStyle; use Symfony\Component\Console\Question\Question; @@ -41,6 +42,10 @@ class QuestionHelper extends Helper */ public function ask(InputInterface $input, OutputInterface $output, Question $question) { + if ($output instanceof ConsoleOutputInterface) { + $output = $output->getErrorOutput(); + } + if (!$input->isInteractive()) { return $question->getDefault(); }