- Add opt-in physical row index symbol to object rows (#176)
- Add default exports to package.json for compatibility with CJS resolvers (#174)
- Defer parquetScan column planning until a column is read
- Add parquetScan for lazy physical column scans (#172)
- Never match null values against range filters
- Fix $nin filters when comparing Date values
- Support $in filters on array values (#171)
- Coalesce page index fetches into fewer byte range requests
- Add usePageIndex option for page-level filter pushdown (#169)
- Fix filtering on null and NaN row-group matches
- Fix nested child column alignment by absolute row offsets
- Compare date statistics by timestamp
- Fix metadata decode of unsigned and decimal bounds
- Fix node file slices (should be end-exclusive)
- Custom jsonFromBytes parser option
- Fix UUID statistics decode (#166)
- Bloom filter support (#165)
- Fix unhandled rejections (#164)
- Fix shredded sparse timestamp
- Fix shredded variant type mismatch
- Fix struct assembly with skips
- Fix polars missing dictionary_page_offset (#160)
- Convert UUID logical type to string using custom parser
- Fix include dictionary when reading with offset index (#158 thanks @tomquist)
- Don't fetch offset index when reading entire rowgroup
- Fix type exports for submodules
- Fix nullable UINT types
- Support dot-notation for filtering on nested struct fields (#153)
- Fix handling of null definition levels (#150)
- Variant support (#149)
- Fix
readColumntruncation in struct columns (#148)
- Add option
useOffsetIndexto control use of offset index for page filtering (#146)
- Add option
filterStrictto control strictness of filter equality (#145) - Apply
filternot just best-effort - Combine runs of smaller column chunks when prefetching
- Replace
columnName: stringwithpathInSchema: string[]inonPagecallback (#144)
- Fix
BYTE_STREAM_SPLITwith data page v2 and compression
- Rename constants to plural, and remove LogicalTypeType
- Add bigint to
ParquetQueryValuetype
- Adds optional
filterparameter for pushdown row group filtering (#141)
- Fix extra fetch on the boundary of row groups
- Support S3 presigned URLs in
asyncBufferFromUrl(#137 thanks @EpsilonPrime)
- Update geospatial and variant metadata
- Mark geospatial columns in GeoParquet with geometry or geography data type (#133)
- Add
geoparquetoption to opt out marking GeoParquet columns (#133)
- Parse geometry and geography data types to geojson geometry objects (#131)
- Fix geospatial metadata parsing
- Custom
stringFromBytesparser option (#129)
- Refine
onCompletetypes forrowFormat: 'array'androwFormat: 'object'(#120) - Only object format for
parquetReadObjectsandparquetQuery(#120) - Parquet
__index__column overridesparquetQueryindex annotation (#120)
- Export
readColumnIndexandreadOffsetIndex(#122)
- Fix early page termination for non-flat columns (#119)
- Fix a bug in parquetQuery, when rowFormat is 'array' (#118 thanks @severo)
- Revert "Fix onComplete return type (#104)" (#117)
- Fix high-precision decimal parsing (#116)
- Fix onComplete return type (#104 thanks @supermar1010)
- Fix circular import (#111)
- Export
ParquetQueryFiltertype (#105) - Remove a circular dependency (#108)
- Fix zero row file (#98 thanks @kroche98)
- Require explicit
$eqoperator forparquetQueryfilters.
- Fix readRleBitPackedHybrid when length is zero
- Fix duckdb empty block
- New
parsersoption for custom date parsing. - Breaking change: parquetMetadataAsync moved initialFetchSize into an options object.
- Change packaging to have node-specific exports for
asyncBufferFromFile(#80).
- Refactor to use
AsyncRowGroupandAsyncColumnabstractions for better performance and flexibility (#83).
- Fix page continuation (#81 thanks @jpivarski).
- Fast parquetQuery filter (#78)
- parquetSchema more generic argument type.
- Convert logical type 'STRING'.
- Side-effect-free in package.json.
- Fix duckdb delta encoding (#77 thanks @mike-iqmo).
- Throw exception for unsupported file_path.
- Query planner: pre-fetch byte ranges in parallel (#75).
- Fix conversion of unsigned types.
- Allow passing a custom fetch function to utilities (#73).
- Add
onPagecallback toparquetRead.
- Fix handling of dictionary pages from parquet.net.
- Fix continued data pages
- Skip decoding unnecessary pages.
- Add type definitions for thrift.
- Internal refactor split out
readPagefunction.
- Export additional internal constants.
- Fix parsing of
crypto_metadatain thrift.
- Map
srcfiles to TypeScript types via package exports (#70). - Use
defaultInitialFetchSizefor both metadata andcachedAsyncBuffer.
- Add
minSizeparameter tocachedAsyncBufferfor finer control. - Return typed arrays in
onChunkcallbacks. - Change
readColumnto return an array ofDecodedArray(#67).
- Support endpoints without range requests in
asyncBufferFromUrl(#57 thanks @swlynch99). - Enhance error messages for common parsing issues.
- Mongo-style
filteroption inparquetQuery(#56 thanks @park-brian).
- Enable
readColumnto read all rows (#53 thanks @park-brian). - Validate url in
asyncBufferFromUrl.
- Fix timestamp conversion in metadata parsing (#45 thanks @cbardasano).
- Build TypeScript types before publishing to npm.
- Export
cachedAsyncBufferutility.
- Add
parquetQuerywithorderByoption.
- Promisify
parquetReadObjectsfunction. - Add support for parsing column and offset indexes (#29).
- Return columns in the requested order (#27 thanks @cstranstrum).
- Add option to return each row as an object keyed by column names (#25 thanks @cstranstrum).
- Export
asyncBufferFromFileandasyncBufferFromUrlutilities.
- Initial stable release.