node-red 2.0.3 → 2.1.0-beta.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/CHANGELOG.md +95 -0
- package/lib/red.js +1 -1
- package/package.json +5 -5
- package/red.js +16 -3
- package/settings.js +5 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,98 @@
|
|
|
1
|
+
#### 2.1.0-beta.1: Beta Release
|
|
2
|
+
|
|
3
|
+
Editor
|
|
4
|
+
|
|
5
|
+
- Add Tour Guide component (#3136) @knolleary
|
|
6
|
+
- Allow tabs to be hidden (#3120) @knolleary
|
|
7
|
+
- Add align actions to editor (#3110) @knolleary
|
|
8
|
+
- Add support of environment variable for tab & group (#3112) @HiroyasuNishiyama
|
|
9
|
+
- Add autoComplete widget and add to TypedInput for msg. props (#3171) @knolleary
|
|
10
|
+
- Render node documentation to node-red style guide when written in markdown. (#3169) @Steve-Mcl
|
|
11
|
+
- Allow colouring of tab icon svg (#3140) @harmonic7
|
|
12
|
+
- Restore tab selection after merging conflicts (#3151) @GerwinvBeek
|
|
13
|
+
- Fix serving of theme files on Windows (#3154) @knolleary
|
|
14
|
+
- Ensure config-node select inherits width properly from input (#3155) @knolleary
|
|
15
|
+
- Do better remembering TypedInput values whilst switching types (#3159) @knolleary
|
|
16
|
+
- Update monaco to 0.28.1 (#3153) @knolleary
|
|
17
|
+
- Improve themeing of tourGuide (#3161) @knolleary
|
|
18
|
+
- Allow a node to specify a filter for the config nodes it can pick from (#3160) @knolleary
|
|
19
|
+
- Allow RED.notify.update to modify any notification setting (#3163) @knolleary
|
|
20
|
+
- Fix typo in ko editor.json Fixes #3119
|
|
21
|
+
- Improve RED.actions api to ensure actions cannot be overridden
|
|
22
|
+
- Ensure treeList row has suitable min-height when no content Fixes #3109
|
|
23
|
+
- Refactor edit dialogs to use separate edit panes
|
|
24
|
+
- Ensure type select button is not focussable when TypedInput only has one type
|
|
25
|
+
- Place close tab link in front of fade
|
|
26
|
+
|
|
27
|
+
Runtime
|
|
28
|
+
|
|
29
|
+
- Improve error reporting with oauth login strategies (#3148) @knolleary
|
|
30
|
+
- Add allowUpdate feature to externalModules.palette (#3143) @knolleary
|
|
31
|
+
- Improve node install error reporting (#3158) @knolleary
|
|
32
|
+
- Improve unit test coverage (#3168) @knolleary
|
|
33
|
+
- Allow coreNodesDir to be set to false (#3149) @hardillb
|
|
34
|
+
- Update package dependencies
|
|
35
|
+
- uncaughtException debug improvements (#3146) @renatojuniorrs
|
|
36
|
+
|
|
37
|
+
Nodes
|
|
38
|
+
|
|
39
|
+
- Change: Add option to deep-clone properties in Change node (#3156) @knolleary
|
|
40
|
+
- Delay: Add push to front of rate limit queue. (#3069) @dceejay
|
|
41
|
+
- File: Add paletteLabel to file nodes to make read/write more obvious (#3157) @knolleary
|
|
42
|
+
- HTTP Request: Extend HTTP request node to log detailed timing information (#3116) @k-toumura
|
|
43
|
+
- HTTP Response: Fix sizing of HTTP Response header fields (#3164) @knolleary
|
|
44
|
+
- Join: Support for msg.restartTimeout (#3121) @magma1447
|
|
45
|
+
- Link Call: Add Link Call node (#3152) @knolleary
|
|
46
|
+
- Switch: Copy previous rule type when adding rule to switch node (#3170) @knolleary
|
|
47
|
+
- Delay node: add option to send intermediate messages on separate output (#3166) @knolleary
|
|
48
|
+
- Typo in http request set method translation (#3173) @mailsvb
|
|
49
|
+
|
|
50
|
+
#### 2.0.6: Maintenance Release
|
|
51
|
+
|
|
52
|
+
Editor
|
|
53
|
+
|
|
54
|
+
- Fix typo in ko editor.json Fixes #3119
|
|
55
|
+
- Change fade color when hovering an inactive tab (#3106) @bonanitech
|
|
56
|
+
- Ensure treeList row has suitable min-height when no content Fixes #3109
|
|
57
|
+
|
|
58
|
+
Runtime
|
|
59
|
+
|
|
60
|
+
- Update tar to latest (#3128) @aksswami
|
|
61
|
+
- Give passport verify callback the same arity as the original callback (#3117) @dschmidt
|
|
62
|
+
- Handle HTTPS Key and certificate as string or buffer (#3115) @bartbutenaers
|
|
63
|
+
|
|
64
|
+
#### 2.0.5: Maintenance Release
|
|
65
|
+
|
|
66
|
+
Editor
|
|
67
|
+
|
|
68
|
+
- Remove default ctrl-enter keybinding from monaco editor Fixes #3093
|
|
69
|
+
|
|
70
|
+
Runtime
|
|
71
|
+
|
|
72
|
+
- Update tar dependency
|
|
73
|
+
- Add support for maintenance streams in generate-publish-script
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
Nodes
|
|
77
|
+
|
|
78
|
+
- Fix regression in Join node when manual joining array with msg.parts present Fixes #3096
|
|
79
|
+
|
|
80
|
+
#### 2.0.4: Maintenance Release
|
|
81
|
+
|
|
82
|
+
Editor
|
|
83
|
+
|
|
84
|
+
- Fix tab fade CSS for when using themes (#3085) @bonanitech
|
|
85
|
+
- Handle just-copied-but-not-deployed node with credentials in editor Fixes #3090
|
|
86
|
+
|
|
87
|
+
Nodes
|
|
88
|
+
|
|
89
|
+
- Filter: Fix RBE node handling of default topi property Fixes #3087
|
|
90
|
+
- HTTP Request: Handle partially encoded url query strings in request node
|
|
91
|
+
- HTTP Request: Fix support for supplied CA certs (#3089) @hardillb
|
|
92
|
+
- HTTP Request: Ensure TLS Cert is used (#3092) @hardillb
|
|
93
|
+
- Inject: Fix inject now button unable to send empty props
|
|
94
|
+
- Inject: Inject now button success notification should use label with updated props
|
|
95
|
+
|
|
1
96
|
#### 2.0.3: Maintenance Release
|
|
2
97
|
|
|
3
98
|
Nodes
|
package/lib/red.js
CHANGED
|
@@ -61,7 +61,7 @@ module.exports = {
|
|
|
61
61
|
checkVersion(userSettings);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
if (!userSettings.coreNodesDir) {
|
|
64
|
+
if (!userSettings.hasOwnProperty("coreNodesDir")) {
|
|
65
65
|
userSettings.coreNodesDir = path.dirname(require.resolve("@node-red/nodes"))
|
|
66
66
|
}
|
|
67
67
|
redUtil.init(userSettings);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-red",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.1.0-beta.1",
|
|
4
4
|
"description": "Low-code programming for event-driven applications",
|
|
5
5
|
"homepage": "http://nodered.org",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -31,10 +31,10 @@
|
|
|
31
31
|
"flow"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@node-red/editor-api": "2.0.
|
|
35
|
-
"@node-red/runtime": "2.0.
|
|
36
|
-
"@node-red/util": "2.0.
|
|
37
|
-
"@node-red/nodes": "2.0.
|
|
34
|
+
"@node-red/editor-api": "2.1.0-beta.1",
|
|
35
|
+
"@node-red/runtime": "2.1.0-beta.1",
|
|
36
|
+
"@node-red/util": "2.1.0-beta.1",
|
|
37
|
+
"@node-red/nodes": "2.1.0-beta.1",
|
|
38
38
|
"basic-auth": "2.0.1",
|
|
39
39
|
"bcryptjs": "2.4.3",
|
|
40
40
|
"express": "4.17.1",
|
package/red.js
CHANGED
|
@@ -234,8 +234,13 @@ httpsPromise.then(function(startupHttps) {
|
|
|
234
234
|
// Get the result of the function, because createServer doesn't accept functions as input
|
|
235
235
|
Promise.resolve(settings.https()).then(function(refreshedHttps) {
|
|
236
236
|
if (refreshedHttps) {
|
|
237
|
+
// The key/cert needs to be updated in the NodeJs http(s) server, when no key/cert is yet available or when the key/cert has changed.
|
|
238
|
+
// Note that the refreshed key/cert can be supplied as a string or a buffer.
|
|
239
|
+
var updateKey = (server.key == undefined || (Buffer.isBuffer(server.key) && !server.key.equals(refreshedHttps.key)) || (typeof server.key == "string" && server.key != refreshedHttps.key));
|
|
240
|
+
var updateCert = (server.cert == undefined || (Buffer.isBuffer(server.cert) && !server.cert.equals(refreshedHttps.cert)) || (typeof server.cert == "string" && server.cert != refreshedHttps.cert));
|
|
241
|
+
|
|
237
242
|
// Only update the credentials in the server when key or cert has changed
|
|
238
|
-
if(
|
|
243
|
+
if(updateKey || updateCert) {
|
|
239
244
|
server.setSecureContext(refreshedHttps);
|
|
240
245
|
RED.log.info(RED.log._("server.https.settings-refreshed"));
|
|
241
246
|
}
|
|
@@ -450,9 +455,17 @@ httpsPromise.then(function(startupHttps) {
|
|
|
450
455
|
process.on('uncaughtException',function(err) {
|
|
451
456
|
util.log('[red] Uncaught Exception:');
|
|
452
457
|
if (err.stack) {
|
|
453
|
-
|
|
458
|
+
try {
|
|
459
|
+
RED.log.error(err.stack);
|
|
460
|
+
} catch(err2) {
|
|
461
|
+
util.log(err.stack);
|
|
462
|
+
}
|
|
454
463
|
} else {
|
|
455
|
-
|
|
464
|
+
try {
|
|
465
|
+
RED.log.error(err);
|
|
466
|
+
} catch(err2) {
|
|
467
|
+
util.log(err);
|
|
468
|
+
}
|
|
456
469
|
}
|
|
457
470
|
process.exit(1);
|
|
458
471
|
});
|
package/settings.js
CHANGED
|
@@ -291,9 +291,12 @@ module.exports = {
|
|
|
291
291
|
// autoInstallRetry: 30, /** Interval, in seconds, between reinstall attempts */
|
|
292
292
|
// palette: { /** Configuration for the Palette Manager */
|
|
293
293
|
// allowInstall: true, /** Enable the Palette Manager in the editor */
|
|
294
|
+
// allowUpdate: true, /** Allow modules to be updated in the Palette Manager */
|
|
294
295
|
// allowUpload: true, /** Allow module tgz files to be uploaded and installed */
|
|
295
|
-
// allowList: [],
|
|
296
|
-
// denyList: []
|
|
296
|
+
// allowList: ['*'],
|
|
297
|
+
// denyList: [],
|
|
298
|
+
// allowUpdateList: ['*'],
|
|
299
|
+
// denyUpdateList: []
|
|
297
300
|
// },
|
|
298
301
|
// modules: { /** Configuration for node-specified modules */
|
|
299
302
|
// allowInstall: true,
|