errors: name arguments to UnknownCommand constructor
Differential Revision: https://phab.mercurial-scm.org/D9166
--- a/mercurial/dispatch.py Tue Oct 06 20:45:52 2020 -0700
+++ b/mercurial/dispatch.py Tue Oct 06 21:06:18 2020 -0700
@@ -504,19 +504,19 @@
_formatparse(ui.warn, inst)
return -1
except error.UnknownCommand as inst:
- nocmdmsg = _(b"hg: unknown command '%s'\n") % inst.args[0]
+ nocmdmsg = _(b"hg: unknown command '%s'\n") % inst.command
try:
# check if the command is in a disabled extension
# (but don't check for extensions themselves)
formatted = help.formattedhelp(
- ui, commands, inst.args[0], unknowncmd=True
+ ui, commands, inst.command, unknowncmd=True
)
ui.warn(nocmdmsg)
ui.write(formatted)
except (error.UnknownCommand, error.Abort):
suggested = False
- if len(inst.args) == 2:
- sim = _getsimilar(inst.args[1], inst.args[0])
+ if inst.all_commands:
+ sim = _getsimilar(inst.all_commands, inst.command)
if sim:
ui.warn(nocmdmsg)
_reportsimilar(ui.warn, sim)
--- a/mercurial/error.py Tue Oct 06 20:45:52 2020 -0700
+++ b/mercurial/error.py Tue Oct 06 21:06:18 2020 -0700
@@ -111,6 +111,11 @@
class UnknownCommand(Exception):
"""Exception raised if command is not in the command table."""
+ def __init__(self, command, all_commands=None):
+ self.command = command
+ self.all_commands = all_commands
+ super(UnknownCommand, self).__init__()
+
__bytes__ = _tobytes