Bug 135998
| Summary: | webkit-patch should show more output from failed external commands | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Brian Burg <burg> |
| Component: | Tools / Tests | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW | ||
| Severity: | Normal | CC: | ap, bburg, ddkilzer, dfarler, joepeck, ossy, rniwa |
| Priority: | P2 | ||
| Version: | 528+ (Nightly build) | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Brian Burg
It makes it really hard to diagnose failed commits. For example, if you hit the pre-commit hook for having an OOPS in the changelog, the command will die mysteriously, printing something like the following:
---
Last 500 characters of output:
be8dd10 and refs/remotes/origin/master differ, using rebase:
:040000 040000 faf4b32c792fe9d5eaf6c0463471892c6a5991b5 164f425c4fa57f2fbf6f5c42ba43f1d0d47fab08 M Source
:040000 040000 839cd568d970e1bf83c4036ec5617621f7bb8e20 2607407e1094dbb339dfcb1730f32126fe52af7e M Tools
Current branch master is up to date.
ERROR: Not all changes have been committed into SVN, however the committed
ones (if any) seem to be successfully integrated into the working tree.
Please see the above messages for details.
webkitpy.tool.bot.queueengine: [ERROR] Failed to run "['git', 'svn', 'dcommit', '--rmdir']" exit_code: 1 cwd: /Users/burg/repos/webkit
---
Whereas the actual error message is quite clear:
ERROR from SVN:
A repository hook failed: Commit blocked by pre-commit hook (exit code 1) with output:
svnlook: Can't write to stream: Broken pipe
svnlook: Can't write to stream: Broken pipe
The following ChangeLog files contain OOPS:
trunk/Source/JavaScriptCore/ChangeLog
trunk/Tools/ChangeLog
Please don't ever say "OOPS" in a ChangeLog file.
W: 39645e9435e6061663504b5c6d6adf4cfbe8dd10 and refs/remotes/origin/master differ, using rebase:
:040000 040000 faf4b32c792fe9d5eaf6c0463471892c6a5991b5 164f425c4fa57f2fbf6f5c42ba43f1d0d47fab08 M Source
:040000 040000 839cd568d970e1bf83c4036ec5617621f7bb8e20 2607407e1094dbb339dfcb1730f32126fe52af7e M Tools
Current branch master is up to date.
ERROR: Not all changes have been committed into SVN, however the committed
ones (if any) seem to be successfully integrated into the working tree.
Please see the above messages for details.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Brian Burg
Is there any reason to truncate at 500 characters versus like 10,000? Almost every failure message is useless with just last 500 chars. (Maybe it will make logs bigger, but logspam from applying patches isn't too big..?)
Ryosuke Niwa
Raising the limit to something like the last 2000 chars make sense to me.
Brian Burg
To clarify, this applies to any shell command like svn-apply or dcommit.
Alexey Proskuryakov
My only vague guess is that EWS and commit queue would bark if there's more output. But I don't know if that's true, maybe they would just truncate on their own.