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 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",
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.3",
35
- "@node-red/runtime": "2.0.3",
36
- "@node-red/util": "2.0.3",
37
- "@node-red/nodes": "2.0.3",
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(!server.key || !server.cert || !server.key.equals(refreshedHttps.key) || !server.cert.equals(refreshedHttps.cert)) {
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
- util.log(err.stack);
458
+ try {
459
+ RED.log.error(err.stack);
460
+ } catch(err2) {
461
+ util.log(err.stack);
462
+ }
454
463
  } else {
455
- util.log(err);
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,