grep: convert an exception to bytes for a warning message stable
authorMatt Harbison <matt_harbison@yahoo.com>
Thu, 11 Mar 2021 17:16:29 -0500
branchstable
changeset 46688 7e02e7c721b0
parent 46687 83ffc49f7e48
child 46689 8408c3198ec1
grep: convert an exception to bytes for a warning message Caught by pytype: File "/mnt/c/Users/Matt/hg/mercurial/commands.py", line 3457, in grep: Function _bytestr.__init__ was called with the wrong arguments [wrong-arg-types] Expected: (self, ints: Iterable[int]) Actually passed: (self, ints: re.error) The following methods aren't implemented on re.error: __iter__ Differential Revision: https://phab.mercurial-scm.org/D10173
mercurial/commands.py
--- a/mercurial/commands.py	Thu Mar 11 17:14:30 2021 -0500
+++ b/mercurial/commands.py	Thu Mar 11 17:16:29 2021 -0500
@@ -3444,7 +3444,8 @@
         regexp = util.re.compile(pattern, reflags)
     except re.error as inst:
         ui.warn(
-            _(b"grep: invalid match pattern: %s\n") % pycompat.bytestr(inst)
+            _(b"grep: invalid match pattern: %s\n")
+            % stringutil.forcebytestr(inst)
         )
         return 1
     sep, eol = b':', b'\n'