# HG changeset patch # User Augie Fackler # Date 1489014701 18000 # Node ID 62939e0148f170b67ca8c7374f36c413b67fd387 # Parent f8d41edd0357425ca1bc1627ff3e3e605943efb0 policy: try and always have a bytes for module policy debuginstall now runs cleanly in Python 3. diff -r f8d41edd0357 -r 62939e0148f1 mercurial/policy.py --- a/mercurial/policy.py Wed Mar 08 18:11:19 2017 -0500 +++ b/mercurial/policy.py Wed Mar 08 18:11:41 2017 -0500 @@ -39,7 +39,7 @@ # Our C extensions aren't yet compatible with Python 3. So use pure Python # on Python 3 for now. if sys.version_info[0] >= 3: - policy = 'py' + policy = b'py' # Environment variable can always force settings. policy = os.environ.get('HGMODULEPOLICY', policy) diff -r f8d41edd0357 -r 62939e0148f1 setup.py --- a/setup.py Wed Mar 08 18:11:19 2017 -0500 +++ b/setup.py Wed Mar 08 18:11:41 2017 -0500 @@ -370,7 +370,7 @@ modulepolicy = 'c' with open("mercurial/__modulepolicy__.py", "w") as f: f.write('# this file is autogenerated by setup.py\n') - f.write('modulepolicy = "%s"\n' % modulepolicy) + f.write('modulepolicy = b"%s"\n' % modulepolicy) build_py.run(self) diff -r f8d41edd0357 -r 62939e0148f1 tests/test-check-py3-commands.t --- a/tests/test-check-py3-commands.t Wed Mar 08 18:11:19 2017 -0500 +++ b/tests/test-check-py3-commands.t Wed Mar 08 18:11:41 2017 -0500 @@ -11,7 +11,7 @@ version warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. debuginstall - TypeError: Can't convert 'bytes' object to str implicitly + no problems detected $ cat > included-hgrc < [extensions]