Pyserde

Latest version: v0.23.0

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

Scan your dependencies

Page 8 of 12

0.10.1

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

What's Changed
Bug fixes
* Fix variable length of tuple by yukinarit in https://github.com/yukinarit/pyserde/pull/321


**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.10.0...v0.10.1

0.10.0

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

What's Changed
New features

pyserde can (de)serialize dataclasses without `serde` since v0.10.0. This feature is convenient when you want to use classes declared in external libraries or a type checker doesn't work with `serde` decorator. See [this example](https://github.com/yukinarit/pyserde/blob/main/examples/plain_dataclass.py). Thanks Kobzol!

python
dataclass
class Foo:
i: int
s: str
f: float
b: bool


f = Foo(i=10, s='foo', f=100.0, b=True)
print(f"Into Json: {to_json(f)}")

s = '{"i": 10, "s": "foo", "f": 100.0, "b": true}'
print(f"From Json: {from_json(Foo, s)}")


* Generate serialization/deserialization code for dataclasses not marked with serde by Kobzol in https://github.com/yukinarit/pyserde/pull/312
* Use default options for unmarked dataclass code generation by Kobzol in https://github.com/yukinarit/pyserde/pull/314
* Allow serializing and deserializing root dataclasses by Kobzol in https://github.com/yukinarit/pyserde/pull/315
Bug fixes
* Fix deserialization with NewType and Untagged Union by yukinarit in https://github.com/yukinarit/pyserde/pull/313
CI
* Set commit author and title for commits in gh-pages by yukinarit in https://github.com/yukinarit/pyserde/pull/316
Documentation
* Migrate to Github's changelog by yukinarit in https://github.com/yukinarit/pyserde/pull/311
* Update contributors by yukinarit in https://github.com/yukinarit/pyserde/pull/317
* Document (de)serializing dataclasses without serde by yukinarit in https://github.com/yukinarit/pyserde/pull/319

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

**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.9.8...v0.10.0

0.9.8

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

What's Changed
New features
* feat: Support optional ClassVar serialization by yukinarit in https://github.com/yukinarit/pyserde/pull/303
CI
* Add .github/release.yml by yukinarit in https://github.com/yukinarit/pyserde/pull/304
* Update CI scripts by yukinarit in https://github.com/yukinarit/pyserde/pull/305
* Upgrade to setup-pythonv4 and enable caching by yukinarit in https://github.com/yukinarit/pyserde/pull/306
* Upgrade codecov-action to v3 by yukinarit in https://github.com/yukinarit/pyserde/pull/307
* Publish with Github Actions by yukinarit in https://github.com/yukinarit/pyserde/pull/310
Other changes
* Bump to 0.9.7 by yukinarit in https://github.com/yukinarit/pyserde/pull/295
* style: Fix styles and reformat code by yukinarit in https://github.com/yukinarit/pyserde/pull/299
* chore: Rename branch from master to main by yukinarit in https://github.com/yukinarit/pyserde/pull/300


**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.9.7...v0.9.8

0.9.7

A bug for optional unions was fixed, Thanks [soaxelbrooke](https://github.com/soaxelbrooke)!
python
serde
dataclass(frozen=True)
class Bar:
request: Optional[Union[str, int]]


* docs: add soaxelbrooke as a contributor ([063e705](https://github.com/yukinarit/pyserde/commit/063e705))
* Add support for optional unions ([075949b](https://github.com/yukinarit/pyserde/commit/075949b))
* Add typing-utils for compatibility with python ver < 3.8 ([620b9f6](https://github.com/yukinarit/pyserde/commit/620b9f6))
* Rely on compay.get_args instead of adding dependency ([d93f894](https://github.com/yukinarit/pyserde/commit/d93f894))

0.9.6

* Recursive dataclasses are supported in [290](https://github.com/yukinarit/pyserde/pull/290)
python
dataclass
class Recur:
f: Optional['Recur']

serde(Recur)

* `typing.FrozenSet` and `typing.DefaultDict` are supported in [285](https://github.com/yukinarit/pyserde/pull/285),[#286](https://github.com/yukinarit/pyserde/pull/286)
python
serde
dataclass
class Foo:
a: FrozenSet[int]
b: DefaultDict[str, List[int]]

* Pickle serializer and deserializer support is added in [284](https://github.com/yukinarit/pyserde/pull/284). Thanks [DoeringChristian](https://github.com/DoeringChristian)!


**Full Changelog**: https://github.com/yukinarit/pyserde/compare/v0.9.5...v0.9.6

0.9.5

alias` field attribute was implemented.

python
serde
dataclass
class Foo:
a: int = field(alias=["b", "c", "d"])


* feat: Implement alias ([36cbc6e](https://github.com/yukinarit/pyserde/commit/36cbc6e))
* test: Add InitVar and ClassVar examples ([f5171fa](https://github.com/yukinarit/pyserde/commit/f5171fa))
* build: Add python 3.11 to pyproject.toml ([4ea7504](https://github.com/yukinarit/pyserde/commit/4ea7504))

Page 8 of 12

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.