From a347c03907fb2583723a5b36a083170ee21d4c0a Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Fri, 8 Apr 2011 15:59:28 -0400 Subject: [PATCH] - no encoding with arrays - rework the "builtin types" thing with the ReplayableSession to be py3k compatible --- .../dialects/postgresql/psycopg2.py | 2 ++ test/lib/engines.py | 26 ++++++++++++------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/lib/sqlalchemy/dialects/postgresql/psycopg2.py b/lib/sqlalchemy/dialects/postgresql/psycopg2.py index d840a0d1ee..708a721957 100644 --- a/lib/sqlalchemy/dialects/postgresql/psycopg2.py +++ b/lib/sqlalchemy/dialects/postgresql/psycopg2.py @@ -150,11 +150,13 @@ class _PGEnum(ENUM): class _PGArray(ARRAY): def __init__(self, *arg, **kw): super(_PGArray, self).__init__(*arg, **kw) + # Py2K # FIXME: this check won't work for setups that # have convert_unicode only on their create_engine(). if isinstance(self.item_type, sqltypes.String) and \ self.item_type.convert_unicode: self.item_type.convert_unicode = "force" + # end Py2K # When we're handed literal SQL, ensure it's a SELECT-query. Since # 8.3, combining cursors and "FOR UPDATE" has been fine. diff --git a/test/lib/engines.py b/test/lib/engines.py index 8e251b3514..4794a5fabd 100644 --- a/test/lib/engines.py +++ b/test/lib/engines.py @@ -203,19 +203,25 @@ class ReplayableSession(object): Callable = object() NoAttribute = object() + + # Py3K + #Natives = set([getattr(types, t) + # for t in dir(types) if not t.startswith('_')]). \ + # union([type(t) if not isinstance(t, type) + # else t for t in __builtins__.values()]).\ + # difference([getattr(types, t) + # for t in ('FunctionType', 'BuiltinFunctionType', + # 'MethodType', 'BuiltinMethodType', + # 'LambdaType', )]) + # Py2K Natives = set([getattr(types, t) for t in dir(types) if not t.startswith('_')]). \ difference([getattr(types, t) - # Py3K - #for t in ('FunctionType', 'BuiltinFunctionType', - # 'MethodType', 'BuiltinMethodType', - # 'LambdaType', )]) - - # Py2K - for t in ('FunctionType', 'BuiltinFunctionType', - 'MethodType', 'BuiltinMethodType', - 'LambdaType', 'UnboundMethodType',)]) - # end Py2K + for t in ('FunctionType', 'BuiltinFunctionType', + 'MethodType', 'BuiltinMethodType', + 'LambdaType', 'UnboundMethodType',)]) + # end Py2K + def __init__(self): self.buffer = deque() -- 2.39.5