Commit Graph

253 Commits

Author SHA1 Message Date
Nick O'Leary 9a660f3fe9
Support npm subflow modules 2021-01-07 11:10:33 +00:00
Nick O'Leary 7913b3cbc2
Merge branch 'master' into dev 2021-01-07 10:17:50 +00:00
Nick O'Leary 0284ef401e
Fix loading individual module catalog 2021-01-06 20:20:32 +00:00
Nick O'Leary af19536222
Better logging when deprecated editorTheme.palette.* settings used 2021-01-06 17:36:59 +00:00
Nick O'Leary 9d2d060dec
Fix unit tests for externalModules 2020-12-27 20:59:31 +00:00
Nick O'Leary aacb92a7ae
Implement allow/denyList when loading/installing modules 2020-12-27 12:49:17 +00:00
Nick O'Leary fc459be531
Deprecate editorTheme.palette.editable for externalModules.palette.allowInstall
Also deprecates editorTheme.palette.editable for externalModules.palette.allowUpload
2020-12-23 23:29:07 +00:00
Nick O'Leary 3151502a3f
Deprecate autoInstallModules for externalModules.autoInstall 2020-12-23 22:05:58 +00:00
Nick O'Leary 496b5a092f
Ensure subflow credential objects exist
Fixes #2783
2020-12-15 17:20:22 +00:00
johnwang71 be828af3e2 Fix bug: Crash & quit while handling exception with undefine msg.error. i.e. flow with 3 nodes, http-in, delay 5-10s, http-out; client with 3s timeout request the flow; TypeError: Cannot read property 'hasOwnProperty' of undefined\r at Flow.handleError (/usr/src/node-red/node_modules/@node-red/runtime/lib/flows/Flow.js:474:27) 2020-12-14 18:18:50 +08:00
Nick O'Leary fc7967d455
Fix missing promise on setUserSettings 2020-12-07 11:49:02 +00:00
Nick O'Leary fca21ac126
Rename paletteEditorEnabled to installerEnabled 2020-12-07 11:49:01 +00:00
Nick O'Leary 6fb96fa3c1
Move exec and events components to util module
The exec and events components are common components that
are used by both runtime and registry. It makes sense to
move them into the util package.

