0.14.0-rc.1
Pre-release
Pre-release
This release refactors the implementation for serialization. All serializers now directly implement serde::Serializer instead of a custom trait. There are no breaking changes to the public interface, except for a polish of error messages.
- Performance improvements:
- Avoid unncessary allocations in serialization
- Reserve elements up front
- Improved error reporting in serialization:
- The field and data type is now reported more consistently across builders
- More consistent handling of the serde data model in serialization:
- Tuple variants, tuple structs can be used where tuples could be used
- Treat newtype variants as transparents wrappers
- Struct variants can be used where structs could be used
- Support tuples, tuple, structs, tuple variants, bytes for
FixedSizeList - Allow to serialize sequences for structs, similar to tuples
- Add options to consume the builder
ArrayBuilder::into_arrow,ArrayBuilder::into_record_batch,ArrayBuilder::into_marrowthat avoid additional allocations for metadata