@@ -18,15 +18,57 @@ Whenever there is a need to break compatibility, it is announced here in the cha
1818
1919Changes for the upcoming release can be found in the [ "changelog.d" directory] ( https://github.com/python-attrs/attrs/tree/main/changelog.d ) in our repository.
2020
21- <!--
22- Do *NOT* add changelog entries here!
21+ <!-- towncrier release notes start -->
22+
23+ ## [ 23.1.0] ( https://github.com/python-attrs/attrs/tree/23.1.0 ) - 2023-04-16
2324
24- This changelog is managed by towncrier and is compiled at release time.
25+ ### Backwards-incompatible Changes
2526
26- See https://github.com/python-attrs/attrs/blob/main/.github/CONTRIBUTING.md#changelog for details.
27- -->
27+ - Python 3.6 has been dropped and packaging switched to static package data using [ Hatch] ( https://hatch.pypa.io/latest/ ) .
28+ [ #993 ] ( https://github.com/python-attrs/attrs/issues/993 )
29+
30+
31+ ### Deprecations
32+
33+ - The support for * zope-interface* via the ` attrs.validators.provides ` validator is now deprecated and will be removed in, or after, April 2024.
34+
35+ The presence of a C-based package in our developement dependencies has caused headaches and we're not under the impression it's used a lot.
36+
37+ Let us know if you're using it and we might publish it as a separate package.
38+ [ #1120 ] ( https://github.com/python-attrs/attrs/issues/1120 )
39+
40+
41+ ### Changes
42+
43+ - ` attrs.filters.exclude() ` and ` attrs.filters.include() ` now support the passing of attribute names as strings.
44+ [ #1068 ] ( https://github.com/python-attrs/attrs/issues/1068 )
45+ - ` attrs.has() ` and ` attrs.fields() ` now handle generic classes correctly.
46+ [ #1079 ] ( https://github.com/python-attrs/attrs/issues/1079 )
47+ - Fix frozen exception classes when raised within e.g. ` contextlib.contextmanager ` , which mutates their ` __traceback__ ` attributes.
48+ [ #1081 ] ( https://github.com/python-attrs/attrs/issues/1081 )
49+ - ` @frozen ` now works with type checkers that implement [ PEP-681] ( https://peps.python.org/pep-0681/ ) (ex. [ pyright] ( https://github.com/microsoft/pyright/ ) ).
50+ [ #1084 ] ( https://github.com/python-attrs/attrs/issues/1084 )
51+ - Restored ability to unpickle instances pickled before 22.2.0.
52+ [ #1085 ] ( https://github.com/python-attrs/attrs/issues/1085 )
53+ - ` attrs.asdict() ` 's and ` attrs.astuple() ` 's type stubs now accept the ` attrs.AttrsInstance ` protocol.
54+ [ #1090 ] ( https://github.com/python-attrs/attrs/issues/1090 )
55+ - Fix slots class cellvar updating closure in CPython 3.8+ even when ` __code__ ` introspection is unavailable.
56+ [ #1092 ] ( https://github.com/python-attrs/attrs/issues/1092 )
57+ - ` attrs.resolve_types() ` can now pass ` include_extras ` to ` typing.get_type_hints() ` on Python 3.9+, and does so by default.
58+ [ #1099 ] ( https://github.com/python-attrs/attrs/issues/1099 )
59+ - Added instructions for pull request workflow to ` CONTRIBUTING.md ` .
60+ [ #1105 ] ( https://github.com/python-attrs/attrs/issues/1105 )
61+ - Added * type* parameter to ` attrs.field() ` function for use with ` attrs.make_class() ` .
62+
63+ Please note that type checkers ignore type metadata passed into ` make_class() ` , but it can be useful if you're wrapping _ attrs_ .
64+ [ #1107 ] ( https://github.com/python-attrs/attrs/issues/1107 )
65+ - It is now possible for ` attrs.evolve() ` (and ` attr.evolve() ` ) to change fields named ` inst ` if the instance is passed as a positional argument.
66+
67+ Passing the instance using the ` inst ` keyword argument is now deprecated and will be removed in, or after, April 2024.
68+ [ #1117 ] ( https://github.com/python-attrs/attrs/issues/1117 )
69+ - ` attrs.validators.optional() ` now also accepts a tuple of validators (in addition to lists of validators).
70+ [ #1122 ] ( https://github.com/python-attrs/attrs/issues/1122 )
2871
29- <!-- towncrier release notes start -->
3072
3173## [ 22.2.0] ( https://github.com/python-attrs/attrs/tree/22.2.0 ) - 2022-12-21
3274
0 commit comments