@adaptivestone/framework 5.0.0-beta.22 → 5.0.0-beta.24

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/CHANGELOG.md CHANGED
@@ -1,648 +1,872 @@
1
- ### 5.0.0-next
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [5.0.0-next]
2
9
 
3
10
  This is a big release that contains a lot of new features and breaking changes.
4
11
  Main feature of that release is full TypeScript support insluding mongoose models.
5
12
 
6
- #### New Features
13
+ ### New Features
14
+
15
+ - **[NEW]** Full TypeScript support, including Mongoose models.
16
+ - **[NEW]** New model type: `BaseModel`, simplifying work with TypeScript and based on statics.
17
+ - **[NEW]** `AppInstance` helper to access the app instance from anywhere without passing it.
18
+ - **[NEW]** `GenerateTypes` command added.
19
+ - **[NEW]** `Lock` model for working with locks via MongoDB.
20
+ - **[NEW]** `FrameworkFolder` folder added to the app for module usage.
21
+ - **[NEW]** Ability to skip Mongo model initialization in CLI environments.
22
+ - **[NEW]** Mongo connections in CLI now have unique names, including the command name.
23
+ - **[NEW]** On shutdown event, force shutdown after a timeout.
24
+ - **[NEW]** `GenerateRandomBytes` command added.
25
+ - **[NEW]** `IpDetector` middleware for detecting proxies and `X-Forwarded-For` headers.
26
+ - **[NEW]** Test helpers getTestServerURL and serverInstance.
27
+
28
+ ### Breaking changes (please read carefully)
29
+
30
+ - **[BREAKING]** No more global variables for testing and default user will not be created by default
31
+ - **[BREAKING]** All models now should be extended from `BaseModel`. This is a potencial breaking change specially for `User` model.
32
+ - **[BREAKING]** Remove jest support for testing.
33
+ - **[BREAKING]** Move email module to separate package `@adaptivestone/framework-module-email`. Please use it if you want to send emails.
34
+ - **[BREAKING]** Remove `VIEWS` folders at all. Should not affect any user as this was not used internally.
35
+ - **[BREAKING]** Removed `noidemailer-sendmail-transport`. Not needed anymore and not recommended to use as well.
36
+ - **[BREAKING]** Remove `minimist` CLI parsing and replace it by `commandArguments` parser.
37
+ - **[BREAKING]** `vitest` v3 <https://vitest.dev/guide/migration.html>.
38
+ - **[BREAKING]** `i18next` v24 <https://www.i18next.com/misc/migration-guide#v23.x.x-to-v24.0.0>.
39
+ - **[BREAKING]** Possible breaking. Framework start using express 5 instead of express 4. Please follow express migration guide too <https://expressjs.com/en/guide/migrating-5.html>.
40
+ - **[BREAKING]** As part of express 5 migration `_` in rotes (middlewares) should have perameter. please replace `_` to `*splat`.
41
+ - **[BREAKING]** Default auth responce changed to be unified. `{token, user}` => `{data:{token, user}}`.
42
+ - **[BREAKING]** `RateLimiter` now need to have `IpDetector` middleware before.
43
+ - **[BREAKING]** Removing `staticFiles` middleware as it not used in projects anymore. Docs with nginx config will be provided.
44
+ - **[BREAKING]** Remove default `AUTH_SALT`. It should be provided on a app level now.
45
+ - **[BREAKING]** Minimum node version is 20.12 as for now (`process.loadEnvFile`).
46
+ - **[BREAKING]** ESM only. No more commonJS. That help to fix a lot of bugs with tests and provides better development expirience.
47
+ - **[BREAKING]** Mongoose v8. <https://mongoosejs.com/docs/migrating_to_8.html>.
48
+
49
+ ---
50
+
51
+ ## [5.0.0-beta.24]
52
+
53
+ - **[UPDATE]** Update types.
54
+
55
+ ---
56
+
57
+ ## [5.0.0-beta.23]
58
+
59
+ - **[BREAKING]** No more global variables for testing and default user will not be created by default
60
+ - **[NEW]** Test helpers getTestServerURL, serverInstance, setDefaultUser, setDefaultAuthToken and createDefaultTestUser.
61
+
62
+ ---
63
+
64
+ ## [5.0.0-beta.22]
65
+
66
+ - **[UPDATE]** Update types.
67
+
68
+ ---
69
+
70
+ ## [5.0.0-beta.21]
71
+
72
+ - **[FIX]** Fix bug with missed model options.
73
+
74
+ ---
75
+
76
+ ## [5.0.0-beta.20]
77
+
78
+ - **[FIX]** Fix bug with `Lock` model index.
79
+ - **[NEW]** `BaseModel` add `Virtuals`.
80
+
81
+ ---
82
+
83
+ ## [5.0.0-beta.19]
84
+
85
+ - **[NEW]** Introducing new model type. `BaseModel`. Features - simplifie works with typescript. And based on statics.
86
+ - **[BREAKING]** All models now should be extended from `BaseModel`. This is a potencial breaking change specially for `User` model.
87
+
88
+ ---
89
+
90
+ ## [5.0.0-beta.18]
91
+
92
+ - **[UPDATE]** Move away connection from `mongooseModels` to server itself (preparation for different model types).
93
+ - **[BREAKING]** Potencial. We are removed callback from `mongooseModels` contrctuctor. It was not used in code.
94
+ - **[NEW]** Add `appInstance` helper to access app instance from anywhere without passing it.
95
+
96
+ ---
97
+
98
+ ## [5.0.0-beta.17]
99
+
100
+ - **[NEW]** Add `GenerateTypes` command.
101
+
102
+ ---
103
+
104
+ ## [5.0.0-beta.16]
105
+
106
+ - **[UPDATE]** Update deps.
107
+ - **[UPDATE]** New app getter `internalFilesCache`.
108
+ - **[UPDATE]** Command new static props to load `isShouldGetModelPaths`.
109
+
110
+ ---
111
+
112
+ ## [5.0.0-beta.15]
113
+
114
+ - **[FIX]** Fix missing folder `migrations` in `dist` folder (hope that will be finally).
115
+
116
+ ---
117
+
118
+ ## [5.0.0-beta.14]
119
+
120
+ - **[FIX]** Fix missing folder `migrations` in `dist` folder.
121
+
122
+ ---
123
+
124
+ ## [5.0.0-beta.13]
125
+
126
+ - **[UPDATE]** Only process `.ts` or `.js` files (not `.map` files).
127
+
128
+ ---
129
+
130
+ ## [5.0.0-beta.12]
131
+
132
+ - **[BREAKING]** Remove jest support for testing.
133
+ - **[NEW]** Initial move to typescript. Potencially breaking.
134
+ - **[NEW]** Introduce `src` and `dist` folders.
135
+
136
+ ---
137
+
138
+ ## [5.0.0-beta.11]
139
+
140
+ - **[NEW]** Commands typing.
141
+ - **[NEW]** Commands support TS files.
142
+ - **[UPDATE]** Update deps.
143
+
144
+ ---
145
+
146
+ ## [5.0.0-beta.9]
147
+
148
+ - **[BREAKING]** Move email module to separate package `@adaptivestone/framework-module-email`. Please use it if you want to send emails.
149
+ - **[NEW]** App now contains `frameworkFolder` folder the framework located. Mostly for modules usage.
150
+ - **[BREAKING]** Remove `VIEWS` folders at all. Should not afffect any user as this was not used internally.
151
+ - **[UPDATE]** Update typing.
152
+ - **[UPDATE]** Change `redis` -> `@redis/client` as we are using only client from pakage.
153
+ - **[BREAKING]** Removed `noidemailer-sendmail-transport`. Not needed anymore and not recommended to use as well.
154
+
155
+ ---
156
+
157
+ ## [5.0.0-beta.8]
158
+
159
+ - **[UPDATE]** Update deps.
160
+ - **[NEW]** `Lock` model for working locks via mongoDB.
161
+
162
+ ---
163
+
164
+ ## [5.0.0-beta.7]
165
+
166
+ - **[UPDATE]** Update deps.
167
+ - **[UPDATE]** Change `vitest` shutdown behavior as mongo driver v6.13 change befaviur that affect us (`MongoClient.close` now closes any outstanding cursors).
168
+
169
+ ---
170
+
171
+ ## [5.0.0-beta.5]
172
+
173
+ - **[BREAKING]** Remove `minimist` CLI parsing and replace it by `commandArguments` parser.
174
+ - **[UPDATE]** Migrated from `eslint-plugin-import` to `eslint-plugin-import-x`.
175
+ - **[UPDATE]** Migrate to eslint 9 and away from aibnb styles (they are abonded).
176
+
177
+ ---
178
+
179
+ ## [5.0.0-beta.4]
180
+
181
+ - **[NEW]** On shutdown event now after timeout we are forcing to shutdown.
182
+
183
+ ---
184
+
185
+ ## [5.0.0-beta.2]
186
+
187
+ - **[UPDATE]** Update deps.
188
+ - **[NEW]** Add ability to skip mongo model init in CLI env.
189
+ - **[NEW]** Now each mongo connection on CLI have own name and inslude command name there too (`getMongoConnectionName` in command).
190
+
191
+ ---
192
+
193
+ ## [5.0.0-beta.1]
194
+
195
+ - **[UPDATE]** Update deps.
196
+ - **[BREAKING]** `vitest` v3 <https://vitest.dev/guide/migration.html>.
197
+
198
+ ---
199
+
200
+ ## [5.0.0-alpha.26]
201
+
202
+ - **[UPDATE]** Update deps.
203
+ - **[UPDATE]** New commands view in CLI.
204
+
205
+ ---
206
+
207
+ ## [5.0.0-alpha.24]
208
+
209
+ - **[UPDATE]** Update deps.
210
+ - **[BREAKING]** `i18next` v24 <https://www.i18next.com/misc/migration-guide#v23.x.x-to-v24.0.0>.
211
+
212
+ ---
213
+
214
+ ## [5.0.0-alpha.23]
215
+
216
+ - **[UPDATE]** Update deps.
217
+
218
+ ---
219
+
220
+ ## [5.0.0-alpha.22]
221
+
222
+ - **[UPDATE]** Update deps.
223
+ - **[FIX]** Fix optional routing parameters.
224
+
225
+ ---
226
+
227
+ ## [5.0.0-alpha.21]
228
+
229
+ - **[BREAKING]** Possible breaking. Framework start using express 5 instead of express 4. Please follow express migration guide too <https://expressjs.com/en/guide/migrating-5.html>.
230
+ - **[BREAKING]** As part of express 5 migration `_` in rotes (middlewares) should have perameter. please replace `_` to `*splat`.
231
+ - **[UPDATE]** Update deps.
232
+ - **[UPDATE]** Mailer uses `await import()` for startup speedup.
233
+
234
+ ---
235
+
236
+ ## [5.0.0-alpha.20]
237
+
238
+ - **[UPDATE]** Update deps.
239
+ - **[UPDATE]** `#realLogger` do not throw error in a scecific cases (`model.toJSON({virtual:true})`).
7
240
 
