diff options
author | Jacob MacDonald <jaccarmac@gmail.com> | 2015-10-28 18:52:06 -0600 |
---|---|---|
committer | Jacob MacDonald <jaccarmac@gmail.com> | 2015-10-29 12:09:15 -0600 |
commit | e8a5ed9c1cbc5e9f0aebffad5ea78abb16167778 (patch) | |
tree | e52d3a0616e79a57ec4bd42244db3401007f41eb | |
parent | 98c1dcc6bcade313a254fe11e8efa3c5b5ad959e (diff) | |
download | sqlalchemy-pr/210.tar.gz |
Update usages of getargspec to compat version.pr/210
The places inspect.getargspec was being used were causing problems for
newer Python versions.
-rw-r--r-- | lib/sqlalchemy/orm/collections.py | 3 | ||||
-rw-r--r-- | lib/sqlalchemy/orm/events.py | 3 | ||||
-rw-r--r-- | lib/sqlalchemy/testing/exclusions.py | 3 | ||||
-rw-r--r-- | lib/sqlalchemy/util/langhelpers.py | 8 | ||||
-rw-r--r-- | test/orm/test_session.py | 3 |
5 files changed, 12 insertions, 8 deletions
diff --git a/lib/sqlalchemy/orm/collections.py b/lib/sqlalchemy/orm/collections.py index 4f988a8d4..b9145bae2 100644 --- a/lib/sqlalchemy/orm/collections.py +++ b/lib/sqlalchemy/orm/collections.py @@ -111,6 +111,7 @@ from ..sql import expression from .. import util, exc as sa_exc from . import base +from sqlalchemy.util.compat import inspect_getargspec __all__ = ['collection', 'collection_adapter', 'mapped_collection', 'column_mapped_collection', @@ -982,7 +983,7 @@ def _instrument_membership_mutator(method, before, argument, after): adapter.""" # This isn't smart enough to handle @adds(1) for 'def fn(self, (a, b))' if before: - fn_args = list(util.flatten_iterator(inspect.getargspec(method)[0])) + fn_args = list(util.flatten_iterator(inspect_getargspec(method)[0])) if isinstance(argument, int): pos_arg = argument named_arg = len(fn_args) > argument and fn_args[argument] or None diff --git a/lib/sqlalchemy/orm/events.py b/lib/sqlalchemy/orm/events.py index 993385e15..0d2b0850f 100644 --- a/lib/sqlalchemy/orm/events.py +++ b/lib/sqlalchemy/orm/events.py @@ -18,6 +18,7 @@ from .session import Session, sessionmaker from .scoping import scoped_session from .attributes import QueryableAttribute from .query import Query +from sqlalchemy.util.compat import inspect_getargspec class InstrumentationEvents(event.Events): """Events related to class instrumentation events. @@ -603,7 +604,7 @@ class MapperEvents(event.Events): meth = getattr(cls, identifier) try: target_index = \ - inspect.getargspec(meth)[0].index('target') - 1 + inspect_getargspec(meth)[0].index('target') - 1 except ValueError: target_index = None diff --git a/lib/sqlalchemy/testing/exclusions.py b/lib/sqlalchemy/testing/exclusions.py index c7d06fceb..2a5b4aa63 100644 --- a/lib/sqlalchemy/testing/exclusions.py +++ b/lib/sqlalchemy/testing/exclusions.py @@ -12,6 +12,7 @@ from . import config from .. import util import inspect import contextlib +from sqlalchemy.util.compat import inspect_getargspec def skip_if(predicate, reason=None): @@ -295,7 +296,7 @@ class SpecPredicate(Predicate): class LambdaPredicate(Predicate): def __init__(self, lambda_, description=None, args=None, kw=None): - spec = inspect.getargspec(lambda_) + spec = inspect_getargspec(lambda_) if not spec[0]: self.lambda_ = lambda db: lambda_() else: diff --git a/lib/sqlalchemy/util/langhelpers.py b/lib/sqlalchemy/util/langhelpers.py index 743afccfd..0d82cf0ad 100644 --- a/lib/sqlalchemy/util/langhelpers.py +++ b/lib/sqlalchemy/util/langhelpers.py @@ -426,7 +426,7 @@ def getargspec_init(method): """ try: - return inspect.getargspec(method) + return compat.inspect_getargspec(method) except TypeError: if method is object.__init__: return (['self'], None, None, None) @@ -464,7 +464,7 @@ def generic_repr(obj, additional_kw=(), to_inspect=None, omit_kwarg=()): for i, insp in enumerate(to_inspect): try: (_args, _vargs, vkw, defaults) = \ - inspect.getargspec(insp.__init__) + compat.inspect_getargspec(insp.__init__) except TypeError: continue else: @@ -625,7 +625,7 @@ def monkeypatch_proxied_specials(into_cls, from_cls, skip=None, only=None, except AttributeError: continue try: - spec = inspect.getargspec(fn) + spec = compat.inspect_getargspec(fn) fn_args = inspect.formatargspec(spec[0]) d_args = inspect.formatargspec(spec[0][1:]) except TypeError: @@ -1365,7 +1365,7 @@ class EnsureKWArgType(type): m = re.match(fn_reg, key) if m: fn = clsdict[key] - spec = inspect.getargspec(fn) + spec = compat.inspect_getargspec(fn) if not spec.keywords: clsdict[key] = wrapped = cls._wrap_w_kw(fn) setattr(cls, key, wrapped) diff --git a/test/orm/test_session.py b/test/orm/test_session.py index f6ddcb566..caeb08530 100644 --- a/test/orm/test_session.py +++ b/test/orm/test_session.py @@ -17,6 +17,7 @@ from sqlalchemy.util import pypy from sqlalchemy.testing import fixtures from test.orm import _fixtures from sqlalchemy import event, ForeignKey +from sqlalchemy.util.compat import inspect_getargspec class ExecutionTest(_fixtures.FixtureTest): @@ -1483,7 +1484,7 @@ class SessionInterface(fixtures.TestBase): for meth in Session.public_methods: if meth in blacklist: continue - spec = inspect.getargspec(getattr(Session, meth)) + spec = inspect_getargspec(getattr(Session, meth)) if len(spec[0]) > 1 or spec[1]: ok.add(meth) return ok |