node-red 4.0.9 → 4.1.0-beta.2

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.
Files changed (4) hide show
  1. package/CHANGELOG.md +104 -0
  2. package/package.json +10 -10
  3. package/red.js +8 -2
  4. package/settings.js +31 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,107 @@
1
+ #### 4.1.0-beta.2: Beta Release
2
+
3
+ Editor
4
+
5
+ - feat: tray's primary button function will no longer run when clicking anywhere in #red-ui-editor-shade (#5122) @AllanOricil
6
+ - Truncate topic of debug message and add tooltip (#5168) @GogoVega
7
+ - Add event-log widget to status bar (#5181) @knolleary
8
+ - Add `splice` property to nodes:add event context (#5195) @knolleary
9
+ - Add support for plugin sources of autoComplete fields (#5194) @knolleary
10
+ - setSuggestedFlow api improvements (#5180) @knolleary
11
+ - Do not update suggestion whilst typeSearch hiding (#5193) @knolleary
12
+ - Update jquery (#5192) @knolleary
13
+ - Hide event log status widget by default (#5191) @knolleary
14
+ - Swap manage/install-all buttons in dependency notification (#5189) @knolleary
15
+ - Follow-up tweaks to HTTP In skip body parser (#5188) @knolleary
16
+ - Fixes infotip handling of cursor keys and updates english tip (#5187) @knolleary
17
+ - Add Japanese translations for 4.1.0-beta.1 (#5173) @kazuhitoyokoi
18
+ - Do not use css display when counting filtered palette nodes (#5178) @knolleary
19
+ - Fix `pending_version` not set after module update (#5169) @GogoVega
20
+
21
+ Runtime
22
+
23
+ - Prevent library leaking full local paths (#5186) @hardillb
24
+
25
+ Nodes
26
+
27
+ - HTTP In: feat: Add an option to the HTTP In to include the raw body. (#5037) @debadutta98
28
+ - HTTP Request: Allow limited Strings for msg.rejectUnauthorized (#5172) @hardillb
29
+
30
+
31
+ #### 4.1.0-beta.1: Beta Release
32
+
33
+ Editor
34
+
35
+ - Add update notification (#5117) @knolleary
36
+ - Add a node annotation if the info property is set (#4955) @knolleary
37
+ - Add node suggestion api to editor and apply to typeSearch (#5135) @knolleary
38
+ - Node filter support for typedInput's builtin node (#5154) @GogoVega
39
+ - Import `got` module only once when sending metrics (#5152) @GogoVega
40
+ - Trigger button action of the selected nodes with new Hotkey (#4924) @GogoVega
41
+ - Handle deleting of subflow context entries (#5071) @knolleary
42
+ - Add the `changed` badge to the config node (#5062) @GogoVega
43
+ - Default Palette Search: Sort by Downloads (#5108) @joepavitt
44
+ - Show deprecated message if module flagged (#5134) @knolleary
45
+ - Add link icon to node docs and warn for major update (#5143) @GogoVega
46
+ - Support for a module with nodes and plugins in the palette (#4945) @GogoVega
47
+ - Include module list in global-config node when importing/exporting flows (#4599) @knolleary
48
+ - Add `Install all` button to the module list feature (#5123) @GogoVega
49
+ - Fix node tab filtering (#5119) @knolleary
50
+ - Cleanup global Palette Manager variables (#4958) @GogoVega
51
+ - Add a new `update available` widget to statusBar (#4948) @knolleary
52
+ - Add a queue while installing or removing a module from the Palette Manager (#4937) @GogoVega
53
+ - Ignore state of disabled nodes/flows during deployment (#5054) @GogoVega
54
+ - Exclude internal properties from node definition (#5144) @GogoVega
55
+ - Refresh config node sidebar when changing lock state of a flow (#5072) @knolleary
56
+ - Add a border to better distinguish typedInput type/option dropdowns (#5078) @knolleary
57
+ - Fix undo of subflow color change not applying to instances (#5012) @GogoVega
58
+ - Properly handle scale factor in getLinksAtPoint for firefox (#5087) @knolleary
59
+ - Update markdown drop-target appearance (#5059) @knolleary
60
+ - Support for disabled flows in Sidebar Config (#5061) @GogoVega
61
+ - Support text drag & drop into markdown editor (#5056) @gorenje
62
+ - Truncate long messages from the Debug Sidebar (#4944) @GogoVega
63
+ - Handle link nodes with show/hide label action (#5106) @knolleary
64
+ - Update the Node-RED logo to use the hex variant (#5103) @joepavitt
65
+ - Add the vertical marker to the palette hand (#4954) @GogoVega
66
+ - Monaco Latest (0.52.0) (#4930) @Steve-Mcl
67
+ - Updates monaco to 0.52.0 for action widget sizing fix (#5110) @Steve-Mcl
68
+ - Bump Multer to 2.0.1 (#5151) @hardillb
69
+ - Upgrade multer to 2.0.0 (#5148) @hardillb
70
+ - Update dompurify (#5120) @knolleary
71
+ - Colourise the Node-RED logs (#5109) @hardillb
72
+ - Only apply colours for non-default log lines (#5129) @knolleary
73
+ - feat: import default export if plugin is a transpiled es module (#5137) @dschmidt
74
+ - Add an additional git_auth_failed condition (#5145) @sonnyp
75
+ - Fix Sass deprecation warnings (#4922) @bonanitech
76
+ - chore(editor)!: remove Internet Explorer polyfill (#5070) @Rotzbua
77
+ - Remove Internet Explorer CSS hacks (#5142) @bonanitech
78
+
79
+ Runtime
80
+
81
+ - fix: set label in themeSettings.deployButton despite type attribute (#5053) @matiseni51
82
+ - fix(html): correct buggy html (#4768) @Rotzbua
83
+ - Update dev (#4836) @knolleary
84
+ - Update dependencies (#5107) @knolleary
85
+ - Bump i18next to 24.x and auto-migrate message catalog format (#5088) @knolleary
86
+ - chore(editor): update `DOMPurify` flag (#5073) @Rotzbua
87
+ - Add .editorconfig to .gitignore (#5060) @gorenje
88
+
89
+ Nodes
90
+
91
+ - Complete/Status: Fix complete node to not feedback immediately connected nodes (#5114) @dceejay
92
+ - Function: Add URL/URLSearchParams to Function sandbox (#5159) @knolleary
93
+ - Function: Add support for node: prefixed modules in function node (#5067) @knolleary
94
+ - Function: Add globalFunctionTimeout (#4985) @vasuvanka
95
+ - Exec: Make encoding handling consistent between stdout and err (#5158) @knolleary
96
+ - Split: Let split node send original msg to complete node (#5113) @dceejay
97
+ - Split: Rename Split The field (#5130) @dceejay
98
+ - MQTT: Ensure generated mqtt clientId uses only valid chars (#5156) @knolleary
99
+ - HTTP Request: Fix the capitisation for ALPN settings in http-request (#5105) @hardillb
100
+ - HTTP Request: (docs) Recommend HTTPS over HTTP (#5141) @ZJvandeWeg
101
+ - HTTP Request: Include URL query params in HTTP Digest (#5166) @hardillb
102
+ - Catch: Add code to error object sent by Catch node (#5081) @knolleary
103
+ - Debug: Improve debug display of error objects (#5079) @knolleary
104
+
1
105
  #### 4.0.9: Maintenance Release
2
106
 
3
107
  Editor
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-red",
3
- "version": "4.0.9",
3
+ "version": "4.1.0-beta.2",
4
4
  "description": "Low-code programming for event-driven applications",
5
5
  "homepage": "https://nodered.org",
6
6
  "license": "Apache-2.0",
@@ -31,21 +31,21 @@
31
31
  "flow"
32
32
  ],
33
33
  "dependencies": {
34
- "@node-red/editor-api": "4.0.9",
35
- "@node-red/runtime": "4.0.9",
36
- "@node-red/util": "4.0.9",
37
- "@node-red/nodes": "4.0.9",
34
+ "@node-red/editor-api": "4.1.0-beta.2",
35
+ "@node-red/runtime": "4.1.0-beta.2",
36
+ "@node-red/util": "4.1.0-beta.2",
37
+ "@node-red/nodes": "4.1.0-beta.2",
38
38
  "basic-auth": "2.0.1",
39
- "bcryptjs": "2.4.3",
39
+ "bcryptjs": "3.0.2",
40
40
  "cors": "2.8.5",
41
41
  "express": "4.21.2",
42
- "fs-extra": "11.2.0",
43
- "node-red-admin": "^4.0.1",
42
+ "fs-extra": "11.3.0",
43
+ "node-red-admin": "^4.1.0",
44
44
  "nopt": "5.0.0",
45
- "semver": "7.6.3"
45
+ "semver": "7.7.1"
46
46
  },
47
47
  "optionalDependencies": {
48
- "@node-rs/bcrypt": "1.10.4"
48
+ "@node-rs/bcrypt": "1.10.7"
49
49
  },
50
50
  "engines": {
51
51
  "node": ">=18.5"
package/red.js CHANGED
@@ -63,8 +63,10 @@ var knownOpts = {
63
63
  "verbose": Boolean,
64
64
  "safe": Boolean,
65
65
  "version": Boolean,
66
- "define": [String, Array]
66
+ "define": [String, Array],
67
+ "no-telemetry": Boolean
67
68
  };
69
+
68
70
  var shortHands = {
69
71
  "?":["--help"],
70
72
  "p":["--port"],
@@ -97,6 +99,7 @@ if (parsedArgs.help) {
97
99
  console.log(" --safe enable safe mode");
98
100
  console.log(" -D, --define X=Y overwrite value in settings file");
99
101
  console.log(" --version show version information");
102
+ console.log(" --no-telemetry do not share usage data with the Node-RED project");
100
103
  console.log(" -?, --help show this help");
101
104
  console.log(" admin <command> run an admin command");
102
105
  console.log("");
@@ -222,6 +225,10 @@ if (process.env.NODE_RED_ENABLE_TOURS) {
222
225
  settings.editorTheme.tours = !/^false$/i.test(process.env.NODE_RED_ENABLE_TOURS);
223
226
  }
224
227
 
228
+ if (parsedArgs.telemetry === false || process.env.NODE_RED_DISABLE_TELEMETRY) {
229
+ settings.telemetry = settings.telemetry || {};
230
+ settings.telemetry.enabled = false;
231
+ }
225
232
 
226
233
  var defaultServerSettings = {
227
234
  "x-powered-by": false
@@ -286,7 +293,6 @@ httpsPromise.then(function(startupHttps) {
286
293
  server = http.createServer(function(req,res) {app(req,res);});
287
294
  }
288
295
  server.setMaxListeners(0);
289
-
290
296
  function formatRoot(root) {
291
297
  if (root[0] != "/") {
292
298
  root = "/" + root;
package/settings.js CHANGED
@@ -273,6 +273,7 @@ module.exports = {
273
273
  * Runtime Settings
274
274
  * - lang
275
275
  * - runtimeState
276
+ * - telemetry
276
277
  * - diagnostics
277
278
  * - logging
278
279
  * - contextStorage
@@ -311,6 +312,22 @@ module.exports = {
311
312
  /** show or hide runtime stop/start options in the node-red editor. Must be set to `false` to hide */
312
313
  ui: false,
313
314
  },
315
+ telemetry: {
316
+ /**
317
+ * By default, telemetry is disabled until the user provides consent the first
318
+ * time they open the editor.
319
+ *
320
+ * The following property can be uncommented and set to true/false to enable/disable
321
+ * telemetry without seeking further consent in the editor.
322
+ * The user can override this setting via the user settings dialog within the editor
323
+ */
324
+ // enabled: true,
325
+ /**
326
+ * If telemetry is enabled, the editor will notify the user if a new version of Node-RED
327
+ * is available. Set the following property to false to disable this notification.
328
+ */
329
+ // updateNotification: true
330
+ },
314
331
  /** Configure the logging output */
315
332
  logging: {
316
333
  /** Only console logging is currently supported */
@@ -473,6 +490,7 @@ module.exports = {
473
490
  * - fileWorkingDirectory
474
491
  * - functionGlobalContext
475
492
  * - functionExternalModules
493
+ * - globalFunctionTimeout
476
494
  * - functionTimeout
477
495
  * - nodeMessageBufferMaxLength
478
496
  * - ui (for use with Node-RED Dashboard)
@@ -499,7 +517,19 @@ module.exports = {
499
517
  /** Allow the Function node to load additional npm modules directly */
500
518
  functionExternalModules: true,
501
519
 
502
- /** Default timeout, in seconds, for the Function node. 0 means no timeout is applied */
520
+
521
+ /**
522
+ * The default timeout (in seconds) for all Function nodes.
523
+ * Individual nodes can set their own timeout value within their configuration.
524
+ */
525
+ globalFunctionTimeout: 0,
526
+
527
+ /**
528
+ * Default timeout, in seconds, for the Function node. 0 means no timeout is applied
529
+ * This value is applied when the node is first added to the workspace - any changes
530
+ * must then be made with the individual node configurations.
531
+ * To set a global timeout value, use `globalFunctionTimeout`
532
+ */
503
533
  functionTimeout: 0,
504
534
 
505
535
  /** The following property can be used to set predefined values in Global Context.