8
- [NEW] Full TypeScript support, including Mongoose models.
9
- [NEW] New model type: BaseModel, simplifying work with TypeScript and based on statics.
10
- [NEW] AppInstance helper to access the app instance from anywhere without passing it.
11
- [NEW] GenerateTypes command added.
12
- [NEW] Lock model for working with locks via MongoDB.
13
- [NEW] FrameworkFolder folder added to the app for module usage.
14
- [NEW] Ability to skip Mongo model initialization in CLI environments.
15
- [NEW] Mongo connections in CLI now have unique names, including the command name.
16
- [NEW] On shutdown event, force shutdown after a timeout.
17
- [NEW] GenerateRandomBytes command added.
18
- [NEW] IpDetector middleware for detecting proxies and X-Forwarded-For headers.
241
+ ---
19
242
 
20
- #### Breaking changes (please read carefully)
243
+ ## [5.0.0-alpha.19]
21
244
 
22
- [BREAKING] all models now should be extended from BaseModel. This is a potencial breaking change specially for User model.
23
- [BREAKING] Remove jest support for testing
24
- [BREAKING] move email module to separate package @adaptivestone/framework-module-email. Please use it if you want to send emails
25
- [BREAKING] remove VIEWS folders at all. Should not afffect any user as this was not used internally
26
- [BREAKING] removed noidemailer-sendmail-transport. Not needed anymore and not recommended to use as well
27
- [BREAKING] remove minimist CLI parsing and replace it by commandArguments parser
28
- [BREAKING] vitest v3 https://vitest.dev/guide/migration.html
29
- [BREAKING] i18next v24 https://www.i18next.com/misc/migration-guide#v23.x.x-to-v24.0.0
30
- [BREAKING] possible breaking. Framework start using express 5 instead of express 4. Please follow express migration guide too https://expressjs.com/en/guide/migrating-5.html.
31
- [BREAKING] AS part of express 5 migration _ in rotes (middlewares) should have perameter. please replace _ to \*splat
32
- [BREAKING] default auth responce changed to be unified. {token, user} = > {data:{token, user}}
33
- [BREAKING] RateLimiter now need to have IpDetector middleware before
34
- [BREAKING] removing staticFiles middleware as it not used in projects anymore. Docs with nginx config will be provided
35
- [BREAKING] remove default AUTH_SALT. It should be provided on a app level now
36
- [BREAKING] Minimum node version is 20.12 as for now (process.loadEnvFile)
37
- [BREAKING] ESM only. No more commonJS. That help to fix a lot of bugs with tests and provides better development expirience
38
- [BREAKING] Mongoose v8. https://mongoosejs.com/docs/migrating_to_8.html
245
+ - **[NEW]** Added `modelSchemaOptions` for models.
39
246
 
247
+ ---
40
248
 
41
- ### 5.0.0-beta.22
249
+ ## [5.0.0-alpha.18]
42
250
 
43
- [UPDATE] update types
251
+ - **[BREAKING]** Default auth responce changed to be unified. `{token, user}` => `{data:{token, user}}`.
252
+ - **[UPDATE]** `RateLimiter` updae key generation.
44
253
 
45
- ### 5.0.0-beta.21
254
+ ---
46
255
 
47
- [FIX] fix bug with missed model options
256
+ ## [5.0.0-alpha.17]
48
257
 
49
- ### 5.0.0-beta.20
258
+ - **[NEW]** `generateRandomBytes` command.
259
+ - **[UPDATE]** Update deps.
50
260
 
51
- [FIX] fix bug with Lock model index
52
- [NEW] BaseModel add Virtuals
261
+ ---
53
262
 
54
- ### 5.0.0-beta.19
263
+ ## [5.0.0-alpha.16]
55
264
 
56
- [NEW] intruducing new model type. BaseModel. Features - simplifie works with typescript. And based on statics
57
- [BREAKING] all models now should be extended from BaseModel. This is a potencial breaking change specially for User model.
265
+ - **[UPDATE]** No warning of direct usage `body` and `query`.
266
+ - **[UPDATE]** Update deps.
58
267
 
59
- ### 5.0.0-beta.18
268
+ ---
60
269
 
61
- [UPDATE] move away connection from mongooseModels to server itself (preparation for different model types)
62
- [BREAKING] potencial. We are removed callback from mongooseModels contrctuctor. It was not used in code.
63
- [NEW] add appInstance helper to access app instance from anywhere without passing it
270
+ ## [5.0.0-alpha.15]
64
271
 
65
- ### 5.0.0-beta.17
272
+ - **[BUG]** Fix bug with pagination.
273
+ - **[UPDATE]** Update deps.
66
274
 
67
- [NEW] add GenerateTypes command
275
+ ---
68
276
 
69
- ### 5.0.0-beta.16
277
+ ## [5.0.0-alpha.14]
70
278
 
71
- [UPDATE] update deps
72
- [UPDATE] new app getter internalFilesCache
73
- [UPDATE] command new static props to load isShouldGetModelPaths
279
+ - **[NEW]** Add types for `Abstract` model (wip).
74
280
 
75
- ### 5.0.0-beta.15
281
+ ---
76
282
 
77
- [FIX] fix missing folder migrations in dist folder (hope that will be finally)
283
+ ## [5.0.0-alpha.13]
78
284
 
79
- ### 5.0.0-beta.14
285
+ - **[UPDATE]** Update deps.
286
+ - **[UPDATE]** Update `i18n` internal implementation.
287
+ - **[CHANGE]** Disable https server view.
80
288
 
81
- [FIX] fix missing folder migrations in dist folder
289
+ ---
82
290
 
83
- ### 5.0.0-beta.13
291
+ ## [5.0.0-alpha.12]
84
292
 
85
- [UPDATE] only process .ts or .js files (not .map files)
293
+ - **[UPDATE]** Update deps.
86
294
 
87
- ### 5.0.0-beta.12
295
+ ---
88
296
 
89
- [BREAKING] Remove jest support for testing
90
- [NEW] initial move to typescript. Potencially breaking.
91
- [NEW] introduce src and dist folders
297
+ ## [5.0.0-alpha.11]
92
298
 
93
- ### 5.0.0-beta.11
299
+ - **[UPDATE]** Update deps.
94
300
 
95
- [NEW] commands typing
96
- [NEW] commands support TS files
97
- [UPDATE] update deps
301
+ ---
98
302
 
99
- ### 5.0.0-beta.9
303
+ ## [5.0.0-alpha.10]
100
304
 
101
- [BREAKING] move email module to separate package @adaptivestone/framework-module-email. Please use it if you want to send emails
102
- [NEW] app now contains 'frameworkFolder' folder the framework located. Mostly for modules usage
103
- [BREAKING] remove VIEWS folders at all. Should not afffect any user as this was not used internally
104
- [UPDATE] update typing
105
- [UPDATE] change redis -> @redis/client as we are using only client from pakage
106
- [BREAKING] removed noidemailer-sendmail-transport. Not needed anymore and not recommended to use as well
305
+ - **[UPDATE]** Update deps.
306
+ - **[NEW]** `IpDetector` middleware that support detecting proxy and `X-Forwarded-For` header.
307
+ - **[BREAKING]** `RateLimiter` now need to have `IpDetector` middleware before.
107
308
 
108
- ### 5.0.0-beta.8
309
+ ---
109
310
 
110
- [UPDATE] update deps
111
- [NEW] Lock model for working locks via mongoDB
311
+ ## [5.0.0-alpha.9]
112
312
 
113
- ### 5.0.0-beta.7
313
+ - **[UPDATE]** Update deps.
314
+ - **[BREAKING]** Removing `staticFiles` middleware as it not used in projects anymore. Docs with nginx config will be provided.
315
+ - **[BREAKING]** Remove default `AUTH_SALT`. It should be provided on a app level now.
316
+ - **[BREAKING]** Vitest 2.0.0 <https://vitest.dev/guide/migration.html#migrating-to-vitest-2-0>.
114
317
 
115
- [UPDATE] update deps
116
- [UPDATE] change vitest shutdown behavior as mongo driver v6.13 change befaviur that affect us (MongoClient.close now closes any outstanding cursors)
318
+ ---
117
319
 
118
- ### 5.0.0-beta.5
320
+ ## [5.0.0-alpha.8]
119
321
 
120
- [BREAKING] remove minimist CLI parsing and replace it by commandArguments parser
121
- [UPDATE] migrated from eslint-plugin-import to eslint-plugin-import-x
322
+ - **[UPDATE]** Replace `dotenv` with `loadEnvFile`.
323
+ - **[UPDATE]** Replace `nodemon` with `node --watch` (dev only).
324
+ - **[BREAKING]** Minimum node version is 20.12 as for now (`process.loadEnvFile`).
122
325
 
123
- ### 5.0.0-beta.5
326
+ ---
124
327
 
125
- [UPDATE] migrate to eslint 9 and away from aibnb styles (they are abonded)
328
+ ## [5.0.0-alpha.7]
126
329
 
127
- ### 5.0.0-beta.4
330
+ - **[UPDATE]** Deps update.
128
331
 
129
- [NEW] on shutdown event now after timeout we are forcing to shutdown
332
+ ---
130
333
 
131
- ### 5.0.0-beta.2
334
+ ## [5.0.0-alpha.6]
132
335
 
133
- [UPDATE] update deps
134
- [NEW] add ability to skip mongo model init in CLI env
135
- [NEW] now each mongo connection on CLI have own name and inslude command name there too (getMongoConnectionName in command)
336
+ - **[UPDATE]** Update internal documentation (`jsdoc`, `d.ts`).
136
337
 
