A fast and flexible reimplementation of data classes
:tada: The big 1.0! The library has been stable for some time but this makes it official.
match_args
and kw_only
decorator optionshide_internals
now affects the behaviour of comparison methods (as well as __repr__
) (#53 / #56)
hide_internals=False
__slots__
generation when decorator is reused and slots=True
(#50)__slots__
is no longer replaced when slots=True
unsafe_hash
being set to True
by default - this was not the intended behaviour as per the docsRecursionError
for circularly referenced instances (#48)ABCMeta
(#46)__init__
will no longer be replaced when init=True
__init__
=> __post_init__
aliasing (#44)factory
(replaces dataclasses' field(default_factory)
) (#34)RecursionError
when defining __post_init__
(#43)__init__
for post-initialisation logic is now deprecated (#44)TypeError
on Python 3.6 (#39)