-
- Notifications
You must be signed in to change notification settings - Fork 33.5k
Closed
Labels
Description
Bug report
Bug description:
The first argument of the new __replace__ method on dataclasses is conspicuously named obj rather than self. While that's not a bug, it would be kinder on introspection tools to use self, since it is otherwise a regular instance method.
>>> import dataclasses, inspect, pprint >>> @dataclasses.dataclass ... class Foo: ... x: int ... >>> pprint.pprint({n:inspect.signature(f) for n, f in inspect.getmembers(Foo, inspect.isfunction)}) {'__eq__': <Signature (self, other)>, '__init__': <Signature (self, x: int) -> None>, '__replace__': <Signature (obj, /, **changes)>, '__repr__': <Signature (self)>}__replace__ was added in #108752
CPython versions tested on:
3.13
Operating systems tested on:
macOS