[PATCH 4 of 6 py3] dispatch: allow testedwith to be bytes or str
Augie Fackler
raf at durin42.com
Mon Mar 6 18:23:08 EST 2017
# HG changeset patch
# User Augie Fackler <raf at durin42.com>
# Date 1488565765 18000
# Fri Mar 03 13:29:25 2017 -0500
# Node ID 00547c2e1a71fc5d3efd13e5c766fda8bc398e6a
# Parent cf5be2a3d1804666dff9a4c99a33354dab7cc322
dispatch: allow testedwith to be bytes or str
diff --git a/mercurial/dispatch.py b/mercurial/dispatch.py
--- a/mercurial/dispatch.py
+++ b/mercurial/dispatch.py
@@ -857,6 +857,8 @@ def _exceptionwarning(ui):
if ui.config('ui', 'supportcontact', None) is None:
for name, mod in extensions.extensions():
testedwith = getattr(mod, 'testedwith', '')
+ if pycompat.ispy3 and isinstance(testedwith, str):
+ testedwith = testedwith.encode(u'utf-8')
report = getattr(mod, 'buglink', _('the extension author.'))
if not testedwith.strip():
# We found an untested extension. It's likely the culprit.
@@ -877,7 +879,7 @@ def _exceptionwarning(ui):
worst = name, nearest, report
if worst[0] is not None:
name, testedwith, report = worst
- if not isinstance(testedwith, str):
+ if not isinstance(testedwith, (bytes, str)):
testedwith = '.'.join([str(c) for c in testedwith])
warning = (_('** Unknown exception encountered with '
'possibly-broken third-party extension %s\n'
More information about the Mercurial-devel
mailing list