Skip to content

Running help(help) and help(list) returns errors in REPL #2056

@ArniDagur

Description

@ArniDagur

See the following REPL session:

[arni][~/src/RustPython][master][C:(base)]% cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.07s
     Running `target/debug/rustpython`
Welcome to the magnificent Rust Python 0.1.2 interpreter 😱 🖖
>>>>> help(help)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/sdb/src/RustPython/Lib/_sitebuiltins.py", line 104, in __call__
    return pydoc.help(*args, **kwds)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1857, in __call__
    self.help(request)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1916, in help
    else: doc(request, 'Help on %s:', output=self._output)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1647, in doc
    print(value)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1643, in doc
    pager(render_doc(thing, title, forceload))
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1636, in render_doc
    return title % desc + '\n\n' + renderer.document(object, name)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 386, in document
    pass
  File "/sdb/src/RustPython/Lib/pydoc.py", line 383, in document
    if inspect.isclass(object): return self.docclass(*args)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1305, in docclass
    lambda t: t[1] == 'method')
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1251, in spill
    name, mod, object))
  File "/sdb/src/RustPython/Lib/pydoc.py", line 386, in document
    pass
  File "/sdb/src/RustPython/Lib/pydoc.py", line 384, in document
    if inspect.isroutine(object): return self.docroutine(*args)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1357, in docroutine
    signature = None
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1355, in docroutine
    signature = inspect.signature(object)
  File "/sdb/src/RustPython/Lib/inspect.py", line 3093, in signature
    return Signature.from_callable(obj, follow_wrapped=follow_wrapped)
  File "/sdb/src/RustPython/Lib/inspect.py", line 2843, in from_callable
    follow_wrapper_chains=follow_wrapped)
  File "/sdb/src/RustPython/Lib/inspect.py", line 2293, in _signature_from_callable
    skip_bound_arg=skip_bound_arg)
  File "/sdb/src/RustPython/Lib/inspect.py", line 2173, in _signature_from_function
    name = arg_names[pos_count + keyword_only_count]
IndexError: Index out of bounds!
>>>>> help(list)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/sdb/src/RustPython/Lib/_sitebuiltins.py", line 104, in __call__
    return pydoc.help(*args, **kwds)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1857, in __call__
    self.help(request)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1916, in help
    else: doc(request, 'Help on %s:', output=self._output)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1647, in doc
    print(value)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1643, in doc
    pager(render_doc(thing, title, forceload))
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1636, in render_doc
    return title % desc + '\n\n' + renderer.document(object, name)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 386, in document
    pass
  File "/sdb/src/RustPython/Lib/pydoc.py", line 383, in document
    if inspect.isclass(object): return self.docclass(*args)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1305, in docclass
    lambda t: t[1] == 'method')
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1251, in spill
    name, mod, object))
  File "/sdb/src/RustPython/Lib/pydoc.py", line 386, in document
    pass
  File "/sdb/src/RustPython/Lib/pydoc.py", line 384, in document
    if inspect.isroutine(object): return self.docroutine(*args)
  File "/sdb/src/RustPython/Lib/pydoc.py", line 1350, in docroutine
    title = self.bold(name) + ' = ' + realname
TypeError: Cannot add __add__ =  and 'NoneType' object
  • Version: latest master
  • OS: Gentoo Linux
  • System: Linux arni-pc 5.7.9-gentoo-x86_64 #1 SMP Wed Jul 22 03:28:52 GMT 2020 x86_64 Intel(R) Core(TM) i7-4771 CPU @ 3.50GHz GenuineIntel GNU/Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions