| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Upgrade to release 20.3.0:
- attr.define(), attr.frozen(), attr.mutable(), and attr.field()
remain provisional.
- attr.s() now has a field_transformer hook that is called for all
Attributes and returns a (modified or updated) list of Attribute
instances. attr.asdict() has a value_serializer hook that can
change the way values are converted. Both hooks are meant to
help with data (de-)serialization workflows.
- kw_only=True now works on Python 2.
- raise from now works on frozen classes on PyPy.
- attr.asdict() and attr.astuple() now treat frozensets like sets
with regards to the retain_collection_types argument.
- The type stubs for attr.s() and attr.make_class() are not
missing the collect_by_mro argument anymore.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Acked-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
Upgrade to release 20.2.0:
- Backward-incompatible: attr.define(), attr.frozen(),
attr.mutable(), and attr.field() remain provisional.
- attr.define() et al now correct detect __eq__ and __ne__.
- attr.define() et al's hybrid behavior now also works correctly
when arguments are passed.
- It's possible to define custom __setattr__ methods on slotted
classes again.
- In 20.1.0 we introduced the inherited attribute on the
attr.Attribute class to differentiate attributes that have been
inherited and those that have been defined directly on the
class.It has shown to be problematic to involve that attribute
when comparing instances of attr.Attribute though, because when
sub-classing, attributes from base classes are suddenly not
equal to themselves in a super class.
Therefore the inherited attribute will now be ignored when
hashing and comparing instances of attr.Attribute.
- zope.interface is now a "soft dependency" when running the test
suite; if zope.interface is not installed when running the test
suite, the interface-related tests will be automatically skipped.
- The ergonomics of creating frozen classes using
@define(frozen=True) and sub-classing frozen classes has been
improved: you don't have to set on_setattr=None anymore. #687
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Acked-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|