Commit 0edb39e
Rares Polenciuc
feat: add extended types serializer with hybrid approach
Implement ExtendedTypesSerDes with smart serialization strategy:
plain JSON for primitives/simple lists, extended format for complex
types. Maintains backward compatibility while optimizing common cases.
- Plain JSON for primitives (str, int, float, bool, None)
- Plain JSON for simple lists containing only primitives
- Extended format for complex types (datetime, Decimal, UUID, etc.)
- Support datetime/date with ISO format encoding
- Handle Decimal with string representation
- Support bytes/bytearray/memoryview with base64 encoding
- Add UUID serialization with string format
- Implement tuple/list/dict/set container handling
- Decorator-based type registration system
- Circular reference detection with detailed error paths
- Auto-detects format on deserialization1 parent 6beb550 commit 0edb39e
2 files changed
Lines changed: 1174 additions & 26 deletions
0 commit comments