diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 852c62d41..61ca55997 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -17,16 +17,49 @@ Whenever there is a need to break compatibility, it is announced here in the cha However if you intend to build extensions on top of ``attrs`` you have to anticipate that. -Changes for the upcoming release can be found in the `"changelog.d" directory `_ in our repository. +.. towncrier release notes start -.. - Do *NOT* add changelog entries here! +22.1.0 (2022-07-28) +------------------- - This changelog is managed by towncrier and is compiled at release time. +Backwards-incompatible Changes +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - See https://github.com/python-attrs/attrs/blob/main/.github/CONTRIBUTING.md#changelog for details. +- 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 `_ + + +---- -.. towncrier release notes start 21.4.0 (2021-12-29) ------------------- diff --git a/changelog.d/898.change.rst b/changelog.d/898.change.rst deleted file mode 100644 index 2b6c6d252..000000000 --- a/changelog.d/898.change.rst +++ /dev/null @@ -1 +0,0 @@ -Instantiation of frozen slotted classes is now faster. diff --git a/changelog.d/909.change.rst b/changelog.d/909.change.rst deleted file mode 100644 index baf9fe292..000000000 --- a/changelog.d/909.change.rst +++ /dev/null @@ -1 +0,0 @@ -If an ``eq`` key is defined, it is also used before hashing the attribute. diff --git a/changelog.d/916.change.rst b/changelog.d/916.change.rst deleted file mode 100644 index 4a5ccd22b..000000000 --- a/changelog.d/916.change.rst +++ /dev/null @@ -1 +0,0 @@ -Added ``attrs.validators.min_len()``. diff --git a/changelog.d/925.change.rst b/changelog.d/925.change.rst deleted file mode 100644 index ddc795248..000000000 --- a/changelog.d/925.change.rst +++ /dev/null @@ -1 +0,0 @@ -``attrs.validators.deep_iterable()``'s *member_validator* argument now also accepts a list of validators and wraps them in an ``attrs.validators.and_()``. diff --git a/changelog.d/931.change.rst b/changelog.d/931.change.rst deleted file mode 100644 index 73ec071d7..000000000 --- a/changelog.d/931.change.rst +++ /dev/null @@ -1 +0,0 @@ -Added missing type stub re-imports for ``attrs.converters`` and ``attrs.filters``. diff --git a/changelog.d/936.breaking.rst b/changelog.d/936.breaking.rst deleted file mode 100644 index 1a30d126f..000000000 --- a/changelog.d/936.breaking.rst +++ /dev/null @@ -1,6 +0,0 @@ -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. diff --git a/changelog.d/939.breaking.rst b/changelog.d/939.breaking.rst deleted file mode 100644 index 6782fa9cc..000000000 --- a/changelog.d/939.breaking.rst +++ /dev/null @@ -1,2 +0,0 @@ -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. diff --git a/changelog.d/949.change.rst b/changelog.d/949.change.rst deleted file mode 100644 index 6e12e5355..000000000 --- a/changelog.d/949.change.rst +++ /dev/null @@ -1 +0,0 @@ -Added missing stub for ``attr(s).cmp_using()``. diff --git a/changelog.d/951.change.rst b/changelog.d/951.change.rst deleted file mode 100644 index 6ded5fe7b..000000000 --- a/changelog.d/951.change.rst +++ /dev/null @@ -1 +0,0 @@ -``attrs.validators._in()``'s ``ValueError`` is not missing the attribute, expected options, and the value it got anymore. diff --git a/changelog.d/969.change.rst b/changelog.d/969.change.rst deleted file mode 100644 index a991347aa..000000000 --- a/changelog.d/969.change.rst +++ /dev/null @@ -1 +0,0 @@ -Python 3.11 is now officially supported. diff --git a/src/attr/__init__.py b/src/attr/__init__.py index b47591319..386305d62 100644 --- a/src/attr/__init__.py +++ b/src/attr/__init__.py @@ -23,7 +23,7 @@ from ._version_info import VersionInfo -__version__ = "22.1.0.dev0" +__version__ = "22.1.0" __version_info__ = VersionInfo._from_version_string(__version__) __title__ = "attrs"