Closed
Description
I ran into an issue where the autocompletion starts thinking an example from the docstring of the function is the signature of the function.
The original code where I ran into this was a bit more complicated but I managed to create a somewhat minimal reproduction (the inheritance is significant, without inheriting it works correctly):
from collections.abc import Sequence
class C(Sequence):
@classmethod
def cmethod(cls, number: int, lst: list[int] = []):
"""
Return a list of numbers
Example:
========
C.cmethod(1337, [1, 2]) # => [1, 2, 1337]
"""
return lst + [number]
The autocompletion (and the documentation pop-up) seems to not realize that 1337 and [1 and 2 are literals rather than parameter names, and the cls
parameter for a class method gets turned into obj
for whatever reason.