@gscdump/engine 3.2.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/LICENSE +21 -0
  2. package/dist/THIRD-PARTY-LICENSES.md +2 -2
  3. package/dist/adapters/hyparquet.d.mts +2 -2
  4. package/dist/adapters/hyparquet.mjs +2 -2
  5. package/dist/iceberg/catalog.d.mts +2 -2
  6. package/dist/iceberg/catalog.mjs +2 -2
  7. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/assemble.mjs +3 -0
  8. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/bloom.mjs +14 -0
  9. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/column.mjs +8 -0
  10. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/convert.mjs +3 -0
  11. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/datapage.mjs +6 -0
  12. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/delta.mjs +2 -0
  13. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/encoding.mjs +2 -0
  14. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/filter.mjs +4 -0
  15. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/index.mjs +8 -0
  16. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/indexes.mjs +5 -0
  17. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/metadata.mjs +7 -0
  18. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/node.mjs +2 -0
  19. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/plan.mjs +6 -0
  20. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/read.mjs +7 -0
  21. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/rowgroup.mjs +7 -0
  22. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/scan.mjs +6 -0
  23. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/types.d.mts +9 -0
  24. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/utils.mjs +2 -0
  25. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/src/variant.mjs +3 -0
  26. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/types/index.d.mts +10 -0
  27. package/dist/node_modules/.pnpm/hyparquet@1.29.1/node_modules/hyparquet/types/node.d.mts +3 -0
  28. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/index.mjs +1 -0
  29. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/plan.mjs +115 -87
  30. package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/query.mjs +3 -0
  31. package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/read.mjs +78 -0
  32. package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/scan.mjs +74 -0
  33. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/types.d.mts +1 -9
  34. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/types/index.d.mts +7 -3
  35. package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/node.d.mts +3 -0
  36. package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/scan.d.mts +1 -0
  37. package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/utils.d.mts +1 -0
  38. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/avro/avro.read.mjs +1 -1
  39. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/fetch.mjs +1 -1
  40. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/index.mjs +1 -1
  41. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/read.mjs +11 -0
  42. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/sql/icebergDataSource.mjs +1 -1
  43. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/sql/icebergQuery.mjs +1 -1
  44. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/types.d.mts +2 -2
  45. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/rewrite.mjs +3 -0
  46. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/create.d.mts +1 -0
  47. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/fetch.d.mts +2 -0
  48. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/types/index.d.mts +1 -1
  49. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/manifest.d.mts +1 -0
  50. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/metadata.d.mts +1 -0
  51. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/read.d.mts +3 -0
  52. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/s3.d.mts +1 -0
  53. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/sql/icebergDataSource.d.mts +2 -0
  54. package/dist/node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/sql/icebergQuery.d.mts +2 -0
  55. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/ast.d.mts +1 -0
  56. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/backend/batchAdapters.mjs +3 -0
  57. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/aggregates.mjs +2 -1
  58. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/execute/batchResults.mjs +3 -0
  59. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/execute/batches.mjs +4 -0
  60. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/execute.mjs +7 -1
  61. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/execute/rowScope.mjs +2 -0
  62. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/execute/scanColumn.mjs +1 -0
  63. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/streamingAggregate.mjs +4 -1
  64. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/execute/utils.mjs +2 -0
  65. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/expression/alias.mjs +1 -0
  66. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/expression/batch.mjs +10 -0
  67. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/expression/binary.mjs +2 -0
  68. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/expression/date.mjs +1 -0
  69. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/expression/evaluate.mjs +4 -3
  70. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/expression/math.mjs +1 -0
  71. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/expression/scalar.mjs +4 -0
  72. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/index.mjs +2 -0
  73. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/parse/extractTables.mjs +1 -0
  74. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/plan/columns.mjs +1 -0
  75. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/spatial/wkt.mjs +1 -0
  76. package/dist/node_modules/.pnpm/squirreling@0.16.2/node_modules/squirreling/src/validation/keywords.mjs +1 -0
  77. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/validation/tables.mjs +1 -0
  78. package/dist/storage.d.mts +2 -2
  79. package/dist/vendor/hysnappy-purejs.mjs +1 -1
  80. package/package.json +9 -9
  81. package/dist/node_modules/.pnpm/hyparquet@1.28.2/node_modules/hyparquet/src/read.mjs +0 -128
  82. package/dist/node_modules/.pnpm/hyparquet@1.28.2/node_modules/hyparquet/types/node.d.mts +0 -3
  83. package/dist/node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/read.mjs +0 -9
  84. package/dist/node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/read.d.mts +0 -2
  85. package/dist/node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/sql/icebergDataSource.d.mts +0 -2
  86. package/dist/node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/sql/icebergQuery.d.mts +0 -2
  87. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/avro/avro.metadata.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/constants.mjs} +0 -0
  88. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/catalog/file.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/geoparquet.mjs} +0 -0
  89. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/puffin/roaring.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/plain.mjs} +0 -0
  90. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.1}/node_modules/hyparquet/src/query.mjs +0 -0
  91. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/sql/whereFilter.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/schema.mjs} +0 -0
  92. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/write/geospatial.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/snappy.mjs} +0 -0
  93. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/backend/dataSource.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/thrift.mjs} +0 -0
  94. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/execute/scanColumn.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/wkb.mjs} +0 -0
  95. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/execute/utils.mjs → hyparquet@1.29.1/node_modules/hyparquet/src/xxhash.mjs} +0 -0
  96. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.1}/node_modules/hyparquet/types/indexes.d.mts +0 -0
  97. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.1}/node_modules/hyparquet/types/metadata.d.mts +0 -0
  98. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.1}/node_modules/hyparquet/types/query.d.mts +0 -0
  99. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.1}/node_modules/hyparquet/types/read.d.mts +0 -0
  100. package/dist/node_modules/.pnpm/{hyparquet@1.28.2/node_modules/hyparquet/types/utils.d.mts → hyparquet@1.29.1/node_modules/hyparquet/types/scan.d.mts} +0 -0
  101. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.1}/node_modules/hyparquet/types/snappy.d.mts +0 -0
  102. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/create.d.mts → hyparquet@1.29.1/node_modules/hyparquet/types/utils.d.mts} +0 -0
  103. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/assemble.mjs +0 -0
  104. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/bloom.mjs +0 -0
  105. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/column.mjs +0 -0
  106. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/constants.mjs +0 -0
  107. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/convert.mjs +0 -0
  108. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/datapage.mjs +0 -0
  109. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/delta.mjs +0 -0
  110. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/encoding.mjs +0 -0
  111. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/filter.mjs +0 -0
  112. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/geoparquet.mjs +0 -0
  113. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/indexes.mjs +0 -0
  114. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/metadata.mjs +0 -0
  115. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/node.mjs +0 -0
  116. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/plain.mjs +0 -0
  117. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/rowgroup.mjs +0 -0
  118. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/schema.mjs +0 -0
  119. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/snappy.mjs +0 -0
  120. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/thrift.mjs +0 -0
  121. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/utils.mjs +0 -0
  122. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/variant.mjs +0 -0
  123. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/wkb.mjs +0 -0
  124. package/dist/node_modules/.pnpm/{hyparquet@1.28.2 → hyparquet@1.29.2}/node_modules/hyparquet/src/xxhash.mjs +0 -0
  125. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/fetch.d.mts → hyparquet@1.29.2/node_modules/hyparquet/types/indexes.d.mts} +0 -0
  126. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird → hyparquet@1.29.2/node_modules/hyparquet}/types/metadata.d.mts +0 -0
  127. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/manifest.d.mts → hyparquet@1.29.2/node_modules/hyparquet/types/query.d.mts} +0 -0
  128. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/s3.d.mts → hyparquet@1.29.2/node_modules/hyparquet/types/read.d.mts} +0 -0
  129. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/ast.d.mts → hyparquet@1.29.2/node_modules/hyparquet/types/snappy.d.mts} +0 -0
  130. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/expression/alias.mjs → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/avro/avro.metadata.mjs} +0 -0
  131. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/avro/avro.write.mjs +0 -0
  132. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/expression/binary.mjs → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/catalog/file.mjs} +0 -0
  133. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/catalog/loadTable.mjs +0 -0
  134. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/catalog/rest.mjs +0 -0
  135. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/create.mjs +0 -0
  136. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/delete.mjs +0 -0
  137. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/json.mjs +0 -0
  138. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/manifest.mjs +0 -0
  139. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/metadata.mjs +0 -0
  140. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/prune.mjs +0 -0
  141. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/puffin/deletion-vector.mjs +0 -0
  142. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/puffin/puffin.mjs +0 -0
  143. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/expression/date.mjs → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/puffin/roaring.mjs} +0 -0
  144. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/s3.mjs +0 -0
  145. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/schema.mjs +0 -0
  146. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/sigv4.mjs +0 -0
  147. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/expression/math.mjs → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/sql/whereFilter.mjs} +0 -0
  148. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/utils.mjs +0 -0
  149. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/commit.mjs +0 -0
  150. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/conversions.mjs +0 -0
  151. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/delete-file.mjs +0 -0
  152. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/parse/extractTables.mjs → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/write/geospatial.mjs} +0 -0
  153. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/manifest-list.mjs +0 -0
  154. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/manifest.mjs +0 -0
  155. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/parquet.mjs +0 -0
  156. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/partition.mjs +0 -0
  157. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/serde.mjs +0 -0
  158. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/snapshot.mjs +0 -0
  159. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/sort.mjs +0 -0
  160. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/stage-deletion-vector.mjs +0 -0
  161. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/stage-position-delete.mjs +0 -0
  162. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/stage.mjs +0 -0
  163. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/stats.mjs +0 -0
  164. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/transform.mjs +0 -0
  165. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/src/write/write.mjs +0 -0
  166. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/types/catalog/file.d.mts +0 -0
  167. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/types/catalog/rest.d.mts +0 -0
  168. package/dist/node_modules/.pnpm/{icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6 → icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244}/node_modules/icebird/types/write/write.d.mts +0 -0
  169. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/spatial/wkt.mjs → squirreling@0.16.2/node_modules/squirreling/src/backend/batch.mjs} +0 -0
  170. package/dist/node_modules/.pnpm/{squirreling@0.15.3/node_modules/squirreling/src/validation/keywords.mjs → squirreling@0.16.2/node_modules/squirreling/src/backend/dataSource.mjs} +0 -0
  171. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/accumulator.mjs +0 -0
  172. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/join.mjs +1 -1
  173. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/sort.mjs +0 -0
  174. package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/window.mjs +1 -1
  175. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/execute/yield.mjs +0 -0
  176. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/expression/regexp.mjs +0 -0
  177. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/expression/strings.mjs +0 -0
  178. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/index.d.mts +0 -0
  179. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/expression.mjs +0 -0
  180. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/functions.mjs +0 -0
  181. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/joins.mjs +0 -0
  182. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/parse.mjs +0 -0
  183. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/primary.mjs +0 -0
  184. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/state.mjs +0 -0
  185. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/tokenize.mjs +0 -0
  186. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/parse/types.d.mts +0 -0
  187. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/plan/plan.mjs +0 -0
  188. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/plan/types.d.mts +0 -0
  189. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/bbox.mjs +0 -0
  190. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/equality.mjs +0 -0
  191. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/operations.mjs +0 -0
  192. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/pointRelations.mjs +0 -0
  193. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/primitives.mjs +0 -0
  194. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/segments.mjs +0 -0
  195. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/spatial/spatial.mjs +0 -0
  196. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/types.d.mts +0 -0
  197. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/validation/aggregates.mjs +0 -0
  198. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/validation/executionErrors.mjs +0 -0
  199. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/validation/functions.mjs +0 -0
  200. /package/dist/node_modules/.pnpm/{squirreling@0.15.3 → squirreling@0.16.2}/node_modules/squirreling/src/validation/parseErrors.mjs +0 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Harlan Wilton
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -35,11 +35,11 @@ Repository: https://github.com/101arrowz/fzstd
35
35
 
