Changelog for
python312-cattrs-23.2.3-2.1.noarch.rpm :
* Mon Apr 08 2024 Dirk Müller
- add sle15_python_module_pythons
* Thu Dec 14 2023 Petr Gajdos - update to 23.2.3:
* Fix a regression when unstructuring dictionary values typed as `Any`.
* (#453 #462)
* Fix a regression when unstructuring unspecialized generic classes.
* (#465 #466)
* Optimize function source code caching.
* (#445 #464)
* Generate unique files only in case of linecache enabled.
* (#445 #441)
* ## 23.2.2 (2023-11-21)
* Fix a regression when unstructuring `Any | None`.
* (#453 #454)
* ## 23.2.1 (2023-11-18)
* Fix unnecessary `typing_extensions` import on Python 3.11.
* (#446 #447)
* ## 23.2.0 (2023-11-17)
*
*
*Potentially breaking
*
*: skip _attrs_ fields marked as `init=False` by default. This change is potentially breaking for unstructuring.
* See here for instructions on how to restore the old behavior.
* (#40 #395)
*
*
*Potentially breaking
*
*: {py:func}`cattrs.gen.make_dict_structure_fn` and {py:func}`cattrs.gen.typeddicts.make_dict_structure_fn` will use the values for the `detailed_validation` and `forbid_extra_keys` parameters from the given converter by default now.
* If you\'re using these functions directly, the old behavior can be restored by passing in the desired values directly.
* (#410 #411)
*
*
*Potentially breaking
*
*: The default union structuring strategy will also use fields annotated as `typing.Literal` to help guide structuring.
* See here for instructions on how to restore the old behavior.
* (#391)
* Python 3.12 is now supported. Python 3.7 is no longer supported; use older releases there.
* (#424)
* Implement the `union passthrough` strategy, enabling much richer union handling for preconfigured converters. Learn more here.
* Introduce the `use_class_methods` strategy. Learn more here.
* (#405)
* The `omit` parameter of {py:func}`cattrs.override` is now of type `bool | None` (from `bool`).
* `None` is the new default and means to apply default _cattrs_ handling to the attribute, which is to omit the attribute if it\'s marked as `init=False`, and keep it otherwise.
* Converters can now be initialized with custom fallback hook factories for un/structuring.
* (#331 #441)
* Add support for `date` to preconfigured converters.
* (#420)
* Add support for `datetime.date`s to the PyYAML preconfigured converter.
* (#393)
* Fix {py:func}`format_exception() ` parameter working for recursive calls to {py:func}`transform_error `.
* (#389)
* _attrs_ aliases are now supported, although aliased fields still map to their attribute name instead of their alias by default when un/structuring.
* (#322 #391)
* Fix TypedDicts with periods in their field names.
* (#376 #377)
* Optimize and improve unstructuring of `Optional` (unions of one type and `None`).
* (#380 #381)
* Fix {py:func}`format_exception ` and {py:func}`transform_error ` type annotations.
* Improve the implementation of `cattrs._compat.is_typeddict`. The implementation is now simpler, and relies on fewer private implementation details from `typing` and typing_extensions.
* (#384)
* Improve handling of TypedDicts with forward references.
* Speed up generated _attrs_ and TypedDict structuring functions by changing their signature slightly.
* (#388)
* Fix copying of converters with function hooks.
* (#398 #399)
* Broaden {py:func}`loads\' ` type definition for the preconf orjson converter.
* (#400)
* {py:class}`AttributeValidationNote ` and {py:class}`IterableValidationNote ` are now picklable.
* (#408)
* Fix structuring `Final` lists.
* (#412)
* Fix certain cases of structuring `Annotated` types.
* (#418)
* Fix the tagged union strategy to work with `forbid_extra_keys`.
* (#402 #443)
* Use PDM instead of Poetry.
* _cattrs_ is now linted with Ruff.
* Remove some unused lines in the unstructuring code.
* (#416)
* Fix handling classes inheriting from non-generic protocols.
* (#374 #436)
* The documentation Makefile now supports the `htmlview` and `htmllive` targets. (#442)
* _cattrs_ is now published using PyPI Trusted Publishers, and `main` branch commits are automatically deployed to Test PyPI.
* ## 23.1.2 (2023-06-02)
* Improve `typing_extensions` version bound. (#372)
* ## 23.1.1 (2023-05-30)
* Add `typing_extensions` as a direct dependency on 3.10.
* (#369 #370)
* ## 23.1.0 (2023-05-30)
* Introduce the `tagged_union` strategy.
* (#318 #317)
* Introduce the `cattrs.transform_error` helper function for formatting validation exceptions. (258 342)
* Add support for `typing.TypedDict` and `typing_extensions.TypedDict`.
* (#296 #364)
* Add support for `typing.Final`.
* (#340 #349)
* Introduce `override.struct_hook` and `override.unstruct_hook`. Learn more here.
* (#326)
* Fix generating structuring functions for types with angle brackets (`<>`) and pipe symbols (`|`) in the name.
* (#319 #327)
* `pathlib.Path` is now supported by default.
* (#81)
* Add `cbor2` serialization library to the `cattrs.preconf` package.
* Add optional dependencies for `cattrs.preconf` third-party libraries. (#337)
* All preconf converters now allow overriding the default `unstruct_collection_overrides` in `make_converter`.
* (#350 #353)
* Subclasses structuring and unstructuring is now supported via a custom `include_subclasses` strategy.
* (#312)
* Add support for `typing_extensions.Annotated` when the python version is less than `3.9`. (#366)
* Add unstructuring and structuring support for the standard library `deque`.
* (#355)
* Mon May 08 2023 Ben Greiner - Slim down build requirement to poetry-core- Explicitily require a bunch of test dependencies instead
* Mon Jan 23 2023 Steve Kowalik - Initial release of 22.2.0.