Highlight
- Chunk based map serialization
- Highly optimized JavaScript string serialization
Features
- feat(java): ReplaceResolveSerializer deep copy by @zhaommmmomo in #1925
- feat(java): use varint for jdk compatible serializers by @chaokunyang in #1960
- feat(java): configurable buffer size limit by @theigl in #1963
- feat(java): make 4 bytes utf16 size header optional for utf8 encoding by @chaokunyang in #2010
- feat(ci): support building python on windows by @An-DJ in #1885
- feat(java): Chunk by chunk predictive map serialization protocol by @Hen1ng in #1722
- feat(java): support streaming encode/decode to/from buffer for row format by @chaokunyang in #2024
- feat(java): new implementation and protocol refine for chunk based map serialization by @chaokunyang in #2025
- feat(java): jit support for chunk based map serialization by @chaokunyang in #2027
- feat(java): Add basicMultiConfigFury dataprovider and add basic map unit test use the dataProvider by @Hen1ng in #2032
- feat(java): deserialize one pojo into another type by @orisgarno in #2012
- feat(python): chunk based map serialization for python by @chaokunyang in #2038
- feat(java): zstd meta compressor by @orisgarno in #2042
- feat(python): automatic release pyfury on macos and windows by @chaokunyang in #2045
- feat(javascript): optimize string serializer by @theweipeng in #2043
- feat(python): add macos pyfury ci by @chaokunyang in #2041
Bug Fix
- fix(java): Move schema caching to unsafe trait to avoid issues when using non-inferred schema. by @wywen in #1944
- fix(java): ClassLoaderFuryPooled#setFactoryCallback cannot effect old Fury by @MrChang0 in #1946
- fix(java): fix find constructor error in generated serializer class caused by duplicated class classloading for Fury by @chaokunyang in #1948
- fix(c++): fix bazel install by @chaokunyang in #1979
- fix(java): Fix flakiness in ExpressionVisitorTest#testTraverseExpression by @AmitPr in #1968
- fix(java): Fix the issue caused by not using readCompressedBytesString during deserialization when string compression is enabled. by @Aliothmoon in #1991
- fix(java): Compatible mode on de/serialize api failed to deserialize by @orisgarno in #1996
- fix(java): chunk map serialize an error by @Hen1ng in #2030
- fix(python): Fix missing parameters and old API names by @pandalee99 in #2049
- fix(doc): set compressString default value to false by @chaokunyang in #1913
- fix(java): Remove duplicate maven dependency by @Hen1ng in #2044
- fix(java): fix duplicate entry write at max chunk size bound by @chaokunyang in #2040
Other Improvements
- chore(ci): Migrate the ci from macOS 12 to macOS 13 by @penguin-wwy in #1927
- chore(Rust): fix lint problems by @theweipeng in #1962
- docs(java): add object mapping example and tests by @chaokunyang in #1974
- chore(python): drop py3.7 support by @chaokunyang in #1981
- fix(java): only print warn message if scopedMetaShareEnabled is true … by @zhfeng in #1985
- docs: update copyright date in NOTICE by @caicancai in #2029
- docs(java): update java serialization schema compatibility doc by @chaokunyang in #2047
New Contributors
- @theigl made their first contribution in #1963
- @AmitPr made their first contribution in #1968
- @zhfeng made their first contribution in #1985
- @Hen1ng made their first contribution in #1722
Full Changelog: v0.9.0...v0.10.0-rc1