summaryrefslogtreecommitdiff
path: root/alembic/util.py
diff options
context:
space:
mode:
authorHong Minhee <minhee@dahlia.kr>2013-04-13 04:26:24 +0900
committerHong Minhee <minhee@dahlia.kr>2013-04-13 04:26:24 +0900
commit34b3aaf7e68fe9edfa9bc06ff033fec1c97c09ed (patch)
tree3a69db38b8ffb587f9ab46372d5cea2c9145ba0c /alembic/util.py
parent74abafd592cda3c1dc3950d3805c35657ebf43bb (diff)
downloadalembic-34b3aaf7e68fe9edfa9bc06ff033fec1c97c09ed.tar.gz
Make exec to work on both 2 and 3
Diffstat (limited to 'alembic/util.py')
-rw-r--r--alembic/util.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/alembic/util.py b/alembic/util.py
index 826247f..c7c3784 100644
--- a/alembic/util.py
+++ b/alembic/util.py
@@ -1,5 +1,9 @@
from __future__ import with_statement
+try:
+ import builtins
+except ImportError:
+ import __builtin__ as builtins
import sys
import os
import textwrap
@@ -114,7 +118,13 @@ def create_module_class_proxy(cls, globals_, locals_):
'doc': fn.__doc__,
})
lcl = {}
- exec func_text in globals_, lcl
+ try:
+ exec_ = getattr(builtins, 'exec')
+ except AttributeError:
+ # Python 2
+ def exec_(func_text, globals_, lcl):
+ exec('exec func_text in globals_, lcl')
+ exec_(func_text, globals_, lcl)
return lcl[name]
for methname in dir(cls):