Skip to content

Default arguments in methods are not preserved for introspection #4061

Closed
@vladima

Description

@vladima

Tried on the latest master:

# test.pyx
def run(a, b=1):
    return a + b

cdef class A:
    def run(self, a, b=1):
        return a + b

# app.py
from test import A, run
import inspect

a = A()
print(inspect.signature(run)) # ok - prints (a, b=1)
print(inspect.signature(a.run)) # not ok - prints (a, b)
print(inspect.signature(A.run)) # not ok - prints (self, a, b)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions