merge: force an exception message to bytes before printing as a warning stable
authorMatt Harbison <matt_harbison@yahoo.com>
Thu, 11 Mar 2021 18:33:39 -0500
branchstable
changeset 46692 39f23d20ea47
parent 46691 1099541b6462
child 46693 5f86765c9707
merge: force an exception message to bytes before printing as a warning Caught by pytype: File "/mnt/c/Users/Matt/hg/mercurial/merge.py", line 1346, in batchremove: Function _bytestr.__init__ was called with the wrong arguments [wrong-arg-types] Expected: (self, ints: Iterable[int]) Actually passed: (self, ints: str) Differential Revision: https://phab.mercurial-scm.org/D10177
mercurial/merge.py
--- a/mercurial/merge.py	Thu Mar 11 18:09:55 2021 -0500
+++ b/mercurial/merge.py	Thu Mar 11 18:33:39 2021 -0500
@@ -20,6 +20,7 @@
     nullrev,
 )
 from .thirdparty import attr
+from .utils import stringutil
 from . import (
     copies,
     encoding,
@@ -1341,7 +1342,7 @@
         except OSError as inst:
             repo.ui.warn(
                 _(b"update failed to remove %s: %s!\n")
-                % (f, pycompat.bytestr(inst.strerror))
+                % (f, stringutil.forcebytestr(inst.strerror))
             )
         if i == 100:
             yield i, f