[!WARNING]
Some dependencies could not be looked up. Check the warning logs for more information.
Release Notes
python-attrs/attrs (attrs)
### [`v23.2.0`](https://togithub.com/python-attrs/attrs/blob/HEAD/CHANGELOG.md#2320---2023-12-31)
[Compare Source](https://togithub.com/python-attrs/attrs/compare/23.1.0...23.2.0)
##### Changes
- The type annotation for `attrs.resolve_types()` is now correct.
[#1141](https://togithub.com/python-attrs/attrs/issues/1141)
- Type stubs now use `typing.dataclass_transform` to decorate dataclass-like decorators, instead of the non-standard `__dataclass_transform__` special form, which is only supported by Pyright.
[#1158](https://togithub.com/python-attrs/attrs/issues/1158)
- Fixed serialization of namedtuple fields using `attrs.asdict/astuple()` with `retain_collection_types=True`.
[#1165](https://togithub.com/python-attrs/attrs/issues/1165)
- `attrs.AttrsInstance` is now a `typing.Protocol` in both type hints and code.
This allows you to subclass it along with another `Protocol`.
[#1172](https://togithub.com/python-attrs/attrs/issues/1172)
- If *attrs* detects that `__attrs_pre_init__` accepts more than just `self`, it will call it with the same arguments as `__init__` was called.
This allows you to, for example, pass arguments to `super().__init__()`.
[#1187](https://togithub.com/python-attrs/attrs/issues/1187)
- Slotted classes now transform `functools.cached_property` decorated methods to support equivalent semantics.
[#1200](https://togithub.com/python-attrs/attrs/issues/1200)
- Added *class_body* argument to `attrs.make_class()` to provide additional attributes for newly created classes.
It is, for example, now possible to attach methods.
[#1203](https://togithub.com/python-attrs/attrs/issues/1203)
### [`v23.1.0`](https://togithub.com/python-attrs/attrs/blob/HEAD/CHANGELOG.md#2310---2023-04-16)
[Compare Source](https://togithub.com/python-attrs/attrs/compare/22.2.0...23.1.0)
##### Backwards-incompatible Changes
- Python 3.6 has been dropped and packaging switched to static package data using [Hatch](https://hatch.pypa.io/latest/).
[#993](https://togithub.com/python-attrs/attrs/issues/993)
##### Deprecations
- The support for *zope-interface* via the `attrs.validators.provides` validator is now deprecated and will be removed in, or after, April 2024.
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.
Let us know if you're using it and we might publish it as a separate package.
[#1120](https://togithub.com/python-attrs/attrs/issues/1120)
##### Changes
- `attrs.filters.exclude()` and `attrs.filters.include()` now support the passing of attribute names as strings.
[#1068](https://togithub.com/python-attrs/attrs/issues/1068)
- `attrs.has()` and `attrs.fields()` now handle generic classes correctly.
[#1079](https://togithub.com/python-attrs/attrs/issues/1079)
- Fix frozen exception classes when raised within e.g. `contextlib.contextmanager`, which mutates their `__traceback__` attributes.
[#1081](https://togithub.com/python-attrs/attrs/issues/1081)
- `@frozen` now works with type checkers that implement [PEP-681](https://peps.python.org/pep-0681/) (ex. [pyright](https://togithub.com/microsoft/pyright/)).
[#1084](https://togithub.com/python-attrs/attrs/issues/1084)
- Restored ability to unpickle instances pickled before 22.2.0.
[#1085](https://togithub.com/python-attrs/attrs/issues/1085)
- `attrs.asdict()`'s and `attrs.astuple()`'s type stubs now accept the `attrs.AttrsInstance` protocol.
[#1090](https://togithub.com/python-attrs/attrs/issues/1090)
- Fix slots class cellvar updating closure in CPython 3.8+ even when `__code__` introspection is unavailable.
[#1092](https://togithub.com/python-attrs/attrs/issues/1092)
- `attrs.resolve_types()` can now pass `include_extras` to `typing.get_type_hints()` on Python 3.9+, and does so by default.
[#1099](https://togithub.com/python-attrs/attrs/issues/1099)
- Added instructions for pull request workflow to `CONTRIBUTING.md`.
[#1105](https://togithub.com/python-attrs/attrs/issues/1105)
- Added *type* parameter to `attrs.field()` function for use with `attrs.make_class()`.
Please note that type checkers ignore type metadata passed into `make_class()`, but it can be useful if you're wrapping *attrs*.
[#1107](https://togithub.com/python-attrs/attrs/issues/1107)
- It is now possible for `attrs.evolve()` (and `attr.evolve()`) to change fields named `inst` if the instance is passed as a positional argument.
Passing the instance using the `inst` keyword argument is now deprecated and will be removed in, or after, April 2024.
[#1117](https://togithub.com/python-attrs/attrs/issues/1117)
- `attrs.validators.optional()` now also accepts a tuple of validators (in addition to lists of validators).
[#1122](https://togithub.com/python-attrs/attrs/issues/1122)
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
==22.2.0
->==23.2.0
Release Notes
python-attrs/attrs (attrs)
### [`v23.2.0`](https://togithub.com/python-attrs/attrs/blob/HEAD/CHANGELOG.md#2320---2023-12-31) [Compare Source](https://togithub.com/python-attrs/attrs/compare/23.1.0...23.2.0) ##### Changes - The type annotation for `attrs.resolve_types()` is now correct. [#1141](https://togithub.com/python-attrs/attrs/issues/1141) - Type stubs now use `typing.dataclass_transform` to decorate dataclass-like decorators, instead of the non-standard `__dataclass_transform__` special form, which is only supported by Pyright. [#1158](https://togithub.com/python-attrs/attrs/issues/1158) - Fixed serialization of namedtuple fields using `attrs.asdict/astuple()` with `retain_collection_types=True`. [#1165](https://togithub.com/python-attrs/attrs/issues/1165) - `attrs.AttrsInstance` is now a `typing.Protocol` in both type hints and code. This allows you to subclass it along with another `Protocol`. [#1172](https://togithub.com/python-attrs/attrs/issues/1172) - If *attrs* detects that `__attrs_pre_init__` accepts more than just `self`, it will call it with the same arguments as `__init__` was called. This allows you to, for example, pass arguments to `super().__init__()`. [#1187](https://togithub.com/python-attrs/attrs/issues/1187) - Slotted classes now transform `functools.cached_property` decorated methods to support equivalent semantics. [#1200](https://togithub.com/python-attrs/attrs/issues/1200) - Added *class_body* argument to `attrs.make_class()` to provide additional attributes for newly created classes. It is, for example, now possible to attach methods. [#1203](https://togithub.com/python-attrs/attrs/issues/1203) ### [`v23.1.0`](https://togithub.com/python-attrs/attrs/blob/HEAD/CHANGELOG.md#2310---2023-04-16) [Compare Source](https://togithub.com/python-attrs/attrs/compare/22.2.0...23.1.0) ##### Backwards-incompatible Changes - Python 3.6 has been dropped and packaging switched to static package data using [Hatch](https://hatch.pypa.io/latest/). [#993](https://togithub.com/python-attrs/attrs/issues/993) ##### Deprecations - The support for *zope-interface* via the `attrs.validators.provides` validator is now deprecated and will be removed in, or after, April 2024. 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. Let us know if you're using it and we might publish it as a separate package. [#1120](https://togithub.com/python-attrs/attrs/issues/1120) ##### Changes - `attrs.filters.exclude()` and `attrs.filters.include()` now support the passing of attribute names as strings. [#1068](https://togithub.com/python-attrs/attrs/issues/1068) - `attrs.has()` and `attrs.fields()` now handle generic classes correctly. [#1079](https://togithub.com/python-attrs/attrs/issues/1079) - Fix frozen exception classes when raised within e.g. `contextlib.contextmanager`, which mutates their `__traceback__` attributes. [#1081](https://togithub.com/python-attrs/attrs/issues/1081) - `@frozen` now works with type checkers that implement [PEP-681](https://peps.python.org/pep-0681/) (ex. [pyright](https://togithub.com/microsoft/pyright/)). [#1084](https://togithub.com/python-attrs/attrs/issues/1084) - Restored ability to unpickle instances pickled before 22.2.0. [#1085](https://togithub.com/python-attrs/attrs/issues/1085) - `attrs.asdict()`'s and `attrs.astuple()`'s type stubs now accept the `attrs.AttrsInstance` protocol. [#1090](https://togithub.com/python-attrs/attrs/issues/1090) - Fix slots class cellvar updating closure in CPython 3.8+ even when `__code__` introspection is unavailable. [#1092](https://togithub.com/python-attrs/attrs/issues/1092) - `attrs.resolve_types()` can now pass `include_extras` to `typing.get_type_hints()` on Python 3.9+, and does so by default. [#1099](https://togithub.com/python-attrs/attrs/issues/1099) - Added instructions for pull request workflow to `CONTRIBUTING.md`. [#1105](https://togithub.com/python-attrs/attrs/issues/1105) - Added *type* parameter to `attrs.field()` function for use with `attrs.make_class()`. Please note that type checkers ignore type metadata passed into `make_class()`, but it can be useful if you're wrapping *attrs*. [#1107](https://togithub.com/python-attrs/attrs/issues/1107) - It is now possible for `attrs.evolve()` (and `attr.evolve()`) to change fields named `inst` if the instance is passed as a positional argument. Passing the instance using the `inst` keyword argument is now deprecated and will be removed in, or after, April 2024. [#1117](https://togithub.com/python-attrs/attrs/issues/1117) - `attrs.validators.optional()` now also accepts a tuple of validators (in addition to lists of validators). [#1122](https://togithub.com/python-attrs/attrs/issues/1122)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.