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
--- 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'