changeset 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 56cc58d20add
children f004824563a3
files roundup/cgi/PageTemplates/Expressions.py roundup/instance.py
diffstat 2 files changed, 5 insertions(+), 4 deletions(-) [+]
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)
--- a/roundup/instance.py	Tue Jul 24 23:51:41 2018 +0000
+++ b/roundup/instance.py	Wed Jul 25 00:13:52 2018 +0000
@@ -33,6 +33,7 @@
 except ImportError:
     import __builtin__ as builtins
 
+import collections
 import os
 import sys
 import warnings
@@ -133,14 +134,14 @@
         if self.optimize:
             # execute preloaded schema object
             self._exec(self.schema, env)
-            if callable (self.schema_hook):
+            if isinstance(self.schema_hook, collections.Callable):
                 self.schema_hook(**env)
             # use preloaded detectors
             detectors = self.detectors
         else:
             # execute the schema file
             self._execfile('schema.py', env)
-            if callable (self.schema_hook):
+            if isinstance(self.schema_hook, collections.Callable):
                 self.schema_hook(**env)
             # reload extensions and detectors
             for extension in self.get_extensions('extensions'):

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