137
- ### 5.0.0-beta.1
338
+ ---
138
339
 
139
- [UPDATE] update deps
140
- [BREAKING] vitest v3 https://vitest.dev/guide/migration.html
340
+ ## [5.0.0-alpha.5]
141
341
 
142
- ### 5.0.0-alpha.26
342
+ - **[UPDATE]** More verbose errors for rapsing body request.
343
+ - **[UPDATE]** Deps update.
143
344
 
144
- [UPDATE] update deps
145
- [UPDATE] new commands view in CLI
345
+ ---
146
346
 
147
- ### 5.0.0-alpha.24
347
+ ## [5.0.0-alpha.4]
148
348
 
149
- [UPDATE] update deps
150
- [BREAKING] i18next v24 https://www.i18next.com/misc/migration-guide#v23.x.x-to-v24.0.0
349
+ - **[UPDATE]** Update `rate-limiter-flexible` to v5.
350
+ - **[CHANGE]** Cache update `redis.setEX` to `redis.set(..,..,{EX:xx})` as `setEX` deprecated.
151
351
 
152
- ### 5.0.0-alpha.23
352
+ ---
153
353
 
154
- [UPDATE] update deps
354
+ ## [5.0.0-alpha.3]
155
355
 
156
- ### 5.0.0-alpha.22
356
+ - **[UPDATE]** Deps update.
357
+ - **[FIX]** `Migration` commands apply.
157
358
 
158
- [UPDATE] update deps
159
- [FIX] fix optional routing parameters
359
+ ---
160
360
 
161
- ### 5.0.0-alpha.21
361
+ ## [5.0.0-alpha.2]
162
362
 
163
- [BREAKING] possible breaking. Framework start using express 5 instead of express 4. Please follow express migration guide too https://expressjs.com/en/guide/migrating-5.html.
164
- [BREAKING] AS part of express 5 migration _ in rotes (middlewares) should have perameter. please replace _ to \*splat
165
- [UPDATE] update deps
166
- [UPDATE] Mailer uses await import() for startup speedup
363
+ - **[UPDATE]** Deps update.
167
364
 
168
- ### 5.0.0-alpha.20
365
+ ---
169
366
 
170
- [UPDATE] update deps
171
- [UPDATE] #realLogger do not throw error in a scecific cases (model toJSON({virtual:true}))
367
+ ## [5.0.0-alpha.1]
172
368
 
173
- ### 5.0.0-alpha.19
369
+ - **[BREAKING]** Vitest 1.0.0 <https://vitest.dev/guide/migration.html#migrating-from-vitest-0-34-6>.
370
+ - **[BREAKING]** ESM only. No more commonJS. That help to fix a lot of bugs with tests and provides better development expirience.
371
+ - **[BREAKING]** Mongoose v8. <https://mongoosejs.com/docs/migrating_to_8.html>.
174
372
 
175
- [NEW] added modelSchemaOptions for models
373
+ ---
176
374
 
177
- ### 5.0.0-alpha.18
375
+ ## [4.11.4]
178
376
 
179
- [BREAKING] default auth responce changed to be unified. {token, user} = > {data:{token, user}}
180
- [UPDATE] RateLimiter updae key generation
377
+ - **[UPDATE]** Deps update.
181
378
 
182
- ### 5.0.0-alpha.17
379
+ ---
183
380
 
184
- [NEW] generateRandomBytes command
185
- [UPDATE] update deps
381
+ ## [4.11.3]
186
382
 
187
- ### 5.0.0-alpha.16
383
+ - **[UPDATE]** Deps update.
188
384
 
189
- [UPDATE] no warning of direct usage body and query
190
- [UPDATE] update deps
385
+ ---
191
386
 
192
- ### 5.0.0-alpha.15
387
+ ## [4.11.2]
193
388
 
194
- [BUG] fix bug with pagination
195
- [UPDATE] update deps
389
+ - **[FIX]** `Cors` middleware return proper headers on multidomains.
196
390
 
197
- ### 5.0.0-alpha.14
391
+ ---
198
392
 
199
- [NEW] add types for Abstract model (wip)
393
+ ## [4.11.1]
200
394
 
201
- ### 5.0.0-alpha.13
395
+ - **[FIX]** `Cors` middleware return proper status.
202
396
 
203
- [UPDATE] update deps
204
- [UPDATE] update i18n internal implementation
205
- [CHANGE] disable https server view
397
+ ---
206
398
 
207
- ### 5.0.0-alpha.12
399
+ ## [4.11.0]
208
400
 
209
- [UPDATE] update deps
401
+ - **[NEW]** `Cors` middleware.
402
+ - **[BREAKING]** This is a potencial breaking change as we switched from `cors` external package to internal middleware. From API nothing was changed. This is a potencial breaking changes, but it should keep working as it.
210
403
 
211
- ### 5.0.0-alpha.11
404
+ ---
212
405
 
213
- [UPDATE] update deps
406
+ ## [4.10.0]
214
407
 
215
- ### 5.0.0-alpha.10
408
+ - **[UPDATE]** Deps update.
409
+ - **[NEW]** Static file middleware.
410
+ - **[BREAKING]** This is a potencial breaking change as we switched from `express.static` to internal middleware that provide less features but faster. From API nothing was changed.
216
411
 
217
- [UPDATE] update deps
218
- [NEW] IpDetector middleware that support detecting proxy and X-Forwarded-For header
219
- [BREAKING] RateLimiter now need to have IpDetector middleware before
412
+ ---
220
413
 
221
- ### 5.0.0-alpha.9
414
+ ## [4.9.2]
222
415
 
223
- [UPDATE] update deps
224
- [BREAKING] removing staticFiles middleware as it not used in projects anymore. Docs with nginx config will be provided
225
- [BREAKING] remove default AUTH_SALT. It should be provided on a app level now
226
- [BREAKING] Vitest 2.0.0 https://vitest.dev/guide/migration.html#migrating-to-vitest-2-0
416
+ - **[UPDATE]** Deps update.
227
417
 
228
- ### 5.0.0-alpha.8
418
+ ---
229
419
 
230
- [UPDATE] replace dotenv with loadEnvFile
231
- [UPDATE] replace nodemon with node --watch (dev only)
232
- [BREAKING] Minimum node version is 20.12 as for now (process.loadEnvFile)
420
+ ## [4.9.1]
233
421
 
234
- ### 5.0.0-alpha.7
422
+ - **[UPDATE]** All responces from framework now happens in JSON. Previouls sometime aswers was in plan text.
235
423
 
236
- [UPDATE] deps update
424
+ ---
237
425
 
238
- ### 5.0.0-alpha.6
426
+ ## [4.9.0]
239
427
 
240
- [UPDATE] Update internal documentation (jsdoc, d.ts)
428
+ - **[BREAKING]** We are separated testsing to setyp and global setup. Global setup now care of mongo to make sure that only on mongodb memoery server is spinned up. If you are using `vitest` please add `"globalSetup": "node_modules/@adaptivestone/framework/tests/globalSetupVitest"` to your vitest config.
241
429
 
242
- ### 5.0.0-alpha.5
430
+ ---
243
431
 
244
- [UPDATE] More verbose errors for rapsing body request.
245
- [UPDATE] deps update
432
+ ## [4.8.3]
246
433
 
247
- ### 5.0.0-alpha.4
434
+ - **[UPDATE]** Fix problme with fat start and closing connections after.
248
435
 
249
- [UPDATE] Update rate-limiter-flexible to v5
250
- [CHANGE] Cache update redis.setEX to redis.set(..,..,{EX:xx}) as setEX deprecated
436
+ ---
251
437
 
252
- ### 5.0.0-alpha.3
438
+ ## [4.8.2]
253
439
 
254
- [UPDATE] deps update
255
- [FIX] Migration commands apply
440
+ - **[UPDATE]** CLI - disable mongoose index creation.
256
441
 
257
- ### 5.0.0-alpha.2
442
+ ---
258
443
 
259
- [UPDATE] deps update
444
+ ## [4.8.1]
260
445
 
261
- ### 5.0.0-alpha.1
446
+ - **[UPDATE]** Model inited on server inited.
447
+ - **[NEW]** New options to skip model init `isSkipModelInit`.
448
+ - **[NEW]** New method server method `initAllModels()`.
262
449
 
263
- [BREAKING] Vitest 1.0.0 https://vitest.dev/guide/migration.html#migrating-from-vitest-0-34-6
264
- [BREAKING] ESM only. No more commonJS. That help to fix a lot of bugs with tests and provides better development expirience
265
- [BREAKING] Mongoose v8. https://mongoosejs.com/docs/migrating_to_8.html
450
+ ---
266
451
 
267
- ### 4.11.4
452
+ ## [4.8.0]
268
453
 
269
- [UPDATE] deps update
454
+ - **[BREAKING]** Minimum node js version id 18.17.0 now.
455
+ - **[BREAKING]** Removed `getFileWithExtendingInhirence`. This was internal method and not suppose to use externally.
456
+ - **[UPDATE]** Update `Base.getFilesPathWithInheritance` to use `fs.read` dir resursive option.
457
+ - **[UPDATE]** Update cache (refactor+tets).
458
+ - **[UPDATE]** Update config and model inits.
270
459
 
271
- ### 4.11.3
460
+ ---
272
461
 
273
- [UPDATE] deps update
462
+ ## [4.7.0]
274
463
 
275
- ### 4.11.2
464
+ - **[UPDATE]** Update logger init (refactor).
465
+ - **[UPDATE]** Updated deps.
276
466
 
277
- [FIX] Cors middleware return proper headers on multidomains
467
+ ---
278
468
 
279
- ### 4.11.1
469
+ ## [4.6.0]
280
470
 
281
- [FIX] Cors middleware return proper status
471
+ - **[NEW]** Migrated from JEST to `vitest`.
282
472
 
283
- ### 4.11.0
473
+ ---
284
474
 
285
- [NEW] Cors middleware
286
- [BREAKING] This is a potencial breaking change as we switched from cors external package to internal middleware. From API nothing was changed. This is a potencial breaking changes, but it should keep working as it
475
+ ## [4.5.0]
287
476
 
