Bump attrs from 20.1.0 to 20.2.0
Bumps attrs from 20.1.0 to 20.2.0.
Release notes
Sourced from attrs's releases.
20.2.0
Backward-incompatible Changes
attr.define()
,attr.frozen()
,attr.mutable()
, andattr.field()
remain provisional.This release fixes a bunch of bugs and ergonomics but they remain mostly unchanged.
If you wish to use them together with mypy, you can simply drop this plugin into your project.
Feel free to provide feedback to them in the linked issue #668.
We will release the
attrs
namespace once we have the feeling that the APIs have properly settled. #668Changes
attr.define()
et al now correct detect__eq__
and__ne__
. #671
attr.define()
et al's hybrid behavior now also works correctly when arguments are passed. #675It's possible to define custom
__setattr__
methods on slotted classes again. #681In 20.1.0 we introduced the
inherited
attribute on theattr.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 ofattr.Attribute
. #684
zope.interface
is now a "soft dependency" when running the test suite; ifzope.interface
is not installed when running the test suite, the interface-related tests will be automatically skipped. #685The ergonomics of creating frozen classes using
@define(frozen=True)
and sub-classing frozen classes has been improved: you don't have to seton_setattr=None
anymore. #687
Changelog
Sourced from attrs's changelog.
20.2.0 (2020-09-05)
Backward-incompatible Changes ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
attr.define()
,attr.frozen()
,attr.mutable()
, andattr.field()
remain provisional.This release fixes a bunch of bugs and ergonomics but they remain mostly unchanged.
If you wish to use them together with mypy, you can simply drop
this plugin <https://gist.github.com/hynek/1e3844d0c99e479e716169034b5fa963#file-attrs_ng_plugin-py>
_ into your project.Feel free to provide feedback to them in the linked issue #668.
We will release the
attrs
namespace once we have the feeling that the APIs have properly settled.[#668](https://github.com/python-attrs/attrs/issues/668) <https://github.com/python-attrs/attrs/issues/668>
_Changes ^^^^^^^
attr.define()
et al now correct detect__eq__
and__ne__
.[#671](https://github.com/python-attrs/attrs/issues/671) <https://github.com/python-attrs/attrs/issues/671>
_
attr.define()
et al's hybrid behavior now also works correctly when arguments are passed.[#675](https://github.com/python-attrs/attrs/issues/675) <https://github.com/python-attrs/attrs/issues/675>
_It's possible to define custom
__setattr__
methods on slotted classes again.[#681](https://github.com/python-attrs/attrs/issues/681) <https://github.com/python-attrs/attrs/issues/681>
_In 20.1.0 we introduced the
inherited
attribute on theattr.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 ofattr.Attribute
.[#684](https://github.com/python-attrs/attrs/issues/684) <https://github.com/python-attrs/attrs/issues/684>
_
zope.interface
is now a "soft dependency" when running the test suite; ifzope.interface
is not installed when running the test suite, the interface-related tests will be automatically skipped.[#685](https://github.com/python-attrs/attrs/issues/685) <https://github.com/python-attrs/attrs/issues/685>
_The ergonomics of creating frozen classes using
@define(frozen=True)
and sub-classing frozen classes has been improved: you don't have to seton_setattr=None
anymore.[#687](https://github.com/python-attrs/attrs/issues/687) <https://github.com/python-attrs/attrs/issues/687>
_
Commits
-
4f74fba
Prepare 20.2.0 -
74605de
Elaborate more on #684 -
ea04c15
Drop superfluous word -
060d1ef
Add newsfragment on state of NG APIs -
c454722
Fix typo -
504eefe
NG: make frozen classes comfortably subclassable (#687) -
4875590
Don't reset custom setattr in slotted classes (#681) -
bfd7bb4
Ignore inherited field when comparing Attributes (#684) -
dfb2ee2
Makezope
a semi-optional test dependency (#685) -
00c1c2c
Add check-toml hook - Additional commits viewable in compare view