From b474944155429eb4cce186c746d55287ee6bb3f4 Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Tue, 5 Mar 2013 15:21:54 +0100 Subject: [PATCH] Add more output to the profiled runs, refs #1659 --- src/Composer/Console/Application.php | 1 + src/Composer/IO/ConsoleIO.php | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/Composer/Console/Application.php b/src/Composer/Console/Application.php index e636a12f2..e5c78af4e 100755 --- a/src/Composer/Console/Application.php +++ b/src/Composer/Console/Application.php @@ -102,6 +102,7 @@ class Application extends BaseApplication if ($input->hasParameterOption('--profile')) { $startTime = microtime(true); + $this->io->enableDebugging($startTime); } $oldWorkingDir = getcwd(); diff --git a/src/Composer/IO/ConsoleIO.php b/src/Composer/IO/ConsoleIO.php index c2dcc86ab..5012cfd2a 100644 --- a/src/Composer/IO/ConsoleIO.php +++ b/src/Composer/IO/ConsoleIO.php @@ -29,6 +29,7 @@ class ConsoleIO implements IOInterface protected $helperSet; protected $authentications = array(); protected $lastMessage; + private $startTime; /** * Constructor. @@ -44,6 +45,11 @@ class ConsoleIO implements IOInterface $this->helperSet = $helperSet; } + public function enableDebugging($startTime) + { + $this->startTime = $startTime; + } + /** * {@inheritDoc} */ @@ -73,6 +79,15 @@ class ConsoleIO implements IOInterface */ public function write($messages, $newline = true) { + if (null !== $this->startTime) { + $messages = (array) $messages; + $messages[0] = sprintf( + '[%.1fMB/%.2fs] %s', + memory_get_usage() / 1024 / 1024, + microtime(true) - $this->startTime, + $messages[0] + ); + } $this->output->write($messages, $newline); $this->lastMessage = join($newline ? "\n" : '', (array) $messages); }