288
- ### 4.10.0
477
+ - **[NEW]** Now `getSuper()` available as a method on mongoose models.
478
+ - **[UPDATE]** Update `rate-limiter-flexible` to v3.
479
+ - **[UPDATE]** Update test runner to suport ESM. In case problem with test please copy `babel.config.js` from framework to your project directory.
289
480
 
290
- [UPDATE] deps update
291
- [NEW] Static file middleware
292
- [BREAKING] This is a potencial breaking change as we switched from express.static to internal middleware that provide less features but faster. From API nothing was changed
481
+ ---
293
482
 
294
- ### 4.9.2
483
+ ## [4.4.0]
295
484
 
296
- [UPDATE] deps update
485
+ - **[NEW]** New method to grab url of server it testing enviroument `global.server.testingGetUrl("/some/endpoint")`.
297
486
 
298
- ### 4.9.1
487
+ ---
299
488
 
300
- [UPDATE] all responces from framework now happens in JSON. Previouls sometime aswers was in plan text
489
+ ## [4.3.1]
301
490
 
302
- ### 4.9.0
491
+ - **[UPDATE]** `Yup` file validator update. As formidable now return all fields as an array.
303
492
 
304
- [BREAKING] We are separated testsing to setyp and global setup. Global setup now care of mongo to make sure that only on mongodb memoery server is spinned up. If you are using vitest please add "globalSetup: node_modules/@adaptivestone/framework/tests/globalSetupVitest" to your vitest config
493
+ ---
305
494
 
306
- ### 4.8.3
495
+ ## [4.3.0]
307
496
 
308
- [UPDATE] Fix problme with fat start and closing connections after
497
+ - **[BREAKING]** Updated `formidable` with a new version + tests. Marked as breaking because of a new major version, but this is internal of framework and exernal still the same. Should break nothing.
309
498
 
310
- ### 4.8.2
499
+ ---
311
500
 
312
- [UPDATE] CLI - disable mongoose index creation
501
+ ## [4.2.0]
313
502
 
314
- ### 4.8.1
503
+ - **[UPDATE]** Updated deps.
504
+ - **[NEW]** `CreateUser` cli command. Ability to update user by email or id.
315
505
 
316
- [UPDATE] Model inited on server inited.
317
- [NEW] New options to skip model init isSkipModelInit
318
- [NEW] New method server method initAllModels()
506
+ ---
319
507
 
320
- ### 4.8.0
508
+ ## [4.1.0]
321
509
 
322
- [BREAKING] Minimum node js version id 18.17.0 now.
323
- [BREAKING] Removed getFileWithExtendingInhirence. This was internal method and not suppose to use externally
324
- [UPDATE] update Base getFilesPathWithInheritance to use fs.read dir resursive option
325
- [UPDATE] update cache (refactor+tets)
326
- [UPDATE] update config and model inits
510
+ - **[UPDATE]** Updated deps.
511
+ - **[NEW]** Email - Ability to render templae to string for future usage.
327
512
 
328
- ### 4.7.0
513
+ ---
329
514
 
330
- [UPDATE] update logger init (refactor)
331
- [UPDATE] updated deps
515
+ ## [4.0.0]
332
516
 
333
- ### 4.6.0
517
+ - **[BREAKING]** Change `bcrypt` encryption with `scrypt`.
518
+ - **[BREAKING]** Change internal express parser to `formidable` parser. Affect you if external `formidable` is used.
519
+ - **[BREAKING]** Should not affect any user. Changed `email-templates` module to internal implementation. Idea to keep dependensy list smaller.
520
+ - **[BREAKING]** Change `i18n` middleware to internal one. Nothing should be affected.
521
+ - **[BREAKING]** Now validation of request splitted between `request` and `query`.
522
+ - **[BREAKING]** `supportedLngs` option added to `i18n` config.
523
+ - **[BREAKING]** Email inliner now looking for `src/services/messaging/email/resources` folder instead of `build` folder.
524
+ - **[BREAKING]** Mongoose v7. <https://mongoosejs.com/docs/migrating_to_7.html>.
525
+ - **[BREAKING]** `Yup` validation was updated to v1 <https://github.com/jquense/yup/issues/1906>.
526
+ - **[DEPRECATED]** `getExpress` path is deprecated. Renamed to `getHttpPath`.
527
+ - **[NEW]** Pagination middleware.
528
+ - **[NEW]** `requestLogger` middleware. Migrated from core server to be an middleware.
529
+ - **[NEW]** `CreateUser` command.
530
+ - **[NEW]** Custom `yup` validator for validate File requests.
531
+ - **[UPDATE]** Updated deps.
532
+ - **[UPDATE]** `openApi` generator support files.
533
+ - **[UPDATE]** Updated `18n` middleware. Introduced internal cachce. Speed up of request processing up to 100%.
534
+ - **[UPDATE]** Cache drivers to JSON support `BigInt` numbers.
334
535
 
335
- [NEW] migrated from JEST to vitest
536
+ ---
336
537
 
337
- ### 4.5.0
538
+ ## [3.4.3]
338
539
 
339
- [NEW] Now getSuper() available as a method on mongoose models
340
- [UPDATE] Update rate-limiter-flexible to v3
341
- [UPDATE] Update test runner to suport ESM. In case problem with test please copy babel.config.js from framework to your project directory
540
+ - **[UPDATE]** Updated deps.
541
+ - **[FIX]** Fix tests for redis.
542
+ - **[FIX]** Support in tests `TEST_FOLDER_EMAILS`.
342
543
 
343
- ### 4.4.0
544
+ ---
344
545
 
345
- [NEW] New method to grab url of server it testing enviroument global.server.testingGetUrl("/some/endpoint")
546
+ ## [3.4.2]
346
547
 
347
- ### 4.3.1
548
+ - **[UPDATE]** Updated deps.
549
+ - **[FIX]** Fix documentation generation.
348
550
 
349
- [UPDATE] Yup file validator update. As formidable now return all fields as an array
551
+ ---
350
552
 
351
- ### 4.3.0
553
+ ## [3.4.1]
352
554
 
353
- [BREAKING] updated formidable with a new version + tests. Marked as breaking because of a new major version, but this is internal of framework and exernal still the same. Should break nothing
555
+ - **[FIX]** Fix documentation generation.
354
556
 
355
- ### 4.2.0
557
+ ---
356
558
 
357
- [UPDATE] updated deps
358
- [NEW] CreateUser cli command. Ability to update user by email or id.
559
+ ## [3.4.0]
359
560
 
360
- ### 4.1.0
561
+ - **[NEW]** Now we pass `req` to validation and casting as a second parameter. This done mostly for custom validators.
361
562
 
362
- [UPDATE] updated deps
363
- [NEW] email - Ability to render templae to string for future usage
563
+ ---
364
564
 
365
- ### 4.0.0
565
+ ## [3.3.0]
366
566
 
367
- [BREAKING] change bcrypt encryption with scrypt
368
- [BREAKING] change internal express parser to formidable parser. Affect you if external formidable is used
369
- [BREAKING] should not affect any user. Changed email-templates module to internal implementation. Idea to keep dependensy list smaller
370
- [BREAKING] change i18n middleware to internal one. Nothing should be affected
371
- [BREAKING] now validation of request splitted between request and query
372
- [BREAKING] supportedLngs option added to i18n config
373
- [BREAKING] email inliner now looking for src/services/messaging/email/resources folder instead of 'build' folder.
567
+ - **[NEW]** New command `SyncIndexes` to sync indexes for mongodb <https://framework.adaptivestone.com/docs/cli#syncindexes>.
568
+ - **[UPDATE]** Updated deps.
569
+ - **[FIX]** Fix documentation generation.
374
570
 
375
- [BREAKING] Mongoose v7. https://mongoosejs.com/docs/migrating_to_7.html
376
- [BREAKING] Yup validation was updated to v1 https://github.com/jquense/yup/issues/1906
571
+ ---
377
572
 
378
- [DEPRECATED] getExpress path is deprecated. Renamed to getHttpPath
573
+ ## [3.2.2]
379
574
 
380
- [NEW] pagination middleware
381
- [NEW] requestLogger middleware. Migrated from core server to be an middleware
382
- [NEW] CreateUser command
383
- [NEW] custom yup validator for validate File requests
384
- [UPDATE] updated deps
385
- [UPDATE] openApi generator support files
386
- [UPDATE] updated 18n middleware. Introduced internal cachce. Speed up of request processing up to 100%
387
- [UPDATE] cache drivers to JSON support BigInt numbers
575
+ - **[UPDATE]** Add options for `i18n` to config.
576
+ - **[CHANGE]** By default `i18n` not writing missed keys. Can be enabled via config.
388
577
 
389
- ### 3.4.3
578
+ ---
390
579
 
391
- [UPDATE] updated deps
392
- [FIX] fix tests for redis
393
- [FIX] support in tests TEST_FOLDER_EMAILS
580
+ ## [3.2.1]
394
581
 
395
- ### 3.4.2
582
+ - **[UPDATE]** Updated deps.
583
+ - **[FIX]** Fix documentation generation.
396
584
 
397
- [UPDATE] updated deps
398
- [FIX] fix documentation generation
585
+ ---
399
586
 
400
- ### 3.4.1
587
+ ## [3.2.0]
401
588
 
402
- [FIX] fix documentation generation
589
+ - **[UPDATE]** Updated deps.
590
+ - **[NEW]** `cache.removeKey(key)` - function to remove key from cache.
403
591
 
404
- ### 3.4.0
592
+ ---
405
593
 
406
- [NEW] now we pass 'req' to validation and casting as a second parameter. This done mostly for custom validators
594
+ ## [3.1.1]
407
595
 
408
- ### 3.3.0
596
+ - **[UPDATE]** Updated deps.
597
+ - **[FIX]** Fix cache error handling.
409
598
 
410
- [NEW] new command 'SyncIndexes' to sync indexes for mongodb https://framework.adaptivestone.com/docs/cli#syncindexes
411
- [UPDATE] updated deps
412
- [FIX] fix documentation generation
599
+ ---
413
600
 
414
- ### 3.2.2
601
+ ## [3.1.0]
415
602
 
416
- [UPDATE] add options for i18n to config.
417
- [CHANGE] by default i18n not writing missed keys. Can be enabled via config
603
+ - **[NEW]** New comand to generate open API documentation (wip).
604
+ - **[NEW]** Coverage report.
605
+ - **[UPDATE]** Updated deps.
418
606
 