36
36
  ---------------------------------------
37
37
 
38
- ## hyparquet, hyparquet, hyparquet-compressors, hyparquet-writer, icebird, squirreling
38
+ ## hyparquet, hyparquet, hyparquet, hyparquet-compressors, hyparquet-writer, icebird, squirreling
39
39
 
40
40
  License: MIT
41
41
  By: Hyperparam
42
- Repositories: https://github.com/hyparam/hyparquet, https://github.com/hyparam/hyparquet, https://github.com/hyparam/hyparquet-compressors, https://github.com/hyparam/hyparquet-writer, https://github.com/hyparam/icebird, https://github.com/hyparam/squirreling
42
+ Repositories: https://github.com/hyparam/hyparquet, https://github.com/hyparam/hyparquet, https://github.com/hyparam/hyparquet, https://github.com/hyparam/hyparquet-compressors, https://github.com/hyparam/hyparquet-writer, https://github.com/hyparam/icebird, https://github.com/hyparam/squirreling
43
43
 
44
44
  > The MIT License (MIT)
45
45
  >
@@ -1,5 +1,5 @@
1
- import { ParquetQueryFilter } from "../node_modules/.pnpm/hyparquet@1.28.2/node_modules/hyparquet/types/index.mjs";
2
- import "../node_modules/.pnpm/hyparquet@1.28.2/node_modules/hyparquet/types/node.mjs";
1
+ import { ParquetQueryFilter } from "../node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/index.mjs";
2
+ import "../node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/node.mjs";
3
3
  import { CodecCtx, DataSource, ParquetCodec, Row, TableName } from "../storage.mjs";
