[PATCH 01 of 10] py3: explicitly convert a list to str and then bytes to pass in ui.debug

Pulkit Goyal 7895pulkit at gmail.com
Sat May 6 03:01:13 UTC 2017


# HG changeset patch
# User Pulkit Goyal <7895pulkit at gmail.com>
# Date 1493837589 -19800
#      Thu May 04 00:23:09 2017 +0530
# Node ID 72a79c82aa8913f1661af3d7dc3b14d856679bd9
# Parent  e4a4ebfd9d8ee96412ee5909b1e4d97694fd55c2
py3: explicitly convert a list to str and then bytes to pass in ui.debug

Here pats is a list obviously. Since we can't pass unicodes to ui.debug, we
have to pass this as bytes. So this patch first convert that list to str and
then to bytes to pass into ui.debug().

diff --git a/hgext/largefiles/overrides.py b/hgext/largefiles/overrides.py
--- a/hgext/largefiles/overrides.py
+++ b/hgext/largefiles/overrides.py
@@ -17,6 +17,7 @@
 from mercurial import (
     archival,
     cmdutil,
+    encoding,
     error,
     hg,
     match as matchmod,
@@ -380,8 +381,8 @@
             r = origmatchfn(f)
             return r
         m.matchfn = lfmatchfn
-
-        ui.debug('updated patterns: %s\n' % sorted(pats))
+        bytespats = encoding.unitolocal(r'%s' % sorted(pats))
+        ui.debug('updated patterns: %s\n' % bytespats)
         return m, pats
 
     # For hg log --patch, the match object is used in two different senses:


More information about the Mercurial-devel mailing list