errors: remove unnecessary varargs handling from OutOfBandError
authorMartin von Zweigbergk <martinvonz@google.com>
Mon, 19 Apr 2021 21:31:24 -0700
changeset 46981 abd18d6306f1
parent 46980 75351b8b2082
child 46982 d467bae86b2d
errors: remove unnecessary varargs handling from OutOfBandError In my recent D10465, I moved some code over from scmutil into `OutOfBandError.__init__`. The code was written to deal with an arbitrary number of `message` arguments to the constructor. It turns out that we only ever pass 0 or 1. Given that, let's simplify it. Differential Revision: https://phab.mercurial-scm.org/D10483
mercurial/error.py
--- a/mercurial/error.py	Mon Apr 19 11:10:16 2021 +0200
+++ b/mercurial/error.py	Mon Apr 19 21:31:24 2021 -0700
@@ -311,16 +311,15 @@
 class OutOfBandError(RemoteError):
     """Exception raised when a remote repo reports failure"""
 
-    def __init__(self, *messages, **kwargs):
+    def __init__(self, message=None, hint=None):
         from .i18n import _
 
-        if messages:
-            message = _(b"remote error:\n%s") % b''.join(messages)
+        if message:
             # Abort.format() adds a trailing newline
-            message = message.rstrip(b'\n')
+            message = _(b"remote error:\n%s") % message.rstrip(b'\n')
         else:
             message = _(b"remote error")
-        super(OutOfBandError, self).__init__(message, **kwargs)
+        super(OutOfBandError, self).__init__(message, hint=hint)
 
 
 class ParseError(Abort):