File python-cattrs.changes of Package python-cattrs

-------------------------------------------------------------------
Wed May  7 11:21:09 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>

- Update to 24.1.3
  * Fix structuring of keyword-only dataclass fields when not
    using detailed validation. (#637)
- Refresh support-python-3.13.patch

-------------------------------------------------------------------
Fri Nov 15 14:19:05 UTC 2024 - Yunus Acar <yunus.acar@suse.com>

- add fix-test-no-nans.patch to get the tests to work with the
  latest attrs
- add support-python-3.13.patch to add python-3.13 support

-------------------------------------------------------------------
Mon Oct 28 22:38:02 UTC 2024 - Dirk Müller <dmueller@suse.com>

- update to 24.1.2:
  * Fix {meth}`BaseConverter.register_structure_hook` and
    {meth}`BaseConverter.register_unstructure_hook` type hints.
  * Fix {meth}`BaseConverter.register_structure_hook_factory` and
    {meth}`BaseConverter.register_unstructure_hook_factory` type
    hints.
  * **Potentially breaking**: Unstructuring hooks for
    `typing.Any` are consistent now: values are unstructured
    using their runtime type.
  * Introduce {meth}`BaseConverter.get_structure_hook` and
    {meth}`BaseConverter.get_unstructure_hook` methods.
  * Enhance the {func}`cattrs.cols.is_mapping` predicate function
    to also cover virtual subclasses of `abc.Mapping`.
  * Introduce the _msgspec_ {mod}`preconf converter
    <cattrs.preconf.msgspec>`.
  * Add support for PEP 695 type aliases.
  * Add support for PEP 696 `TypeVar`s with defaults.
  * Add support for named tuples with type metadata
    (`typing.NamedTuple`).
  * Add support for optionally un/unstructuring named tuples
    using dictionaries.
  * PEP 695 generics are now tested.
  * Imports are now sorted using Ruff.
  * Tests are run with the pytest-xdist plugin by default.
  * Rework the introductory parts of the documentation,
    introducing the Basics section.
  * The documentation has been significantly reworked.
  * The docs now use the Inter font.
  * Make type annotations for `include_subclasses` and
    `tagged_union` strategies more lenient.

-------------------------------------------------------------------
Mon Apr  8 10:41:21 UTC 2024 - Dirk Müller <dmueller@suse.com>

- add sle15_python_module_pythons

-------------------------------------------------------------------
Thu Dec 14 09:18:25 UTC 2023 - Petr Gajdos <pgajdos@suse.com>

- 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() <cattrs.v.format_exception>`
    parameter working for recursive calls to
    {py:func}`transform_error <cattrs.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 <cattrs.v.format_exception>`
    and {py:func}`transform_error <cattrs.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'
    <cattrs.preconf.orjson.OrjsonConverter.loads>` type
    definition for the preconf orjson converter.
  * (#400)
  * {py:class}`AttributeValidationNote
    <cattrs.AttributeValidationNote>` and
    {py:class}`IterableValidationNote
    <cattrs.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  8 21:15:51 UTC 2023 - Ben Greiner <code@bnavigator.de>

- Slim down build requirement to poetry-core
- Explicitily require a bunch of test dependencies instead

-------------------------------------------------------------------
Mon Jan 23 04:22:53 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>

- Initial release of 22.2.0.

openSUSE Build Service is sponsored by