Releases: aloneguid/parquet-dotnet
Releases · aloneguid/parquet-dotnet
4.23.0
New features
- Class serializer now supports fields, in addition to properties (#405).
- New helper class
ParquetToFlatTableConverter
to simplify conversion of parquet files to flat data destinations.
Bugs fixed
- .NET >= 6 specific types
DateOnly
andTimeOnly
deserialization was failing due to schema validation errors (#395). TimeOnly
nullability wasn't respected.- Custom attributes like
[ParquetTimestamp]
,[ParquetMicroSecondsTime]
or[ParquetDecimal]
were ignored for nullable class properties (408).
Floor
- Remembers theme variant - "light" or "dark".
- Ask for permission to send anonymous telemetry data on start.
- New button - reload file from disk.
- Simple conversion to CSV.
- Implemented version check on start.
4.22.1
4.22.0
Improvements
- Added
ParquetSerializer
DeserializeAsync
overloads accepting local file path (#379)
Bug fixes
DataFrameReader
did not handle files with multiple row groups (#365)
Parquet Floor
- Reduced binary size after enabling partial trimming.
byte[]
columns are left-aligned.- Increased data cell top and bottom padding by 2.
4.20.1
4.20.0
4.19.0
Improvements
- Pre-allocate result list capacity when serializing by @Arithmomaniac in #444.
Experimental features
- This release has experimental API for a new "dictionary serializer" (name might change) to get you a taste of the future before row API will be deprecated in a very far future.
- Codebase also includes an experimental cross-platform desktop application written in Avalonia to view parquet files. It's in very early stages but works for basic use cases. Avalonia app was included in the solution because it does not require any IDE add-ons, SDKs and so on and just builds with stock .NET 8 SDK. In the future the app will be pre-built for Linux, Windows (and possibly Mac with community help) and included in the build artifacts.
Looking forward to your thoughts!
4.18.1
4.18.0
This is the next stability improvements release, and a big thanks to everyone who contributed! Without you this project would not be possible.
Please don't forget to star this project on GitHub if you like it, this helps the project grow and motivates the fellow contributors to keep contributing!
Improvements
- Explicitly use invariant culture when encoding number types, eliminating the potential for generating invalid JSON by @rachied in #438.
- Added DeserializeAllAsync in #433 by @Arithmomaniac.
- Added option to reduce flushing of streams during write operation in #432 by @dxdjgl.
- Added explicit target for
.NET 8
by @aloneguid.
Bug fixes
DataFrameMapper
returns incompatibleDataFrameColumn
by @aloneguid (#343).
4.17.0
This is a community bugfix release. As a maintainer I have only approved PRs raised by this wonderful community. Thanks everyone, and keep doing what you do.
Improvements
Bugs fixed
- Gracefully handle malformed fields with trailing bytes in the data by @mukunku in #413.
ParquetSerializer
doesn't support differentJsonPropertyName
andClrPropertyName
on struct fields by @mrinal-thomas in #410.ParquetSerializer
can sometimes fail when populating_typeToAssembler
cache in parallel by @scottfavre in #420/#411.