I’m happy to announce a new release of attrs!

attrs is the direct ancestor of – and the inspiration for – dataclasses in the 
standard library and remains the more powerful toolkit for creating regular 
classes without getting bogged down with writing repetitive boilerplate code: 
<https://www.attrs.org/>

My heartfelt thanks go to:

- My generous GitHub sponsors <https://github.com/sponsors/hynek>,
- companies subscribing to attrs on Tidelift 
<https://tidelift.com/subscription/pkg/pypi-attrs>,
- and people who buy me coffees on <https://ko-fi.com/the_hynek>!

❤️ That's the support that made me maintain attrs since 2015 with no end in 
sight! ❤️

------------------------------------------------------------------------

(alternatively, see <https://github.com/python-attrs/attrs/releases> for a 
richer-formatted version of the following)

Highlights

The main features of this release are:

-   The departure of Python 2.7 (enjoy your retirement!),
-   and the arrival of Python 3.11.

We had loftier goals feature-wise, but didn't want to block others embracing 
Python 3.11.

Full Changelog

Backwards-incompatible Changes

-   Python 2.7 is not supported anymore.

    Dealing with Python 2.7 tooling has become too difficult for a 
volunteer-run project.

    We have supported Python 2 more than 2 years after it was officially 
discontinued and feel that we have paid our dues. All version up to 21.4.0 from 
December 2021 remain fully functional, of course. #936

-   The deprecated cmp attribute of attrs.Attribute has been removed. This does 
not affect the cmp argument to attr.s that can be used as a shortcut to set eq 
and order at the same time. #939

Changes

-   Instantiation of frozen slotted classes is now faster. #898
-   If an eq key is defined, it is also used before hashing the attribute. #909
-   Added attrs.validators.min_len(). #916
-   attrs.validators.deep_iterable()'s member_validator argument now also 
accepts a list of validators and wraps them in an attrs.validators.and_(). #925
-   Added missing type stub re-imports for attrs.converters and attrs.filters. 
#931
-   Added missing stub for attr(s).cmp_using(). #949
-   attrs.validators._in()'s ValueError is not missing the attribute, expected 
options, and the value it got anymore. #951
-   Python 3.11 is now officially supported. #969

_______________________________________________
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com

Reply via email to