@nshiab/simple-data-analysis-core 2.1.13 → 2.1.15

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 (4) hide show
  1. package/README.md +30 -30
  2. package/llm.md +31 -31
  3. package/llms.txt +13 -13
  4. package/package.json +3 -3
package/README.md CHANGED
@@ -70,7 +70,7 @@ libraries, measuring duration and peak memory.
70
70
 
71
71
  They were run on a MacBook Pro with an Apple M4 Max and 64 GB of memory.
72
72
  JavaScript implementations run on Node.js. Run `npm run benchmark` to regenerate
73
- these workflow tables on macOS with Node.js, Python, and R installed and the input files
73
+ all benchmark tables sequentially on macOS with Node.js, Python, and R installed and the input files
74
74
  available locally. The AHCCD file may also be placed in `test/data/files/`.
75
75
 
76
76
  Each implementation runs once to warm up, then three times in fresh processes.
@@ -82,9 +82,9 @@ memory. Raw measurements are retained in `benchmarks/.work/observations.csv`.
82
82
 
83
83
  <!-- benchmark-results:start -->
84
84
 
85
- **Tabular versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.12 (Node.js 24.21.0); pandas 3.0.5 (Python 3.14.7); tidyverse 2.0.0 (R 4.6.1).
85
+ **Tabular versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.13 (Node.js 24.21.0); pandas 3.0.5 (Python 3.14.7); tidyverse 2.0.0 (R 4.6.1).
86
86
 
87
- **Spatial versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.12 (Node.js 24.21.0); GeoPandas 1.1.4 (Python 3.14.7); sf 1.1.2 (R 4.6.1).
87
+ **Spatial versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.13 (Node.js 24.21.0); GeoPandas 1.1.4 (Python 3.14.7); sf 1.1.2 (R 4.6.1).
88
88
 
89
89
  ### Tabular workload
90
90
 
@@ -95,10 +95,10 @@ and export the sorted results.
95
95
 
96
96
  | Library | Mean duration | Duration difference | Mean peak memory | Memory difference |
97
97
  | --------- | -------------: | ------------------: | ---------------: | ----------------: |
98
- | DuckDB | 1.27 ± 0.03 s | -11.1% | 2,613 MiB | -0.9% |
99
- | SDA-core | 1.43 ± 0.03 s | baseline | 2,636 MiB | baseline |
100
- | pandas | 29.47 ± 0.09 s | +1957.3% | 4,700 MiB | +78.3% |
101
- | tidyverse | 81.90 ± 0.25 s | +5617.5% | 8,178 MiB | +210.2% |
98
+ | DuckDB | 1.16 ± 0.02 s | -12.8% | 2,430 MiB | -1.1% |
99
+ | SDA-core | 1.33 ± 0.01 s | baseline | 2,457 MiB | baseline |
100
+ | pandas | 27.98 ± 0.04 s | +2002.1% | 4,699 MiB | +91.2% |
101
+ | tidyverse | 78.60 ± 0.46 s | +5804.3% | 8,178 MiB | +232.8% |
102
102
 
103
103
  ### Spatial workload
104
104
 
@@ -110,10 +110,10 @@ results.
110
110
 
111
111
  | Library | Mean duration | Duration difference | Mean peak memory | Memory difference |
112
112
  | --------- | ------------: | ------------------: | ---------------: | ----------------: |
113
- | DuckDB | 0.72 ± 0.01 s | -12.7% | 285 MiB | -10.2% |
114
- | SDA-core | 0.83 ± 0.02 s | baseline | 318 MiB | baseline |
115
- | GeoPandas | 1.16 ± 0.01 s | +39.4% | 293 MiB | -7.9% |
116
- | sf | 1.66 ± 0.01 s | +99.9% | 489 MiB | +53.9% |
113
+ | DuckDB | 0.72 ± 0.01 s | -11.8% | 285 MiB | -9.9% |
114
+ | SDA-core | 0.81 ± 0.00 s | baseline | 316 MiB | baseline |
115
+ | GeoPandas | 1.11 ± 0.00 s | +36.3% | 292 MiB | -7.7% |
116
+ | sf | 1.58 ± 0.01 s | +94.4% | 489 MiB | +54.8% |
117
117
 
