diff options
author | Hong Minhee <minhee@dahlia.kr> | 2013-04-13 04:26:24 +0900 |
---|---|---|
committer | Hong Minhee <minhee@dahlia.kr> | 2013-04-13 04:26:24 +0900 |
commit | 34b3aaf7e68fe9edfa9bc06ff033fec1c97c09ed (patch) | |
tree | 3a69db38b8ffb587f9ab46372d5cea2c9145ba0c /alembic/util.py | |
parent | 74abafd592cda3c1dc3950d3805c35657ebf43bb (diff) | |
download | alembic-34b3aaf7e68fe9edfa9bc06ff033fec1c97c09ed.tar.gz |
Make exec to work on both 2 and 3
Diffstat (limited to 'alembic/util.py')
-rw-r--r-- | alembic/util.py | 12 |
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): |