dobo 2.38.0 → 2.39.1
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.
- package/.bootorder +0 -0
- package/.github/FUNDING.yml +0 -0
- package/.github/workflows/repo-lockdown.yml +0 -0
- package/.jsdoc.conf.json +0 -0
- package/LICENSE +0 -0
- package/README.md +0 -0
- package/docs/Dobo.html +0 -0
- package/docs/DoboAction.html +0 -0
- package/docs/DoboAdapter.html +0 -0
- package/docs/DoboConnection.html +0 -0
- package/docs/DoboFeature.html +0 -0
- package/docs/DoboModel.html +0 -0
- package/docs/data/search.json +0 -0
- package/docs/extend_bajo_hook-docs.js.html +0 -0
- package/docs/external-Tools.html +0 -0
- package/docs/fonts/Inconsolata-Regular.ttf +0 -0
- package/docs/fonts/OpenSans-Regular.ttf +0 -0
- package/docs/fonts/WorkSans-Bold.ttf +0 -0
- package/docs/global.html +0 -0
- package/docs/index.html +0 -0
- package/docs/index.js.html +0 -0
- package/docs/lib_factory_action.js.html +0 -0
- package/docs/lib_factory_adapter.js.html +0 -0
- package/docs/lib_factory_connection.js.html +0 -0
- package/docs/lib_factory_feature.js.html +0 -0
- package/docs/lib_factory_model.js.html +0 -0
- package/docs/lib_factory_model_build.js.html +0 -0
- package/docs/lib_factory_model_clear-record.js.html +0 -0
- package/docs/lib_factory_model_count-record.js.html +0 -0
- package/docs/lib_factory_model_create-record.js.html +0 -0
- package/docs/lib_factory_model_drop.js.html +0 -0
- package/docs/lib_factory_model_exists.js.html +0 -0
- package/docs/lib_factory_model_find-all-record.js.html +0 -0
- package/docs/lib_factory_model_find-one-record.js.html +0 -0
- package/docs/lib_factory_model_find-record.js.html +0 -0
- package/docs/lib_factory_model_get-record.js.html +0 -0
- package/docs/lib_factory_model_helper.js.html +0 -0
- package/docs/lib_factory_model_remove-record.js.html +0 -0
- package/docs/lib_factory_model_sanitize-body.js.html +0 -0
- package/docs/lib_factory_model_sanitize-fixture.js.html +0 -0
- package/docs/lib_factory_model_sanitize-record.js.html +0 -0
- package/docs/lib_factory_model_update-record.js.html +0 -0
- package/docs/lib_factory_model_upsert-record.js.html +0 -0
- package/docs/lib_factory_model_validate.js.html +0 -0
- package/docs/lib_helper.js.html +0 -0
- package/docs/module-Helper.html +0 -0
- package/docs/module-Helper_Model.html +0 -0
- package/docs/module-Hook.html +0 -0
- package/docs/scripts/core.js +0 -0
- package/docs/scripts/core.min.js +0 -0
- package/docs/scripts/resize.js +0 -0
- package/docs/scripts/search.js +0 -0
- package/docs/scripts/search.min.js +5 -5
- package/docs/scripts/third-party/Apache-License-2.0.txt +0 -0
- package/docs/scripts/third-party/fuse.js +0 -0
- package/docs/scripts/third-party/hljs-line-num-original.js +0 -0
- package/docs/scripts/third-party/hljs-line-num.js +0 -0
- package/docs/scripts/third-party/hljs-original.js +0 -0
- package/docs/scripts/third-party/hljs.js +0 -0
- package/docs/scripts/third-party/popper.js +0 -0
- package/docs/scripts/third-party/tippy.js +0 -0
- package/docs/scripts/third-party/tocbot.js +0 -0
- package/docs/scripts/third-party/tocbot.min.js +0 -0
- package/docs/static/bitcoin.jpeg +0 -0
- package/docs/static/home.md +0 -0
- package/docs/static/logo-ecosystem.png +0 -0
- package/docs/static/logo.png +0 -0
- package/docs/styles/clean-jsdoc-theme-base.css +0 -0
- package/docs/styles/clean-jsdoc-theme-dark.css +0 -0
- package/docs/styles/clean-jsdoc-theme-light.css +0 -0
- package/docs/styles/clean-jsdoc-theme-scrollbar.css +0 -0
- package/docs/styles/clean-jsdoc-theme-without-scrollbar.min.css +0 -0
- package/docs/styles/clean-jsdoc-theme.min.css +0 -0
- package/extend/bajo/hook.js +236 -236
- package/extend/bajo/intl/en-US.json +0 -0
- package/extend/bajo/intl/id.json +0 -0
- package/extend/bajoCli/applet/aggregate.js +0 -0
- package/extend/bajoCli/applet/clear-record.js +0 -0
- package/extend/bajoCli/applet/connection.js +0 -0
- package/extend/bajoCli/applet/count-record.js +0 -0
- package/extend/bajoCli/applet/create-record.js +0 -0
- package/extend/bajoCli/applet/find-record.js +0 -0
- package/extend/bajoCli/applet/get-record.js +0 -0
- package/extend/bajoCli/applet/histogram.js +0 -0
- package/extend/bajoCli/applet/lib/post-process.js +0 -0
- package/extend/bajoCli/applet/model.js +0 -0
- package/extend/bajoCli/applet/rebuild-model.js +0 -0
- package/extend/bajoCli/applet/remove-record.js +0 -0
- package/extend/bajoCli/applet/update-record.js +0 -0
- package/extend/bajoCli/applet.js +0 -0
- package/extend/dobo/adapter/memory.js +175 -175
- package/extend/dobo/feature/created-at.js +0 -0
- package/extend/dobo/feature/dt.js +0 -0
- package/extend/dobo/feature/image.js +0 -0
- package/extend/dobo/feature/immutable.js +0 -0
- package/extend/dobo/feature/removed-at.js +0 -0
- package/extend/dobo/feature/unique.js +0 -0
- package/extend/dobo/feature/updated-at.js +0 -0
- package/extend/waibuMpa/route/attachment/@model/@id/@field/@file.js +0 -0
- package/extend/waibuStatic/virtual.json +0 -0
- package/index.js +0 -0
- package/lib/factory/action.js +287 -287
- package/lib/factory/adapter.js +1055 -1055
- package/lib/factory/connection.js +109 -109
- package/lib/factory/feature.js +52 -52
- package/lib/factory/model/aggregate.js +23 -23
- package/lib/factory/model/build.js +25 -25
- package/lib/factory/model/bulk-create-record.js +36 -36
- package/lib/factory/model/clear-record.js +30 -30
- package/lib/factory/model/count-record.js +42 -42
- package/lib/factory/model/create-attachment.js +36 -36
- package/lib/factory/model/create-record.js +49 -49
- package/lib/factory/model/drop.js +26 -26
- package/lib/factory/model/exists.js +26 -26
- package/lib/factory/model/find-all-record.js +112 -112
- package/lib/factory/model/find-attachment.js +28 -28
- package/lib/factory/model/find-one-record.js +38 -38
- package/lib/factory/model/find-record.js +82 -82
- package/lib/factory/model/get-attachment.js +15 -15
- package/lib/factory/model/get-record.js +52 -52
- package/lib/factory/model/helper.js +575 -576
- package/lib/factory/model/histogram.js +23 -23
- package/lib/factory/model/list-attachment.js +40 -40
- package/lib/factory/model/load-fixtures.js +63 -63
- package/lib/factory/model/remove-attachment.js +24 -24
- package/lib/factory/model/remove-record.js +44 -44
- package/lib/factory/model/sanitize-body.js +57 -57
- package/lib/factory/model/sanitize-fixture.js +56 -56
- package/lib/factory/model/sanitize-record.js +80 -80
- package/lib/factory/model/transaction.js +15 -15
- package/lib/factory/model/update-attachment.js +9 -9
- package/lib/factory/model/update-record.js +58 -58
- package/lib/factory/model/upsert-record.js +71 -71
- package/lib/factory/model/validate.js +0 -0
- package/lib/factory/model.js +503 -503
- package/lib/helper.js +463 -463
- package/package.json +1 -1
- package/test/e2e/_run.js +12 -12
- package/test/e2e/e2e-factory-process.test.js +25 -25
- package/test/e2e/e2e-model-adapter-process.test.js +52 -52
- package/test/integration/aspect-01-start-connections.test.js +33 -33
- package/test/integration/aspect-02-query-regex.test.js +34 -34
- package/test/integration/aspect-03-model-adapter-flow.test.js +88 -88
- package/test/unit/_stub.js +244 -244
- package/test/unit/dobo-action.test.js +58 -58
- package/test/unit/dobo-connection.test.js +37 -37
- package/test/unit/dobo-core.test.js +136 -136
- package/test/unit/dobo-feature.test.js +25 -25
- package/test/unit/dobo-model.test.js +115 -115
- package/test/unit/helper-sanitize-all.test.js +40 -40
- package/test/unit/helper-sanitize-ref.test.js +64 -64
- package/wiki/APPLETS.md +0 -0
- package/wiki/CHANGES.md +477 -469
- package/wiki/CONFIG.md +0 -0
- package/wiki/CONTRIBUTING.md +0 -0
- package/wiki/DEV-GUIDE.md +0 -0
- package/wiki/ECOSYSTEM.md +0 -0
- package/wiki/GETTING-STARTED.md +0 -0
- package/wiki/QUERY-LANGUAGE.md +0 -0
- package/wiki/USER-GUIDE.md +0 -0
package/wiki/CHANGES.md
CHANGED
|
@@ -1,470 +1,478 @@
|
|
|
1
|
-
# Changes
|
|
2
|
-
|
|
3
|
-
## 2026-
|
|
4
|
-
|
|
5
|
-
- [2.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
- [2.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
- [2.
|
|
22
|
-
|
|
23
|
-
## 2026-
|
|
24
|
-
|
|
25
|
-
- [2.
|
|
26
|
-
|
|
27
|
-
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
- [2.
|
|
41
|
-
|
|
42
|
-
## 2026-07-
|
|
43
|
-
|
|
44
|
-
- [2.
|
|
45
|
-
|
|
46
|
-
## 2026-07-
|
|
47
|
-
|
|
48
|
-
- [2.
|
|
49
|
-
|
|
50
|
-
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
- [2.
|
|
59
|
-
|
|
60
|
-
-
|
|
61
|
-
|
|
62
|
-
- [2.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
- [2.30.
|
|
68
|
-
- [2.30.
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
-
|
|
74
|
-
|
|
75
|
-
- [2.30.
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
- [2.30.
|
|
81
|
-
- [2.30.
|
|
82
|
-
- [2.30.
|
|
83
|
-
- [2.30.
|
|
84
|
-
|
|
85
|
-
## 2026-06-
|
|
86
|
-
|
|
87
|
-
- [2.
|
|
88
|
-
- [2.
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
- [2.29.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
- [2.
|
|
101
|
-
- [2.
|
|
102
|
-
- [2.
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
- [2.
|
|
108
|
-
- [2.
|
|
109
|
-
- [2.
|
|
110
|
-
- [2.
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
- [2.
|
|
116
|
-
- [2.
|
|
117
|
-
- [2.
|
|
118
|
-
- [2.
|
|
119
|
-
- [2.
|
|
120
|
-
|
|
121
|
-
## 2026-05-
|
|
122
|
-
|
|
123
|
-
- [2.26.
|
|
124
|
-
- [2.26.
|
|
125
|
-
- [2.26.
|
|
126
|
-
- [2.26.1] Bug fix in `
|
|
127
|
-
- [2.26.
|
|
128
|
-
|
|
129
|
-
## 2026-05-
|
|
130
|
-
|
|
131
|
-
- [2.
|
|
132
|
-
- [2.
|
|
133
|
-
- [2.
|
|
134
|
-
- [2.
|
|
135
|
-
- [2.
|
|
136
|
-
|
|
137
|
-
## 2026-05-
|
|
138
|
-
|
|
139
|
-
- [2.
|
|
140
|
-
- [2.
|
|
141
|
-
- [2.
|
|
142
|
-
- [2.
|
|
143
|
-
- [2.
|
|
144
|
-
|
|
145
|
-
-
|
|
146
|
-
|
|
147
|
-
- [2.24.0]
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
- [2.
|
|
152
|
-
- [2.
|
|
153
|
-
- [2.
|
|
154
|
-
- [2.
|
|
155
|
-
- [2.
|
|
156
|
-
|
|
157
|
-
-
|
|
158
|
-
|
|
159
|
-
- [2.23.0] Add `model
|
|
160
|
-
- [2.23.0]
|
|
161
|
-
- [2.23.0]
|
|
162
|
-
- [2.23.0] Add
|
|
163
|
-
- [2.23.0]
|
|
164
|
-
- [2.23.0]
|
|
165
|
-
- [2.23.0]
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
- [2.
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
- [2.
|
|
174
|
-
|
|
175
|
-
-
|
|
176
|
-
|
|
177
|
-
- [2.22.
|
|
178
|
-
|
|
179
|
-
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
- [2.
|
|
185
|
-
- [2.
|
|
186
|
-
- [2.
|
|
187
|
-
- [2.
|
|
188
|
-
- [2.
|
|
189
|
-
|
|
190
|
-
## 2026-04-
|
|
191
|
-
|
|
192
|
-
- [2.21.
|
|
193
|
-
- [2.21.
|
|
194
|
-
- [2.21.
|
|
195
|
-
- [2.21.
|
|
196
|
-
- [2.21.
|
|
197
|
-
|
|
198
|
-
-
|
|
199
|
-
|
|
200
|
-
- [2.21.0]
|
|
201
|
-
- [2.21.0]
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
- [2.
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
- [2.
|
|
210
|
-
|
|
211
|
-
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
- [2.19.
|
|
218
|
-
- [2.19.
|
|
219
|
-
- [2.19.
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
- [2.
|
|
225
|
-
- [2.
|
|
226
|
-
- [2.
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
- [2.18.
|
|
232
|
-
- [2.18.
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
-
|
|
237
|
-
|
|
238
|
-
- [2.18.
|
|
239
|
-
- [2.18.
|
|
240
|
-
- [2.18.
|
|
241
|
-
|
|
242
|
-
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
- [2.
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
- [2.
|
|
251
|
-
|
|
252
|
-
-
|
|
253
|
-
|
|
254
|
-
- [2.
|
|
255
|
-
|
|
256
|
-
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
- [2.
|
|
261
|
-
- [2.
|
|
262
|
-
- [2.
|
|
263
|
-
- [2.
|
|
264
|
-
- [2.
|
|
265
|
-
|
|
266
|
-
-
|
|
267
|
-
|
|
268
|
-
- [2.15.0]
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
- [2.
|
|
273
|
-
- [2.
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
- [2.
|
|
282
|
-
|
|
283
|
-
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
- [2.
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
- [2.11.
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
- [2.
|
|
311
|
-
|
|
312
|
-
-
|
|
313
|
-
|
|
314
|
-
- [2.10.
|
|
315
|
-
|
|
316
|
-
## 2026-03-
|
|
317
|
-
|
|
318
|
-
- [2.
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
- [2.
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
- [2.9.
|
|
332
|
-
|
|
333
|
-
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
- [2.
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
-
|
|
363
|
-
|
|
364
|
-
- [2.
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
- [2.6.
|
|
373
|
-
|
|
374
|
-
## 2026-02-
|
|
375
|
-
|
|
376
|
-
- [2.6.
|
|
377
|
-
|
|
378
|
-
## 2026-02-
|
|
379
|
-
|
|
380
|
-
- [2.6.
|
|
381
|
-
|
|
382
|
-
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
-
|
|
387
|
-
|
|
388
|
-
- [2.
|
|
389
|
-
- [2.
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
- [2.
|
|
395
|
-
- [2.
|
|
396
|
-
- [2.
|
|
397
|
-
- [2.
|
|
398
|
-
|
|
399
|
-
## 2026-01-
|
|
400
|
-
|
|
401
|
-
- [2.
|
|
402
|
-
- [2.
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
- [2.
|
|
417
|
-
|
|
418
|
-
## 2026-01-
|
|
419
|
-
|
|
420
|
-
- [2.2.
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
- [2.2.
|
|
430
|
-
|
|
431
|
-
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
- [2.2.0]
|
|
456
|
-
|
|
457
|
-
## 2025-12-
|
|
458
|
-
|
|
459
|
-
- [2.2.0]
|
|
460
|
-
|
|
461
|
-
## 2025-12-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
- [2.
|
|
468
|
-
|
|
469
|
-
-
|
|
1
|
+
# Changes
|
|
2
|
+
|
|
3
|
+
## 2026-09-06
|
|
4
|
+
|
|
5
|
+
- [2.39.1] Bug fix in `helper.getRefs()`
|
|
6
|
+
|
|
7
|
+
## 2026-08-24
|
|
8
|
+
|
|
9
|
+
- [2.39.0] Now use the new `app.lib.startInterval()`
|
|
10
|
+
|
|
11
|
+
## 2026-08-18
|
|
12
|
+
|
|
13
|
+
- [2.38.0] Change `createAggregate()` to `aggregate()`
|
|
14
|
+
- [2.38.0] Change `createHistogram()` to `histogram()`
|
|
15
|
+
|
|
16
|
+
## 2026-08-13
|
|
17
|
+
|
|
18
|
+
- [2.37.1] Bug fix in `adapter.js` to pass options when calling `getRecord()`
|
|
19
|
+
- [2.37.1] Bug fix in `model._simpleLookup()` to return `null` if query string is not right
|
|
20
|
+
- [2.37.1] Bug fix in `model.sanitizeFixture()` to not sanitize value that is `null` or `undefined`
|
|
21
|
+
- [2.37.2] Bug fix in `reviveRegexInJson()` when handling with regex
|
|
22
|
+
|
|
23
|
+
## 2026-08-06
|
|
24
|
+
|
|
25
|
+
- [2.37.0] Update `memory.connect()` to use the new `app.lib.setInterval()`
|
|
26
|
+
|
|
27
|
+
## 2026-08-03
|
|
28
|
+
|
|
29
|
+
- [2.36.2] Bug fix in `model.rebuildModel()`
|
|
30
|
+
|
|
31
|
+
## 2026-07-31
|
|
32
|
+
|
|
33
|
+
- [2.36.0] Add test suite
|
|
34
|
+
- [2.36.0] Add parameter `options` to `model.sanitizeRecord()`
|
|
35
|
+
- [2.36.1] Bug fix in `model.exists()`
|
|
36
|
+
|
|
37
|
+
## 2026-07-29
|
|
38
|
+
|
|
39
|
+
- [2.35.0] Add parameter `options` to `adapter.sanitizeRecord()` to allow passing additional options for sanitization
|
|
40
|
+
- [2.35.0] Change `options.i18n` to `options.intl` in `adapter.sanitizeRecord()` for consistency with other methods
|
|
41
|
+
|
|
42
|
+
## 2026-07-28
|
|
43
|
+
|
|
44
|
+
- [2.34.1] Bug fix in `adapter.sanitizeRecord()`
|
|
45
|
+
|
|
46
|
+
## 2026-07-26
|
|
47
|
+
|
|
48
|
+
- [2.34.0] Add `options.i18n` to `model.sanitizeRecord()`
|
|
49
|
+
|
|
50
|
+
## 2026-07-24
|
|
51
|
+
|
|
52
|
+
- [2.33.0] Change `selfBind` to `bindThis`
|
|
53
|
+
|
|
54
|
+
## 2026-07-12
|
|
55
|
+
|
|
56
|
+
- [2.32.0] Change `driver` to `adapter`
|
|
57
|
+
- [2.32.0] Change `_util.js` to `helper.js`
|
|
58
|
+
- [2.32.0] Update documentations
|
|
59
|
+
|
|
60
|
+
## 2026-06-29
|
|
61
|
+
|
|
62
|
+
- [2.31.0] Add `dobo.driver:{before|after}Any`
|
|
63
|
+
|
|
64
|
+
## 2026-06-24
|
|
65
|
+
|
|
66
|
+
- [2.30.5] Bug fix in `model.sanitizeBody()`
|
|
67
|
+
- [2.30.5] Bug fix in `model.sanitizeRecord()`
|
|
68
|
+
- [2.30.6] Bug fix in `driver.sanitizeRecord()`
|
|
69
|
+
- [2.30.7] Bug fix in `util.getRefs()`
|
|
70
|
+
- [2.30.7] Bug fix in `model.sanitizeBody()`
|
|
71
|
+
- [2.30.7] Bug fix in `model.sanitizeRecord()`
|
|
72
|
+
|
|
73
|
+
## 2026-06-16
|
|
74
|
+
|
|
75
|
+
- [2.30.4] Bug fix in `model.sanitizeBody()`
|
|
76
|
+
- [2.30.4] Bug fix in `model._prepBodyForCreate()`
|
|
77
|
+
|
|
78
|
+
## 2026-06-13
|
|
79
|
+
|
|
80
|
+
- [2.30.2] Bug fix in `model.findAllRecord()`
|
|
81
|
+
- [2.30.2] Bug fix in `memory.findAllRecord()`
|
|
82
|
+
- [2.30.2] Bug fix in `collect-models.js`
|
|
83
|
+
- [2.30.3] Bug fix in `memory.findRecord()`
|
|
84
|
+
|
|
85
|
+
## 2026-06-12
|
|
86
|
+
|
|
87
|
+
- [2.30.0] Necessary updates to `bajo@2.18.0` specs
|
|
88
|
+
- [2.30.0] Add `sanitizeByType()`
|
|
89
|
+
- [2.30.0] Add `error._abortAction` to abort an action in driver level
|
|
90
|
+
- [2.30.0] Refactor `model.sanitizeBody()` to use shared sanitizing function
|
|
91
|
+
- [2.30.1] Bug fix in `model.sanitizeBody()`
|
|
92
|
+
|
|
93
|
+
## 2026-06-11
|
|
94
|
+
|
|
95
|
+
- [2.29.1] Bug fix in `model.sanitizeBody()`
|
|
96
|
+
- [2.29.2] Bug fix in `model.sanitizeBody()`
|
|
97
|
+
|
|
98
|
+
## 2026-06-10
|
|
99
|
+
|
|
100
|
+
- [2.29.0] Feature `dobo:immutable` now using array instead of boolean
|
|
101
|
+
- [2.29.0] Add `model.sanitizeFixture()`
|
|
102
|
+
- [2.29.0] Options `noMagic` no without touching `noModelHook`
|
|
103
|
+
- [2.29.0] Add `array` validator type
|
|
104
|
+
|
|
105
|
+
## 2026-06-03
|
|
106
|
+
|
|
107
|
+
- [2.28.0] Property `values` can now accept a function that will be called dynamically upon used
|
|
108
|
+
- [2.28.0] `_util.buildPropValues()` now become a new model method
|
|
109
|
+
- [2.28.0] Bug fix in `model.sanitizeRecord()`
|
|
110
|
+
- [2.28.0] Bug fix in `model.validate()`
|
|
111
|
+
|
|
112
|
+
## 2026-05-30
|
|
113
|
+
|
|
114
|
+
- [2.27.0] Bug fix in `model.transaction()`
|
|
115
|
+
- [2.27.0] Add `model:[before|after]RecordValidation` model hooks
|
|
116
|
+
- [2.27.0] Bug fix in `model.countRecord()`
|
|
117
|
+
- [2.27.0] Bug fix in `model.loadFixtures()`
|
|
118
|
+
- [2.27.1] Bug fix in `model.sanitizeRecord()`
|
|
119
|
+
- [2.27.2] Bug fix in `collect-models.js`
|
|
120
|
+
|
|
121
|
+
## 2026-05-29
|
|
122
|
+
|
|
123
|
+
- [2.26.1] Bug fix in `model.createRecord()`
|
|
124
|
+
- [2.26.1] Bug fix in `model.updateRecord()`
|
|
125
|
+
- [2.26.1] Bug fix in `model.upsertRecord()`
|
|
126
|
+
- [2.26.1] Bug fix in `model.removeRecord()`
|
|
127
|
+
- [2.26.4] Bug fix in `model.listAttachment()`
|
|
128
|
+
|
|
129
|
+
## 2026-05-26
|
|
130
|
+
|
|
131
|
+
- [2.26.0] Add loading multiple model schema as in one `model.js` file
|
|
132
|
+
- [2.26.0] Remove caching feature of model schema
|
|
133
|
+
- [2.26.0] Change driver hook name with this syntax: `dobo.driver:<action>`
|
|
134
|
+
- [2.26.1] Bug fix in `memory.js`
|
|
135
|
+
- [2.26.2] Bug fix in `driver.js`
|
|
136
|
+
|
|
137
|
+
## 2026-05-22
|
|
138
|
+
|
|
139
|
+
- [2.25.0] Add `array` & `object` validator handling
|
|
140
|
+
- [2.25.0] Change `interSite` definition to `xSite`
|
|
141
|
+
- [2.25.0] Add `model.getNonVirtualProperties()`
|
|
142
|
+
- [2.25.0] Bug fix in `model.loadFixtures()`
|
|
143
|
+
- [2.25.0] Handle `array` validation schema
|
|
144
|
+
|
|
145
|
+
## 2026-05-16
|
|
146
|
+
|
|
147
|
+
- [2.24.0] Change `dobo:immutable` feature, field no longer hidden
|
|
148
|
+
- [2.24.0] Add `dobo:[before|after]driver<Action>` hook
|
|
149
|
+
- [2.24.0] Add `dobo.<modelName>:[before|after]driver<Action>` hook
|
|
150
|
+
- [2.24.0] Change `model._simpleLookup()`
|
|
151
|
+
- [2.24.0] Remove `dobo:[before|after]Build[Query|Search]` hook
|
|
152
|
+
- [2.24.0] Change `model.loadFixtures()`
|
|
153
|
+
- [2.24.0] Bugfix in `model.sanitizeBody()`
|
|
154
|
+
- [2.24.0] Add `dobo:afterTransaction` hook
|
|
155
|
+
- [2.24.0] Add `dobo.<modelName>:afterTransaction` hook
|
|
156
|
+
|
|
157
|
+
## 2026-05-11
|
|
158
|
+
|
|
159
|
+
- [2.23.0] Add `beforeBulkCreate` model hook on `dobo:unique` feature
|
|
160
|
+
- [2.23.0] Add `beforeBulkCreate` model hook on `dobo:updatedAt` feature
|
|
161
|
+
- [2.23.0] Add `beforeBulkCreate` model hook on `dobo:unique` feature
|
|
162
|
+
- [2.23.0] Add `connection.initdriver()`
|
|
163
|
+
- [2.23.0] Move `model.file` in model definition to `model.options.file`
|
|
164
|
+
- [2.23.0] Move `model.attachment` in model definition to `model.options.attachment`
|
|
165
|
+
- [2.23.0] Add `model.buildStart()` and `model.buildEnd()` in model definition
|
|
166
|
+
- [2.23.0] Add `null` driver
|
|
167
|
+
- [2.23.0] Add `model.syncIdField()`
|
|
168
|
+
- [2.23.0] Rename method to `model.bulkCreateRecord` instead `bulkCreateRecords`. The later name now serve only as alias
|
|
169
|
+
- [2.23.0] Remove `getSingleRef()` and `getMultiRefs()`, use `getRefs()` instead
|
|
170
|
+
- [2.23.0] Add reference support for `array` column type
|
|
171
|
+
- [2.23.0] Bug fix in `model.findAllRecord()`, now use correctly hook names
|
|
172
|
+
- [2.23.0] Bug fix in `model.sanitizeBody()`
|
|
173
|
+
- [2.23.0] Bug fix in `model.sanitizeRecord()`
|
|
174
|
+
|
|
175
|
+
## 2026-05-03
|
|
176
|
+
|
|
177
|
+
- [2.22.1] Bug fix in `dobo:image` feature
|
|
178
|
+
|
|
179
|
+
## 2026-05-02
|
|
180
|
+
|
|
181
|
+
- [2.22.0] Add auto thumbnail creation when image attachment is uploaded
|
|
182
|
+
- [2.22.0] Add feature to get the thumbnail instead of attachment file in attachment route
|
|
183
|
+
- [2.22.0] Add `dobo:image` feature
|
|
184
|
+
- [2.22.0] Bug fix in `model.createRecord()`
|
|
185
|
+
- [2.22.0] Bug fix in `model.updateRecord()`
|
|
186
|
+
- [2.22.0] Bug fix in `model.upsertRecord()`
|
|
187
|
+
- [2.22.0] Bug fix in `model.removeRecord()`
|
|
188
|
+
- [2.22.0] Remove attachment now also remove corresponding thumbnails
|
|
189
|
+
|
|
190
|
+
## 2026-04-28
|
|
191
|
+
|
|
192
|
+
- [2.21.1] Bug fix in `collect-models.js`
|
|
193
|
+
- [2.21.1] Bug fix in `driver._updateRecord()`
|
|
194
|
+
- [2.21.1] Bug fix in `util.getMultiRef()`
|
|
195
|
+
- [2.21.1] Bug fix in setting references
|
|
196
|
+
- [2.21.1] Bug fix in `model.sanitizeRecord()`
|
|
197
|
+
|
|
198
|
+
## 2026-04-25
|
|
199
|
+
|
|
200
|
+
- [2.21.0] Change `options.formatValue` to `options.fmt`
|
|
201
|
+
- [2.21.0] Remove `options.retainOriginalValue` since it is not needed anymore
|
|
202
|
+
- [2.21.0] Remove `formatValue` altogether
|
|
203
|
+
- [2.21.0] Remove `record._orig`, in exchange switch the formatted value to `record._fmt`
|
|
204
|
+
- [2.21.0] Add `property.virtual` to set property is a virtual/calculated property
|
|
205
|
+
- [2.21.0] Add necessary safe guards for virtual property
|
|
206
|
+
- [2.21.0] Add `model.getProperties()`
|
|
207
|
+
- [2.21.0] Add `model.getIndexes()`
|
|
208
|
+
- [2.21.0] Add `model.getVirtualPropertties()`
|
|
209
|
+
- [2.21.0] Activate transaction on `loadFixtures()`
|
|
210
|
+
|
|
211
|
+
## 2026-04-23
|
|
212
|
+
|
|
213
|
+
- [2.20.1] Bug fix in `collect-models.js`, now with deep merge in advance
|
|
214
|
+
|
|
215
|
+
## 2026-04-21
|
|
216
|
+
|
|
217
|
+
- [2.19.1] Bug fix in `collect-models.js`, now values are sanitized with `parseObject()`
|
|
218
|
+
- [2.19.1] Bug fix in `options.dataOnly` on all model methods
|
|
219
|
+
- [2.19.1] Add `options.noMagic`
|
|
220
|
+
- [2.20.0] Revert back to NOT using hooks for caching
|
|
221
|
+
|
|
222
|
+
## 2026-04-19
|
|
223
|
+
|
|
224
|
+
- [2.19.0] Add `queryAny()` for query using model's scanables fields
|
|
225
|
+
- [2.19.0] Bug fix in `reviveRegexInJson()`
|
|
226
|
+
- [2.19.0] Bug fix in query sanitizing especially for regex existance
|
|
227
|
+
- [2.19.0] Remove `replaceIdInQuerySearch()` in `_util.js` as it isn't needed anymore
|
|
228
|
+
|
|
229
|
+
## 2026-04-18
|
|
230
|
+
|
|
231
|
+
- [2.18.2] Bug fix in `config` object
|
|
232
|
+
- [2.18.2] Bug fix in `getDefaultValues`
|
|
233
|
+
- [2.18.2] Bug fix in `sanitizeProp()` in `collect-models.js`
|
|
234
|
+
- [2.18.2] Bug fix in `sanitizeRecord()` for prop with `format` set to `false`
|
|
235
|
+
|
|
236
|
+
## 2026-04-17
|
|
237
|
+
|
|
238
|
+
- [2.18.1] Bug fix in `model.createAttachment()`
|
|
239
|
+
- [2.18.1] Bug fix in `model.sanitizeBody()`
|
|
240
|
+
- [2.18.1] Bug fix in `model.sanitizeRecord()`
|
|
241
|
+
|
|
242
|
+
## 2026-04-16
|
|
243
|
+
|
|
244
|
+
- [2.18.0] Add parameter options to `sanitizeObject()`
|
|
245
|
+
- [2.18.0] Rewrite `dobo:dt` feature to support customization
|
|
246
|
+
- [2.18.0] Bug fix in `model.createRecord()`
|
|
247
|
+
- [2.18.0] Changes in `model.sanitizeBody()` to throw error with payload details
|
|
248
|
+
- [2.18.0] Changes in `model.sanitizeRecord()` to support `options.retainOriginalValue`
|
|
249
|
+
- [2.18.0] Bug fix in `model.updateRecord()`
|
|
250
|
+
- [2.18.0] Bug fix in `model.upsertRecord()`
|
|
251
|
+
|
|
252
|
+
## 2026-04-13
|
|
253
|
+
|
|
254
|
+
- [2.17.0] Add `{ strict }` as parameter to `sanitizeObject()`
|
|
255
|
+
|
|
256
|
+
## 2026-04-11
|
|
257
|
+
|
|
258
|
+
- [2.16.0] Add `format` as new model's property key
|
|
259
|
+
- [2.16.0] Rewrite `getDefaultValues()` to base on `req.getSetting()`
|
|
260
|
+
- [2.16.0] All inter site admins are now exempts from `immutable` row
|
|
261
|
+
- [2.16.0] Bug fix in `collect-models.js`
|
|
262
|
+
- [2.16.0] Bug fix in `getRefs()` and `getRefs()`
|
|
263
|
+
- [2.16.0] Add feature to return formatted row(s) with `options.formatValue`
|
|
264
|
+
- [2.16.0] If row is formatted, add feature to save original row in `_orig` with `options.retainOriginalValue`
|
|
265
|
+
|
|
266
|
+
## 2026-04-07
|
|
267
|
+
|
|
268
|
+
- [2.15.0] Add `parseNql()`
|
|
269
|
+
- [2.15.0] Add `parseQuery()`
|
|
270
|
+
- [2.15.0] Add `replaceRegexInJson()`
|
|
271
|
+
- [2.15.0] Add `reviveRegexInJson()`
|
|
272
|
+
- [2.15.0] Change all `opts.fieldName` to `opts.field` in features
|
|
273
|
+
- [2.15.0] Add `ref.searchField` in model reference
|
|
274
|
+
- [2.15.0] Add `ref.labelField` in model reference
|
|
275
|
+
- [2.15.0] Add `ref.valueField` in model reference
|
|
276
|
+
- [2.15.0] change `ref.propName` to `ref.field` in model reference
|
|
277
|
+
|
|
278
|
+
## 2026-04-02
|
|
279
|
+
|
|
280
|
+
- [2.14.1] Bug fix in `hardCap`
|
|
281
|
+
- [2.14.1] `warnings` now can be turned off through `config` or site settings
|
|
282
|
+
|
|
283
|
+
## 2026-04-01
|
|
284
|
+
|
|
285
|
+
- [2.14.0] Add `between` as custom query, since it doesn't exists in NQL
|
|
286
|
+
|
|
287
|
+
## 2026-03-30
|
|
288
|
+
|
|
289
|
+
- [2.12.0] Add `.bootorder` level 10
|
|
290
|
+
- [2.12.0] Bug fix in `model._simpleLookup()`
|
|
291
|
+
- [2.12.0] Add model name in validation error's payload
|
|
292
|
+
- [2.13.0] Add `hardCap` support
|
|
293
|
+
|
|
294
|
+
## 2026-03-26
|
|
295
|
+
|
|
296
|
+
- [2.11.4] Exceptions thrown in `getRefs()` && `getRefs()` will be catched and are ignored
|
|
297
|
+
|
|
298
|
+
## 2026-03-25
|
|
299
|
+
|
|
300
|
+
- [2.11.2] Bug fix in result sets cache
|
|
301
|
+
- [2.11.3] Bug fix in cache handling if `bajoCache` isn't loaded
|
|
302
|
+
|
|
303
|
+
## 2026-03-17
|
|
304
|
+
|
|
305
|
+
- [2.11.1] Bug fix on `model.validate()`: if `partial` is true, set `fields` from `body` keys
|
|
306
|
+
|
|
307
|
+
## 2026-03-16
|
|
308
|
+
|
|
309
|
+
- [2.11.0] Attachment can now listed by its type (`image`, `video`, etc)
|
|
310
|
+
- [2.11.0] Add `_last` to autodetect last item in list in `@id.js`
|
|
311
|
+
|
|
312
|
+
## 2026-03-12
|
|
313
|
+
|
|
314
|
+
- [2.10.1] Bug fix in `model._simpleLookup()` should return `null` if query results empty value
|
|
315
|
+
|
|
316
|
+
## 2026-03-11
|
|
317
|
+
|
|
318
|
+
- [2.10.0] Add `immutable` and `feature` to the list of allowed property keys
|
|
319
|
+
- [2.10.0] Set `property.feature` to the name of feature name if property is build using `feature`
|
|
320
|
+
- [2.10.0] Add `model._simpleLookup()`
|
|
321
|
+
- [2.10.0] Refactor `model.loadFixtures()`
|
|
322
|
+
- [2.10.0] Add `property.immutable` for property that can't be updated
|
|
323
|
+
|
|
324
|
+
## 2026-03-09
|
|
325
|
+
|
|
326
|
+
- [2.9.3] Bug fix in `model.findAllRecord`
|
|
327
|
+
|
|
328
|
+
## 2026-03-07
|
|
329
|
+
|
|
330
|
+
- [2.9.2] Bug fix in `model.loadFixtures()`
|
|
331
|
+
- [2.9.2] Bug fix in `collect-connections.js`
|
|
332
|
+
|
|
333
|
+
## 2026-03-06
|
|
334
|
+
|
|
335
|
+
- [2.9.1] Bug fix in `model.sanitizeBody()`
|
|
336
|
+
|
|
337
|
+
## 2026-03-05
|
|
338
|
+
|
|
339
|
+
- [2.9.0] Add transaction support with `model.transaction()` wrapper
|
|
340
|
+
- [2.9.0] Add property `driver.support.transaction` to indicate a driver is fully support transaction or not
|
|
341
|
+
- [2.9.0] Add property `connection.options.connName`
|
|
342
|
+
|
|
343
|
+
## 2026-02-25
|
|
344
|
+
|
|
345
|
+
- [2.8.3] Bug fix in attachment route
|
|
346
|
+
|
|
347
|
+
## 2026-02-24
|
|
348
|
+
|
|
349
|
+
- [2.8.2] Bug fix in field type `textType`
|
|
350
|
+
- [2.8.2] Bug fix in `collect-models.js` when empty model is returned
|
|
351
|
+
|
|
352
|
+
## 2026-02-23
|
|
353
|
+
|
|
354
|
+
- [2.8.1] Bug fix in `memory._getCursor()`
|
|
355
|
+
- [2.8.1] Bug fix in `model.upsertRecord()`
|
|
356
|
+
|
|
357
|
+
## 2026-02-22
|
|
358
|
+
|
|
359
|
+
- [2.8.0] Add `warnings` to response object
|
|
360
|
+
- [2.8.0] Throw error if `page` above the allowed threshold
|
|
361
|
+
|
|
362
|
+
## 2026-02-20
|
|
363
|
+
|
|
364
|
+
- [2.7.0] Add `prop.values` support
|
|
365
|
+
- [2.7.0] Add `prop.rulesMsg` support
|
|
366
|
+
- [2.7.0] Change `buildFromDbModel()` on validation to async function
|
|
367
|
+
|
|
368
|
+
## 2026-02-17
|
|
369
|
+
|
|
370
|
+
- [2.6.5] Bug fix in model extender
|
|
371
|
+
- [2.6.5] Bug fix in trace logging
|
|
372
|
+
- [2.6.6] Bug fix in extender indexes
|
|
373
|
+
|
|
374
|
+
## 2026-02-05
|
|
375
|
+
|
|
376
|
+
- [2.6.4] Bug fix in driver options, `noCheckUnique` must be perform in `create`, `update` and `upsert`
|
|
377
|
+
|
|
378
|
+
## 2026-02-03
|
|
379
|
+
|
|
380
|
+
- [2.6.3] Bug fix in `model.sanitizeRecord()`
|
|
381
|
+
|
|
382
|
+
## 2026-02-02
|
|
383
|
+
|
|
384
|
+
- [2.6.2] Bug fix in query & search resolver: Do not remove old query/search, should always copied to oldQuery/oldSearch
|
|
385
|
+
|
|
386
|
+
## 2026-02-01
|
|
387
|
+
|
|
388
|
+
- [2.6.0] Add `model.scanables` for fields that can participate in table scans if necessary
|
|
389
|
+
- [2.6.0] Add `driver.support.search` for driver's fulltext search support
|
|
390
|
+
- [2.6.0] Add model hooks `before/afterBuildQuery/Search`
|
|
391
|
+
|
|
392
|
+
## 2026-01-30
|
|
393
|
+
|
|
394
|
+
- [2.5.0] Add feature to push custom `options._data`. If provided, this will be used instead of auto generated one.
|
|
395
|
+
- [2.5.0] Remove `silent` in `options` object
|
|
396
|
+
- [2.5.1] driver now support `this.useUtc` for database that store values in UTC string
|
|
397
|
+
- [2.5.1] Bug fix in `driver.sanitizeRecord()`
|
|
398
|
+
|
|
399
|
+
## 2026-01-29
|
|
400
|
+
|
|
401
|
+
- [2.4.0] Add `bulkCreateRecord()` on model & driver
|
|
402
|
+
- [2.4.0] Add `execModelHook()`
|
|
403
|
+
- [2.4.0] Bug fix in models collection
|
|
404
|
+
- [2.4.0] Add `DoboAction` to the `app.baseClass`
|
|
405
|
+
- [2.4.0] `findAllRecord()` can't be called as action
|
|
406
|
+
|
|
407
|
+
## 2026-01-26
|
|
408
|
+
|
|
409
|
+
- [2.3.1] Bug fix if reference model isn't loaded only yield warning
|
|
410
|
+
- [2.3.1] Bug fix in fetching multi references
|
|
411
|
+
|
|
412
|
+
## 2026-01-24
|
|
413
|
+
|
|
414
|
+
- [2.3.0] Add `dynHooks` to model's options
|
|
415
|
+
- [2.3.0] Add `dobo:unique` feature
|
|
416
|
+
- [2.3.0] Add `noWait` handler for model's hook
|
|
417
|
+
|
|
418
|
+
## 2026-01-21
|
|
419
|
+
|
|
420
|
+
- [2.2.5] Add `proto` to `connection.options`
|
|
421
|
+
|
|
422
|
+
## 2026-01-19
|
|
423
|
+
|
|
424
|
+
- [2.2.4] Bug fix in route `dobo:/attachment/...`
|
|
425
|
+
|
|
426
|
+
## 2026-01-18
|
|
427
|
+
|
|
428
|
+
- [2.2.2] Revert back to `mingo@6.5.1` because of bugs in `skip` operation
|
|
429
|
+
- [2.2.3] Bug fix in driver's `sanitizeBody()`
|
|
430
|
+
|
|
431
|
+
## 2026-01-16
|
|
432
|
+
|
|
433
|
+
- [2.2.1] Bug fix in model references
|
|
434
|
+
|
|
435
|
+
## 2026-01-11
|
|
436
|
+
|
|
437
|
+
- [2.2.0] Any driver that support memory DB can now declare itself as in-memory DB and be handled as such
|
|
438
|
+
- [2.2.0] `driver.init()` is removed, and driver should solely use `driver.createClient()` instead
|
|
439
|
+
- [2.2.0] Bug fixes
|
|
440
|
+
|
|
441
|
+
## 2026-01-07
|
|
442
|
+
|
|
443
|
+
- [2.2.0] Add `immutable` feature
|
|
444
|
+
- [2.2.0] Lots of bug fixes
|
|
445
|
+
|
|
446
|
+
## 2025-12-28
|
|
447
|
+
|
|
448
|
+
- [2.2.0] Add `calcAggregate()` & `calcHistogram()` for array of data objects
|
|
449
|
+
- [2.2.0] Implement `createAggregate()` & `createHistogram()` to the built-in memory database driver
|
|
450
|
+
- [2.2.0] If no `default` connection found, all models automatically bound to `memory` connection
|
|
451
|
+
|
|
452
|
+
## 2025-12-22
|
|
453
|
+
|
|
454
|
+
- [2.2.0] Introduce Action class that enables you to work on models with chainable methods
|
|
455
|
+
- [2.2.0] All base class definitions moved now to `this.baseClass` instead of `this.lib`
|
|
456
|
+
|
|
457
|
+
## 2025-12-16
|
|
458
|
+
|
|
459
|
+
- [2.2.0] Upgrade mingo to 7.1.0
|
|
460
|
+
|
|
461
|
+
## 2025-12-14
|
|
462
|
+
|
|
463
|
+
- [2.2.0] Drop Model class, replace as Model class
|
|
464
|
+
|
|
465
|
+
## 2025-12-10
|
|
466
|
+
|
|
467
|
+
- [2.2.0] Rewrite the whole thing into class based modules: Connection, driver, Feature, Model. Dobo will solely serve as DB Manager in the future
|
|
468
|
+
|
|
469
|
+
## 2025-12-05
|
|
470
|
+
- [2.2.0] Connection now saved in `this.connections` as `Connection` instance
|
|
471
|
+
|
|
472
|
+
## 2025-12-03
|
|
473
|
+
|
|
474
|
+
- [2.1.0] Upgrade joi to 18.0.2
|
|
475
|
+
- [2.1.0] Upgrade mingo to 7.0.2
|
|
476
|
+
- [2.1.0] Feature now saved in `this.features` as `Feature` instance
|
|
477
|
+
- [2.1.0] driver now saved in `this.drivers` as `driver` instance
|
|
470
478
|
- [2.1.0] Add `this.getdriver()`. Accept short name or NsPath format
|