diff options
| author | Federico Caselli <cfederico87@gmail.com> | 2020-04-18 18:10:59 +0200 |
|---|---|---|
| committer | Federico Caselli <cfederico87@gmail.com> | 2020-10-02 21:21:11 +0200 |
| commit | c68f9fb87868c45fcadcc942ce4a35f10ff2f7ea (patch) | |
| tree | d9056aebf73fd296afdce471b6cb9e7699eae345 /lib/sqlalchemy | |
| parent | 7bb9ea911cb2e573696a91392a6a08161950ac9f (diff) | |
| download | sqlalchemy-c68f9fb87868c45fcadcc942ce4a35f10ff2f7ea.tar.gz | |
Enable pypy tests on github workflow
Fixes: #5223
Change-Id: I0952e54ed9af2952ea340be1945311376ffc1ad2
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/orm/mapper.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/testing/plugin/pytestplugin.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/util/__init__.py | 1 | ||||
| -rw-r--r-- | lib/sqlalchemy/util/compat.py | 1 | ||||
| -rw-r--r-- | lib/sqlalchemy/util/langhelpers.py | 4 |
5 files changed, 6 insertions, 4 deletions
diff --git a/lib/sqlalchemy/orm/mapper.py b/lib/sqlalchemy/orm/mapper.py index 7b94bfa87..e73993e50 100644 --- a/lib/sqlalchemy/orm/mapper.py +++ b/lib/sqlalchemy/orm/mapper.py @@ -1253,7 +1253,7 @@ class Mapper( if key == "__init__" and hasattr(method, "_sa_original_init"): method = method._sa_original_init if isinstance(method, types.MethodType): - method = method.im_func + method = method.__func__ if isinstance(method, types.FunctionType): if hasattr(method, "__sa_reconstructor__"): self._reconstructor = method diff --git a/lib/sqlalchemy/testing/plugin/pytestplugin.py b/lib/sqlalchemy/testing/plugin/pytestplugin.py index a4ace4e24..dfefd3b95 100644 --- a/lib/sqlalchemy/testing/plugin/pytestplugin.py +++ b/lib/sqlalchemy/testing/plugin/pytestplugin.py @@ -385,7 +385,7 @@ def %(name)s(%(args)s): code, {"target": target, "fn": fn}, fn.__name__ ) if not add_positional_parameters: - decorated.__defaults__ = getattr(fn, "im_func", fn).__defaults__ + decorated.__defaults__ = getattr(fn, "__func__", fn).__defaults__ decorated.__wrapped__ = fn return update_wrapper(decorated, fn) else: diff --git a/lib/sqlalchemy/util/__init__.py b/lib/sqlalchemy/util/__init__.py index 5fdcdf654..7ce0ce12b 100644 --- a/lib/sqlalchemy/util/__init__.py +++ b/lib/sqlalchemy/util/__init__.py @@ -73,6 +73,7 @@ from .compat import py2k # noqa from .compat import py36 # noqa from .compat import py37 # noqa from .compat import py3k # noqa +from .compat import pypy # noqa from .compat import quote_plus # noqa from .compat import raise_ # noqa from .compat import raise_from_cause # noqa diff --git a/lib/sqlalchemy/util/compat.py b/lib/sqlalchemy/util/compat.py index c71deffbc..d4da21664 100644 --- a/lib/sqlalchemy/util/compat.py +++ b/lib/sqlalchemy/util/compat.py @@ -20,6 +20,7 @@ py37 = sys.version_info >= (3, 7) py36 = sys.version_info >= (3, 6) py3k = sys.version_info >= (3, 0) py2k = sys.version_info < (3, 0) +pypy = hasattr(sys, "pypy_version_info") cpython = platform.python_implementation() == "CPython" diff --git a/lib/sqlalchemy/util/langhelpers.py b/lib/sqlalchemy/util/langhelpers.py index bbdd3381f..85a065e99 100644 --- a/lib/sqlalchemy/util/langhelpers.py +++ b/lib/sqlalchemy/util/langhelpers.py @@ -165,7 +165,7 @@ def %(name)s(%(args)s): env.update({targ_name: target, fn_name: fn}) decorated = _exec_code_in_env(code, env, fn.__name__) - decorated.__defaults__ = getattr(fn, "im_func", fn).__defaults__ + decorated.__defaults__ = getattr(fn, "__func__", fn).__defaults__ decorated.__wrapped__ = fn return update_wrapper(decorated, fn) @@ -784,7 +784,7 @@ def monkeypatch_proxied_specials( fn = getattr(from_cls, method) if not hasattr(fn, "__call__"): continue - fn = getattr(fn, "im_func", fn) + fn = getattr(fn, "__func__", fn) except AttributeError: continue try: |