118
118
  <!-- benchmark-results:end -->
119
119
 
@@ -121,7 +121,7 @@ results.
121
121
 
122
122
  These additional benchmarks compare Core and DuckDB on data transfer, joins,
123
123
  aggregations, and JavaScript geometry updates to help track and improve
124
- performance over time. Run `npm run benchmark-core` to regenerate these
124
+ performance over time. Run `npm run benchmark` to regenerate these
125
125
  tables. See the [benchmark methodology](https://github.com/nshiab/simple-data-analysis-core/blob/main/benchmarks/operations/README.md) for
126
126
  fixture sizes, validation, and measurement details. Peak process memory includes
127
127
  setup, warm-up, the measured operation, and validation.
@@ -132,8 +132,8 @@ setup, warm-up, the measured operation, and validation.
132
132
 
133
133
  | Operation | Rows | Batch size | Implementation | Mean duration ± SD | Mean peak process memory |
134
134
  | ---------------- | --------: | ---------: | -------------- | -----------------: | -----------------------: |
135
- | Join → aggregate | 1,000,000 | — | Core | 11.70 ± 0.14 ms | 176.3 MiB |
136
- | Join → aggregate | 1,000,000 | — | DuckDB | 10.85 ± 0.17 ms | 166.8 MiB |
135
+ | Join → aggregate | 1,000,000 | — | Core | 11.54 ± 0.03 ms | 174.4 MiB |
136
+ | Join → aggregate | 1,000,000 | — | DuckDB | 10.59 ± 0.06 ms | 168.0 MiB |
137
137
 
138
138
  #### JavaScript data transfer
139
139
 
@@ -143,14 +143,14 @@ increment, including Core's staging and table replacement.
143
143
 
144
144
  | Operation | Rows | Batch size | Implementation | Mean duration ± SD | Mean peak process memory |
145
145
  | -------------- | ------: | ---------: | -------------- | -----------------: | -----------------------: |
146
- | loadArray() | 100,000 | — | Core | 9.07 ± 0.33 ms | 357.1 MiB |
147
- | loadArray() | 100,000 | — | DuckDB | 16.85 ± 0.10 ms | 284.4 MiB |
148
- | getData() | 100,000 | — | Core | 10.66 ± 0.19 ms | 303.5 MiB |
149
- | getData() | 100,000 | — | DuckDB | 12.41 ± 0.31 ms | 290.0 MiB |
150
- | updateWithJS() | 100,000 | 1000 | Core | 65.87 ± 2.14 ms | 309.9 MiB |
151
- | updateWithJS() | 100,000 | 1000 | DuckDB | 57.85 ± 2.08 ms | 308.9 MiB |
152
- | updateWithJS() | 100,000 | 10000 | Core | 36.18 ± 1.45 ms | 324.9 MiB |
153
- | updateWithJS() | 100,000 | 10000 | DuckDB | 35.57 ± 1.39 ms | 324.2 MiB |
146
+ | loadArray() | 100,000 | — | Core | 8.63 ± 0.04 ms | 355.8 MiB |
147
+ | loadArray() | 100,000 | — | DuckDB | 16.28 ± 0.16 ms | 282.4 MiB |
148
+ | getData() | 100,000 | — | Core | 10.14 ± 0.04 ms | 302.2 MiB |
149
+ | getData() | 100,000 | — | DuckDB | 12.05 ± 0.16 ms | 289.2 MiB |
150
+ | updateWithJS() | 100,000 | 1000 | Core | 60.85 ± 0.19 ms | 306.5 MiB |
151
+ | updateWithJS() | 100,000 | 1000 | DuckDB | 52.77 ± 0.37 ms | 314.1 MiB |
152
+ | updateWithJS() | 100,000 | 10000 | Core | 35.22 ± 1.31 ms | 323.8 MiB |
153
+ | updateWithJS() | 100,000 | 10000 | DuckDB | 34.60 ± 1.68 ms | 334.7 MiB |
154
154
 
155
155
  #### JavaScript geometry updates
156
156
 
@@ -163,14 +163,14 @@ omitted here to keep the table concise.
163
163
 
164
164
  | Operation | Rows | Batch size | Implementation | Mean duration ± SD | Mean peak process memory |
165
165
  | ------------------------- | ------: | ---------: | -------------- | -----------------: | -----------------------: |
166
- | Points: geometry update | 100,000 | — | Core | 182.98 ± 2.85 ms | 489.2 MiB |
167
- | Points: geometry update | 100,000 | — | DuckDB | 183.96 ± 5.85 ms | 529.8 MiB |
168
- | Points: geometry update | 100,000 | 1000 | Core | 255.49 ± 4.22 ms | 335.0 MiB |
169
- | Points: geometry update | 100,000 | 1000 | DuckDB | 222.69 ± 3.00 ms | 266.8 MiB |
170
- | Polygons: geometry update | 1,000 | — | Core | 568.00 ± 2.26 ms | 1075.9 MiB |
171
- | Polygons: geometry update | 1,000 | — | DuckDB | 565.33 ± 2.60 ms | 1101.4 MiB |
172
- | Polygons: geometry update | 1,000 | 100 | Core | 566.28 ± 1.60 ms | 855.6 MiB |
173
- | Polygons: geometry update | 1,000 | 100 | DuckDB | 571.56 ± 1.62 ms | 845.0 MiB |
166
+ | Points: geometry update | 100,000 | — | Core | 174.87 ± 0.50 ms | 469.9 MiB |
167
+ | Points: geometry update | 100,000 | — | DuckDB | 172.13 ± 1.32 ms | 537.3 MiB |
168
+ | Points: geometry update | 100,000 | 1000 | Core | 245.27 ± 4.96 ms | 298.3 MiB |
169
+ | Points: geometry update | 100,000 | 1000 | DuckDB | 206.80 ± 1.60 ms | 272.4 MiB |
170
+ | Polygons: geometry update | 1,000 | — | Core | 549.70 ± 0.67 ms | 1067.7 MiB |
171
+ | Polygons: geometry update | 1,000 | — | DuckDB | 555.25 ± 4.17 ms | 1103.9 MiB |
172
+ | Polygons: geometry update | 1,000 | 100 | Core | 549.62 ± 2.49 ms | 786.0 MiB |
173
+ | Polygons: geometry update | 1,000 | 100 | DuckDB | 552.29 ± 0.43 ms | 881.3 MiB |
174
174
 
175
175
  <!-- benchmark-operations:end -->
176
176
 
package/llm.md CHANGED
@@ -1,4 +1,4 @@
1
- **Simple Data Analysis Core v2.1.13**
1
+ **Simple Data Analysis Core v2.1.15**
2
2
 
3
3
  ***
4
4
 
@@ -74,7 +74,7 @@ libraries, measuring duration and peak memory.
74
74
 
75
75
  They were run on a MacBook Pro with an Apple M4 Max and 64 GB of memory.
76
76
  JavaScript implementations run on Node.js. Run `npm run benchmark` to regenerate
77
- these workflow tables on macOS with Node.js, Python, and R installed and the input files
77
+ all benchmark tables sequentially on macOS with Node.js, Python, and R installed and the input files
78
78
  available locally. The AHCCD file may also be placed in `test/data/files/`.
79
79
 
80
80
  Each implementation runs once to warm up, then three times in fresh processes.
@@ -86,9 +86,9 @@ memory. Raw measurements are retained in `benchmarks/.work/observations.csv`.
86
86
 
87
87
  <!-- benchmark-results:start -->
88
88
 
89
- **Tabular versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.12 (Node.js 24.21.0); pandas 3.0.5 (Python 3.14.7); tidyverse 2.0.0 (R 4.6.1).
89
+ **Tabular versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.13 (Node.js 24.21.0); pandas 3.0.5 (Python 3.14.7); tidyverse 2.0.0 (R 4.6.1).
90
90
 
91
- **Spatial versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.12 (Node.js 24.21.0); GeoPandas 1.1.4 (Python 3.14.7); sf 1.1.2 (R 4.6.1).
91
+ **Spatial versions:** @duckdb/node-api 1.5.6-r.1; DuckDB v1.5.6 (Node.js 24.21.0); SDA-core 2.1.13 (Node.js 24.21.0); GeoPandas 1.1.4 (Python 3.14.7); sf 1.1.2 (R 4.6.1).
92
92
 
93
93
  ### Tabular workload
94
94
 
@@ -99,10 +99,10 @@ and export the sorted results.
99
99
 
100
100
  | Library | Mean duration | Duration difference | Mean peak memory | Memory difference |
101
101
  | --------- | -------------: | ------------------: | ---------------: | ----------------: |
102
- | DuckDB | 1.27 ± 0.03 s | -11.1% | 2,613 MiB | -0.9% |
103
- | SDA-core | 1.43 ± 0.03 s | baseline | 2,636 MiB | baseline |
104
- | pandas | 29.47 ± 0.09 s | +1957.3% | 4,700 MiB | +78.3% |
105
- | tidyverse | 81.90 ± 0.25 s | +5617.5% | 8,178 MiB | +210.2% |
102
+ | DuckDB | 1.16 ± 0.02 s | -12.8% | 2,430 MiB | -1.1% |
103
+ | SDA-core | 1.33 ± 0.01 s | baseline | 2,457 MiB | baseline |
104
+ | pandas | 27.98 ± 0.04 s | +2002.1% | 4,699 MiB | +91.2% |
105
+ | tidyverse | 78.60 ± 0.46 s | +5804.3% | 8,178 MiB | +232.8% |
106
106
 
107
107
  ### Spatial workload
108
108
 
@@ -114,10 +114,10 @@ results.
114
114
 
115
115
  | Library | Mean duration | Duration difference | Mean peak memory | Memory difference |
116
116
  | --------- | ------------: | ------------------: | ---------------: | ----------------: |
117
- | DuckDB | 0.72 ± 0.01 s | -12.7% | 285 MiB | -10.2% |
118
- | SDA-core | 0.83 ± 0.02 s | baseline | 318 MiB | baseline |
119
- | GeoPandas | 1.16 ± 0.01 s | +39.4% | 293 MiB | -7.9% |
120
- | sf | 1.66 ± 0.01 s | +99.9% | 489 MiB | +53.9% |
117
+ | DuckDB | 0.72 ± 0.01 s | -11.8% | 285 MiB | -9.9% |
118
+ | SDA-core | 0.81 ± 0.00 s | baseline | 316 MiB | baseline |
119
+ | GeoPandas | 1.11 ± 0.00 s | +36.3% | 292 MiB | -7.7% |
120
+ | sf | 1.58 ± 0.01 s | +94.4% | 489 MiB | +54.8% |
121
121
 
122
122
  <!-- benchmark-results:end -->
123
123
 
@@ -125,7 +125,7 @@ results.
125
125
 
126
126
  These additional benchmarks compare Core and DuckDB on data transfer, joins,
127
127
  aggregations, and JavaScript geometry updates to help track and improve
128
- performance over time. Run `npm run benchmark-core` to regenerate these
128
+ performance over time. Run `npm run benchmark` to regenerate these
129
129
  tables. See the [benchmark methodology](https://github.com/nshiab/simple-data-analysis-core/blob/main/benchmarks/operations/README.md) for
130
130
  fixture sizes, validation, and measurement details. Peak process memory includes
131
131
  setup, warm-up, the measured operation, and validation.
@@ -136,8 +136,8 @@ setup, warm-up, the measured operation, and validation.
136
136
 
137
137
  | Operation | Rows | Batch size | Implementation | Mean duration ± SD | Mean peak process memory |
138
138
  | ---------------- | --------: | ---------: | -------------- | -----------------: | -----------------------: |
139
- | Join → aggregate | 1,000,000 | — | Core | 11.70 ± 0.14 ms | 176.3 MiB |
140
- | Join → aggregate | 1,000,000 | — | DuckDB | 10.85 ± 0.17 ms | 166.8 MiB |
139
+ | Join → aggregate | 1,000,000 | — | Core | 11.54 ± 0.03 ms | 174.4 MiB |
140
+ | Join → aggregate | 1,000,000 | — | DuckDB | 10.59 ± 0.06 ms | 168.0 MiB |
141
141
 
142
142
  #### JavaScript data transfer
143
143
 
@@ -147,14 +147,14 @@ increment, including Core's staging and table replacement.
147
147
 
148
148
  | Operation | Rows | Batch size | Implementation | Mean duration ± SD | Mean peak process memory |
149
149
  | -------------- | ------: | ---------: | -------------- | -----------------: | -----------------------: |
150
- | loadArray() | 100,000 | — | Core | 9.07 ± 0.33 ms | 357.1 MiB |
151
- | loadArray() | 100,000 | — | DuckDB | 16.85 ± 0.10 ms | 284.4 MiB |
152
- | getData() | 100,000 | — | Core | 10.66 ± 0.19 ms | 303.5 MiB |
153
- | getData() | 100,000 | — | DuckDB | 12.41 ± 0.31 ms | 290.0 MiB |
154
- | updateWithJS() | 100,000 | 1000 | Core | 65.87 ± 2.14 ms | 309.9 MiB |
155
- | updateWithJS() | 100,000 | 1000 | DuckDB | 57.85 ± 2.08 ms | 308.9 MiB |
156
- | updateWithJS() | 100,000 | 10000 | Core | 36.18 ± 1.45 ms | 324.9 MiB |
157
- | updateWithJS() | 100,000 | 10000 | DuckDB | 35.57 ± 1.39 ms | 324.2 MiB |
150
+ | loadArray() | 100,000 | — | Core | 8.63 ± 0.04 ms | 355.8 MiB |
151
+ | loadArray() | 100,000 | — | DuckDB | 16.28 ± 0.16 ms | 282.4 MiB |
152
+ | getData() | 100,000 | — | Core | 10.14 ± 0.04 ms | 302.2 MiB |
153
+ | getData() | 100,000 | — | DuckDB | 12.05 ± 0.16 ms | 289.2 MiB |
154
+ | updateWithJS() | 100,000 | 1000 | Core | 60.85 ± 0.19 ms | 306.5 MiB |
155
+ | updateWithJS() | 100,000 | 1000 | DuckDB | 52.77 ± 0.37 ms | 314.1 MiB |
156
+ | updateWithJS() | 100,000 | 10000 | Core | 35.22 ± 1.31 ms | 323.8 MiB |
157
+ | updateWithJS() | 100,000 | 10000 | DuckDB | 34.60 ± 1.68 ms | 334.7 MiB |
158
158
 
159
159
  #### JavaScript geometry updates
160
160
 
@@ -167,14 +167,14 @@ omitted here to keep the table concise.
167
167
 
168
168
  | Operation | Rows | Batch size | Implementation | Mean duration ± SD | Mean peak process memory |
169
169
  | ------------------------- | ------: | ---------: | -------------- | -----------------: | -----------------------: |
170
- | Points: geometry update | 100,000 | — | Core | 182.98 ± 2.85 ms | 489.2 MiB |
171
- | Points: geometry update | 100,000 | — | DuckDB | 183.96 ± 5.85 ms | 529.8 MiB |
172
- | Points: geometry update | 100,000 | 1000 | Core | 255.49 ± 4.22 ms | 335.0 MiB |
173
- | Points: geometry update | 100,000 | 1000 | DuckDB | 222.69 ± 3.00 ms | 266.8 MiB |
174
- | Polygons: geometry update | 1,000 | — | Core | 568.00 ± 2.26 ms | 1075.9 MiB |
175
- | Polygons: geometry update | 1,000 | — | DuckDB | 565.33 ± 2.60 ms | 1101.4 MiB |
176
- | Polygons: geometry update | 1,000 | 100 | Core | 566.28 ± 1.60 ms | 855.6 MiB |
177
- | Polygons: geometry update | 1,000 | 100 | DuckDB | 571.56 ± 1.62 ms | 845.0 MiB |
170
+ | Points: geometry update | 100,000 | — | Core | 174.87 ± 0.50 ms | 469.9 MiB |
171
+ | Points: geometry update | 100,000 | — | DuckDB | 172.13 ± 1.32 ms | 537.3 MiB |
172
+ | Points: geometry update | 100,000 | 1000 | Core | 245.27 ± 4.96 ms | 298.3 MiB |
173
+ | Points: geometry update | 100,000 | 1000 | DuckDB | 206.80 ± 1.60 ms | 272.4 MiB |
174
+ | Polygons: geometry update | 1,000 | — | Core | 549.70 ± 0.67 ms | 1067.7 MiB |
175
+ | Polygons: geometry update | 1,000 | — | DuckDB | 555.25 ± 4.17 ms | 1103.9 MiB |
176
+ | Polygons: geometry update | 1,000 | 100 | Core | 549.62 ± 2.49 ms | 786.0 MiB |
177
+ | Polygons: geometry update | 1,000 | 100 | DuckDB | 552.29 ± 0.43 ms | 881.3 MiB |
178
178
 
179
179
  <!-- benchmark-operations:end -->
180
180
 
package/llms.txt CHANGED
@@ -1,18 +1,18 @@
1
- # Simple Data Analysis Core v2.1.13
1
+ # Simple Data Analysis Core v2.1.15
2
2
 
3
3
  > Lightweight DuckDB-powered TypeScript library for tabular, SQL, CSV, Parquet, and geospatial data analysis on Node.js.
4
4
 
5
- - [README](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/README.md): Installation, examples and usage.
5
+ - [README](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/README.md): Installation, examples and usage.
6
6
 
7
7
  ## API
8
- - [SDAError](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/classes/SDAError.md): SDAError class
9
- - [SimpleDB](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/classes/SimpleDB.md): SimpleDB class
10
- - [SimpleTable](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/classes/SimpleTable.md): SimpleTable class
11
- - [createDirectory](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/createDirectory.md): createDirectory function
12
- - [mergeOptions](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/mergeOptions.md): mergeOptions function
13
- - [parseValue](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/parseValue.md): parseValue function
14
- - [queryDB](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/queryDB.md): queryDB function
15
- - [queueAsyncBarrier](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/queueAsyncBarrier.md): queueAsyncBarrier function
16
- - [quoteIdentifier](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/quoteIdentifier.md): quoteIdentifier function
17
- - [stringToArray](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/stringToArray.md): stringToArray function
18
- - [updateColumnsWithJS](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.13/docs/functions/updateColumnsWithJS.md): updateColumnsWithJS function
8
+ - [SDAError](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/classes/SDAError.md): SDAError class
9
+ - [SimpleDB](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/classes/SimpleDB.md): SimpleDB class
10
+ - [SimpleTable](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/classes/SimpleTable.md): SimpleTable class
11
+ - [createDirectory](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/createDirectory.md): createDirectory function
12
+ - [mergeOptions](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/mergeOptions.md): mergeOptions function
13
+ - [parseValue](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/parseValue.md): parseValue function
14
+ - [queryDB](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/queryDB.md): queryDB function
15
+ - [queueAsyncBarrier](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/queueAsyncBarrier.md): queueAsyncBarrier function
16
+ - [quoteIdentifier](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/quoteIdentifier.md): quoteIdentifier function
17
+ - [stringToArray](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/stringToArray.md): stringToArray function
18
+ - [updateColumnsWithJS](https://raw.githubusercontent.com/nshiab/simple-data-analysis-core/v2.1.15/docs/functions/updateColumnsWithJS.md): updateColumnsWithJS function
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nshiab/simple-data-analysis-core",
3
- "version": "2.1.13",
3
+ "version": "2.1.15",
4
4
  "description": "Lightweight DuckDB-powered TypeScript library for tabular, SQL, CSV, Parquet, and geospatial data analysis on Node.js.",
5
5
  "keywords": [
6
6
  "csv",
@@ -53,8 +53,7 @@
53
53
  "patch": "npm version patch",
54
54
  "minor": "npm version minor",
55
55
  "major": "npm version major",
56
- "benchmark": "node benchmarks/run.ts",
57
- "benchmark-core": "node benchmarks/operations/run.ts"
56
+ "benchmark": "node benchmarks/run.ts"
58
57
  },
59
58
  "dependencies": {
60
59
  "@duckdb/node-api": "1.5.6-r.1"
@@ -62,6 +61,7 @@
62
61
  "devDependencies": {
63
62
  "@types/node": "24.19.2",
64
63
  "typedoc": "0.28.20",
64
+ "typedoc-github-theme": "0.4.0",
65
65
  "typedoc-plugin-llms-txt": "0.1.2",
66
66
  "typedoc-plugin-markdown": "4.14.0",
67
67
  "typescript": "6.0.3",