From bff2f6f3fbb0450cb9d0d09a25845a437c3df85e Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Tue, 14 Dec 2010 19:24:17 -0500 Subject: [PATCH] - fixes for mysql and I'm ready to replace this whole adapt() business with a constructor copy --- lib/sqlalchemy/dialects/mysql/base.py | 4 ++++ lib/sqlalchemy/engine/default.py | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/sqlalchemy/dialects/mysql/base.py b/lib/sqlalchemy/dialects/mysql/base.py index fd99a16b55..5c3289bfb0 100644 --- a/lib/sqlalchemy/dialects/mysql/base.py +++ b/lib/sqlalchemy/dialects/mysql/base.py @@ -965,6 +965,10 @@ class ENUM(sqltypes.Enum, _StringType): else: return value return process + + def adapt(self, impltype, **kw): + kw['strict'] = self.strict + return sqltypes.Enum.adapt(self, impltype, **kw) class SET(_StringType): """MySQL SET type.""" diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index b432c351d6..ae0625d30f 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -135,14 +135,16 @@ class DefaultDialect(base.Dialect): (label_length, self.max_identifier_length)) self.label_length = label_length - self._type_memos = weakref.WeakKeyDictionary() - if not hasattr(self, 'description_encoding'): self.description_encoding = getattr( self, 'description_encoding', encoding) + @util.memoized_property + def _type_memos(self): + return weakref.WeakKeyDictionary() + @property def dialect_description(self): return self.name + "+" + self.driver -- 2.47.3