rowpipe 2.10.2 → 2.10.4

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,471 @@
1
+ import { stat } from "node:fs/promises";
2
+ import { z } from "mcponce";
3
+ import { SchemaInferenceAggregator } from "../analytics/schema-inference.js";
4
+ import { DatasetStatsAggregator } from "../analytics/stats.js";
5
+ import { DatasetProfiler, formatProfileMarkdown, formatProfileTerminal } from "../analytics/profiler.js";
6
+ import { computeDiff, diffRows } from "../diff/engine.js";
7
+ import { convertCommand } from "../cli/commands/convert.js";
8
+ import { buildOperationsFromOptions } from "../cli/commands/pipeline.js";
9
+ import { optimizePipeline, executePlannedPipeline } from "../planner/index.js";
10
+ import { createPipeline } from "../core/pipeline.js";
11
+ import { createReader, inferFormatFromPath } from "../readers/index.js";
12
+ import { sampleRows } from "../transforms/sample.js";
13
+ import { formatBytes, formatTable } from "../utils/formatting.js";
14
+ /**
15
+ * MCP Tools for rowpipe tabular data operations.
16
+ */
17
+ // 1. rowpipe_inspect
18
+ export const inspectToolDefinition = {
19
+ name: "rowpipe_inspect",
20
+ description: "Inspect a tabular data file (CSV, TSV, JSON, JSONL, Parquet, XLSX) to retrieve file size, row count, column count, types, null percentages, approximate distinct percentages, or sheet summaries.",
21
+ inputSchema: z.object({
22
+ filePath: z.string().describe("Path to the tabular data file"),
23
+ sheet: z.string().optional().describe("For XLSX workbooks, the specific sheet name to inspect"),
24
+ delimiter: z.string().optional().describe("Custom delimiter character for delimited text files (e.g. ',', ';', '\\t')"),
25
+ }),
26
+ handler: async (args) => {
27
+ let fileSize;
28
+ try {
29
+ const fileStat = await stat(args.filePath);
30
+ fileSize = fileStat.size;
31
+ }
32
+ catch (err) {
33
+ throw new Error(`Cannot access file "${args.filePath}": ${err.message}`);
34
+ }
35
+ const format = inferFormatFromPath(args.filePath) || "csv";
36
+ const reader = createReader(args.filePath, {
37
+ format,
38
+ sheet: args.sheet,
39
+ delimiter: args.delimiter,
40
+ filePath: args.filePath,
41
+ });
42
+ try {
43
+ // XLSX workbook inspection when no specific sheet requested
44
+ if (format === "xlsx" && !args.sheet && reader.inspect) {
45
+ const meta = await reader.inspect();
46
+ return {
47
+ file: args.filePath,
48
+ format: "XLSX",
49
+ sizeBytes: fileSize,
50
+ sizeFormatted: fileSize !== undefined ? formatBytes(fileSize) : undefined,
51
+ sheetsCount: meta.sheets?.length ?? 0,
52
+ sheets: meta.sheets?.map((s) => ({
53
+ name: s.name,
54
+ rows: s.rowCount,
55
+ columnsCount: s.columnCount,
56
+ columnsPreview: s.columns?.slice(0, 10),
57
+ })),
58
+ };
59
+ }
60
+ const schemaAgg = new SchemaInferenceAggregator();
61
+ const statsAgg = new DatasetStatsAggregator();
62
+ const pipeline = createPipeline(reader);
63
+ for await (const row of pipeline.rows()) {
64
+ schemaAgg.add(row);
65
+ statsAgg.add(row);
66
+ }
67
+ const schemaRes = schemaAgg.result();
68
+ const statsRes = statsAgg.result();
69
+ const totalRows = schemaRes.totalRowsScanned;
70
+ const columns = schemaRes.columns.map((col) => {
71
+ const nullPct = col.sampleCount > 0 ? (col.nullCount / col.sampleCount) * 100 : 0;
72
+ const colStats = statsRes.columns[col.name];
73
+ const approxDistinct = colStats?.numeric?.approxDistinct ?? colStats?.string?.approxDistinct ?? 0;
74
+ const uniquePct = totalRows > 0 ? Math.min(100, (approxDistinct / totalRows) * 100) : 0;
75
+ return {
76
+ name: col.name,
77
+ type: col.type,
78
+ nullPercentage: Math.round(nullPct * 10) / 10,
79
+ approxUniquePercentage: Math.round(uniquePct * 10) / 10,
80
+ semantic: col.semantic,
81
+ };
82
+ });
83
+ return {
84
+ file: args.filePath,
85
+ format: format.toUpperCase(),
86
+ sheet: args.sheet,
87
+ sizeBytes: fileSize,
88
+ sizeFormatted: fileSize !== undefined ? formatBytes(fileSize) : undefined,
89
+ rows: totalRows,
90
+ columnsCount: columns.length,
91
+ columns,
92
+ };
93
+ }
94
+ finally {
95
+ if (reader.close)
96
+ await reader.close();
97
+ }
98
+ },
99
+ };
100
+ // 2. rowpipe_query
101
+ export const queryToolDefinition = {
102
+ name: "rowpipe_query",
103
+ description: "Stream-query and transform tabular data with filter expressions, column selection, renaming, mapped expressions, casting, sorting, and pagination in bounded O(1) memory.",
104
+ inputSchema: z.object({
105
+ filePath: z.string().describe("Path to the tabular data file"),
106
+ filter: z.union([z.string(), z.array(z.string())]).optional().describe("Filter expression(s), e.g. 'age > 30' or 'country == \"TR\"'"),
107
+ select: z.union([z.string(), z.array(z.string())]).optional().describe("Column(s) to select, e.g. 'id,name,age' or ['id', 'name']"),
108
+ rename: z.union([z.string(), z.array(z.string())]).optional().describe("Column rename expressions, e.g. 'old_name=new_name'"),
109
+ map: z.union([z.string(), z.array(z.string())]).optional().describe("Computed column expressions, e.g. 'total=price * qty'"),
110
+ cast: z.union([z.string(), z.array(z.string())]).optional().describe("Column cast expressions, e.g. 'age:int' or 'price:float'"),
111
+ sort: z.union([z.string(), z.array(z.string())]).optional().describe("Sort keys, e.g. 'age:desc' or 'name:asc'"),
112
+ limit: z.number().optional().describe("Maximum rows to return (default: 100, capped at 1000)"),
113
+ offset: z.number().optional().describe("Number of initial rows to skip"),
114
+ sheet: z.string().optional().describe("Sheet name for XLSX workbooks"),
115
+ delimiter: z.string().optional().describe("Custom delimiter character"),
116
+ format: z.enum(["json", "markdown", "table"]).optional().describe("Result format: 'json' (default), 'markdown', or 'table'"),
117
+ }),
118
+ handler: async (args) => {
119
+ const effectiveLimit = Math.min(Math.max(1, args.limit ?? 100), 1000);
120
+ const operations = buildOperationsFromOptions({
121
+ filter: args.filter,
122
+ select: args.select,
123
+ rename: args.rename,
124
+ map: args.map,
125
+ cast: args.cast,
126
+ sort: args.sort,
127
+ offset: args.offset,
128
+ limit: effectiveLimit,
129
+ });
130
+ const plan = optimizePipeline(operations);
131
+ const fromFormat = inferFormatFromPath(args.filePath) || "csv";
132
+ const reader = createReader(args.filePath, {
133
+ format: fromFormat,
134
+ sheet: args.sheet,
135
+ delimiter: args.delimiter,
136
+ filePath: args.filePath,
137
+ maxRows: plan.effectiveReadLimit,
138
+ });
139
+ try {
140
+ const pipeline = executePlannedPipeline(reader, plan, { batchSize: 1000 });
141
+ const rows = [];
142
+ for await (const row of pipeline.rows()) {
143
+ rows.push(row);
144
+ if (rows.length >= effectiveLimit)
145
+ break;
146
+ }
147
+ if (args.format === "markdown" || args.format === "table") {
148
+ if (rows.length === 0)
149
+ return "(No matching rows)";
150
+ const headers = Object.keys(rows[0]);
151
+ const tableRows = rows.map((r) => headers.map((h) => (r[h] === null || r[h] === undefined ? "" : String(r[h]))));
152
+ if (args.format === "markdown") {
153
+ const headerLine = `| ${headers.join(" | ")} |`;
154
+ const separatorLine = `| ${headers.map(() => "---").join(" | ")} |`;
155
+ const rowLines = tableRows.map((tr) => `| ${tr.join(" | ")} |`);
156
+ return [headerLine, separatorLine, ...rowLines].join("\n");
157
+ }
158
+ return formatTable(headers, tableRows);
159
+ }
160
+ return {
161
+ totalReturned: rows.length,
162
+ columns: rows.length > 0 ? Object.keys(rows[0]) : [],
163
+ rows,
164
+ };
165
+ }
166
+ finally {
167
+ if (reader.close)
168
+ await reader.close();
169
+ }
170
+ },
171
+ };
172
+ // 3. rowpipe_schema
173
+ export const schemaToolDefinition = {
174
+ name: "rowpipe_schema",
175
+ description: "Infer accurate schema, SQL data types, null rates, and semantic types (email, url, uuid, date, etc.) for any tabular dataset.",
176
+ inputSchema: z.object({
177
+ filePath: z.string().describe("Path to the tabular data file"),
178
+ sample: z.number().optional().describe("Maximum rows to scan for schema inference (default: 10000)"),
179
+ sheet: z.string().optional().describe("For XLSX workbooks, sheet name"),
180
+ delimiter: z.string().optional().describe("Custom delimiter"),
181
+ }),
182
+ handler: async (args) => {
183
+ const sampleLimit = Math.max(1, args.sample ?? 10000);
184
+ const format = inferFormatFromPath(args.filePath) || "csv";
185
+ const reader = createReader(args.filePath, {
186
+ format,
187
+ sheet: args.sheet,
188
+ delimiter: args.delimiter,
189
+ filePath: args.filePath,
190
+ });
191
+ try {
192
+ const schemaAgg = new SchemaInferenceAggregator({ sample: sampleLimit });
193
+ const pipeline = createPipeline(reader, { maxRows: sampleLimit });
194
+ for await (const row of pipeline.rows()) {
195
+ schemaAgg.add(row);
196
+ }
197
+ return schemaAgg.result();
198
+ }
199
+ finally {
200
+ if (reader.close)
201
+ await reader.close();
202
+ }
203
+ },
204
+ };
205
+ // 4. rowpipe_stats
206
+ export const statsToolDefinition = {
207
+ name: "rowpipe_stats",
208
+ description: "Calculate summary statistics (min, max, mean, sum, quantiles, approx distinct, null count) for numeric and string columns.",
209
+ inputSchema: z.object({
210
+ filePath: z.string().describe("Path to the tabular data file"),
211
+ column: z.string().optional().describe("Specific column name to compute stats for (default: all columns)"),
212
+ sheet: z.string().optional().describe("For XLSX workbooks, sheet name"),
213
+ delimiter: z.string().optional().describe("Custom delimiter"),
214
+ }),
215
+ handler: async (args) => {
216
+ const format = inferFormatFromPath(args.filePath) || "csv";
217
+ const reader = createReader(args.filePath, {
218
+ format,
219
+ sheet: args.sheet,
220
+ delimiter: args.delimiter,
221
+ filePath: args.filePath,
222
+ });
223
+ try {
224
+ const statsAgg = new DatasetStatsAggregator({ column: args.column });
225
+ const pipeline = createPipeline(reader);
226
+ for await (const row of pipeline.rows()) {
227
+ statsAgg.add(row);
228
+ }
229
+ return statsAgg.result();
230
+ }
231
+ finally {
232
+ if (reader.close)
233
+ await reader.close();
234
+ }
235
+ },
236
+ };
237
+ // 5. rowpipe_sample
238
+ export const sampleToolDefinition = {
239
+ name: "rowpipe_sample",
240
+ description: "Perform reservoir sampling on a tabular dataset with bounded O(k) memory and optional deterministic random seed.",
241
+ inputSchema: z.object({
242
+ filePath: z.string().describe("Path to the tabular data file"),
243
+ size: z.number().optional().describe("Number of sample rows to retrieve (default: 10)"),
244
+ seed: z.number().optional().describe("Deterministic random seed integer"),
245
+ sheet: z.string().optional().describe("For XLSX workbooks, sheet name"),
246
+ delimiter: z.string().optional().describe("Custom delimiter"),
247
+ format: z.enum(["json", "markdown", "table"]).optional().describe("Output representation: 'json' (default), 'markdown', or 'table'"),
248
+ }),
249
+ handler: async (args) => {
250
+ const sampleSize = Math.max(1, Math.min(args.size ?? 10, 500));
251
+ const format = inferFormatFromPath(args.filePath) || "csv";
252
+ const reader = createReader(args.filePath, {
253
+ format,
254
+ sheet: args.sheet,
255
+ delimiter: args.delimiter,
256
+ filePath: args.filePath,
257
+ });
258
+ try {
259
+ const pipeline = createPipeline(reader).pipe(sampleRows({ rows: sampleSize, seed: args.seed }));
260
+ const rows = [];
261
+ for await (const row of pipeline.rows()) {
262
+ rows.push(row);
263
+ }
264
+ if (args.format === "markdown" || args.format === "table") {
265
+ if (rows.length === 0)
266
+ return "(No rows sampled)";
267
+ const headers = Object.keys(rows[0]);
268
+ const tableRows = rows.map((r) => headers.map((h) => (r[h] === null || r[h] === undefined ? "" : String(r[h]))));
269
+ if (args.format === "markdown") {
270
+ const headerLine = `| ${headers.join(" | ")} |`;
271
+ const separatorLine = `| ${headers.map(() => "---").join(" | ")} |`;
272
+ const rowLines = tableRows.map((tr) => `| ${tr.join(" | ")} |`);
273
+ return [headerLine, separatorLine, ...rowLines].join("\n");
274
+ }
275
+ return formatTable(headers, tableRows);
276
+ }
277
+ return {
278
+ sampleSize: rows.length,
279
+ rows,
280
+ };
281
+ }
282
+ finally {
283
+ if (reader.close)
284
+ await reader.close();
285
+ }
286
+ },
287
+ };
288
+ // 6. rowpipe_convert
289
+ export const convertToolDefinition = {
290
+ name: "rowpipe_convert",
291
+ description: "Convert tabular datasets between formats (CSV, TSV, JSON, JSONL, Parquet, XLSX, Markdown) with high throughput streaming.",
292
+ inputSchema: z.object({
293
+ inputPath: z.string().describe("Source file path"),
294
+ outputPath: z.string().describe("Target file path (extension determines format: .csv, .json, .parquet, .xlsx, .md)"),
295
+ sheet: z.string().optional().describe("For XLSX input/output, sheet name"),
296
+ delimiter: z.string().optional().describe("Custom delimiter for delimited formats"),
297
+ }),
298
+ handler: async (args) => {
299
+ await convertCommand(args.inputPath, args.outputPath, {
300
+ sheet: args.sheet,
301
+ delimiter: args.delimiter,
302
+ quiet: true,
303
+ noProgress: true,
304
+ });
305
+ const targetStat = await stat(args.outputPath);
306
+ return {
307
+ success: true,
308
+ input: args.inputPath,
309
+ output: args.outputPath,
310
+ outputSizeBytes: targetStat.size,
311
+ outputSizeFormatted: formatBytes(targetStat.size),
312
+ };
313
+ },
314
+ };
315
+ // 7. rowpipe_diff
316
+ export const diffToolDefinition = {
317
+ name: "rowpipe_diff",
318
+ description: "Compare two tabular datasets with key-based row-level diffing, identifying added, removed, changed, and unchanged rows and column differences.",
319
+ inputSchema: z.object({
320
+ leftPath: z.string().describe("Baseline dataset path"),
321
+ rightPath: z.string().describe("Comparison dataset path"),
322
+ key: z.string().describe("Key column(s), comma-separated (e.g. 'id' or 'id,date')"),
323
+ columns: z.string().optional().describe("Columns to compare (comma-separated; default: all)"),
324
+ ignore: z.string().optional().describe("Columns to ignore (comma-separated)"),
325
+ sheet: z.string().optional().describe("Sheet name for XLSX workbooks"),
326
+ limit: z.number().optional().describe("Maximum sample diff events to include in output (default: 20)"),
327
+ }),
328
+ handler: async (args) => {
329
+ const keys = args.key.split(",").map((k) => k.trim()).filter(Boolean);
330
+ const compareColumns = args.columns ? args.columns.split(",").map((c) => c.trim()).filter(Boolean) : undefined;
331
+ const ignoreColumns = args.ignore ? args.ignore.split(",").map((c) => c.trim()).filter(Boolean) : undefined;
332
+ const summary = await computeDiff({
333
+ left: args.leftPath,
334
+ right: args.rightPath,
335
+ keys,
336
+ columns: compareColumns,
337
+ ignore: ignoreColumns,
338
+ leftOptions: { sheet: args.sheet, filePath: args.leftPath },
339
+ rightOptions: { sheet: args.sheet, filePath: args.rightPath },
340
+ });
341
+ // Collect sample events if requested
342
+ const sampleLimit = Math.max(0, Math.min(args.limit ?? 20, 100));
343
+ const sampleEvents = [];
344
+ if (sampleLimit > 0) {
345
+ for await (const event of diffRows({
346
+ left: args.leftPath,
347
+ right: args.rightPath,
348
+ keys,
349
+ columns: compareColumns,
350
+ ignore: ignoreColumns,
351
+ leftOptions: { sheet: args.sheet, filePath: args.leftPath },
352
+ rightOptions: { sheet: args.sheet, filePath: args.rightPath },
353
+ })) {
354
+ if (event.type !== "unchanged") {
355
+ sampleEvents.push(event);
356
+ if (sampleEvents.length >= sampleLimit)
357
+ break;
358
+ }
359
+ }
360
+ }
361
+ return {
362
+ left: args.leftPath,
363
+ right: args.rightPath,
364
+ keys,
365
+ rows: summary.rows,
366
+ changedColumns: summary.columns,
367
+ schemaDiff: summary.schema,
368
+ sampleEvents,
369
+ };
370
+ },
371
+ };
372
+ // 8. rowpipe_profile
373
+ export const profileToolDefinition = {
374
+ name: "rowpipe_profile",
375
+ description: "Comprehensive data profile with type inference, null percentages, distinct counts, distributions, and quality warnings.",
376
+ inputSchema: z.object({
377
+ filePath: z.string().describe("Path to the tabular data file"),
378
+ sample: z.number().optional().describe("Maximum rows to profile (default: all)"),
379
+ sheet: z.string().optional().describe("Sheet name for XLSX workbooks"),
380
+ delimiter: z.string().optional().describe("Custom delimiter"),
381
+ format: z.enum(["json", "markdown", "summary"]).optional().describe("Output representation: 'json' (default), 'markdown', or 'summary'"),
382
+ }),
383
+ handler: async (args) => {
384
+ const format = inferFormatFromPath(args.filePath) || "csv";
385
+ const sampleLimit = args.sample !== undefined ? Math.max(1, args.sample) : undefined;
386
+ const reader = createReader(args.filePath, {
387
+ format,
388
+ sheet: args.sheet,
389
+ delimiter: args.delimiter,
390
+ filePath: args.filePath,
391
+ maxRows: sampleLimit,
392
+ });
393
+ try {
394
+ const profiler = new DatasetProfiler();
395
+ const pipeline = createPipeline(reader, { maxRows: sampleLimit });
396
+ const result = await pipeline.reduce(profiler);
397
+ if (args.format === "markdown") {
398
+ return formatProfileMarkdown(result);
399
+ }
400
+ if (args.format === "summary") {
401
+ return formatProfileTerminal(result);
402
+ }
403
+ return result;
404
+ }
405
+ finally {
406
+ if (reader.close)
407
+ await reader.close();
408
+ }
409
+ },
410
+ };
411
+ // 9. rowpipe_table
412
+ export const tableToolDefinition = {
413
+ name: "rowpipe_table",
414
+ description: "Render a clean, aligned tabular preview of a dataset with optional filtering and column selection.",
415
+ inputSchema: z.object({
416
+ filePath: z.string().describe("Path to the tabular data file"),
417
+ limit: z.number().optional().describe("Maximum rows to preview (default: 20)"),
418
+ filter: z.string().optional().describe("Filter expression (e.g. 'age >= 21')"),
419
+ select: z.string().optional().describe("Comma-separated list of columns to display"),
420
+ sheet: z.string().optional().describe("Sheet name for XLSX workbooks"),
421
+ delimiter: z.string().optional().describe("Custom delimiter"),
422
+ }),
423
+ handler: async (args) => {
424
+ const effectiveLimit = Math.max(1, Math.min(args.limit ?? 20, 200));
425
+ const operations = buildOperationsFromOptions({
426
+ filter: args.filter,
427
+ select: args.select,
428
+ limit: effectiveLimit,
429
+ });
430
+ const plan = optimizePipeline(operations);
431
+ const format = inferFormatFromPath(args.filePath) || "csv";
432
+ const reader = createReader(args.filePath, {
433
+ format,
434
+ sheet: args.sheet,
435
+ delimiter: args.delimiter,
436
+ filePath: args.filePath,
437
+ maxRows: plan.effectiveReadLimit,
438
+ });
439
+ try {
440
+ const pipeline = executePlannedPipeline(reader, plan, { batchSize: 500 });
441
+ const rows = [];
442
+ for await (const row of pipeline.rows()) {
443
+ rows.push(row);
444
+ if (rows.length >= effectiveLimit)
445
+ break;
446
+ }
447
+ if (rows.length === 0) {
448
+ return "(No rows to display)";
449
+ }
450
+ const headers = Object.keys(rows[0]);
451
+ const tableRows = rows.map((r) => headers.map((h) => (r[h] === null || r[h] === undefined ? "" : String(r[h]))));
452
+ return formatTable(headers, tableRows);
453
+ }
454
+ finally {
455
+ if (reader.close)
456
+ await reader.close();
457
+ }
458
+ },
459
+ };
460
+ export const allRowpipeTools = [
461
+ inspectToolDefinition,
462
+ queryToolDefinition,
463
+ schemaToolDefinition,
464
+ statsToolDefinition,
465
+ sampleToolDefinition,
466
+ convertToolDefinition,
467
+ diffToolDefinition,
468
+ profileToolDefinition,
469
+ tableToolDefinition,
470
+ ];
471
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -126,10 +126,10 @@ export class JSONReader {
126
126
  if (!inArray) {
127
127
  if (char === "[") {
128
128
  inArray = true;
129
- cursor++;
130
- byteOffset++;
131
- continue;
132
129
  }
130
+ cursor++;
131
+ byteOffset++;
132
+ continue;
133
133
  }
134
134
  else {
135
135
  // Inside array: looking for objects '{ ... }'
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/readers/json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/readers/json.ts"],"names":[],"mappings":"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"}
package/dist/rowpipe ADDED
@@ -0,0 +1,4 @@
1
+ [diffend] Oversized file quarantined before diffing.
2
+ name: package/dist/rowpipe
3
+ size: 91980704 bytes
4
+ sha256: 54545879296a36fea91c387b83d8994e6be93fee36ebd24697087964d87ebe77
@@ -0,0 +1,2 @@
1
+ export declare const VERSION = "2.10.4";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const VERSION = "2.10.4";
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rowpipe",
3
- "version": "2.10.2",
3
+ "version": "2.10.4",
4
4
  "description": "Stream-first tabular data toolkit for CSV, TSV, JSON, JSONL, XLSX, Apache Parquet, and Markdown",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -15,8 +15,8 @@
15
15
  "type": "module",
16
16
  "scripts": {
17
17
  "build": "tsc",
18
- "build:sea": "npm run build && npx yekpare build --strip",
19
- "release:sea": "npx yekpare release",
18
+ "build:sea": "npm run build && npx -y yekpare build --strip",
19
+ "release:sea": "npx -y yekpare release",
20
20
  "dev": "tsx src/cli/index.ts",
21
21
  "prepublishOnly": "npm run build && npm test",
22
22
  "test": "NODE_OPTIONS=\"--experimental-sqlite\" vitest run",
@@ -52,6 +52,7 @@
52
52
  "fzstd": "^0.1.1",
53
53
  "hyparquet": "^1.30.1",
54
54
  "hyparquet-compressors": "^1.1.1",
55
+ "mcponce": "^0.2.3",
55
56
  "mysql2": "^3.24.4",
56
57
  "parquetjs-lite": "^0.8.7",
57
58
  "pg": "^8.23.0",