# HG changeset patch # User Bram Moolenaar # Date 1373111673 -7200 # Node ID 29e57603bf6f3a2e3c178a63d332ed4d2eccfa82 # Parent 1e1d6c9607d2521bbaa59f1f1e2bbd7fc0052baa updated for version 7.3.1314 Problem: Test 87 fails with Python 3.3. Solution: Filter the error messages. (Taro Muraoka) diff --git a/src/testdir/test87.in b/src/testdir/test87.in --- a/src/testdir/test87.in +++ b/src/testdir/test87.in @@ -829,6 +829,10 @@ EOF :fun D() :endfun py3 << EOF +import re + +py33_type_error_pattern = re.compile('^__call__\(\) takes (\d+) positional argument but (\d+) were given$') + def ee(expr, g=globals(), l=locals()): try: try: @@ -836,6 +840,15 @@ def ee(expr, g=globals(), l=locals()): except Exception as e: if sys.version_info >= (3, 3) and e.__class__ is AttributeError and str(e).find('has no attribute')>=0 and not str(e).startswith("'vim."): cb.append(expr + ':' + repr((e.__class__, AttributeError(str(e)[str(e).rfind(" '") + 2:-1])))) + elif sys.version_info >= (3, 3) and e.__class__ is ImportError and str(e).find('No module named \'') >= 0: + cb.append(expr + ':' + repr((e.__class__, ImportError(str(e).replace("'", ''))))) + elif sys.version_info >= (3, 3) and e.__class__ is TypeError: + m = py33_type_error_pattern.search(str(e)) + if m: + msg = '__call__() takes exactly {0} positional argument ({1} given)'.format(m.group(1), m.group(2)) + cb.append(expr + ':' + repr((e.__class__, TypeError(msg)))) + else: + cb.append(expr + ':' + repr((e.__class__, e))) else: cb.append(expr + ':' + repr((e.__class__, e))) else: diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1314, +/**/ 1313, /**/ 1312,