4
4
  import { ColumnDef } from "../schema.mjs";
5
5
  declare function encodeRowsToParquet(table: TableName, rows: readonly Row[]): Uint8Array;
@@ -1,7 +1,7 @@
1
1
  import { TABLE_METADATA } from "../drizzle-schema.mjs";
2
2
  import { SCHEMAS } from "../schema.mjs";
3
- import { parquetReadObjects } from "../node_modules/.pnpm/hyparquet@1.28.2/node_modules/hyparquet/src/read.mjs";
4
- import "../node_modules/.pnpm/hyparquet@1.28.2/node_modules/hyparquet/src/node.mjs";
3
+ import { parquetReadObjects } from "../node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/read.mjs";
4
+ import "../node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/node.mjs";
5
5
  import { ByteWriter } from "../node_modules/.pnpm/hyparquet-writer@0.16.6_patch_hash_549d1fd1fb9614da77df9123bf6978a8fccfe1d9bb8882863ce6159f666e821a/node_modules/hyparquet-writer/src/bytewriter.mjs";
6
6
  import { parquetWriteRows } from "../node_modules/.pnpm/hyparquet-writer@0.16.6_patch_hash_549d1fd1fb9614da77df9123bf6978a8fccfe1d9bb8882863ce6159f666e821a/node_modules/hyparquet-writer/src/write-rows.mjs";
