diff roundup/cgi/PageTemplates/Expressions.py @ 5406:5a871a250670

Python 3 preparation: use isinstance(x, collections.Callable) instead of callable(x). Tool-assisted patch.
author Joseph Myers <jsm@polyomino.org.uk>
date Wed, 25 Jul 2018 00:13:52 +0000
parents d26921b851c3
children 33b25e51e127
line wrap: on
line diff
--- a/roundup/cgi/PageTemplates/Expressions.py	Tue Jul 24 23:51:41 2018 +0000
+++ b/roundup/cgi/PageTemplates/Expressions.py	Wed Jul 25 00:13:52 2018 +0000
@@ -22,7 +22,7 @@
 for Python expressions, string literals, and paths.
 """
 
-import re, sys
+import collections, re, sys
 from .TALES import Engine, CompilerError, _valid_name, NAME_RE, \
      Undefined, Default, _parse_expr
 
@@ -86,7 +86,7 @@
         ob = call_with_ns(ob.__render_with_namespace__, ns)
     else:
         base = ob
-        if callable(base):
+        if isinstance(base, collections.Callable):
             try:
                 if getattr(base, 'isDocTemp', 0):
                     ob = call_with_ns(ob, ns, 2)

Roundup Issue Tracker: http://roundup-tracker.org/