• 
      

    Add and use backports of Django's arg spec functions.

    Review Request #11928 — Created Jan. 12, 2022 and submitted — Latest diff uploaded

    Information

    Djblets
    release-2.x

    Reviewers

    We have some deprecated uses of inspect.getargspec(), which has long
    since been replaced by inspect.getfullargspec and inspect.Signature.

    Most of our uses in Djblets (and Review Board) check for the same few
    things (presence of **kwargs, specific parameters, etc.), and
    fortunately Django has some nice utility methods in
    django.utils.inspect for these purposes. These were introduced in
    Django 1.8, and since Djblets 2.x supports Django 1.6, we can't import
    them directly.

    This change adds a compat module for django.utils.inspect
    (djblets.util.compat.django.utils.inspect), and switches our code to
    using it.

    It also updates the deprecation warning for one of the uses to use our
    deprecation classes.

    All unit tests pass on all versions of Django and Python.

    Commits

    Files