7
7
  import "../node_modules/.pnpm/hyparquet-writer@0.16.6_patch_hash_549d1fd1fb9614da77df9123bf6978a8fccfe1d9bb8882863ce6159f666e821a/node_modules/hyparquet-writer/src/node.mjs";
@@ -1,7 +1,7 @@
1
1
  import { EngineError } from "../errors.mjs";
2
2
  import { IcebergTableName, PartitionKeyEncoding } from "./schema.mjs";
3
- import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/write/write.mjs";
4
- import "../node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/types/index.mjs";
3
+ import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/write/write.mjs";
4
+ import "../node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/types/index.mjs";
5
5
  import { Result } from "gscdump/result";
6
6
  import { CommitRetryOptions, ConnectIcebergOptions, IcebergCatalogConfig, IcebergConnection, IcebergListedDataFile, QueryProfiler } from "@gscdump/lakehouse";
7
7
  type IcebirdCreateTableOptions = Parameters<typeof icebergCreateTable>[0];
@@ -2,8 +2,8 @@ import { engineErrors } from "../errors.mjs";
2
2
  import { TABLE_METADATA } from "../drizzle-schema.mjs";
3
3
  import "../schema.mjs";
4
4
  import { DEFAULT_PARTITION_KEY_ENCODING, ICEBERG_PARTITION_SPEC, ICEBERG_TABLES, icebergSchemasFor } from "./schema.mjs";
5
- import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/write/write.mjs";
6
- import "../node_modules/.pnpm/icebird@0.8.22_patch_hash_4fa7fd5702c4ce432fb2902c6abe07cc55565e87f6375b96ece63a10999712e6/node_modules/icebird/src/index.mjs";
5
+ import { icebergCreateTable } from "../node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/write/write.mjs";
6
+ import "../node_modules/.pnpm/icebird@0.8.26_patch_hash_75eacba5b0363ee2a40baa0ef77c7fb20d06389025186ca95b514a927cad0244/node_modules/icebird/src/index.mjs";
7
7
  import { err, ok } from "gscdump/result";
8
8
  import { ICEBERG_TYPE_MAP, connectIcebergCatalog, dropIcebergTables, resolveIcebergDataFiles } from "@gscdump/lakehouse";
9
9
  import { icebergAppendRetrying } from "@gscdump/lakehouse/unsafe-raw";
