Log Message: |
AVRO-1767: Fall back to unwrapped union values. Contributed by Matthieu Monsch.
Previously, union wrapping during `type.clone` calls would be done in
place of normal copy. Now it is done as a backup if a normal copy fails.
This is more consistent with the documentation, and makes it much
simpler to wrap nested unions.
Other changes:
+ Add an optional argument to `type.getName` to expose built-in type
names (useful to implement an "optional" logical type for example).
+ Document (and rename) `assertLogicalTypes` parsing option.
+ Tweak logical type validity check, enabling error hooks to work even
when a logical type is valid for a subset of its underlying type's
values (e.g. when defining an "even integer" type). Previously the
path would have been correct but the type would have been that of the
underlying one.
|