bug #17040 [Console] Avoid extra blank lines when rendering exceptions (ogizanagi)
This PR was merged into the 2.3 branch.
Discussion
----------
[Console] Avoid extra blank lines when rendering exceptions
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Don't know if it can be considered as a bug fix as it is the behavior since a while (https://github.com/symfony/symfony/pull/9055), but I let you see by yourself the old vs new rendering:
![Console exception rendering](https://cloud.githubusercontent.com/assets/2211145/11857447/92cebfbe-a458-11e5-9d3d-6147b0338080.PNG)
Commits
-------
2e158df
[Console] Avoid extra blank lines when rendering exceptions
This commit is contained in:
commit
f371445eff
@ -673,6 +673,8 @@ class Application
|
||||
*/
|
||||
public function renderException($e, $output)
|
||||
{
|
||||
$output->writeln('');
|
||||
|
||||
do {
|
||||
$title = sprintf(' [%s] ', get_class($e));
|
||||
|
||||
@ -695,7 +697,7 @@ class Application
|
||||
}
|
||||
}
|
||||
|
||||
$messages = array('', '');
|
||||
$messages = array();
|
||||
$messages[] = $emptyLine = $formatter->format(sprintf('<error>%s</error>', str_repeat(' ', $len)));
|
||||
$messages[] = $formatter->format(sprintf('<error>%s%s</error>', $title, str_repeat(' ', max(0, $len - $this->stringWidth($title)))));
|
||||
foreach ($lines as $line) {
|
||||
@ -703,7 +705,6 @@ class Application
|
||||
}
|
||||
$messages[] = $emptyLine;
|
||||
$messages[] = '';
|
||||
$messages[] = '';
|
||||
|
||||
$output->writeln($messages, OutputInterface::OUTPUT_RAW);
|
||||
|
||||
@ -730,14 +731,12 @@ class Application
|
||||
}
|
||||
|
||||
$output->writeln('');
|
||||
$output->writeln('');
|
||||
}
|
||||
} while ($e = $e->getPrevious());
|
||||
|
||||
if (null !== $this->runningCommand) {
|
||||
$output->writeln(sprintf('<info>%s</info>', sprintf($this->runningCommand->getSynopsis(), $this->getName())));
|
||||
$output->writeln('');
|
||||
$output->writeln('');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,8 +1,6 @@
|
||||
|
||||
|
||||
|
||||
[InvalidArgumentException]
|
||||
Command "foo" is not defined.
|
||||
|
||||
|
||||
|
||||
|
@ -1,11 +1,8 @@
|
||||
|
||||
|
||||
|
||||
[InvalidArgumentException]
|
||||
The "--foo" option does not exist.
|
||||
|
||||
|
||||
|
||||
list [--xml] [--raw] [--format="..."] [namespace]
|
||||
|
||||
|
||||
|
@ -1,27 +1,18 @@
|
||||
|
||||
|
||||
|
||||
[Exception]
|
||||
Third exception comment
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[Exception]
|
||||
Second exception comment
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[Exception]
|
||||
First exception <p>this is html</p>
|
||||
|
||||
|
||||
|
||||
foo3:bar
|
||||
|
||||
|
||||
|
@ -1,27 +1,18 @@
|
||||
|
||||
|
||||
[37;41m [0m
|
||||
[37;41m [Exception] [0m
|
||||
[37;41m Third exception [0m[34;41mcomment[0m[37;41m [0m
|
||||
[37;41m [0m
|
||||
|
||||
|
||||
|
||||
|
||||
[37;41m [0m
|
||||
[37;41m [Exception] [0m
|
||||
[37;41m Second exception [0m[33mcomment[0m[37;41m [0m
|
||||
[37;41m [0m
|
||||
|
||||
|
||||
|
||||
|
||||
[37;41m [0m
|
||||
[37;41m [Exception] [0m
|
||||
[37;41m First exception [0m[37;41m<p>[0m[37;41mthis is html[0m[37;41m</p>[0m[37;41m [0m
|
||||
[37;41m [0m
|
||||
|
||||
|
||||
[32mfoo3:bar[0m
|
||||
|
||||
|
||||
|
@ -1,9 +1,7 @@
|
||||
|
||||
|
||||
|
||||
[InvalidArgumentException]
|
||||
Command "foo" is not define
|
||||
d.
|
||||
|
||||
|
||||
|
||||
|
@ -1,11 +1,8 @@
|
||||
|
||||
|
||||
|
||||
[Exception]
|
||||
エラーメッセージ
|
||||
|
||||
|
||||
|
||||
foo
|
||||
|
||||
|
||||
|
@ -1,11 +1,8 @@
|
||||
|
||||
|
||||
[37;41m [0m
|
||||
[37;41m [Exception] [0m
|
||||
[37;41m エラーメッセージ [0m
|
||||
[37;41m [0m
|
||||
|
||||
|
||||
[32mfoo[0m
|
||||
|
||||
|
||||
|
@ -1,12 +1,9 @@
|
||||
|
||||
|
||||
|
||||
[Exception]
|
||||
コマンドの実行中にエラーが
|
||||
発生しました。
|
||||
|
||||
|
||||
|
||||
foo
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user