@@ -0,0 +1,3 @@
1
+ import "./schema.mjs";
2
+ import "./variant.mjs";
3
+ export {};
@@ -0,0 +1,14 @@
1
+ import "./thrift.mjs";
2
+ import "./xxhash.mjs";
3
+ new TextEncoder();
4
+ new Uint32Array([
5
+ 1203114875,
6
+ 1150766481,
7
+ 2284105051,
8
+ 2729912477,
9
+ 1884591559,
10
+ 770785867,
11
+ 2667333959,
12
+ 1550580529
13
+ ]);
14
+ export {};
@@ -0,0 +1,8 @@
1
+ import "./constants.mjs";
2
+ import "./convert.mjs";
3
+ import "./schema.mjs";
4
+ import "./thrift.mjs";
5
+ import "./assemble.mjs";
6
+ import "./plain.mjs";
7
+ import "./datapage.mjs";
8
+ export {};
@@ -0,0 +1,3 @@
1
+ import "./wkb.mjs";
2
+ new TextDecoder();
3
+ export {};
@@ -0,0 +1,6 @@
1
+ import "./schema.mjs";
2
+ import "./delta.mjs";
3
+ import "./encoding.mjs";
4
+ import "./plain.mjs";
5
+ import "./snappy.mjs";
6
+ export {};
@@ -0,0 +1,2 @@
1
+ import "./thrift.mjs";
2
+ export {};
@@ -0,0 +1,2 @@
1
+ import "./thrift.mjs";
2
+ export {};
@@ -0,0 +1,4 @@
1
+ import "./bloom.mjs";
2
+ import "./utils.mjs";
3
+ new TextEncoder();
4
+ export {};
@@ -0,0 +1,8 @@
1
+ import "./metadata.mjs";
2
+ import "./indexes.mjs";
3
+ import "./utils.mjs";
4
+ import "./snappy.mjs";
5
+ import "./scan.mjs";
6
+ import "./read.mjs";
7
+ import "./query.mjs";
8
+ export {};
@@ -0,0 +1,5 @@
1
+ import "./constants.mjs";
2
+ import "./convert.mjs";
3
+ import "./thrift.mjs";
4
+ import "./metadata.mjs";
5
+ export {};
@@ -0,0 +1,7 @@
1
+ import "./constants.mjs";
2
+ import "./convert.mjs";
3
+ import "./schema.mjs";
4
+ import "./thrift.mjs";
5
+ import "./geoparquet.mjs";
6
+ new TextDecoder();
7
+ export {};
@@ -0,0 +1,2 @@
1
+ import "./index.mjs";
2
+ export {};
@@ -0,0 +1,6 @@
1
+ import "./schema.mjs";
2
+ import "./metadata.mjs";
3
+ import "./indexes.mjs";
4
+ import "./bloom.mjs";
5
+ import "./filter.mjs";
6
+ export {};
@@ -0,0 +1,7 @@
1
+ import "./metadata.mjs";
2
+ import "./utils.mjs";
3
+ import "./filter.mjs";
4
+ import "./plan.mjs";
5
+ import "./rowgroup.mjs";
6
+ import "./scan.mjs";
7
+ export {};
@@ -0,0 +1,7 @@
1
+ import "./convert.mjs";
2
+ import "./schema.mjs";
3
+ import "./indexes.mjs";
4
+ import "./utils.mjs";
5
+ import "./assemble.mjs";
6
+ import "./column.mjs";
7
+ export {};
@@ -0,0 +1,6 @@
1
+ import "./metadata.mjs";
2
+ import "./utils.mjs";
3
+ import "./filter.mjs";
4
+ import "./plan.mjs";
5
+ import "./rowgroup.mjs";
6
+ export {};
@@ -0,0 +1,9 @@
1
+ /**
2
+ * File-like object that can read slices of a file asynchronously.
3
+ */
4
+ interface AsyncBuffer {
5
+ byteLength: number;
6
+ slice(start: number, end?: number): Awaitable<ArrayBuffer>;
7
+ }
8
+ type Awaitable<T> = T | Promise<T>;
9
+ export { AsyncBuffer, Awaitable };
@@ -0,0 +1,2 @@
1
+ import "./metadata.mjs";
2
+ export {};
@@ -0,0 +1,3 @@
1
+ import "./convert.mjs";
2
+ new TextDecoder();
3
+ export {};
@@ -0,0 +1,10 @@
1
+ import { AsyncBuffer as AsyncBuffer$1 } from "../src/types.mjs";
2
+ import "./indexes.mjs";
3
+ import "./metadata.mjs";
4
+ import "./read.mjs";
5
+ import "./scan.mjs";
6
+ import "./query.mjs";
7
+ import "./snappy.mjs";
8
+ import "./utils.mjs";
9
+ type AsyncBuffer = AsyncBuffer$1;
10
+ export { AsyncBuffer };
@@ -0,0 +1,3 @@
1
+ import "../src/types.mjs";
2
+ import { AsyncBuffer } from "./index.mjs";
3
+ export { AsyncBuffer };
@@ -2,6 +2,7 @@ import "./metadata.mjs";
2
2
  import "./indexes.mjs";
3
3
  import "./utils.mjs";
4
4
  import "./snappy.mjs";
5
+ import "./scan.mjs";
5
6
  import { parquetReadObjects } from "./read.mjs";
6
7
  import "./query.mjs";
7
8
  export { parquetReadObjects };
@@ -4,123 +4,151 @@ import { readColumnIndex, readOffsetIndex } from "./indexes.mjs";
4
4
  import { bloomEligibleColumns, readBloomFilter } from "./bloom.mjs";
5
5
  import { canSkipRowGroup, filterPageRanges, pathsNeededForFilter } from "./filter.mjs";
6
6
  const runLimit = 1 << 21;
