[PATCH] dispatch: split out warning message generation to separate function
Augie Fackler
raf at durin42.com
Wed Apr 6 21:21:46 EDT 2016
On Tue, Apr 05, 2016 at 10:43:14PM +0100, Martijn Pieters wrote:
> # HG changeset patch
> # User Martijn Pieters <mjpieters at fb.com>
> # Date 1459882883 -3600
> # Tue Apr 05 20:01:23 2016 +0100
> # Node ID 80d54d0b5fc4dd420f9736e08ffdf3b97f50a59e
> # Parent 1e97bcbb87767e1a96909900595a0b6a7791407b
> dispatch: split out warning message generation to separate function
queued, thanks
>
> Allow for patching warning message generation, or for patching out the ui.log /
> ui.warn behaviour (but still generate the warning message).
>
> diff --git a/mercurial/dispatch.py b/mercurial/dispatch.py
> --- a/mercurial/dispatch.py
> +++ b/mercurial/dispatch.py
> @@ -1015,12 +1015,9 @@
> else:
> return checkargs()
>
> -def handlecommandexception(ui):
> - """Produce a warning message for broken commands
> +def _exceptionwarning(ui):
> + """Produce a warning message for the current active exception"""
>
> - Called when handling an exception; the exception is reraised if
> - this function returns False, ignored otherwise.
> - """
> # For compatibility checking, we discard the portion of the hg
> # version after the + on the assumption that if a "normal
> # user" is running a build with a + in it the packager
> @@ -1072,6 +1069,15 @@
> util.version()) +
> (_("** Extensions loaded: %s\n") %
> ", ".join([x[0] for x in extensions.extensions()])))
> + return warning
> +
> +def handlecommandexception(ui):
> + """Produce a warning message for broken commands
> +
> + Called when handling an exception; the exception is reraised if
> + this function returns False, ignored otherwise.
> + """
> + warning = _exceptionwarning(ui)
> ui.log("commandexception", "%s\n%s\n", warning, traceback.format_exc())
> ui.warn(warning)
> return False # re-raise the exception
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list