419
- ### 3.2.1
607
+ ---
420
608
 
421
- [UPDATE] updated deps
422
- [FIX] fix documentation generation
609
+ ## [3.0.23]
423
610
 
424
- ### 3.2.0
611
+ - **[UPDATE]** Updated deps.
612
+ - **[FIX]** Fix custom errors.
425
613
 
426
- [UPDATE] updated deps
427
- [NEW] cache.removeKey(key) - function to remove key from cache
614
+ ---
428
615
 
429
- ### 3.1.1
616
+ ## [3.0.22]
430
617
 
431
- [UPDATE] updated deps
432
- [FIX] fix cache error handling.
618
+ - **[UPDATE]** Updated deps.
619
+ - **[UPDATE]** Cast function now can be ASYNC too.
433
620
 
434
- ### 3.1.0
621
+ ---
435
622
 
436
- [NEW] new comand to generate open API documentation (wip)
437
- [NEW] coverage report
438
- [UPDATE] updated deps
623
+ ## [3.0.21]
439
624
 
440
- ### 3.0.23
625
+ - **[UPDATE]** Updated redis to v4.
626
+ - **[NEW]** Updates tests to have own namespace on redis.
441
627
 
442
- [UPDATE] updated deps
443
- [FIX] fix custom errors
628
+ ---
444
629
 
445
- ### 3.0.22
630
+ ## [3.0.20]
446
631
 
447
- [UPDATE] updated deps
448
- [UPDATE] cast function now can be ASYNC too
632
+ - **[UPDATE]** Update deps.
449
633
 
450
- ### 3.0.21
634
+ ---
451
635
 
452
- [UPDATE] updated redis to v4
453
- [NEW] updates tests to have own namespace on redis
636
+ ## [3.0.19]
454
637
 
455
- ### 3.0.20
638
+ - **[UPDATE]** Update deps.
456
639
 
457
- [UPDATE] update deps
640
+ ---
458
641
 
459
- ### 3.0.19
642
+ ## [3.0.18]
460
643
 
461
- [UPDATE] update deps
644
+ - **[UPDATE]** Update deps.
645
+ - **[UPDATE]** Change default branch to `main`.
462
646
 
463
- ### 3.0.18
647
+ ---
464
648
 
465
- [UPDATE] update deps
466
- [UPDATE] change default branch to 'main'
649
+ ## [3.0.17]
467
650
 
468
- ### 3.0.17
651
+ - **[UPDATE]** Update deps.
469
652
 
470
- [UPDATE] update deps
653
+ ---
471
654
 
472
- ### 3.0.16
655
+ ## [3.0.16]
473
656
 
474
- [UPDATE] update deps
475
- [FIX] fix bug with route level middleware
657
+ - **[UPDATE]** Update deps.
658
+ - **[FIX]** Fix bug with route level middleware.
476
659
 
477
- ### 3.0.15
660
+ ---
478
661
 
479
- [UPDATE] update deps
480
- [UPDATE] minimum node version 16
662
+ ## [3.0.15]
481
663
 
482
- ### 3.0.14
664
+ - **[UPDATE]** Update deps.
665
+ - **[UPDATE]** Minimum node version 16.
483
666
 
484
- [NEW] now possible to show all errors during validation (default one) by parameter controllerValidationAbortEarly
485
- [UPDATE] update deps
667
+ ---
486
668
 
487
- ### 3.0.13
669
+ ## [3.0.14]
488
670
 
489
- [UPDATE] bug fix with "mergeParams"
671
+ - **[NEW]** Now possible to show all errors during validation (default one) by parameter `controllerValidationAbortEarly`.
672
+ - **[UPDATE]** Update deps.
490
673
 
491
- ### 3.0.12
674
+ ---
492
675
 
493
- [NEW] ability to pass "mergeParams" options to express router
494
- [UPDATE] update deps
676
+ ## [3.0.13]
495
677
 
496
- ### 3.0.11
678
+ - **[UPDATE]** Bug fix with "mergeParams".
497
679
 
498
- [UPDATE] more verbose email error
680
+ ---
499
681
 
500
- ### 3.0.10
682
+ ## [3.0.12]
501
683
 
502
- [UPDATE] update deps
503
- [CHANGE] tests afterAll not using timeout anymore (conflict with jest 28-alpha)
504
- [NEW] config for mail now supports "EMAIL_TRANSPORT" env variable. SMTP by default (as was)
684
+ - **[NEW]** Ability to pass "mergeParams" options to express router.
685
+ - **[UPDATE]** Update deps.
505
686
 
506
- ### 3.0.9
687
+ ---
507
688
 
508
- [UPDATE] update deps
689
+ ## [3.0.11]
509
690
 
510
- ### 3.0.8
691
+ - **[UPDATE]** More verbose email error.
511
692
 
512
- [UPDATE] update deps
693
+ ---
513
694
 
514
- ### 3.0.7
695
+ ## [3.0.10]
515
696
 
516
- [UPDATE] update deps
517
- [CHANGE] change default getConfig method
697
+ - **[UPDATE]** Update deps.
698
+ - **[CHANGE]** Tests `afterAll` not using timeout anymore (conflict with jest 28-alpha).
699
+ - **[NEW]** Config for mail now supports "EMAIL_TRANSPORT" env variable. SMTP by default (as was).
518
700
 
519
- ### 3.0.6
701
+ ---
520
702
 
521
- [UPDATE] update deps
703
+ ## [3.0.9]
522
704
 
523
- ### 3.0.5
705
+ - **[UPDATE]** Update deps.
524
706
 
525
- [UPDATE] update deps
707
+ ---
526
708
 
527
- ### 3.0.4
709
+ ## [3.0.8]
528
710
 
529
- [UPDATE] fix bug with app shutdown
711
+ - **[UPDATE]** Update deps.
530
712
 
531
- ### 3.0.3
713
+ ---
532
714
 
533
- [UPDATE] update deps
715
+ ## [3.0.7]
534
716
 
535
- ### 3.0.2
717
+ - **[UPDATE]** Update deps.
718
+ - **[CHANGE]** Change default `getConfig` method.
536
719
 
537
- [UPDATE] update deps
720
+ ---
538
721
 
539
- ### 3.0.1
722
+ ## [3.0.6]
540
723
 
541
- [UPDATE] update deps
542
- [UPDATE] getUserByTokens more logs
724
+ - **[UPDATE]** Update deps.
543
725
 
544
- ### 3.0.0
726
+ ---
545
727
 