7
- function parquetPlan({ metadata, rowStart = 0, rowEnd = Infinity, columns, filter, filterStrict = true, useOffsetIndex = false, bloomFiltersByGroup, schemaElements, pageRangesByGroup, pageLocationsByGroup }) {
7
+ function parquetPlan(options) {
8
+ const { metadata, rowStart = 0, columns, useOffsetIndex = false } = options;
8
9
  if (!metadata) throw new Error("parquetPlan requires metadata");
9
10
  const groups = [];
10
11
  const fetches = [];
11
12
  const indexes = [];
13
+ const scanPlan = parquetPlanGroups(options);
14
+ for (const group of scanPlan.groups) {
15
+ const groupPlan = parquetPlanGroup({
16
+ ...group,
17
+ columns,
18
+ useOffsetIndex
19
+ });
20
+ groups.push(...groupPlan.groups);
21
+ fetches.push(...groupPlan.fetches);
22
+ indexes.push(...groupPlan.indexes);
23
+ }
24
+ fetches.push(...indexes);
25
+ return {
26
+ metadata,
27
+ rowStart,
28
+ rowEnd: scanPlan.rowEnd,
29
+ columns,
30
+ fetches,
31
+ groups
32
+ };
33
+ }
34
+ function parquetPlanGroups({ metadata, rowStart = 0, rowEnd = Infinity, columns, filter, filterStrict = true, bloomFiltersByGroup, schemaElements, pageRangesByGroup, pageLocationsByGroup }) {
35
+ if (!metadata) throw new Error("parquetPlan requires metadata");
12
36
  const schemaTree = parquetSchema(metadata);
13
37
  const physicalColumns = getPhysicalColumns(schemaTree);
14
38
  const elementsByPath = filter ? {
15
39
  ...physicalSchemaElements(schemaTree),
16
40
  ...schemaElements
17
41
  } : schemaElements;
42
+ const groups = [];
18
43
  let groupStart = 0;
19
- let rgIdx = 0;
20
- for (const rowGroup of metadata.row_groups) {
44
+ for (let groupIndex = 0; groupIndex < metadata.row_groups.length; groupIndex++) {
45
+ const rowGroup = metadata.row_groups[groupIndex];
21
46
  const groupRows = Number(rowGroup.num_rows);
22
47
  const groupEnd = groupStart + groupRows;
23
- const bloomFilters = bloomFiltersByGroup?.[rgIdx];
24
48
  if (groupRows > 0 && groupEnd > rowStart && groupStart < rowEnd && !canSkipRowGroup({
25
49
  rowGroup,
26
50
  physicalColumns,
27
51
  filter,
28
52
  strict: filterStrict,
29
- bloomFilters,
53
+ bloomFilters: bloomFiltersByGroup?.[groupIndex],
30
54
  schemaElements: elementsByPath
31
55
  })) {
32
56
  const selectStart = Math.max(rowStart - groupStart, 0);
33
57
  const selectEnd = Math.min(rowEnd - groupStart, groupRows);
34
- const pageRanges = pageRangesByGroup?.[rgIdx];
35
- const pageLocations = pageLocationsByGroup?.[rgIdx];
36
- let subranges = pageRanges ? pageRanges.map(([start, end]) => {
58
+ const pageRanges = pageRangesByGroup?.[groupIndex];
59
+ const pageLocations = pageLocationsByGroup?.[groupIndex];
60
+ let ranges = pageRanges ? pageRanges.map(([start, end]) => {
37
61
  return [Math.max(start, selectStart), Math.min(end, selectEnd)];
38
62
  }).filter(([start, end]) => start < end) : [[selectStart, selectEnd]];
39
- if (subranges.length > 1) {
40
- if (!rowGroup.columns.every((chunk) => {
41
- const columnName = chunk.meta_data?.path_in_schema[0];
42
- const columnPath = chunk.meta_data?.path_in_schema.join(".");
43
- if (columns && columnName && !columns.includes(columnName)) return true;
44
- return !!(chunk.offset_index_offset && chunk.offset_index_length) || !!(columnPath && pageLocations?.[columnPath]);
45
- })) subranges = [[subranges[0][0], subranges[subranges.length - 1][1]]];
46
- else subranges = coalesceOverlappingPageRanges(subranges, rowGroup, columns, pageLocations);
63
+ if (ranges.length > 1) ranges = rowGroup.columns.every((chunk) => {
64
+ const columnName = chunk.meta_data?.path_in_schema[0];
65
+ const columnPath = chunk.meta_data?.path_in_schema.join(".");
66
+ if (columns && columnName && !columns.includes(columnName)) return true;
67
+ return !!(chunk.offset_index_offset && chunk.offset_index_length) || !!(columnPath && pageLocations?.[columnPath]);
68
+ }) ? coalesceOverlappingPageRanges(ranges, rowGroup, columns, pageLocations) : [[ranges[0][0], ranges[ranges.length - 1][1]]];
69
+ if (ranges.length) groups.push({
70
+ rowGroup,
71
+ groupIndex,
72
+ groupStart,
73
+ groupRows,
74
+ ranges,
75
+ pageRanges,
76
+ pageLocations
77
+ });
78
+ }
79
+ groupStart = groupEnd;
80
+ }
81
+ return {
82
+ groups,
83
+ rowEnd: isFinite(rowEnd) ? rowEnd : groupStart
84
+ };
85
+ }
86
+ function parquetPlanGroup({ rowGroup, groupStart, groupRows, ranges, columns, useOffsetIndex = false, pageRanges, pageLocations }) {
87
+ const chunks = [];
88
+ const fetches = [];
89
+ const indexes = [];
90
+ const narrowed = ranges.length > 1 || ranges[0][0] > 0 || ranges[0][1] < groupRows;
91
+ for (const chunk of rowGroup.columns) {
92
+ const meta = chunk.meta_data;
93
+ if (chunk.file_path) throw new Error("parquet file_path not supported");
94
+ if (!meta) throw new Error("parquet column metadata is undefined");
95
+ if (columns && !columns.includes(meta.path_in_schema[0])) continue;
96
+ const columnOffset = meta.dictionary_page_offset || meta.data_page_offset;
97
+ const startByte = Number(columnOffset);
98
+ const endByte = Number(columnOffset + meta.total_compressed_size);
99
+ const chunkPageLocations = pageLocations?.[meta.path_in_schema.join(".")];
100
+ if (chunkPageLocations && narrowed) chunks.push({
101
+ columnMetadata: meta,
102
+ pageLocations: chunkPageLocations,
103
+ range: {
104
+ startByte,
105
+ endByte
47
106
  }
48
- if (subranges.length) {
49
- const chunks = [];
50
- const narrowed = subranges.length > 1 || subranges[0][0] > 0 || subranges[0][1] < groupRows;
51
- for (const chunk of rowGroup.columns) {
52
- const meta = chunk.meta_data;
53
- if (chunk.file_path) throw new Error("parquet file_path not supported");
54
- if (!meta) throw new Error("parquet column metadata is undefined");
55
- if (!columns || columns.includes(meta.path_in_schema[0])) {
56
- const columnOffset = meta.dictionary_page_offset || meta.data_page_offset;
57
- const startByte = Number(columnOffset);
58
- const endByte = Number(columnOffset + meta.total_compressed_size);
59
- const chunkPageLocations = pageLocations?.[meta.path_in_schema.join(".")];
60
- if (chunkPageLocations && narrowed) chunks.push({
61
- columnMetadata: meta,
62
- pageLocations: chunkPageLocations,
63
- range: {
64
- startByte,
65
- endByte
66
- }
67
- });
68
- else if ((useOffsetIndex || pageRanges) && chunk.offset_index_offset && chunk.offset_index_length && narrowed) {
69
- const offsetIndexStart = Number(chunk.offset_index_offset);
70
- chunks.push({
71
- columnMetadata: meta,
72
- offsetIndex: {
73
- startByte: offsetIndexStart,
74
- endByte: offsetIndexStart + chunk.offset_index_length
75
- },
76
- range: {
77
- startByte,
78
- endByte
79
- }
80
- });
81
- } else chunks.push({
82
- columnMetadata: meta,
83
- range: {
84
- startByte,
85
- endByte
86
- }
87
- });
88
- }
89
- }
90
- for (const [subStart, subEnd] of subranges) groups.push({
91
- chunks,
92
- rowGroup,
93
- groupStart,
94
- groupRows,
95
- selectStart: subStart,
96
- selectEnd: subEnd
97
- });
98
- let run;
99
- for (const chunk of chunks) if ("pageLocations" in chunk) {} else if ("offsetIndex" in chunk) indexes.push(chunk.offsetIndex);
100
- else {
101
- const { range } = chunk;
102
- if (columns) fetches.push(range);
103
- else if (run && range.endByte - run.startByte <= runLimit) run.endByte = range.endByte;
104
- else {
105
- if (run) fetches.push(run);
106
- run = { ...range };
107
- }
107
+ });
108
+ else if ((useOffsetIndex || pageRanges) && chunk.offset_index_offset && chunk.offset_index_length && narrowed) {
109
+ const startByte = Number(chunk.offset_index_offset);
110
+ chunks.push({
111
+ columnMetadata: meta,
112
+ offsetIndex: {
113
+ startByte,
114
+ endByte: startByte + chunk.offset_index_length
115
+ },
116
+ range: {
117
+ startByte: Number(columnOffset),
118
+ endByte
108
119
  }
109
- if (run) fetches.push(run);
120
+ });
121
+ } else chunks.push({
122
+ columnMetadata: meta,
123
+ range: {
124
+ startByte,
125
+ endByte
110
126
  }
127
+ });
128
+ }
129
+ let run;
130
+ for (const chunk of chunks) {
131
+ if ("pageLocations" in chunk) continue;
132
+ if ("offsetIndex" in chunk) indexes.push(chunk.offsetIndex);
133
+ else if (columns) fetches.push(chunk.range);
134
+ else if (run && chunk.range.endByte - run.startByte <= runLimit) run.endByte = chunk.range.endByte;
135
+ else {
136
+ if (run) fetches.push(run);
137
+ run = { ...chunk.range };
111
138
  }
112
- groupStart = groupEnd;
113
- rgIdx++;
114
139
  }
115
- if (!isFinite(rowEnd)) rowEnd = groupStart;
116
- fetches.push(...indexes);
140
+ if (run) fetches.push(run);
117
141
  return {
118
- metadata,
119
- rowStart,
120
- rowEnd,
121
- columns,
142
+ groups: ranges.map(([selectStart, selectEnd]) => ({
143
+ chunks,
144
+ rowGroup,
145
+ groupStart,
146
+ groupRows,
147
+ selectStart,
148
+ selectEnd
149
+ })),
122
150
  fetches,
123
- groups
151
+ indexes
124
152
  };
125
153
  }
126
154
  function coalesceOverlappingPageRanges(ranges, rowGroup, columns, pageLocations) {
@@ -344,4 +372,4 @@ function prefetchAsyncBuffer(file, { fetches }) {
344
372
  }
345
373
  };
346
374
  }
347
- export { parquetPlan, prefetchAsyncBuffer, prefetchBloomFilters, prefetchPageIndexes };
375
+ export { parquetPlan, parquetPlanGroup, parquetPlanGroups, prefetchAsyncBuffer, prefetchBloomFilters, prefetchPageIndexes };
@@ -0,0 +1,3 @@
1
+ import "./metadata.mjs";
2
+ import "./read.mjs";
3
+ export {};
@@ -0,0 +1,78 @@
1
+ import { parquetMetadataAsync, parquetSchema } from "./metadata.mjs";
2
+ import { concat } from "./utils.mjs";
3
+ import { columnsNeededForFilter, matchFilter } from "./filter.mjs";
4
+ import "./plan.mjs";
5
+ import { assembleAsync, asyncGroupToRows } from "./rowgroup.mjs";
6
+ import { prepareParquetRead, readParquetPlan } from "./scan.mjs";
7
+ async function parquetRead(options) {
8
+ options.metadata ??= await parquetMetadataAsync(options.file, options);
9
+ const { rowStart = 0, rowEnd, columns, onChunk, onComplete, rowFormat, filter, filterStrict = true } = options;
10
+ if (filter && rowFormat !== "object") throw new Error("parquet filter requires rowFormat: \"object\"");
11
+ const filterColumns = columnsNeededForFilter(filter);
12
+ let readColumns = columns;
13
+ if (columns && filterColumns.length) {
14
+ const selectedColumns = new Set(columns);
15
+ const extraColumns = filterColumns.filter((column) => !selectedColumns.has(column));
16
+ if (extraColumns.length) readColumns = [...columns, ...extraColumns];
17
+ }
18
+ const readOptions = readColumns === columns ? options : {
19
+ ...options,
20
+ columns: readColumns
21
+ };
22
+ const prepared = await prepareParquetRead(readOptions);
23
+ const preparedOptions = prepared.options;
24
+ const requiresProjection = readColumns !== columns;
25
+ const asyncGroups = readParquetPlan(preparedOptions, prepared.plan);
26
+ if (!onComplete && !onChunk) {
27
+ await awaitAllColumns(asyncGroups);
28
+ return;
29
+ }
30
+ if (!preparedOptions.metadata) throw new Error("parquet requires metadata");
31
+ const schemaTree = parquetSchema(preparedOptions.metadata);
32
+ const assembled = asyncGroups.map((arg) => assembleAsync(arg, schemaTree, options.parsers));
33
+ if (onChunk) for (const asyncGroup of assembled) for (const asyncColumn of asyncGroup.asyncColumns) asyncColumn.data.then(({ data, skipped }) => {
34
+ let rowStart = asyncGroup.groupStart + skipped;
35
+ for (const columnData of data) {
36
+ onChunk({
37
+ columnName: asyncColumn.pathInSchema[0],
38
+ columnData,
39
+ rowStart,
40
+ rowEnd: rowStart + columnData.length
41
+ });
42
+ rowStart += columnData.length;
43
+ }
44
+ }, () => {});
45
+ if (onComplete) {
46
+ await awaitAllColumns(assembled);
47
+ const rows = [];
48
+ for (const asyncGroup of assembled) {
49
+ const selectStart = asyncGroup.selectStart ?? Math.max(rowStart - asyncGroup.groupStart, 0);
50
+ const selectEnd = asyncGroup.selectEnd ?? Math.min((rowEnd ?? Infinity) - asyncGroup.groupStart, asyncGroup.groupRows);
51
+ const groupData = rowFormat === "object" ? await asyncGroupToRows(asyncGroup, selectStart, selectEnd, readColumns, "object") : await asyncGroupToRows(asyncGroup, selectStart, selectEnd, columns, "array");
52
+ if (filter) {
53
+ for (const row of groupData) if (matchFilter(row, filter, filterStrict)) {
54
+ if (requiresProjection && columns) {
55
+ for (const col of filterColumns) if (!columns.includes(col)) delete row[col];
56
+ }
57
+ rows.push(row);
58
+ }
59
+ } else concat(rows, groupData);
60
+ }
61
+ onComplete(rows);
62
+ } else await awaitAllColumns(assembled);
63
+ }
64
+ async function awaitAllColumns(asyncGroups) {
65
+ const all = asyncGroups.flatMap((g) => g.asyncColumns.map((c) => c.data));
66
+ const failed = (await Promise.allSettled(all)).find((r) => r.status === "rejected");
67
+ if (failed) throw failed.reason;
68
+ }
69
+ function parquetReadObjects(options) {
70
+ return new Promise((onComplete, reject) => {
71
+ parquetRead({
72
+ ...options,
73
+ rowFormat: "object",
74
+ onComplete
75
+ }).catch(reject);
76
+ });
77
+ }
78
+ export { parquetRead, parquetReadObjects };