inspect.getargspec() was deprecated in Python 3.0 and will be removed in 3.6 (ETA late 2016). It started throwing a deprecation warning in Python 3.5 which causes some test failures when we check the number of deprecation warnings so I'd like to deal with it now and avoid introducing more usages.
Its replacement is inspect.signature() which is in all the versions of Python 3 we support, but not 2.7. Options I see:
1. Add a dependency for the funcsigs backport [1] (only needed on Python 2)
2. Vendor funcsigs in django.utils (about 1k LOC) (this has been the historical approach)
3. Write different code for Python 2 & 3
[1]
https://github.com/aliles/funcsigs