New
5.5.0
Improvements
- BREAKING: ParquetSerializer deserialization generic methods now constrain the type parameter to
class, new()(previouslynew()only). This explicitly prevents using value types as deserialization targets (#698). TimeSpanDataFieldconstructor has an option to setIsAdjustedToUTC(#650).IAsyncEnumerable<T>is limited to .NET 10 and above now.- Allow reading and writing really large decimal values from Parquet files (larger than 29 significant digits) (#689, #697).
- Column Chunk encodings are populated according to their use rather than being hardcoded (#628).
- Internally, compression/decompression logic has been changed to use managed external packages for Snappy and Zstandard algorithms. IronCompress dependency is now completely removed, because there are decent managed implementations available nowadays. This will also allow to upgrade compression libraries more easily in the future and optimise memory usage. There is a slight memory usage improvement (~5%).