On Sat, Feb 02, 2008 at 10:17:46AM -0500, Karl Fogel wrote:
> Now that there are search engines, it's possibly an argument for
> including the error code itself in error messages (even though that's
> always been held up as one of those ridiculous things engineers do
> that users hate). So:
>
> "Commit failed due to blah blah blah ... (svn error 26754)"
>
> I'm making up the syntax, but you get the idea. People could search
> for "svn error 26754" and presumably get helpful hits, and this would
> remain stable even when we change the human-readable part of the error
> message.
Attached is a diff that implements this.
It's a bit of a rough change, I had to fix quite a few tests that
matched end-of-line in expected output. Were possible I simply
made the expected-output regex eat the new " (svn error xyz)" part.
Also, I'm unsure about whether we should call the error codes
"svn error codes" or "apr error codes".
Arguments can be made both ways:
For users, "svn error code" is less surprising. But the code talks
about "apr errors" all the time, with subversion's own error codes
living in the user-definable part of the ARP error number space.
Maybe I should modify this patch so it calls real APR errors
"apr errors" and Subversion-specific errors "svn errors"?
But won't this confuse poor users again?
Bikeshed ahoy, mine's blue with spots of white sprinkled here and there.
[[[
Print error codes in error messages.
Proposed by Karl in http://svn.haxx.se/dev/archive-2008-02/0084.shtml
after he suddenly discovered google et al:
Now that there are search engines, it's possibly an argument for
including the error code itself in error messages (even though that's
always been held up as one of those ridiculous things engineers do
that users hate). So:
"Commit failed due to blah blah blah ... (svn error 26754)"
I'm making up the syntax, but you get the idea. People could search
for "svn error 26754" and presumably get helpful hits, and this would
remain stable even when we change the human-readable part of the error
message.
* subversion/libsvn_subr/error.c
(SVN_FILE_LINE_UNDEFINED): Include a colon here that used to
be printed along with a format string which was removed.
(print_error): Append APR error code along with all error messages.
* subversion/tests/cmdline/switch_tests.py
(commit_routine_switching, forced_switch_failures): Fix these tests,
they were broken by the changes made to libsvn_subr/error.c.
* subversion/tests/cmdline/diff_tests.py
(diff_non_version_controlled_file): ditto
* subversion/tests/cmdline/prop_tests.py
(inappropriate_props): ditto
* subversion/tests/cmdline/commit_tests.py
(set_invalid_revprops, start_commit_hook_test, pre_commit_hook_test): ditto
* subversion/tests/cmdline/checkout_tests.py
(co_with_obstructing_local_adds): ditto
]]]
--
Stefan Sperling <stsp_at_elego.de> Software Developer
elego Software Solutions GmbH HRB 77719
Gustav-Meyer-Allee 25, Gebaeude 12 Tel: +49 30 23 45 86 96
13355 Berlin Fax: +49 30 23 45 86 95
http://www.elego.de Geschaeftsfuehrer: Olaf Wagner
- application/pgp-signature attachment: stored
Received on 2008-02-04 20:51:03 CET