[New-bugs-announce] [issue16490] "inspect.getargspec()" and "inspect.getcallargs()" don't work with builtins
Jesús Cea Avión
report at bugs.python.org
Sat Nov 17 04:36:29 CET 2012
New submission from Jesús Cea Avión:
Yesterday I was attending a conference about a MOCK like library and the speaker told us about some "inspect" functionalities not working correctly with builtins. For instance:
"""
Python 3.3.0 (default, Oct 2 2012, 02:07:16)
[GCC 4.4.3] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import inspect
>>> def f(a=None) :
... pass
...
>>> inspect.getcallargs(f)
{'a': None}
>>> inspect.getargspec(f)
ArgSpec(args=['a'], varargs=None, keywords=None, defaults=(None,))
>>> inspect.getcallargs(list)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.3/inspect.py", line 993, in getcallargs
spec = getfullargspec(func)
File "/usr/local/lib/python3.3/inspect.py", line 850, in getfullargspec
raise TypeError('{!r} is not a Python function'.format(func))
TypeError: <class 'list'> is not a Python function
>>> inspect.getargspec(list)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.3/inspect.py", line 823, in getargspec
getfullargspec(func)
File "/usr/local/lib/python3.3/inspect.py", line 850, in getfullargspec
raise TypeError('{!r} is not a Python function'.format(func))
TypeError: <class 'list'> is not a Python function
>>>
"""
Can we annotate builtins to support this?. What about types defined in CModules?
----------
messages: 175725
nosy: jcea
priority: normal
severity: normal
status: open
title: "inspect.getargspec()" and "inspect.getcallargs()" don't work with builtins
versions: Python 3.4
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue16490>
_______________________________________
More information about the New-bugs-announce
mailing list