Merge pull request 'Serializer: filter None fields, to avoid conflicts with nix module system' (#1880) from hsjobeki/clan-core:hsjobeki-serde into main

This commit is contained in:
clan-bot
2024-08-13 17:36:01 +00:00
2 changed files with 22 additions and 1 deletions

View File

@@ -68,7 +68,8 @@ def dataclass_to_dict(obj: Any, *, use_alias: bool = True) -> Any:
field.metadata.get("alias", field.name) if use_alias else field.name
): _to_dict(getattr(obj, field.name))
for field in fields(obj)
if not field.name.startswith("_") # type: ignore
if not field.name.startswith("_")
and getattr(obj, field.name) is not None # type: ignore
}
elif isinstance(obj, list | tuple):
return [_to_dict(item) for item in obj]