Path to this page:
Subject: CVS commit: pkgsrc/devel/py-attrs
From: Adam Ciarcinski
Date: 2017-11-16 08:57:53
Message id: 20171116075753.55213FB3F@cvs.NetBSD.org
Log Message:
py-attrs: updated to 17.3.0
17.3.0:
Backward-incompatible Changes
- Attributes are not defined on the class body anymore.
This means that if you define a class C with an attribute x, the class will \
*not* have an attribute x for introspe
ction anymore.
Instead of C.x, use attr.fields(C).x or look at C.__attrs_attrs__.
The old behavior has been deprecated since version 16.1.
Changes
- super() and __class__ now work on Python 3 when slots=True.
- Added type argument to attr.ib() and corresponding type attribute to \
attr.Attribute.
This change paves the way for automatic type checking and serialization \
(though as of this release attrs does not make use of it).
In Python 3.6 or higher, the value of attr.Attribute.type can alternately be \
set using variable type annotations
- The combination of str=True and slots=True now works on Python 2.
- attr.Factory is hashable again.
- Subclasses now can overwrite attribute definitions of their superclass.
That means that you can -- for example -- change the default value for an \
attribute by redefining it.
- Added new option auto_attribs to @attr.s that allows to collect annotated \
fields without setting them to attr.ib().
Setting a field to an attr.ib() is still possible to supply options like \
validators.
Setting it to any other value is treated like it was passed as \
attr.ib(default=value) -- passing an instance of attr.Factory also works as \
expected.
Files: