Details
Details
With --trace:
[2015-05-25 08:28:38] EXCEPTION: (PhutilAggregateException) Some linters failed:
- Exception: QUACK QUACK QUACK at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:275]
arcanist(head=master, ref.master=9b7c6786cdc9), phutil(head=master, ref.master=65819efa43f1)
#0 <#2> ArcanistPhutilXHPASTLinter::lintRaggedClasstreeEdges(XHPASTNode) called at [<arcanist>/src/lint/linter/ArcanistPhutilXHPASTLinter.php:269]
#1 <#2> call_user_func(array, XHPASTNode) called at [<arcanist>/src/lint/linter/ArcanistPhutilXHPASTLinter.php:120]
#2 <#2> ArcanistPhutilXHPASTLinter::resolveFuture(string, ExecFuture) called at [<arcanist>/src/lint/linter/ArcanistFutureLinter.php:34]
#3 <#2> ArcanistFutureLinter::didLintPaths(array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:602]
#4 <#2> ArcanistLintEngine::executeDidLintOnPaths(ArcanistPhutilXHPASTLinter, array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:553]
#5 <#2> ArcanistLintEngine::executeLintersOnChunk(array, array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:481]
#6 <#2> ArcanistLintEngine::executeLinters(array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:219]
#7 ArcanistLintEngine::run() called at [<arcanist>/src/workflow/ArcanistLintWorkflow.php:331]
#8 ArcanistLintWorkflow::run() called at [<arcanist>/scripts/arcanist.php:387]Without --trace:
Exception
Some linters failed:
- Exception: QUACK QUACK QUACK
(Run with `--trace` for a full exception trace.)Diff Detail
Diff Detail
- Repository
- rPHU libphutil
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
Particularly, I like that this approach:
- merges identical stack frames when possible, to reduce the total number of frames shown and make the output look relatively regular; and
- makes it fairly obvious what you should copy/paste, hopefully reducing the chance that we get bug reports with one uninteresting stack trace and none of the actual relevant details.
Comment Actions
I tested this with multiple exceptions being thrown:
[2015-05-25 21:01:22] EXCEPTION: (PhutilAggregateException) Some linters failed:
- Exception: woof
- Exception: quack at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:275]
arcanist(head=master, ref.master=4c208cec1608), phutil(head=master, ref.master=c89486b75a24)
#0 <#3> ArcanistXHPASTLinter::resolveFuture(string, ExecFuture) called at [<arcanist>/src/lint/linter/ArcanistFutureLinter.php:34]
#1 <#3> ArcanistFutureLinter::didLintPaths(array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:602]
#2 <#3> ArcanistLintEngine::executeDidLintOnPaths(ArcanistXHPASTLinter, array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:553]
#3 <#2> ArcanistTextLinter::lintPath(string) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:585]
#4 <#2> ArcanistLintEngine::executeLinterOnPaths(ArcanistTextLinter, array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:543]
#5 <#2> ArcanistLintEngine::executeLintersOnChunk(array, array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:481]
#6 <#2> ArcanistLintEngine::executeLinters(array) called at [<arcanist>/src/lint/engine/ArcanistLintEngine.php:219]
#7 ArcanistLintEngine::run() called at [<arcanist>/src/workflow/ArcanistLintWorkflow.php:331]
#8 ArcanistLintWorkflow::run() called at [<arcanist>/scripts/arcanist.php:382]Personally I think that the ordering is a little odd (particularly the dual numbering), but it's an improvement. I also think that D12851 is maybe still worthwhile because it seems odd to me that overriding the __toString() method doesn't change the output.
| src/error/PhutilErrorHandler.php | ||
|---|---|---|
| 533 | Or even list<map<string, wild>> | |
| 547 | Breadth-first order | |
| 554 | I dislike the use of parentheses here, but eh. | |
| 560 | Also here. | |