From: Hong Minhee Date: Fri, 12 Apr 2013 22:03:25 +0000 (+0900) Subject: Use collections.Callable ABC instead of callable() predicate X-Git-Tag: rel_0_6_0~22^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=01734edca2aed417577e8e521fbba0ad06b28e38;p=thirdparty%2Fsqlalchemy%2Falembic.git Use collections.Callable ABC instead of callable() predicate --- diff --git a/alembic/ddl/impl.py b/alembic/ddl/impl.py index ab67e0c7..fbcec939 100644 --- a/alembic/ddl/impl.py +++ b/alembic/ddl/impl.py @@ -2,6 +2,7 @@ try: import builtins except ImportError: import __builtin__ as builtins +import collections from sqlalchemy.sql.expression import _BindParamClause from sqlalchemy.ext.compiler import compiles @@ -57,7 +58,8 @@ class DefaultImpl(with_metaclass(ImplMeta)): def static_output(self, text): text_ = text_type(text + '\n\n') self.output_buffer.write(text_) - if callable(getattr(self.output_buffer, 'flush', None)): + if isinstance(getattr(self.output_buffer, 'flush', None), + collections.Callable): self.output_buffer.flush() @property diff --git a/alembic/migration.py b/alembic/migration.py index bf8e9380..fa28053b 100644 --- a/alembic/migration.py +++ b/alembic/migration.py @@ -1,3 +1,4 @@ +import collections import io import logging import sys @@ -274,7 +275,7 @@ class MigrationContext(object): if self._user_compare_type is False: return False - if callable(self._user_compare_type): + if isinstance(self._user_compare_type, collections.Callable): user_value = self._user_compare_type( self, inspector_column, @@ -296,7 +297,7 @@ class MigrationContext(object): if self._user_compare_server_default is False: return False - if callable(self._user_compare_server_default): + if isinstance(self._user_compare_server_default, collections.Callable): user_value = self._user_compare_server_default( self, inspector_column, diff --git a/alembic/util.py b/alembic/util.py index 6111d202..4f223f76 100644 --- a/alembic/util.py +++ b/alembic/util.py @@ -4,6 +4,7 @@ try: import builtins except ImportError: import __builtin__ as builtins +import collections import sys import os import textwrap @@ -129,7 +130,7 @@ def create_module_class_proxy(cls, globals_, locals_): for methname in dir(cls): if not methname.startswith('_'): - if callable(getattr(cls, methname)): + if isinstance(getattr(cls, methname), collections.Callable): locals_[methname] = _create_op_proxy(methname) else: attr_names.add(methname)