[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