546
- [BREAKING] Mongoose v6. Than a lot of changes:[mongoDB drive changes](https://github.com/mongodb/node-mongodb-native/blob/4.0/docs/CHANGES_4.0.0.md), [Mongoose changes](https://mongoosejs.com/docs/migrating_to_6.html).
547
- Notable changes from migration
548
- Removed `execPopulate()`[link](https://mongoosejs.com/docs/migrating_to_6.html#removed-execpopulate)
728
+ ## [3.0.5]
549
729
 
550
- ```js
551
- // Document#populate() now returns a promise and is now no longer chainable.
730
+ - **[UPDATE]** Update deps.
552
731
 
553
- //Replace
554
- await doc.populate('path1').populate('path2').execPopulate();
555
- // with
556
- await doc.populate(['path1', 'path2']);
557
- //Replace
558
- await doc
559
- .populate('path1', 'select1')
560
- .populate('path2', 'select2')
561
- .execPopulate();
562
- // with
563
- await doc.populate([
564
- { path: 'path1', select: 'select1' },
565
- { path: 'path2', select: 'select2' },
566
- ]);
567
- ```
732
+ ---
568
733
 
569
- [REMOVED] removed deprecated router handler string not allowed anymore. Use functions by itself
570
- [REMOVED] removed deprecated someSecretSalt() on user model (use this.saltSecret instead)
571
- [REMOVED] removed deprecated validate() on abstract controller and as result validator dependency. Use request validators instead
572
- [REMOVED] removed deprecated isUseControllerNameForRouting() on abstract controller. Use getExpressPath() instead
573
- [REMOVED] removed deprecated Base.loadFilesWithInheritance please use getFilesPathWithInheritance that produce almost the same output
574
- [BREAKING] Removed "success" field on Auth contreoller. Please use http status instead
575
- [BREAKING] Auth controller - "error" error responce renamed to "message"
734
+ ## [3.0.4]
576
735
 
577
- ```js
578
- // Before
579
- {
580
- error: 'Some error';
581
- }
582
- // After
583
- {
584
- message: 'Some error';
585
- }
586
- ```
736
+ - **[UPDATE]** Fix bug with app shutdown.
587
737
 
588
- [UPDATE] update deps
589
- [UPDATE] winston console transport now using timestapms
590
- [UPDATE] PrepareAppInfo middleware now a global one. Do not need to include it on every controller
591
- [NEW] Request also works with req.query, but req.body have bigger priority
738
+ ---
592
739
 
593
- ### 2.18.0
740
+ ## [3.0.3]
594
741
 
595
- [UPDATE] update deps
596
- [UPDATE] replace body-parser with express.json
597
- [NEW] role middleware
742
+ - **[UPDATE]** Update deps.
598
743
 
599
- ### 2.17.0
744
+ ---
600
745
 
601
- [UPDATE] update deps
602
- [NEW] new env variable LOGGER_SENTRY_LEVEL (default=info)
603
- [NEW] new env variable LOGGER_CONSOLE_ENABLE (default=true)
604
- [BREAKING] on translation we changed i18next. Please convert files if you have plurals inside it https://i18next.github.io/i18next-v4-format-converter-web/
746
+ ## [3.0.2]
605
747
 
606
- #### 2.16.0
748
+ - **[UPDATE]** Update deps.
607
749
 
608
- [UPDATE] update deps
609
- [NEW] begin adding type script definitions
750
+ ---
610
751
 
611
- #### 2.15.4
752
+ ## [3.0.1]
612
753
 
613
- [UPDATE] update deps
614
- [UPDATE] update tests timeout
754
+ - **[UPDATE]** Update deps.
755
+ - **[UPDATE]** `getUserByTokens` more logs.
615
756
 
616
- #### 2.15.0
757
+ ---
617
758
 
618
- [UPDATE] update deps
619
- [NEW] Ability to configure Auth flow with 'isAuthWithVefificationFlow' option.
620
- [BREAKING] Register not return status 201 instead of 200
759
+ ## [3.0.0]
621
760
 
622
- #### 2.14.0
761
+ - **[BREAKING]** Mongoose v6. Than a lot of changes:[mongoDB drive changes](https://github.com/mongodb/node-mongodb-native/blob/4.0/docs/CHANGES_4.0.0.md), [Mongoose changes](https://mongoosejs.com/docs/migrating_to_6.html).
762
+ Notable changes from migration
763
+ Removed `execPopulate()`[link](https://mongoosejs.com/docs/migrating_to_6.html#removed-execpopulate)
764
+ ```js
765
+ // Document#populate() now returns a promise and is now no longer chainable.
766
+ //Replace
767
+ await doc.populate('path1').populate('path2').execPopulate();
768
+ // with
769
+ await doc.populate(['path1', 'path2']);
770
+ //Replace
771
+ await doc
772
+ .populate('path1', 'select1')
773
+ .populate('path2', 'select2')
774
+ .execPopulate();
775
+ // with
776
+ await doc.populate([
777
+ { path: 'path1', select: 'select1' },
778
+ { path: 'path2', select: 'select2' },
779
+ ]);
780
+ ```
781
+ - **[REMOVED]** Removed deprecated router handler string not allowed anymore. Use functions by itself.
782
+ - **[REMOVED]** Removed deprecated `someSecretSalt()` on user model (use `this.saltSecret` instead).
783
+ - **[REMOVED]** Removed deprecated `validate()` on abstract controller and as result validator dependency. Use request validators instead.
784
+ - **[REMOVED]** Removed deprecated `isUseControllerNameForRouting()` on abstract controller. Use `getExpressPath()` instead.
785
+ - **[REMOVED]** Removed deprecated `Base.loadFilesWithInheritance` please use `getFilesPathWithInheritance` that produce almost the same output.
786
+ - **[BREAKING]** Removed "success" field on Auth contreoller. Please use http status instead.
787
+ - **[BREAKING]** Auth controller - "error" error responce renamed to "message".
788
+ ```js
789
+ // Before
790
+ {
791
+ error: 'Some error';
792
+ }
793
+ // After
794
+ {
795
+ message: 'Some error';
796
+ }
797
+ ```
798
+ - **[UPDATE]** Update deps.
799
+ - **[UPDATE]** Winston console transport now using timestapms.
800
+ - **[UPDATE]** `PrepareAppInfo` middleware now a global one. Do not need to include it on every controller.
801
+ - **[NEW]** Request also works with `req.query`, but `req.body` have bigger priority.
802
+
803
+ ---
804
+
805
+ ## [2.18.0]
806
+
807
+ - **[UPDATE]** Update deps.
808
+ - **[UPDATE]** Replace `body-parser` with `express.json`.
809
+ - **[NEW]** Role middleware.
810
+
811
+ ---
812
+
813
+ ## [2.17.0]
814
+
815
+ - **[UPDATE]** Update deps.
816
+ - **[NEW]** New env variable `LOGGER_SENTRY_LEVEL` (default=`info`).
817
+ - **[NEW]** New env variable `LOGGER_CONSOLE_ENABLE` (default=`true`).
818
+ - **[BREAKING]** On translation we changed `i18next`. Please convert files if you have plurals inside it <https://i18next.github.io/i18next-v4-format-converter-web/>.
819
+
820
+ ---
821
+
822
+ ## [2.16.0]
823
+
824
+ - **[UPDATE]** Update deps.
825
+ - **[NEW]** Begin adding type script definitions.
623
826
 
624
- [NEW] Add Sequence. It provide ability to easily generate sequences for given types. It save to use on distributed environments
827
+ ---
625
828
 
626
- ```javascript
627
- const SequenceModel = this.app.getModel('Sequence');
628
- // will be 1
629
- const someTypeSequence = await SequenceModel.getSequence('someType');
630
- // will be 2
631
- const someTypeSequence2 = await SequenceModel.getSequence('someType');
632
- // will be 1 as type is another
633
- const someAnotherTypeSequence =
634
- await SequenceModel.getSequence('someAnotherType');
635
- ```
829
+ ## [2.15.4]
636
830
 
637
- #### 2.13.1
831
+ - **[UPDATE]** Update deps.
832
+ - **[UPDATE]** Update tests timeout.
638
833
 
639
- [FIX] fix documentation about not using req.appInfo.request, but using req.body for RateLimiter
834
+ ---
640
835
 
641
- #### 2.13.0
642
-
643
- [NEW] Rate limited middleware - ability to include request components (req.body) for key generation. Please not that you have no access to req.appInfo.request on this stage
644
-
645
- ```javascript
836
+ ## [2.15.0]
837
+
838
+ - **[UPDATE]** Update deps.
839
+ - **[NEW]** Ability to configure Auth flow with `isAuthWithVefificationFlow` option.
840
+ - **[BREAKING]** Register not return status 201 instead of 200.
841
+
842
+ ---
843
+
844
+ ## [2.14.0]
845
+
846
+ - **[NEW]** Add `Sequence`. It provide ability to easily generate sequences for given types. It save to use on distributed environments.
847
+ ```javascript
848
+ const SequenceModel = this.app.getModel('Sequence');
849
+ // will be 1
850
+ const someTypeSequence = await SequenceModel.getSequence('someType');
851
+ // will be 2
852
+ const someTypeSequence2 = await SequenceModel.getSequence('someType');
853
+ // will be 1 as type is another
854
+ const someAnotherTypeSequence =
855
+ await SequenceModel.getSequence('someAnotherType');
856
+ ```
857
+
858
+ ---
859
+
860
+ ## [2.13.1]
861
+
862
+ - **[FIX]** Fix documentation about not using `req.appInfo.request`, but using `req.body` for `RateLimiter`.
863
+
864
+ ---
865
+
866
+ ## [2.13.0]
867
+
868
+ - **[NEW]** Rate limited middleware - ability to include request components (`req.body`) for key generation. Please not that you have no access to `req.appInfo.request` on this stage.
869
+ ```javascript
646
870
  static get middleware() {
647
871
  return new Map([
648
872
  ['POST/login', [
@@ -652,16 +876,16 @@ const someAnotherTypeSequence =
652
876
  ]]
653
877
  ]);
654
878
  }
655
- ```
656
-
657
- #### 2.12.0
879
+ ```
658
880
 
659
- [UPDATE] update deps
660
- [NEW] Rate limited middleware
881
+ ---
661
882
 
662
- As rate limited we using https://github.com/animir/node-rate-limiter-flexible
883
+ ## [2.12.0]
663
884
 
664
- ```javascript
885
+ - **[UPDATE]** Update deps.
886
+ - **[NEW]** Rate limited middleware.
887
+ As rate limited we using <https://github.com/animir/node-rate-limiter-flexible>
888
+ ```javascript
665
889
  static get middleware() {
666
890
  return new Map([
667
891
  ['POST/login', [
@@ -671,13 +895,10 @@ As rate limited we using https://github.com/animir/node-rate-limiter-flexible
671
895
  ]]
672
896
  ]);
673
897
  }
674
- ```
675
-
676
- Be default rate key generated based on Route, IP and userID. But you can adjust it vie config (global) or via middleware parameters (see v 2.10.0)
677
-
678
- Rate limiter have multiple backends (memory, redis and mongo). Buy default 'memory' backend activated
679
-
680
- ```javascript
898
+ ```
899
+ Be default rate key generated based on Route, IP and userID. But you can adjust it vie config (global) or via middleware parameters (see v 2.10.0)
900
+ Rate limiter have multiple backends (memory, redis and mongo). Buy default 'memory' backend activated
901
+ ```javascript
681
902
  static get middleware() {
682
903
  return new Map([
683
904
  [
@@ -696,18 +917,21 @@ Rate limiter have multiple backends (memory, redis and mongo). Buy default 'memo
696
917
  ],
697
918
  ]);
698
919
  }
699
- ```
920
+ ```
700
921
 
701
- #### 2.11.0
922
+ ---
702
923
 
703
- [NEW] Added env variable HTTP_HOST for configure host to listen
924
+ ## [2.11.0]
704
925
 
705
- #### 2.10.0
926
+ - **[NEW]** Added env variable `HTTP_HOST` for configure host to listen.
706
927
 
707
- [UPDATE] update deps
708
- [NEW] ability to pass parameters to middleware
928
+ ---
709
929
 
710
- ```javascript
930
+ ## [2.10.0]
931
+
932
+ - **[UPDATE]** Update deps.
933
+ - **[NEW]** Ability to pass parameters to middleware.
934
+ ```javascript
711
935
  static get middleware() {
712
936
  return new Map([
713
937
  ['POST/someUrl', [
@@ -717,113 +941,150 @@ Rate limiter have multiple backends (memory, redis and mongo). Buy default 'memo
717
941
  ]]
718
942
  ]);
719
943
  }
720
- ```
944
+ ```
945
+ All this params goes to constructor as a second paramater.
946
+
947
+ ---
948
+
949
+ ## [2.9.2]
950
+
951
+ - **[UPDATE]** Update deps.
952
+ - **[FIX]** Fix auth nick.
953
+
954
+ ---
955
+
956
+ ## [2.9.1]
957
+
958
+ - **[UPDATE]** Update deps.
959
+
960
+ ---
721
961
 
722
- All this params goes to constructor as a second paramater
962
+ ## [2.9.0]
723
963
 
724
- #### 2.9.2
964
+ - **[BREAKING]** Auth controller update.
725
965
 
726
- [UPDATE] update deps
727
- [FIX] fix auth nick
966
+ ---
728
967
 
729
- #### 2.9.1
968
+ ## [2.8.3]
730
969
 
731
- [UPDATE] update deps
970
+ - **[FIX]** Update recovery email template.
732
971
 
733
- #### 2.9.0
972
+ ---
734
973
 
735
- [BREAKING] Auth controller update
974
+ ## [2.8.2]
736
975
 
737
- #### 2.8.3
976
+ - **[FIX]** Update AUTH controller.
738
977
 
739
- [FIX] update recovery email template
978
+ ---
740
979
 
741
- #### 2.8.2
980
+ ## [2.8.1]
742
981
 
743
- [FIX] update AUTH controller
982
+ - **[UPDATE]** Update deps.
983
+ - **[FIX]** Update AUTH controller.
744
984
 
745
- #### 2.8.1
985
+ ---
746
986
 
747
- [UPDATE] update deps
748
- [FIX] update AUTH controller
987
+ ## [2.8.0]
749
988
 
750
- #### 2.8.0
989
+ - **[UPDATE]** Change controllers to reflect latest changes.
990
+ - **[UPDATE]** Add warning when using `req.body` directly.
991
+ - **[BREAKING]** Possible breaking. `AsyncFunction` now required for router handler (it always was but without checking of code).
992
+ - **[DEPRECATE]** Usage of `validator` of controllers.
993
+ - **[DEPRECATE]** Usage of `isUseControllerNameForRouting` of controllers.
751
994
 
752
- [UPDATE] change controllers to reflect latest changes
753
- [UPDATE] add warning when using 'req.body' directly
754
- [BREAKING] Possible breaking. AsyncFunction now required for router handler (it always was but without checking of code)
755
- [DEPRECATE] usage of 'validator' of controllers
756
- [DEPRECATE] usage of 'isUseControllerNameForRouting' of controllers.
995
+ ---
757
996
 
758
- #### 2.7.4
997
+ ## [2.7.4]
759
998
 
760
- [UPDATE] update deps
999
+ - **[UPDATE]** Update deps.
761
1000
 
762
- #### 2.7.3
1001
+ ---
763
1002
 
764
- [UPDATE] replace i18next-node-fs-backend to i18next-fs-backend (drop in replacement)
1003
+ ## [2.7.3]
765
1004
 
766
- #### 2.7.2
1005
+ - **[UPDATE]** Replace `i18next-node-fs-backend` to `i18next-fs-backend` (drop in replacement).
767
1006
 
768
- [UPDATE] update deps
1007
+ ---
769
1008
 
770
- #### 2.7.1
1009
+ ## [2.7.2]
771
1010
 
772
- [REMOVE] remove unused websocket
1011
+ - **[UPDATE]** Update deps.
773
1012
 
774
- #### 2.7.0
1013
+ ---
775
1014
 
776
- [UPDATE] change winston sentry transport
1015
+ ## [2.7.1]
777
1016
 
778
- #### 2.6.5
1017
+ - **[REMOVE]** Remove unused websocket.
779
1018
 
780
- [UPDATE] update deps
781
- [UPDATE] optimize deps
1019
+ ---
782
1020
 
783
- #### 2.6.4
1021
+ ## [2.7.0]
784
1022
 
785
- [UPDATE] update deps
1023
+ - **[UPDATE]** Change winston sentry transport.
786
1024
 
787
- #### 2.6.3
1025
+ ---
788
1026
 
789
- [UPDATE] update deps
790
- [UPDATE] update handling exceptions loging
1027
+ ## [2.6.5]
791
1028
 
792
- #### 2.6.2
1029
+ - **[UPDATE]** Update deps.
1030
+ - **[UPDATE]** Optimize deps.
793
1031
 
794
- [UPDATE] normalize auth config
1032
+ ---
795
1033
 
796
- #### 2.6.1
1034
+ ## [2.6.4]
797
1035
 
798
- [FIX] fix error on cache system
799
- [UPDATE] stripUnknown=true by default on casting
1036
+ - **[UPDATE]** Update deps.
800
1037
 
801
- #### 2.6.0
1038
+ ---
802
1039
 
803
- [UPDATE] deps update
804
- [NEW]new cache system (alpha, subject of change)
1040
+ ## [2.6.3]
805
1041
 
806
- ```javascript
807
- const cacheTime = 60 * 5;
808
- this.app.cache.getSetValue(
809
- 'someKey',
810
- async () => {
811
- // function that will execute in case cache value is missed
812
- },
813
- cacheTime,
814
- );
815
- ```
1042
+ - **[UPDATE]** Update deps.
1043
+ - **[UPDATE]** Update handling exceptions loging.
816
1044
 
817
- #### 2.5.1
1045
+ ---
818
1046
 
819
- [UPDATE] deps update
820
- [FIX] fix error logging on unhadled rejection
1047
+ ## [2.6.2]
821
1048
 
822
- #### 2.5.0
1049
+ - **[UPDATE]** Normalize auth config.
823
1050
 
824
- [NEW] new route handler format with request validations and casting (yup based)
1051
+ ---
825
1052
 
826
- ```javascript
1053
+ ## [2.6.1]
1054
+
1055
+ - **[FIX]** Fix error on cache system.
1056
+ - **[UPDATE]** `stripUnknown=true` by default on casting.
1057
+
1058
+ ---
1059
+
1060
+ ## [2.6.0]
1061
+
1062
+ - **[UPDATE]** Deps update.
1063
+ - **[NEW]** New cache system (alpha, subject of change).
1064
+ ```javascript
1065
+ const cacheTime = 60 * 5;
1066
+ this.app.cache.getSetValue(
1067
+ 'someKey',
1068
+ async () => {
1069
+ // function that will execute in case cache value is missed
1070
+ },
1071
+ cacheTime,
1072
+ );
1073
+ ```
1074
+
1075
+ ---
1076
+
1077
+ ## [2.5.1]
1078
+
1079
+ - **[UPDATE]** Deps update.
1080
+ - **[FIX]** Fix error logging on unhadled rejection.
1081
+
1082
+ ---
1083
+
1084
+ ## [2.5.0]
1085
+
1086
+ - **[NEW]** New route handler format with request validations and casting (yup based).
1087
+ ```javascript
827
1088
  get routes() {
828
1089
  return {
829
1090
  post: {
@@ -838,217 +1099,301 @@ this.app.cache.getSetValue(
838
1099
  }
839
1100
  // send request with data {count: "5000"}
840
1101
  // will produce error with status 400 and {errors: {count:['Text error']}}
841
-
842
-
843
1102
  postSample(req,res) =>{
844
1103
  // on success validate we pass here.
845
1104
  // {count: "5000"}
846
1105
  console.log(req.appInfo.request)
847
1106
  // {count: 5000} -> casted to number
848
1107
  }
849
- ```
1108
+ ```
1109
+
1110
+ ---
1111
+
1112
+ ## [2.4.4]
850
1113
 
851
- #### 2.4.4
1114
+ - **[UPDATE]** Deps update.
1115
+ - **[NEW]** Controller unhandled rejection now handled with default error.
1116
+ - **[NEW]** Handle error with wrong model name.
852
1117
 
853
- [UPDATE] deps update
854
- [NEW] controller unhandled rejection now handled with default error
855
- [NEW] handle error with wrong model name
1118
+ ---
856
1119
 
857
- #### 2.4.3
1120
+ ## [2.4.3]
858
1121
 
859
- [UPDATE] deps update
1122
+ - **[UPDATE]** Deps update.
860
1123
 
861
- #### 2.4.2
1124
+ ---
862
1125
 
863
- [FIX] abstract controlled middleware
864
- [UPDATE] deps update
1126
+ ## [2.4.2]
865
1127
 
866
- #### 2.4.1
1128
+ - **[FIX]** Abstract controlled middleware.
1129
+ - **[UPDATE]** Deps update.
867
1130
 
868
- [FIX] updated test because of previous breaking changes
1131
+ ---
869
1132
 
870
- #### 2.4.0
1133
+ ## [2.4.1]
871
1134
 
872
- [BREAKING] possible that bug fix of middleware can affect your code. Previous route middleware was GLOBAL (router.use) now in router level only (route.any). Previous Home controller (/ route be default) middleware affect ANY routes on app. Right now that fixed.
1135
+ - **[FIX]** Updated test because of previous breaking changes.
873
1136
 
874
- [NEW] Controller middleware now support methods. Previous only ALL was supported. Possible to start router with any method that supported by Express and middleware will be scoped by this method. If middleware route started from "/" then ALL method will be used (like previous bahaviour)
1137
+ ---
875
1138
 
876
- ```javascript
1139
+ ## [2.4.0]
1140
+
1141
+ - **[BREAKING]** Possible that bug fix of middleware can affect your code. Previous route middleware was GLOBAL (`router.use`) now in router level only (`route.any`). Previous Home controller (`/` route be default) middleware affect ANY routes on app. Right now that fixed.
1142
+ - **[NEW]** Controller middleware now support methods. Previous only `ALL` was supported. Possible to start router with any method that supported by Express and middleware will be scoped by this method. If middleware route started from "/" then `ALL` method will be used (like previous bahaviour).
1143
+ ```javascript
877
1144
  static get middleware() {
878
1145
  return new Map([['GET/*', [PrepareAppInfo, GetUserByToken]]]);
879
1146
  }
880
- ```
1147
+ ```
1148
+
1149
+ ---
1150
+
1151
+ ## [2.3.14]
1152
+
1153
+ - **[FIX]** Fix validate controller method for non strings.
1154
+
1155
+ ---
1156
+
1157
+ ## [2.3.13]
1158
+
1159
+ - **[UPDATE]** Testing now with mongoDB Replica.
1160
+ - **[UPDATE]** Refactor CLI.
1161
+
1162
+ ---
1163
+
1164
+ ## [2.3.12]
1165
+
1166
+ - **[UPDATE]** Testing update.
1167
+
1168
+ ---
1169
+
1170
+ ## [2.3.11]
1171
+
1172
+ - **[UPDATE]** Refactor CLI for testing.
1173
+
1174
+ ---
1175
+
1176
+ ## [2.3.10]
1177
+
1178
+ - **[UPDATE]** Update user model indexes to allow null email and nick.
1179
+ - **[UPDATE]** Deps update.
1180
+
1181
+ ---
1182
+
1183
+ ## [2.3.9]
1184
+
1185
+ - **[FIX]** Test fix.
1186
+
1187
+ ---
1188
+
1189
+ ## [2.3.8]
1190
+
1191
+ - **[NEW]** Add `global.testSetup.beforeAll` `global.testSetup.afterAll` functions and `global.testSetup.disableUserCreate` flag for testing testing.
1192
+
1193
+ ---
1194
+
1195
+ ## [2.3.7]
1196
+
1197
+ - **[UPDATE]** Deps update.
1198
+ - **[NEW]** Add `global.testSetup.userCreate` function for testing.
1199
+
1200
+ ---
1201
+
1202
+ ## [2.3.6]
1203
+
1204
+ - **[UPDATE]** Deps update.
1205
+ - **[FIX]** Test fix.
1206
+
1207
+ ---
1208
+
1209
+ ## [2.3.5]
1210
+
1211
+ - **[NEW]** Add command `DropIndex`.
1212
+ - **[UPDATE]** Deps update.
1213
+
1214
+ ---
1215
+
1216
+ ## [2.3.4]
1217
+
1218
+ - **[NEW]** Add `webResources` option to email service.
1219
+ - **[UPDATE]** Deps update.
1220
+
1221
+ ---
1222
+
1223
+ ## [2.3.3]
1224
+
1225
+ - **[UPDATE]** Deps update.
1226
+
1227
+ ---
1228
+
1229
+ ## [2.3.2]
1230
+
1231
+ - **[FIX]** Fix controllers order to load.
881
1232
 
882
- #### 2.3.14
1233
+ ---
883
1234
 
884
- [FIX] fix validate controller method for non strings
1235
+ ## [2.3.1]
885
1236
 
886
- #### 2.3.13
1237
+ - **[FIX]** Fix parsing token.
887
1238
 
888
- [UPDATE] testing now with mongoDB Replica
889
- [UPDATE] refactor CLI
1239
+ ---
890
1240
 
891
- #### 2.3.12
1241
+ ## [2.3.0]
892
1242
 
893
- [UPDATE] testing update
1243
+ - **[NEW]** `Migration/create` `migration/migrate` commands.
894
1244
 
895
- #### 2.3.11
1245
+ ---
896
1246
 
897
- [UPDATE] refactor CLI for testing
1247
+ ## [2.2.6]
898
1248
 
899
- #### 2.3.10
1249
+ - **[NEW]** CLI command receiving parsed arguments.
900
1250
 
901
- [UPDATE] update user model indexes to allow null email and nick
902
- [UPDATE] deps update
1251
+ ---
903
1252
 
904
- #### 2.3.9
1253
+ ## [2.2.5]
905
1254
 
906
- [FIX] test fix
1255
+ - **[FIX]** Fix disconnecting problems with replica set.
907
1256
 
908
- #### 2.3.8
1257
+ ---
909
1258
 
910
- [NEW] add 'global.testSetup.beforeAll' 'global.testSetup.afterAll' functions and 'global.testSetup.disableUserCreate' flag for testing testing
1259
+ ## [2.2.4]
911
1260
 
912
- #### 2.3.7
1261
+ - **[UPDATE]** Internal update for speed up cli init.
913
1262
 
914
- [UPDATE] deps update
915
- [NEW] add 'global.testSetup.userCreate' function for testing
1263
+ ---
916
1264
 
917
- #### 2.3.6
1265
+ ## [2.2.3]
918
1266
 
919
- [UPDATE] deps update
920
- [FIX] test fix
1267
+ - **[FIX]** Fix language detection.
921
1268
 
922
- #### 2.3.5
1269
+ ---
923
1270
 
924
- [NEW] Add command DropIndex
925
- [UPDATE] deps update
1271
+ ## [2.2.2]
926
1272
 
927
- #### 2.3.4
1273
+ - **[FIX]** Fix test as part of docker image update. This just a `mongo-memory-server` problems.
1274
+ - **[NEW]** Add config to configure language detecting order and types.
928
1275
 
929
- [NEW] Add webResources option to email service
930
- [UPDATE] deps update
1276
+ ---
931
1277
 
932
- #### 2.3.3
1278
+ ## [2.2.1]
933
1279
 
934
- [UPDATE] deps update
1280
+ - **[UPDATE]** Deps update.
935
1281
 
936
- #### 2.3.2
1282
+ ---
937
1283
 
938
- [FIX] Fix controllers order to load
1284
+ ## [2.2.0]
939
1285
 
940
- #### 2.3.1
1286
+ - **[DEPRECATED]** `Base.loadFilesWithInheritance` please use `getFilesPathWithInheritance` that produce almost the same output.
1287
+ - **[UPDATE]** Deps update.
1288
+ - **[UPDATE]** Https logs now contains request time.
1289
+ - **[NEW]** Ability to put controllers into folders with path inheritance.
1290
+ - **[NEW]** Ability to replace `expressPath` on controller - `getExpressPath()` methos.
1291
+ - **[NEW]** Ability to put commands into folders with path inheritance.
941
1292
 
942
- [FIX] Fix parsing token
1293
+ ---
943
1294
 
944
- #### 2.3.0
1295
+ ## [2.1.2]
945
1296
 
946
- [NEW] Migration/create migration/migrate commands
1297
+ - **[UPDATE]** Disconnect of mongoose when command was finished.
947
1298
 
948
- #### 2.2.6
1299
+ ---
949
1300
 
950
- [NEW] CLI command receiving parsed arguments
1301
+ ## [2.1.1]
951
1302
 
952
- #### 2.2.5
1303
+ - **[UPDATE]** Deps update.
953
1304
 
954
- [FIX] Fix disconnecting problems with replica set
1305
+ ---
955
1306
 
956
- #### 2.2.4
1307
+ ## [2.1.0]
957
1308
 
958
- [UPDATE] Internal update for speed up cli init
1309
+ - **[DEV]** Added codestyle checker.
1310
+ - **[NEW]** Initial CLI module.
959
1311
 
960
- #### 2.2.3
1312
+ ---
961
1313
 
962
- [FIX] fix language detection
1314
+ ## [2.0.2]
963
1315
 
964
- #### 2.2.2
1316
+ - **[UPDATE]** Socket.io v3.
1317
+ - **[UPDATE]** Deps update.
965
1318
 
966
- [FIX] fix test as part of docker image update. This just a mongo-memory-server problems
967
- [NEW] add config to configure language detecting order and types
1319
+ ---
968
1320
 
969
- #### 2.2.1
1321
+ ## [2.0.1]
970
1322
 
971
- [UPDATE] deps update
1323
+ - **[NEW]** Added config to websocket.
972
1324
 
973
- #### 2.2.0
1325
+ ---
974
1326
 
975
- [DEPRECATED] Base.loadFilesWithInheritance please use getFilesPathWithInheritance that produce almost the same output
976
- [UPDATE] deps update
977
- [UPDATE] https logs now contains request time
978
- [NEW] Ability to put controllers into folders with path inheritance
979
- [NEW] Ability to replace expressPath on controller - getExpressPath() methos
980
- [NEW] Ability to put commands into folders with path inheritance
1327
+ ## [2.0.0]
981
1328
 
982
- #### 2.1.2
1329
+ - **[BREAKING]** Change config format of log config. Now configs can be only objects.
983
1330
 
984
- [UPDATE] disconnect of mongoose when command was finished
1331
+ ---
985
1332
 
986
- #### 2.1.1
1333
+ ## [1.5.0]
987
1334
 
988
- [UPDATE] deps update
1335
+ - **[NEW]** Support for environment configs (`config.js` and `config.{NODE_ENV}.js`) with overwrite.
1336
+ - **[UPDATE]** Deps update.
989
1337
 
990
- #### 2.1.0
1338
+ ---
991
1339
 
992
- [DEV] added codestyle checker
993
- [NEW] Initial CLI module
1340
+ ## [1.4.0]
994
1341
 
995
- #### 2.0.2 released
1342
+ - **[NEW]** Ability to pass additional parameter to server that will be executed before adding page 404.
996
1343
 
997
- [UPDATE] socket.io v3
998
- [UPDATE] deps update
1344
+ ---
999
1345
 
1000
- #### 2.0.1
1346
+ ## [1.3.0]
1001
1347
 
1002
- [NEW] Added config to websocket
1348
+ - **[NEW]** Models now support optional callback that will executed on connection ready. If mongo already connected then callback will be executed immediately.
1003
1349
 
1004
- #### 2.0.0
1350
+ ---
1005
1351
 
1006
- [BREAKING] Change config format of log config. Now configs can be only objects
1352
+ ## [1.2.9]
1007
1353
 
1008
- #### 1.5.0
1354
+ - **[UPDATE]** Update deps.
1009
1355
 
1010
- [NEW] Support for environment configs (config.js and config.{NODE_ENV}.js) with overwrite
1011
- [UPDATE] deps update
1356
+ ---
1012
1357
 
1013
- #### 1.4.0
1358
+ ## [1.2.8]
1014
1359
 
1015
- Ability to pass additional parameter to server that will be executed before adding page 404
1360
+ - **[UPDATE]** Update deps.
1016
1361
 
1017
- #### 1.3.0
1362
+ ---
1018
1363
 
1019
- Models now support optional callback that will executed on connection ready. If mongo already connected then callback will be executed immediately
1364
+ ## [1.2.7]
1020
1365
 
1021
- #### 1.2.9
1366
+ - **[NEW]** Add abilty to return error from custom validation functions.
1022
1367
 
1023
- Update deps
1368
+ ---
1024
1369
 
1025
- #### 1.2.8
1370
+ ## [1.2.6]
1026
1371
 
1027
- Update deps
1372
+ - **[UPDATE]** Validator documentation (jsdoc) update.
1373
+ - **[UPDATE]** Validator support pass parameters to validator.
1028
1374
 
1029
- #### 1.2.7
1375
+ ---
1030
1376
 
1031
- Add abilty to return error from custom validation functions
1377
+ ## [1.2.5]
1032
1378
 
1033
- #### 1.2.6
1379
+ - **[FIX]** Fix problem with test (user should be global on tests).
1034
1380
 
1035
- Validator documentation (jsdoc) update
1036
- Validator support pass parameters to validator
1381
+ ---
1037
1382
 
1038
- #### 1.2.5
1383
+ ## [1.2.4]
1039
1384
 
1040
- Fix problem with test (user should be global on tests)
1385
+ - **[NEW]** Add eslint.
1386
+ - **[UPDATE]** Code refactor.
1041
1387
 
1042
- #### 1.2.4
1388
+ ---
1043
1389
 
1044
- Add eslint
1045
- Code refactor
1390
+ ## [1.2.3]
1046
1391
 
1047
- #### 1.2.3
1392
+ - **[NEW]** Add prettier.
1393
+ - **[UPDATE]** Code reformat.
1048
1394
 
1049
- Add prettier
1050
- Code reformat
1395
+ ---
1051
1396
 
1052
- #### 1.2.2
1397
+ ## [1.2.2]
1053
1398
 
1054
- Update deps
1399
+ - **[UPDATE]** Update deps.