Skip to content

__text_signature__ for __get__ methods is wrong #93021

Closed
@JelleZijlstra

Description

@JelleZijlstra
In [18]: object.__init__.__get__.__text_signature__
Out[18]: '($self, instance, owner, /)'

In [19]: object.__init__.__get__(1)
Out[19]: <method-wrapper '__init__' of int object at 0x105e7d0b0>

In [20]: object.__init__.__get__(1, 2)
Out[20]: <method-wrapper '__init__' of int object at 0x105e7d0b0>

The signature claims there are two required positional arguments, but in fact the second argument is optional.

(Tested on 3.11 but I think it's wrong on all recent versions.)

Metadata

Metadata

Assignees

Labels

3.10only security fixes3.11only security fixes3.12only security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)type-bugAn unexpected behavior, bug, or error

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions