-
Notifications
You must be signed in to change notification settings - Fork 29
/
Copy pathChangelog
378 lines (295 loc) · 16.9 KB
/
Changelog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
- Upgrade: nanoid dependency from 3.3.4 to 3.3.8 (solving vulnerability CVE-2024-55565)
1.34.0 (July 30th, 2024)
- Fix: smtpConfig after error in emailAction rule (#798)
1.33.0 (July 29th, 2024)
- Fix: do not search in entities collection with strict mode by non_signal checker (#793)
- Fix: do not try cast entity id and entity type in update rules when expand parameters of rule to avoid BadRequest en CB tries to update that entities (#791)
- Fix: do not invoke calback twice when error about trust not found in trustConf (#790)
1.32.0 (June 13th, 2024)
- Add: Send multiple sms when multiple destination in sms action
- Fix: upgrade rule in mongo using service and subservice to avoid match with other rule (#783)
1.31.0 (June 11th, 2024)
- Fix: release transport resources of nodemailer after send email
- Upgrade express dep from 4.18.1 to 4.19.2 due to a vulnerability
- Upgrade nodemailer dep from 6.6.5 to 6.9.13 due to a vulnerability
1.30.0 (February 26th, 2024)
- Fix: do not stringify template in postAction if it is already a string (#763)
1.29.0 (December 1st, 2023)
- Add: watch changes and reload configTrust file (#757)
1.28.0 (October 4th, 2023)
- Add: new approach to handle trust auth (urbo-deployer#868)
- Add: allow access entities using NGSIv2 API for non_signal rules (new setting nonSignalByAPI / PERSEO_CHECK_NON_SIGNAL_BY_API) (#549)
- Add: allow use expandVar with JSON objects (#703)
- Add: apply expandVar with JSON.parse to all fields of all actions (sms, smpp, email, post, update) (#746)
- Fix: check domain before access domain
- Fix: expandVar return a 'null' instead of null (#746)
- Fix: expandVar for single string values with null, boolean, number (#746)
- Fix: smtp and smpp logs (#738)
- Fix: check timer string in lower case in TimedRule checker
- Fix: dep of chai get-func-name to 2.0.0 to avoid installation errors
- Remove: field "authentication" support in update action
- Remove: config.authentication (along with related env vars PERSEO_AUTHENTICATION_*)
- Remove: support for ngsv1 notifications (#714)
- Remove: ngsiv1 support for updateAction (#714)
- Remove: RPM stuff
1.27.0 (May 18th, 2023)
- Add: support to run tests with node 18
- Fix: do not flat in to map object or array attributes of event (#720)
- Remove: unnecessary event data transformations (stripped, location parse, datetime parse) (#706, #712)
- Upgrade uuid dep from ~1.4.2 to 9.0.0
- Set Nodejs 16 as minimum version in packages.json (effectively removing Nodev12 and Nodev14 from supported versions)
1.26.0 (October 27, 2022)
- Fix: update actions with filter of timed based rules are not tried to execute after first failure updating entities (#708)
1.25.0 (July 1st, 2022)
- Add: full detail about batch update error or success in logs
- Fix: check rule.name match with EPL rule.text ruleName when update a text rule (#699)
- Fix: ensure datetime attrs from entity for nosignal events are in ISO format instead of epoc
- Fix: expanding an object variable in action of rule (#692)
- Fix: for EPL with context + insert + select rule (without expression) (#652)
- Fix: format of internalCurrentTime fixed to ISO 8601
- Fix: typo in non signal event internalCurentTime -> internalCurrentTime
- Upgrade NodeJS version from 14-slim to 16-slim in Dockerfile
1.24.0 (May 26th, 2022)
- Fix: changed detection of rule loop by checking max number of rule executions triggered by the same notification (with the same correlator) (new env var PERSEO_MAX_RULES_BY_CORR) (#678)
- Fix: replace deprecated dep shortid by nanoid
- Upgrade ngsijs dep from ~1.3.0 to 1.4.1
- Upgrade express dep from ~4.16.4 to 4.18.1
- Upgrade uuid dep from ~1.4.2 to 3.4.0
1.23.0 (May 11th, 2022)
- Add: keep original array and object value in event sent to perseo-core (#662)
- Set Nodejs 12 as minimum version in packages.json (effectively removing Nodev10 from supported versions)
- Fix: Dockerfile to include initial packages upgrade
- Upgrade async dep from 2.6.2 to 2.6.4 due to security vulnerability (CWE-1321)
1.22.0 (April 22nd, 2022)
- Add: service to authentication action parameters (and associated env var PERSEO_AUTHENTICATION_SERVICE)
- Fix: check properly 401 error response (i.e. token expired) from CB requests
- Fix: improve CB error management when response has no data (#659)
- Fix: avoid modify ruleName epl if already unique (#654)
- Fix: preselect in ruleWithContext (#630)
1.21.0 (March 15th, 2022)
- Add: authentication as action parameters for updateAction (#638)
- Add: support for insert into stream rules (in detail: <Expression Context 'insert into stream` select...> ) (#630)
- Add: externalCBUrl as action parameters for updateAction (#625)
- Add: PERSEO_MONGO_AUTH_SOURCE variable (#607)
- Add: Add graceful shutdown listening to SIGINT (#617)
- Fix: ensure timed rules are provided to perseo-core with ruleName in EPL are in unique format (perseo-core#191) (needs perseo-core 1.9.0)
- Fix: fill proper srv and subsrc in logs of noSignal (#624)
- Fix: set 'None' as default type of entity for updateAction (#611)
- Upgrade mongodb dep driver from 3.6.8 to 3.6.12
- Upgrade logops dep from 2.1.0 to 2.1.2 due to colors dependency corruption
- Upgrade nodemailer dep from 6.4.18 to 6.6.5
- Upgrade NodeJS version from 12 to 14 in Dockerfile
1.20.0 (November 12th, 2021)
- Add: log context rule in core involved ops (#550)
- Add: include json (representated as string) in event delivered to perseo-core for each notification field (#579)
- Fix: parse metadata geo:json of type Point in a the same special way than geo:point when process event for perseo-core (#576)
- Fix: lat long order of geo:json of type Point
- Fix: parse attribute geo:json of type Point in a the same special way than geo:point when process event for perseo-core (#576)
- Fix: some mongodb driver warns about deprecations (#570)
- Fix: use more robust regex for select detection for context (#548)
1.19.0 (October 5th, 2021)
- Fix: ensure remove CR LF chars in EPL text for core (#556)
- Fix: do not exit process when error < 500 is propagated from core, just log error (#557)
- Fix: reset location to not expand it in all attributes event (#560)
1.18.0 (September 30th, 2021)
- Add: support for "pre select" clauses (in detail: <expression XX alias for {}> )
- Fix: remove cbnotif from correlator (#536)
- Fix: failed rules updatescounter not working in metrics API
- Fix: return error 400 from perseo-core instead of 500 (#539)
- Fix: ngsiv2 initial notification does not include a list of subservices in servicePath header when is / (#527)
- Update ngsijs dep from 1.2.1 to 1.3.0
- Update mongodb dep driver from 3.6.3 to 3.6.8
- Update nodemailer dep from 6.4.8 to 6.4.18
- Update requests dep from 2.88.0 to 2.88.2
1.17.0 (April 16th, 2021)
- Add: 'CC' and 'BCC' message fields to emailAction (#444)
- Add: allow use sms/smpp/smtp conf from action (#517)(#269)
- Add: notify TimeInstant value to core for NGSIv2 (#503)
- Fix: config smtp auth user and password: unbind them from config smtp secure flag (#514)
- Fix: convert geojsonpolygon filter into ngsiv2 geoquery (#512)
- Fix: router logs to print object details
- Fix: expand `location` geo:json of type Point in event field to core for NGSIv2 (#505)
- Fix: expand `location` event field to core for NGSIv2 (#504)
- Update dep nodemailer from 1.11.0 to 6.4.8
- Update dep nodemailer-smtp-transport from 0.1.13 to 2.7.2
- Upgrade NodeJS version from 10.19.0 to 12 in Dockerfile
- Convert Dockerfile to multistage builds and add a distroless option
1.16.0 (February 19th, 2021)
- Fix: pagination-based update action for filter results (so removing the limit to 20 entities in the previous implementation) (#455)
- Fix: check if there is entities before update them (#485)
- Fix: updateAction is using always `append` in actionType (#484)
1.15.0 (January 12th, 2021)
- Add: PUT plain rule
- Fix: documentation API /version method (#445)
- Set 'null' instead of '[?]' when no data available for macro substitution (#469)
- Update mongo dep driver from 2.2.36 to 3.6.3 (#480)
1.14.0 (November 6th, 2020)
- Add check max value used by setInterval in nonSignal rule (#464)
- Avoid stop perseo after uncaught exception, just report fatal and details but continue
- Add internalCurrentTime to nosignal event (#460)
- Fix postAction crash using a non string template (#459)
- Use unique (by node) correlator_suffix to detect rule loops (#456)
- Log checkNoSignal error using current context (#422)
1.13.0 (May 12th, 2020)
- Add: service and subservice as action parameters for updateAction (#349)
- Fix: broken email action
- Make optional PM2 usage in docker entrypoint
- Upgrade NodeJS version from 10.17.0 to 10.19.0 in Dockerfile
- Set Nodejs 10.17.0 as minimum version in packages.json (effectively removing Nodev8 as supported version)
1.12.0 (February 10th, 2020)
- Fix nosignal actions in HA: both nodes are executing the same rule at the same time
- Add: /api-docs endpoint providing swagger-based documentation of the HTTP endpoints exposed by Perseo FE
- Fix: improving logs system, adding more traces and changes to avoid too verbose messages at INFO level
- Hardening: software quality improvement based on ISO25010 recommendations
1.11.0 (December 16th, 2019)
- Add: special context for timed rules (#411)
- Fix: use event for expanding action update filter (#417)
- Update some node dependencies:
- async: from ~0.9.2 to 2.6.2
- express: from ~4.16.1 to ~4.16.4
- request: from ~2.83.0 to 2.88.0
- Hardening: MongoDB connection logic to avoid deprecated parameteres
- Upgrade NodeJS version from 8.16.1 to 10.17.0 in Dockerfile due to Node 8 End-of-Life
1.10.0 (October 29th, 2019)
- Add: include stripped (non flatten) data into event (#377)
- Add: castType (PERSEO_CAST_TYPE) to enable NGSIv2 type based casting (default is to use JSON native types in values)
- Add: authentication config env vars (#349)
- Add: full support for pagination in APIs /rules and /vrules (#364)
- Add: Fiware-Total-Count header to response when count
- Add: missed correlatorid headers in updateAction with NGSIv2
- Add: try expandVars for numeric, boolean and json in attributes of updateAction and text of postAction (#362)
- Add: NGSI filter to updateAction (#335)
- Add: count to response to get all rules (cep + vr)
- Add: update entity using NGSIv2 with a trust token (#317)
- Add: new logs about rule provision, deleting, etc (#346)
- Add: config env vars for isMaster and slaveDelay
- Set default version to 2 (NGSIv2) for updateAction by default
- Refactor updateAction doItWithToken to include version 1 and 2
- Upgrade NodeJS version from 8.16.0 to 8.16.1 in Dockerfile due to security issues
- Upgrade ngsijs dependency from 1.2.0 to 1.2.1
- Upgrade mongodb dependency from ~2.2.31 to ~2.2.35
1.9.0 (June 4th, 2019)
- Upgrade from node:8.12.0-slim to node:8.16.0-slim as base image in Dockerfile
- Add: allow SMS actions with multiple phone destinations (#337)
- Fix: replace findOne + orderby to find + sort + limit in LastTime executionsStore (#339)
1.8.0 (February 8th, 2019)
- Add: NGSIv2 support in both notification reception and CB update action
- Change on the PERSEO_ORION_URL env var behaviour. Now it represents Context Broker base URL instead of the
updateContext endpoint
- Add: 'ruleName' as variable automatically in rule text field (EPL) on rule creation time (#307)
- Set Nodejs 8.12.0 as minimum version in packages.json (effectively removing Nodev4 and Nodev6 as supported versions)
- Add: use NodeJS 8 in Dockerfile
- Add: use PM2 in Dockerfile
- Add: new ngsijs ~1.2.0 dependency
- Add: new rewire ~4.0.1 dev dependency
- Upgrade depedency logops from 1.0.0-alpha.7 to 2.1.0
- Upgrade dev dependency istanbul from ~0.1.34 to ~0.4.5
- Upgrade dev dependency mocha from 2.4.5 to to 5.2.0
- Upgrade dev dependency chai from ~1.8.0 to ~4.1.2
- Upgrade dev dependency sinon from ~1.7.3 to ~6.1.0
- Upgrade dev dependency sinon-chai from 2.4.0 to ~3.2.0
- Remove: old unused development dependencies
* grunt and grunt related module
* closure-linter-wrapper
1.7.0 (September 20th, 2018)
- Add: new parameter to updateAction card: actionType: APPEND (default) or UPDATE (#278)
- Using precise dependencies (~=) in packages.json
- Provide default value (false) for tls.rejectUnauthorized config option (#272, partially)
1.6.0 (October 18th, 2017)
- FEATURE update node version to 4.8.4
- Fixed timer leak in HA-refresh scenarios [#253]
- Modify main section of package.json from lib/perseo to bin/perseo
- Add native SMPP support [#246]
- Add PERSEO_MONGO_ENDPOINT, PERSEO_MONGO_USER and PERSEO_MONGO_PASSWORD variables to compose a full mongo connection string [#243]
- Remove PERSEO_MONGO_HOST variable (use PERSEO_MONGO_ENDPOINT instead) [#243]
- Add smpp dependence to npm-shrinkwrap [#249]
1.5.0 (February 2nd, 2017)
- Fix: Blocked actions in queue when error (#221)
- Add: Retrieve loop detection, with mark (#226)
- Add: metrics REST API (#227)
- Fix: Alarms for database (replicaset) (#230)
- Change: Default value for refresh rules to core in config.js, now 5 minutes
- Change: Default value for DB checking in config.js, now 5 seconds
- Add: Several actions per rule (#197)
1.4.0 (December 1st, 2016)
- Add: Update axn with multiple attrs (#210)
- Change: Logs for alarms in ERROR level and use of ALARM-ON and ALARM-OFF prefixes to signal alarm raising/releasing in log (#218). See doc.
- Add: Admit several comma-separated servicepaths in header for notifications (#117)
- Remove (rollback feature introduced in 1.2.0): break rule execution loops (PR #225)
1.3.0 (October 28th, 2016)
- Add: Processing location attributes for EPL (#198)
- Add: Processing time attributes for EPL (#205)
- Fix: Post axn w/o template (#207)
1.2.0 (October 3rd, 2016)
- Add: propagate metadata to core (#182)
- Add: improved post action (#144)
- Fix: weird behaviour post action (#191)
- Add: break rule execution loops (#190)
1.1.0 (September 7th, 2016)
- Fix: modified the permissions of the PID file to be readable by third party SW
- Add: Allow notices and rules paths to be configured by environment variables (issue #161)
- Fix: align and fix log traces, add comp field (issue #166)
- Add: add 'from' field in log traces (issue #166)
- Add: GET /admin/log (issue #169)
- Fix: env var for next core bug (issue #171)
- Change: default value for next core to none (issue #172)
- Fix: false error log when action is executed (issue #176)
- Fix: saving invalid visual rule in updates (issue #177)
1.0.0 (June 8th, 2016)
- Fix: serialize actions execution
- Fix: Use current orion db model for no-signal rules (#128)
- Add: Change log level at run-time with PUT (#131)
- Add: Use srv and subsrv in log traces (#132)
- Add: Use 'fiware-correlator' instead of 'unica-correlator' (#133)
- Fix: Bug in update action when origin entity does not have type (#136)
- Fix: Verify checkInterval is valid even if coming from DB (#140)
- Fix: refreshing deleted no-signal rules (regular rules refreshing after deletion was already working) (#141)
- Change: do not lower subservice taken from header (#146)
- Fix: insert service/subservice into core events, taking them from header
- Change: make subject optional for email action
- Add: Take configuration for environment variables for STMP y SMPP Adapter (#153)
0.7.0 (December 9th, 2015)
- Modify Perseo's executable to add environment variable-based configuration.
- Add string subsitution for more action parameters (#114)
- Add configuration for secure SMTP servers (#122)
0.6.0 (May 21st, 2015)
- Fix entity's attributes in NSR action (#73)
- Fix #75 (undo #55) Params in updateAction is not an array
- Add auth for update action
- Fix Configuration for no HA (#86)
- Fix Use service/subservice instead of tenant/service (#39)
- Extract params for checkDB to config.js (#6)
0.5.0 (February 26th, 2015)
- Fiware-Service validation (#29)
- Fiware-ServicePath validation (#32)
- Change HA model for execution of actions
- Fix error if parameter "type" exist in Update entity action (#30)
- Added 'twitter' action
- Changed 'update' action, any entity
- Do not allow 'id' and 'type' as attribute names
- Change parameter for POST action from 'URL' to 'url'
- Fix error in VR for updateAction (#55)
- Fix validation rule name (#44, #15)
- Fix negative and zero check intervals for NSR (#53)
- Fix missing 'from' in SMS (#67)
0.4.1 (January 19th, 2015)
- Fix: using logops as logging library
0.4.0 (December 18th, 2014)
- Use EPL context again
- Show number of no-signal rules and checkers clearly in debug logs
- Take service/subservice from original event in actions
- Allow names of attributes to be any string
- Include propagation to next core in the main request, allowing it to fail with only a error log
- Remove service/subservice from examples/
- Simplify names of rules and contexts at core
- Add action card for updateAttribute in VR
- Improve logs for alarm generation
- Add periodical check of databases
0.2.0 (December 2nd, 2014)
- Add non-signal cards
- Fix header fields not recognized
- Force lowercase for service and servicepath
- Show more characters of data in logs
- Refresh core after DB is setup
- Improve examples
- Add generic POST action