node-red 4.0.8 → 4.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.
Files changed (4) hide show
  1. package/CHANGELOG.md +101 -1
  2. package/package.json +10 -10
  3. package/red.js +7 -1
  4. package/settings.js +31 -1
package/CHANGELOG.md CHANGED
@@ -1,4 +1,104 @@
1
- #### 4.0.7: Maintenance Release
1
+ #### 4.1.0-beta.1: Beta Release
2
+
3
+ Editor
4
+
5
+ - Add update notification (#5117) @knolleary
6
+ - Add a node annotation if the info property is set (#4955) @knolleary
7
+ - Add node suggestion api to editor and apply to typeSearch (#5135) @knolleary
8
+ - Node filter support for typedInput's builtin node (#5154) @GogoVega
9
+ - Import `got` module only once when sending metrics (#5152) @GogoVega
10
+ - Trigger button action of the selected nodes with new Hotkey (#4924) @GogoVega
11
+ - Handle deleting of subflow context entries (#5071) @knolleary
12
+ - Add the `changed` badge to the config node (#5062) @GogoVega
13
+ - Default Palette Search: Sort by Downloads (#5108) @joepavitt
14
+ - Show deprecated message if module flagged (#5134) @knolleary
15
+ - Add link icon to node docs and warn for major update (#5143) @GogoVega
16
+ - Support for a module with nodes and plugins in the palette (#4945) @GogoVega
17
+ - Include module list in global-config node when importing/exporting flows (#4599) @knolleary
18
+ - Add `Install all` button to the module list feature (#5123) @GogoVega
19
+ - Fix node tab filtering (#5119) @knolleary
20
+ - Cleanup global Palette Manager variables (#4958) @GogoVega
21
+ - Add a new `update available` widget to statusBar (#4948) @knolleary
22
+ - Add a queue while installing or removing a module from the Palette Manager (#4937) @GogoVega
23
+ - Ignore state of disabled nodes/flows during deployment (#5054) @GogoVega
24
+ - Exclude internal properties from node definition (#5144) @GogoVega
25
+ - Refresh config node sidebar when changing lock state of a flow (#5072) @knolleary
26
+ - Add a border to better distinguish typedInput type/option dropdowns (#5078) @knolleary
27
+ - Fix undo of subflow color change not applying to instances (#5012) @GogoVega
28
+ - Properly handle scale factor in getLinksAtPoint for firefox (#5087) @knolleary
29
+ - Update markdown drop-target appearance (#5059) @knolleary
30
+ - Support for disabled flows in Sidebar Config (#5061) @GogoVega
31
+ - Support text drag & drop into markdown editor (#5056) @gorenje
32
+ - Truncate long messages from the Debug Sidebar (#4944) @GogoVega
33
+ - Handle link nodes with show/hide label action (#5106) @knolleary
34
+ - Update the Node-RED logo to use the hex variant (#5103) @joepavitt
35
+ - Add the vertical marker to the palette hand (#4954) @GogoVega
36
+ - Monaco Latest (0.52.0) (#4930) @Steve-Mcl
37
+ - Updates monaco to 0.52.0 for action widget sizing fix (#5110) @Steve-Mcl
38
+ - Bump Multer to 2.0.1 (#5151) @hardillb
39
+ - Upgrade multer to 2.0.0 (#5148) @hardillb
40
+ - Update dompurify (#5120) @knolleary
41
+ - Colourise the Node-RED logs (#5109) @hardillb
42
+ - Only apply colours for non-default log lines (#5129) @knolleary
43
+ - feat: import default export if plugin is a transpiled es module (#5137) @dschmidt
44
+ - Add an additional git_auth_failed condition (#5145) @sonnyp
45
+ - Fix Sass deprecation warnings (#4922) @bonanitech
46
+ - chore(editor)!: remove Internet Explorer polyfill (#5070) @Rotzbua
47
+ - Remove Internet Explorer CSS hacks (#5142) @bonanitech
48
+
49
+ Runtime
50
+
51
+ - fix: set label in themeSettings.deployButton despite type attribute (#5053) @matiseni51
52
+ - fix(html): correct buggy html (#4768) @Rotzbua
53
+ - Update dev (#4836) @knolleary
54
+ - Update dependencies (#5107) @knolleary
55
+ - Bump i18next to 24.x and auto-migrate message catalog format (#5088) @knolleary
56
+ - chore(editor): update `DOMPurify` flag (#5073) @Rotzbua
57
+ - Add .editorconfig to .gitignore (#5060) @gorenje
58
+
59
+ Nodes
60
+
61
+ - Complete/Status: Fix complete node to not feedback immediately connected nodes (#5114) @dceejay
62
+ - Function: Add URL/URLSearchParams to Function sandbox (#5159) @knolleary
63
+ - Function: Add support for node: prefixed modules in function node (#5067) @knolleary
64
+ - Function: Add globalFunctionTimeout (#4985) @vasuvanka
65
+ - Exec: Make encoding handling consistent between stdout and err (#5158) @knolleary
66
+ - Split: Let split node send original msg to complete node (#5113) @dceejay
67
+ - Split: Rename Split The field (#5130) @dceejay
68
+ - MQTT: Ensure generated mqtt clientId uses only valid chars (#5156) @knolleary
69
+ - HTTP Request: Fix the capitisation for ALPN settings in http-request (#5105) @hardillb
70
+ - HTTP Request: (docs) Recommend HTTPS over HTTP (#5141) @ZJvandeWeg
71
+ - HTTP Request: Include URL query params in HTTP Digest (#5166) @hardillb
72
+ - Catch: Add code to error object sent by Catch node (#5081) @knolleary
73
+ - Debug: Improve debug display of error objects (#5079) @knolleary
74
+
75
+ #### 4.0.9: Maintenance Release
76
+
77
+ Editor
78
+
79
+ - Add details for the dynamic subscription to match the English docs (#5050) @aikitori
80
+ - Fix tooltip snapping based on `typedInput` type (#5051) @GogoVega
81
+ - Prevent symbol usage warning in monaco (#5049) @Steve-Mcl
82
+ - Show subflow flow context under node section of sidebar (#5025) @knolleary
83
+ - feat: Add custom label for default deploy button in settings.editorTheme (#5030) @matiseni51
84
+ - Handle long auto-complete suggests (#5042) @knolleary
85
+ - Handle undefined username when generating user icon (#5043) @knolleary
86
+ - Handle dragging node into group and splicing link at same time (#5027) @knolleary
87
+ - Remember context sidebar tree state when refreshing (#5021) @knolleary
88
+ - Update sf instance env vars when removed from template (#5023) @knolleary
89
+ - Do not select group when triggering quick-add within it (#5022) @knolleary
90
+ - Fix library icon handling within library browser component (#5017) @knolleary
91
+
92
+ Runtime
93
+ - Allow env var access to context (#5016) @knolleary
94
+ - fix debug status reporting if null (#5018) @dceejay
95
+ - Fix grunt dev via better ndoemon ignore rules (#5015) @knolleary
96
+ - Fix typo in CHANGELOG (4.0.7-->4.0.8) (#5007) @natcl
97
+
98
+ Nodes
99
+ - Switch: Avoid exceeding call stack when draining message group in Switch (#5014) @knolleary
100
+
101
+ #### 4.0.8: Maintenance Release
2
102
 
3
103
  Editor
4
104
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-red",
3
- "version": "4.0.8",
3
+ "version": "4.1.0-beta.1",
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.8",
35
- "@node-red/runtime": "4.0.8",
36
- "@node-red/util": "4.0.8",
37
- "@node-red/nodes": "4.0.8",
34
+ "@node-red/editor-api": "4.1.0-beta.1",
35
+ "@node-red/runtime": "4.1.0-beta.1",
36
+ "@node-red/util": "4.1.0-beta.1",
37
+ "@node-red/nodes": "4.1.0-beta.1",
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,7 +63,8 @@ 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
  };
68
69
  var shortHands = {
69
70
  "?":["--help"],
@@ -97,6 +98,7 @@ if (parsedArgs.help) {
97
98
  console.log(" --safe enable safe mode");
98
99
  console.log(" -D, --define X=Y overwrite value in settings file");
99
100
  console.log(" --version show version information");
101
+ console.log(" --no-telemetry do not share usage data with the Node-RED project");
100
102
  console.log(" -?, --help show this help");
101
103
  console.log(" admin <command> run an admin command");
102
104
  console.log("");
@@ -222,6 +224,10 @@ if (process.env.NODE_RED_ENABLE_TOURS) {
222
224
  settings.editorTheme.tours = !/^false$/i.test(process.env.NODE_RED_ENABLE_TOURS);
223
225
  }
224
226
 
227
+ if (parsedArgs.telemetry === false || process.env.NODE_RED_DISABLE_TELEMETRY) {
228
+ settings.telemetry = settings.telemetry || {};
229
+ settings.telemetry.enabled = false;
230
+ }
225
231
 
226
232
  var defaultServerSettings = {
227
233
  "x-powered-by": false
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.