diff -r e5f69e3bb3f6 -r e63b27fb0595 mercurial/ui.py --- a/mercurial/ui.py Sat Dec 14 18:23:37 2019 -0500 +++ b/mercurial/ui.py Sat Dec 14 18:31:50 2019 -0500 @@ -1857,9 +1857,9 @@ # exclude frame where 'exc' was chained and rethrown from exctb self.write_err( b'Traceback (most recent call last):\n', - b''.join(exctb[:-1]), - b''.join(causetb), - b''.join(exconly), + encoding.strtolocal(''.join(exctb[:-1])), + encoding.strtolocal(''.join(causetb)), + encoding.strtolocal(''.join(exconly)), ) else: output = traceback.format_exception(exc[0], exc[1], exc[2])