Avatar for the kamiazya user
kamiazya
web-csv-toolbox
BlogDocsChangelog

feat: add factory functions for stream-based CSV parsing APIs

#613Merged
Comparing
feat/stream-factory-functions
(
00db85c
) with
main
(
01dbd68
)
CodSpeed Performance Gauge
-75%
Improvement
2
Regression
3
Untouched
60
Skipped
8

Benchmarks

73 total
Memory: toArraySync (allocate all at once)
benchmark/main.ts
CodSpeed Performance Gauge
-75%
29 ms114 ms
parseString.toArraySync(10 cols, 50 rows, quoted)
benchmark/main.ts
CodSpeed Performance Gauge
-67%
4 ms11.9 ms
parseBinary.toArraySync(50 rows)
benchmark/main.ts
CodSpeed Performance Gauge
-61%
977.6 µs2,524 µs
Field length: 10 chars (1000 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+54%
18.6 ms12.1 ms
Quote ratio: 25% (1000 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+51%
18.8 ms12.5 ms
Scaling: 1000 rows
benchmark/main.ts
CodSpeed Performance Gauge
+43%
43 ms30.1 ms
Scaling: 100 rows
benchmark/main.ts
CodSpeed Performance Gauge
+40%
4.7 ms3.4 ms
Field length: 100 chars (1000 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+39%
18.8 ms13.5 ms
Scaling: 5000 rows
benchmark/main.ts
CodSpeed Performance Gauge
+39%
226.2 ms162.7 ms
Quote ratio: 0% (1000 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+38%
18.1 ms13.1 ms
Scaling: 50 rows
benchmark/main.ts
CodSpeed Performance Gauge
+24%
2.2 ms1.7 ms
Scaling: 500 rows
benchmark/main.ts
CodSpeed Performance Gauge
+21%
21.3 ms17.6 ms
parseString.toArraySync(100 cols, 50 rows, quoted)
benchmark/main.ts
CodSpeed Performance Gauge
+18%
43.8 ms37.2 ms
Field length: 1KB (1000 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+18%
33.1 ms28.1 ms
Concurrent: Sequential mainThread
benchmark/main.ts
CodSpeed Performance Gauge
+13%
40.5 ms35.7 ms
Worker perf: medium (1000 rows) - mainThread
benchmark/main.ts
CodSpeed Performance Gauge
+13%
22.4 ms19.7 ms
Queuing: small (100 rows) - default HWM
benchmark/main.ts
CodSpeed Performance Gauge
+13%
30.5 ms27 ms
Custom delimiter: PSV (100 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+13%
1.2 ms1.1 ms
Worker perf: small (100 rows) - mainThread
benchmark/main.ts
CodSpeed Performance Gauge
+13%
2.4 ms2.1 ms
Custom delimiter: TSV (100 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+12%
1.2 ms1.1 ms
Worker perf: large (10000 rows) - mainThread
benchmark/main.ts
CodSpeed Performance Gauge
+12%
222.4 ms198.2 ms
Concurrent: Parallel mainThread
benchmark/main.ts
CodSpeed Performance Gauge
+11%
39.9 ms35.8 ms
Data transformation: no conversion (100 rows)
benchmark/main.ts
CodSpeed Performance Gauge
+11%
2.9 ms2.6 ms
parseString.toArraySync(10000 cols, 10 rows, unquoted)
benchmark/main.ts
CodSpeed Performance Gauge
+10%
431.9 ms391.6 ms
parseString.toArraySync(10000 cols, 10 rows, quoted)
benchmark/main.ts
CodSpeed Performance Gauge
+10%
439.7 ms399 ms

Commits

Click on a commit to change the comparison range
Base
main
01dbd68
-52.45%
refactor: standardize string encoding in CSV parser tests and improve type definitions
13c655a
4 months ago
by kamiazya
-14.01%
refactor: use shared InferFormat type from core/types
5030689
4 months ago
by kamiazya
+14.05%
docs: fix custom assembler/lexer example signatures
2466d8c
4 months ago
by kamiazya
0%
refactor: rename types for naming consistency
3b2efc2
4 months ago
by kamiazya
-22.2%
docs: add design intent notes for factory vs class usage
00db85c
4 months ago
by kamiazya
© 2026 CodSpeed Technology
Home Terms Privacy Docs