This also adds some docs to the registry module
2020-12-07 11:49:01 +00:00
Nick O'Leary a1f565f756
Use more async funcs in runtime/lib/api to reduce Promise creation 2020-12-07 11:49:01 +00:00
Nick O'Leary 5992ed1fab
Fully remove when.js dependency 2020-12-07 11:49:01 +00:00
Nathanaël Lécaudé c5d38d8962
Library: properly handle symlinked folders 2020-11-25 21:08:43 +00:00
Nathanaël Lécaudé b1c0d6b452 Library: properly handle symlinked folders 2020-11-24 18:29:39 -05:00
Nick O'Leary 0f7d185a61
Ensure runtime side picks up default project workflow mode 2020-11-18 16:37:39 +00:00
Nick O'Leary f19ec5d9b6
Clear retained status of deleted nodes 2020-11-17 13:29:13 +00:00
Nick O'Leary 6ea978d83d
Prevent needless retention of node status messages 2020-11-16 21:05:13 +00:00
Nick O'Leary 9d7a450821
Add mutex lock to saveSettings storage call
Fixes #2736
2020-10-28 21:59:22 +00:00
Nick O'Leary ff0be73b1f
Migrate to nyc instead of istanbul for code coverage 2020-10-19 21:10:34 +01:00
Nick O'Leary 12d56b8b03
Fix api call to reload flows
Fixes #2726
2020-10-19 12:56:40 +01:00
Nick O'Leary e34f4acb22
Fix race condition in .config file migration
Fixes #2724
2020-10-15 16:21:28 +01:00
Nick O'Leary af636870d4
Add better error message if context file gets corrupted 2020-10-06 15:42:52 +01:00
Nick O'Leary 517e376582
Restore support for runtimeSyncDelivery flag 2020-09-29 17:39:29 +01:00
Nick O'Leary 7a90fe5aec
Fix flow api unit tests 2020-09-29 17:35:43 +01:00
Nick O'Leary ea45dde63a
Remove when.js from runtime/lib/flow/index 2020-09-29 17:20:01 +01:00
Nick O'Leary 22a301b55e
Add flows:* events and deprecate nodes-* events 2020-09-29 16:29:10 +01:00
Nick O'Leary 605177dcf0
Validate hook names when they are added 2020-09-29 16:28:52 +01:00
Nick O'Leary 460e1f5563
Fixup merge error 2020-09-29 12:19:27 +01:00
Nick O'Leary 6f25337b99
Add docs for RED.hooks 2020-09-29 12:19:27 +01:00
Nick O'Leary 08148a07b2
Update Node/Flow to trigger msg routing hooks 2020-09-29 12:19:27 +01:00
Nick O'Leary 27c0e45940
Remove unused router component 2020-09-29 12:19:27 +01:00
Nick O'Leary bdd736315a
Add RED.hooks engine 2020-09-29 12:19:27 +01:00
Nick O'Leary d57ec0cd53
Refactor lib/flows code to include initial router component 2020-09-29 12:19:26 +01:00
Nick O'Leary c5bdd3d056
Allow user to manage project version string 2020-09-28 11:30:46 +01:00
Nick O'Leary 69d60ffb24
Add simplified git workflow to auto-commit changes 2020-09-28 10:41:33 +01:00
Nick O'Leary e6ffa3d143
Cache settings when doing initial load 2020-09-28 10:41:05 +01:00
Nick O'Leary bb4330e486
Clone settings before passing to storage layer
Avoids the storage layer modifying the in-memory object
2020-09-28 10:40:03 +01:00
Nick O'Leary e12975cf0b
Do not remove old config.json file to ease downgrade path 2020-09-25 15:50:26 +01:00
Nick O'Leary 4d0c572c2e
Fix .config.json unit tests 2020-09-24 15:42:52 +01:00
Nick O'Leary fb2da0ee9e
Split .config.json into separate files 2020-09-23 17:29:09 +01:00
Nick O'Leary b8b0247717
Default flowFilePretty to true if projects enabled 2020-09-23 10:57:58 +01:00
Nick O'Leary b7243c2226
Merge branch 'master' into dev 2020-09-16 11:54:34 +01:00
Nick O'Leary 70b6674f44
Replace Math.random with crypto.getBytes for session tokens 2020-09-11 14:09:54 +01:00
Nick O'Leary ef67b8481e
Check file exists before trying to take backup 2020-09-11 13:26:00 +01:00
Melvin Groenhoff d84c2b780b Fix `this` context when calling multiple event listeners (fixes #2692). 2020-09-04 10:20:30 +02:00
Nick O'Leary 4dd619b8c6
Merge branch 'master' into dev 2020-09-03 16:14:55 +01:00
Nick O'Leary be880c25f9
Merge pull request #2682 from node-red/upload-npm
Add support for file upload on /nodes api
2020-09-03 15:01:31 +01:00
Nick O'Leary 17812f0d77
Merge pull request #2683 from node-red/write-to-temp
Update util.writeFile to write to tmp file before rename
2020-09-03 15:00:31 +01:00
Kunihiko Toumura 0c5586ddfb Add 'done' metric log for message tracing 2020-08-18 09:28:50 +09:00
Nick O'Leary b0b2c32654
Update util.writeFile to write to tmp file before rename 2020-08-13 17:17:40 +01:00
Nick O'Leary 6f1ed76b4c
Add support for file upload in /nodes api 2020-08-13 15:54:54 +01:00
Rory A. Svage f81cee0be2 Message 2020-08-07 16:44:52 -04:00
Nick O'Leary e691b1b7c3
Add additional check for git auth failure response
Fixes #2656
2020-08-03 16:55:36 +01:00
Nick O'Leary 16c26d8098
Move runtime settings back to adminApi from editorApi
Fixes #2662
2020-07-31 15:26:21 +01:00
Nick O'Leary fe4ef354ac
Flag a node as removed when it is disabled 2020-06-08 20:59:00 +01:00
Nick O'Leary dec82589d1
Handle missing projects runtime setting 2020-06-02 22:53:05 +01:00
Nick O'Leary f0193b0f67
Add better messages for 404 errors on admin api 2020-06-02 22:52:22 +01:00
Nick O'Leary bae52613ab
Merge branch 'master' into dev 2020-06-01 09:38:39 +01:00
Sam Machin a8d8540346
fix for settings.set subsequent updates
By cloning the value the assert.deepEqual will now fail even for subsequent updates of the value without restarting Node-RED
2020-05-31 13:44:31 +01:00
Nick O'Leary 1c94064c57
Remove unused _info/_type subflow env var magic values 2020-05-22 20:54:06 +01:00
Nick O'Leary 5d81cec00c
Merge branch 'pr_2498' into dev 2020-05-22 15:22:12 +01:00
Nick O'Leary 8ce49c25d4
Ensure auth failure on project fetch identifies the remote
Fixes #2545
2020-05-21 17:25:51 +01:00
Nick O'Leary 0de49e2a75
Ensure auth failure on project fetch identifies the remote
Fixes #2545
2020-05-21 17:18:46 +01:00
Nick O'Leary 05c3f459ad
Add #! lines to project shell scripts
Fixes #2548
2020-05-21 15:33:10 +01:00
Nick O'Leary d7df20413d
Merge branch 'master' into dev 2020-05-04 11:41:44 +01:00
Nick O'Leary 97c771f93a
Ensure file context does not write 'undefined' to store
Fixes #2522
2020-04-08 11:32:39 +01:00
martinLim45 513957eea1
Set flow.disabled when disabled property is false 2020-04-07 16:41:49 +09:00
Hiroyasu Nishiyama 161f6090c1 update initialize & finalize processing of function node 2020-04-06 16:34:41 +09:00
Nick O'Leary 344c9fe57e
Merge branch 'master' into dev 2020-04-02 23:24:42 +01:00
Nick O'Leary 9d4400349b
Fix timer reference in node close handling 2020-04-02 23:24:18 +01:00
Nick O'Leary 6ff3286d78
Merge branch 'master' into dev 2020-04-02 16:52:55 +01:00
Nick O'Leary a6ecb54cc4
Clear node.close timeout to avoid unnecessary work on restart 2020-03-31 19:25:20 +01:00
Nick O'Leary 294696daf5
Merge branch 'dev' into groups 2020-03-30 23:42:52 +01:00
Nick O'Leary d099356207
Merge branch 'master' into dev 2020-03-30 23:42:40 +01:00
Nick O'Leary 5c06761b1a
Remove console.log from subflow 2020-03-30 23:42:30 +01:00
Nick O'Leary 05fc3c5eca
Merge branch 'master' into dev 2020-03-30 23:41:33 +01:00
Nick O'Leary 84771f5864
Flows/subflows must preinitialise their context objects
Fixes #2513

If a node inside a subflow accessed its context object in its
constructor, the subflow-instance flow context would not yet
have been created. This would cause a place holder context
to get created on its behalf, but that place holder doesn't
have its parent set properly. This then breaks the usage
of $parent inside such a subflow.

This fix has changed it so flows (and subflows) create their
flow context as part of their initial creation. That ensures
it exists when individual nodes from the subflow are created,
allowing them to safely access their context.

This has also fixed a related issue where any attempt to use
$parent to access beyond the root parent would seemingly hang
as the callback was never being called. This would cause
messages to get stuck in flows. The fix ensures the callback
is used in the root context objects and undefined is returned.
2020-03-27 23:47:12 +00:00
Nick O'Leary 4304d44851
Ensure complete node scope is remapped in subflows
Fixes #2514
2020-03-27 09:44:15 +00:00
Nick O'Leary 20f97d0d13
Add better handling of host-key-verify error with projects 2020-03-13 13:09:47 +00:00
Nick O'Leary d1dd7d1d51
[groups] Support copy/paste/import/export of groups 2020-03-09 11:14:18 +00:00
Nick O'Leary 1830478ec3
Merge pull request #2461 from node-red/set-flow-with-creds
Allow credentials to be provided as part of /flows api
2020-02-24 16:22:57 +00:00
Nick O'Leary d6b5494625
Allow credentials to be provided as part of /flows api 2020-02-13 16:44:48 +00:00
Nick O'Leary f76edf74f9
Merge pull request #2454 from node-red/send-metric-fix
Move receive metric position to better reflect async changes
2020-02-13 10:08:24 +00:00
Kazuhito Yokoi 5c199d3bb4
Fix garbled characters in library (#2457)
* update getFileBody

* add suitable unit tests

Co-authored-by: Hiroyuki Okada <ok.okada.hiroyuki@gmail.com>
2020-02-12 16:35:33 +00:00
Nick O'Leary cd210d9fbf
Add support for credential-stored env var in subflow 2020-02-10 11:28:56 +00:00
Nick O'Leary 1f8ed9dcb9
Merge branch 'master' into dev 2020-02-10 11:07:50 +00:00
Nick O'Leary 80d100f3f9
Move receive metric position to better reflect async changes
Fixes #2444
2020-02-07 16:49:41 +00:00
Nick O'Leary 7d32636133
Improve file store error when cache disabled and sync api used
Closes #2406
2020-02-07 14:26:30 +00:00
Nick O'Leary 6b52206186
Merge branch 'master' into dev 2020-01-22 11:54:24 +00:00
Nick O'Leary 95a51aafdc
Add path property to debug messages
Fixes #2358

This property can be used to identify the full path to the node that
logged a given message. If the node is inside a subflow (and maybe
nested many levels deep), this path can be used to help find the
node, rather than just the top-level subflow instance node.

A side-effect of this change is the Debug sidebar is now able to
show the message tools for a message coming from a deeply nested
subflow
2020-01-17 16:56:30 +00:00
Nick O'Leary d45274494d
Merge branch 'master' into dev 2019-11-21 21:57:58 +00:00
Nick O'Leary 83c1e44925
Merge pull request #2371 from btsimonh/projects-flowsFile-absolute
flows file absolute path plus non-existent folder creation.
2019-11-21 10:44:20 +00:00
Dave Conway-Jones 2f4dcba54d
let subflow add node-red context to status
For all those nodes thaht don't specify it.
So that subflow status then works ok
2019-11-20 06:12:33 -05:00
KAZUHIRO ITO ff96773295 Add node installation from other than public site 2019-11-11 18:25:36 +09:00
Simon Hailes a4af7b8e21 localfilesystem - ensure folder is present before write (e.g. flows file not in user folder) 2019-11-03 09:10:32 +00:00
Simon Hailes 72deee5d74 Detect windows UNC '\\' as well as 'X:' as an absolute flow path - use the path.isAbsolute function instead of rolling our own. 2019-11-03 08:24:47 +00:00
TJKoury cb8deab1f9
Update packages/node_modules/@node-red/runtime/lib/nodes/Node.js
Co-Authored-By: Nick O'Leary <nick.oleary@gmail.com>
2019-10-17 07:42:11 -04:00