[New-bugs-announce] [issue35614] Broken help() on metaclasses
Serhiy Storchaka
report at bugs.python.org
Sat Dec 29 10:21:50 EST 2018
New submission from Serhiy Storchaka <storchaka+cpython at gmail.com>:
$ ./python -m pydoc abc
Traceback (most recent call last):
File "/home/serhiy/py/cpython/Lib/runpy.py", line 192, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/home/serhiy/py/cpython/Lib/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 2765, in <module>
cli()
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 2727, in cli
help.help(arg)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1967, in help
elif request: doc(request, 'Help on %s:', output=self._output)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1690, in doc
pager(render_doc(thing, title, forceload))
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1683, in render_doc
return title % desc + '\n\n' + renderer.document(object, name)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 385, in document
if inspect.ismodule(object): return self.docmodule(*args)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1182, in docmodule
contents.append(self.document(value, key, name))
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 386, in document
if inspect.isclass(object): return self.docclass(*args)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1258, in docclass
(str(cls.__name__) for cls in object.__subclasses__()
TypeError: descriptor '__subclasses__' of 'type' object needs an argument
$ ./python -m pydoc enum
Traceback (most recent call last):
File "/home/serhiy/py/cpython/Lib/runpy.py", line 192, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/home/serhiy/py/cpython/Lib/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 2765, in <module>
cli()
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 2727, in cli
help.help(arg)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1967, in help
elif request: doc(request, 'Help on %s:', output=self._output)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1690, in doc
pager(render_doc(thing, title, forceload))
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1683, in render_doc
return title % desc + '\n\n' + renderer.document(object, name)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 385, in document
if inspect.ismodule(object): return self.docmodule(*args)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1182, in docmodule
contents.append(self.document(value, key, name))
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 386, in document
if inspect.isclass(object): return self.docclass(*args)
File "/home/serhiy/py/cpython/Lib/pydoc.py", line 1258, in docclass
(str(cls.__name__) for cls in object.__subclasses__()
TypeError: descriptor '__subclasses__' of 'type' object needs an argument
"object" is a metaclass (abc.ABCMeta or enum.EnumMeta) in tracebacks above.
The regression was introduced in issue8525.
----------
components: Library (Lib)
messages: 332720
nosy: CuriousLearner, belopolsky, eric.araujo, ncoghlan, serhiy.storchaka
priority: normal
severity: normal
status: open
title: Broken help() on metaclasses
type: behavior
versions: Python 3.8
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue35614>
_______________________________________
More information about the New-bugs-announce
mailing list