Better handle enums including in pydantic BaseModels
[v0.2.2] - 2025-06-26
๐ New Features
Generic Pydantic Models: Comprehensive support for generic models with type parameters (Container[T], KeyValueStore[K, V], etc.) with enhanced class registry that automatically handles generic type resolution and fallback to base classes
Cross-Platform DateTime: Enhanced datetime encoding with 4-digit year formatting for better cross-platform compatibility
๐ New Examples
ex_15_pydantic_subclass_polymorphism.py: Demonstrates polymorphic APIs, plugin architectures, and mixed collections with preserved subclass types
ex_16_generic_models.py: Showcases single/multiple type parameters, nested generics, and bounded generic types
๐๏ธ Core Improvements
Automatic Metadata Handling: Built-in encoders now automatically receive __class__ and __module__ metadata, simplifying custom encoder implementation
Generic Type Resolution: JSON decoder now handles generic class names by intelligently falling back to base classes
Timezone Support: Fixed missing timezone encoder/decoder registration for ZoneInfo objects
Simplified Encoders: Removed manual metadata from built-in encoders (datetime, date, time, timedelta, timezone)
๐ Documentation
Expanded README: Added compatibility matrix, migration guide, architecture overview, and comprehensive use cases
Enhanced API Docs: Updated encoder/decoder documentation with automatic metadata handling examples
Examples Documentation: New detailed examples with polymorphism and generic models patterns
๐งช Testing
Integration Tests: Added comprehensive test suites for generic models and subclass polymorphism
DateTime Tests: Enhanced datetime/timezone round-trip testing with edge cases and complex structures
Class Registry Tests: Improved test coverage for dynamic class scenarios
[v0.2.1] - 2025-06-24
Added the last missing example & doc: using the class registry to handle dynamic classes from distributed systems and runtime generation
Fixed markdown of overview docs
[v0.2.0] - 2025-06-23
Test coverage 100%
New integration tests
New examples in examples/ directory, used as e2e tests