Releases: aloneguid/parquet-dotnet
4.16.3
4.16.2
Critical Bug Fix in DELTA_BINARY_PACKED Decoding: Adding first value to destination array before reading the block, by @ee-naveen in #391.
4.16.1
Critical Bug Fixes
- Ensuring delta encoding footer blocks are complete And Handle Overflow by @ee-naveen in #387.
- Use PLAIN encoding for columns without defined data by @spanglerco in #388.
4.16.0
New
- Markdown documentation fully migrated to GitHub Pages. It was becoming slightly unmanageable and also recent GitHub updates made markdown files look awful. Also I kind of wanted to try Writerside by JetBrains, and publish docs with pride ;) @aloneguid
- Class deserializer will now skip class properties and not throw an exception if they are missing in the source parquet file. Thanks to @greenlynx in #361.
- Column statistics can be read with zero cost without reading the data. Thanks to @mirosuav in #252, #368.
- Support for
DELTA_BINARY_PACKED
encoding on write. This encoding is now default when writingINT32
andINT64
columns. Most of the work done by @ee-naveen in #382.
Improvements
- IronCompress was updated to v1.5.1 by @aloneguid.
Fixes
- Fix precision issues writing
DateTime
as milliseconds by @spanglerco in #312. - In
DataColumnWriter
,RecycableMemoryStream
wasn't used in a particular case, and insteadMemoryStream
was initialized directly. Thanks to @itayfisz in #373. - Bitpacked Hybrid decoder was failing on columns containing exactly one value.
4.15.0
Bugs Fixed
New Stuff
- You can force optionality of a schema field using the
[ParquetRequired]
attribute. ParquetSerializer
validates class schema against actual file schema on deserialization and throws a helpful exception, likeSystem.IO.InvalidDataException : property 'Id' is declared as Id (System.String?) but source data has it as Id (System.String)
(you can spot the difference in nullability here).
4.14.0
-
Added support for reading legacy array primitives collection serialized via legacy
ParquetConvert
class or some other legacy system, thanks to @PablitoCBR. This work was effectively taken from his PR and integrated more natively into this library. Thank you very much! -
Fixed deserializing parquet generated by Azure Data Explorer non-native writer by @mcbos in #357.
-
re-worked build pipeline to separate build and release stage.
-
use handcrafted release notes file and cut out last version notes with
grep
/head
/tail
on release. This is in order to improve release notes experience as autogenerated ones are often of sub-par quality.
4.13.0
What's Changed
- Add support for deserializing required strings by @mcbos in #341
- Add support to .NET 6 TimeOnly type by @ramon-garcia in #352
- Support for reading and writing column chunk metadata by @aloneguid in #354
Full Changelog: 4.12.0...4.13.0
4.12.0
What's Changed
- Support of DateOnly type in UntypedArrayExtensions by @ramon-garcia in #338
- RLE/Hybrid encoder is up to 18 times faster by @aloneguid in #339
New Contributors
- @ramon-garcia made their first contribution in #338
Full Changelog: 4.11.3...4.12.0
4.11.3
What's Changed
Full Changelog: 4.11.2...4.11.3
4.11.2
What's Changed
- Added deserialization by rowGroupIndex by @mcbos in #330
- support for serialisation of nullable guids by @aloneguid in #332
New Contributors
Full Changelog: 4.11.1...4.11.2