Pyserde

Latest version: v0.15.0

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

Scan your dependencies

Page 1 of 9

0.15.0

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
Bug fixes
* prefer `is_bearable` to `isinstance` by rtbs-dev in https://github.com/yukinarit/pyserde/pull/485
Breaking changes
* Don't implement beartype for dataclass without serde by yukinarit in https://github.com/yukinarit/pyserde/pull/487
Build
* Create dependabot.yml by yukinarit in https://github.com/yukinarit/pyserde/pull/488
* Update dependabot.yml by yukinarit in https://github.com/yukinarit/pyserde/pull/489
* Bump codecov/codecov-action from 3 to 4 by dependabot in https://github.com/yukinarit/pyserde/pull/491
* Update pytest-xdist requirement from ^2.3.0 to ^3.5.0 by dependabot in https://github.com/yukinarit/pyserde/pull/493
* Update mypy requirement from ==1.8.0 to ==1.9.0 by dependabot in https://github.com/yukinarit/pyserde/pull/495
* Update more-itertools requirement from ~=8.6.0 to ~=10.2.0 by dependabot in https://github.com/yukinarit/pyserde/pull/496
* Update pre-commit requirement from ==v2.10.1 to ==v3.5.0 by dependabot in https://github.com/yukinarit/pyserde/pull/494
* Bump thollander/actions-comment-pull-request from 1.0.2 to 2.5.0 by dependabot in https://github.com/yukinarit/pyserde/pull/490
Test
* Fix mypy type errors in tests by yukinarit in https://github.com/yukinarit/pyserde/pull/497

New Contributors
* dependabot made their first contribution in https://github.com/yukinarit/pyserde/pull/491
* rtbs-dev made their first contribution in https://github.com/yukinarit/pyserde/pull/485

**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.14.2...v0.15.0

0.14.2

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
Bug fixes
* Fix reuse_instances for non dataclass objects by yukinarit in https://github.com/yukinarit/pyserde/pull/486


**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.14.1...v0.14.2

0.14.1

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
New features
* skip conversion if the object is already the correct type by uyha in https://github.com/yukinarit/pyserde/pull/482
Documentation
* Fix syntax error in type-check.md by nicoddemus in https://github.com/yukinarit/pyserde/pull/479

New Contributors
* uyha made their first contribution in https://github.com/yukinarit/pyserde/pull/482

**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.14.0...v0.14.1

0.14.0

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
Breaking changes
* pyserde is powered by beartype by yukinarit in https://github.com/yukinarit/pyserde/pull/476

pyserde's strict type check system is overhauled by using [beartype](https://github.com/beartype/beartype) - O(1) runtime type checker. all pyserde classes now implicitly implement `beartype` decorator by default. Passing wrong type of values in constructor raises beartype's validation error.

python
serde
class Foo:
s: str


If you call `Foo` with wrong type of object, beartype validation error is raised.
python
>>> foo = Foo(10)
beartype.roar.BeartypeCallHintParamViolation: Method __main__.Foo.__init__()
parameter s=10 violates type hint <class 'str'>, as int 10 not instance of str.


If you deserialize with wrong value, serde error is raised.
python
>>> print(from_json(Foo, '{"s": 10}'))
serde.compat.SerdeError: Method __main__.Foo.__init__()
parameter s=10 violates type hint <class 'str'>, as int 10 not instance of str.


If you want to disable type check, set either `serde.disabled` or `serde.coerce` in `type_check` class attribute.
python
from serde import serde, disabled

serde(type_check=disabled)
class Foo:
s: str


See https://yukinarit.github.io/pyserde/guide/en/type-check.html for more information.

**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.13.2...v0.14.0

0.13.2

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
New features
* Allow bytes in from_json typing by davetapley in https://github.com/yukinarit/pyserde/pull/471
CI
* Update actions by yukinarit in https://github.com/yukinarit/pyserde/pull/473

New Contributors
* davetapley made their first contribution in https://github.com/yukinarit/pyserde/pull/471

**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.13.1...v0.13.2

0.13.1

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
Build
* Update pdoc to v14 by yukinarit in https://github.com/yukinarit/pyserde/pull/463
* Pin version of plum-dispatch as v2.3 breaks custom class serializer by yukinarit in https://github.com/yukinarit/pyserde/pull/470
Refactoring
* Fix more mypy type errors by yukinarit in https://github.com/yukinarit/pyserde/pull/465
Documentation
* Mention about pyserde-timedelta in README.md by yukinarit in https://github.com/yukinarit/pyserde/pull/461


**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.13.0...v0.13.1

Page 1 of 9

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.