Djangorestframework-dataclasses

Latest version: v1.3.1

Safety actively analyzes 630130 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

0.10

------------------
Features & fixes:

* Fix ``EnumField`` compatibility with drf-yasg.

0.9

------------------
Breaking changes:

* The serializer field for dataclass fields that have a default value or default value factory, are now marked as
optional (``required=False``).
* Marking dataclass fields with ``typing.Optional`` no longer causes the serializer fields to be optional (they will
still be marked as nullable). In previous versions these fields would be optional, which broke if a field had no
default value. Due to the previous change, the common case of fields marked with ``typing.Optional`` that had ``None``
as a default value have no change in behaviour.
* Drop support for generic ``typing.Final`` type hints (without the type specified), as ``typing.Final`` was never
supposed to be used in this way, and Python 3.10 will drop support for it.

Features & fixes:

* Support overriding serializer for a nested dataclass using ``serializer_field_mapping``.
* Support overriding serializer for all nested dataclasses using ``serializer_dataclass_field`` property.
* Support partial updates of nested dataclasses.
* Support bound type variables.
* Support field generation for enumerations.
* Support specifying serializer field configuration in dataclass field metadata.
* Fix value for non-specified optional fields in validated_data on serializers with ``many=True``.

0.8

--------------------
Breaking changes:

* The ``validated_data`` representation no longer contains the ``rest_framework.fields.empty`` sentinel value for
unsupplied fields. This reverts the breaking change from v0.7.

Features & fixes:

* Don't install tests into distributed packages.

0.7

--------------------
Breaking changes:

* The ``validated_data`` representation now contains the ``rest_framework.fields.empty`` sentinel value for fields where
no value was provided, instead of the default of the dataclass field. The value returned by ``save()`` is unchanged.
This was necessary to support partial updates.

Features & fixes:

* Improved Python 3.9 compatibility.
* Support partial updates.
* Support standard collection generics (PEP 585).
* Support non-generic ``list`` and ``dict`` typehints.
* Support final fields (PEP 591).
* Support auto-generation for list or dictionaries of Any or variable type.
* Set default ``max_digits`` and ``decimal_places`` for ``DecimalField``.
* Improved error message when automatic field type deduction fails.

0.6

------------------
* Rewrite to ``save()`` implementation to finally fix all issues with nested serializers.
* Fix deserialization for fields using ``source`` option.
* Fix explicit specification of a method in the ``fields`` option.

0.5

------------------
* Make optional fields on the dataclass optional on the serializer as well.
* Fix (de-)serialization of dataclass lists specified with ``many=True``.
* Fix deserialization of nullable nested dataclasses.
* Raise error when field is both declared and is present in ``extra_kwargs``.
* Raise error when non-existing fields are included in ``fields`` option.
* Minor performance improvements.

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.