#24979 closed Cleanup/optimization (fixed)
Remove usage of inspect.getargspec()
Reported by: | Tim Graham | Owned by: | nobody |
---|---|---|---|
Component: | Utilities | Version: | dev |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Ready for checkin | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
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:
- Add a dependency for the funcsigs backport (only needed on Python 2)
- Vendor funcsigs in django.utils (about 1k LOC) (this has been the historical approach)
- Write different code for Python 2 & 3
discussion on django-developers about what option to use.
Change History (5)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Triage Stage: | Accepted → Ready for checkin |
---|
Note:
See TracTickets
for help on using tickets.
PR which implements option 3.