Example:
from dataclasses import dataclass, field
from databind.core import SerializeDefaults
from databind.json import dump
from typing import Annotated
@dataclass
class Metadata:
name: str
namespace: Annotated[str, SerializeDefaults(False)] = ''
labels: dict[str, str] = field(default_factory=dict)
annotations: dict[str, str] = field(default_factory=dict)
print(dump(Metadata(name="a"), Metadata)) # {'name': 'a', 'namespace': '', 'labels': {}, 'annotations': {}}
Expected output:
{'name': 'a', 'labels': {}, 'annotations': {}}