Feature: Pydantic v2 support
Pydantic release v2 of their library a couple days ago, in which they changed the underlying implementation and speed (using Rust) and also a lot of their syntax (https://docs.pydantic.dev/dev-v2/migration/).
This new release implements support for the new pydantic dataclass, and still also supports the old version in case somebody still uses the old one.
Feature: Allow mappings from subunions
It is now possible to map from more restricted Union type to a more relaxed Union type.
E.g. you can map from a `Union[str, int]` to a `Union[str, int, float]` field, as every instance of the first type is necessary also an object of the second type. But not the other way around.
Technical improvement: Code generation
Generating the code for the efficient mapping was painful, and involved dealing with a lot of strings, keeping track of indentations, etc...
This code logic is not abstracted away via some helper classes - kinda like an AST.
Technical improvement: Start of architecture documentation
As the project gets more complicated, a good documentation of the ideas, decisions, etc... of the architecture makes sense. I've started using Arc42 for it: https://dataclass-mapper.readthedocs.io/en/latest/architecture.html