Commit Graph

288 Commits

Author SHA1 Message Date
Nick O'Leary 3d23d1de4f
Merge pull request #2873 from node-red/function-modules
Function node external modules
2021-03-01 21:35:31 +00:00
Nick O'Leary 0dc4440a99
Merge branch 'master' into dev 2021-02-25 17:56:01 +00:00
Nick O'Leary 3af77b6a31
Merge pull request #2785 from node-red/library-plugins
Library plugins
2021-02-25 16:05:23 +00:00
Nick O'Leary afb17af571
Fix global leak in lib/flows/index.js 2021-02-19 21:47:02 +00:00
Nick O'Leary 5012568464
Stop config nodes after flow nodes
Fixes #2876
2021-02-19 20:44:01 +00:00
Nick O'Leary b41c7962c2
Add tests for pluggable library 2021-02-19 15:24:56 +00:00
Nick O'Leary 6f9e06e78d
Add validation of library plugin id and better error reporting 2021-02-19 14:39:42 +00:00
Nick O'Leary c2347076f4
Handle errors when initialising library plugin 2021-02-19 14:01:33 +00:00
Nick O'Leary c744af161d
Add support for settings object in plugin definition 2021-02-19 11:59:49 +00:00
Nick O'Leary 3f9a29730f
Add partial implementation of adding library sources via editor
This adds lots of commented out code that provides a settings panel
to add new library sources. It is incomplete as it doesn't actually
add/update the library sources on the runtime.

For 1.3, I'm focussing on allowing additional sources get added
via the settings file only. I've done enough work on the editor
side to convince myself more work is needed than I can justify
at this time on what is otherwise not going to be a widely
used feature.
2021-02-18 11:58:23 +00:00
Nick O'Leary 8a076c01ab
Support for library source plugins 2021-02-18 11:58:22 +00:00
Nick O'Leary 7d04353843
Merge pull request #2859 from node-red/fix-numeric-status
fix numeric status not displaying by ensuring it's a string
2021-02-16 14:32:14 +00:00
Hiroyasu Nishiyama 12c7238c72 revert diffConfigs args 2021-02-15 22:05:42 +09:00
Hiroyasu Nishiyama b66468c4ea restart node only if node's group changes 2021-02-14 10:06:46 +09:00
Nick O'Leary 6336ab121e
Merge branch 'dev' into function-modules 2021-02-13 00:21:27 +00:00
Nick O'Leary 9c09ee3b71
Rework Function node module integration 2021-02-12 18:14:13 +00:00
Hiroyasu Nishiyama 1be337fbc5 make nodes with only group change not deployed by nodes deploy mode 2021-02-13 00:23:30 +09:00
Dave Conway-Jones e86f6a841a
fix numeric status not displaying by ensuring it's a string 2021-02-05 11:36:26 +00:00
Nick O'Leary 735de2908a
Handle more valid language codes when validating lang params
Fixes #2856
2021-02-03 15:43:26 +00:00
Nick O'Leary f5da2eb633
Merge branch 'master' into dev 2021-02-02 13:45:43 +00:00
Nick O'Leary 74db3e17d0
Restrict project file access to inside the project directory 2021-02-01 13:39:39 +00:00
Nick O'Leary 3a0074d96e
Merge branch 'master' into dev 2021-01-27 23:28:19 +00:00
Nick O'Leary 9b5ed8407f
Broaden lang verification to include * 2021-01-27 22:06:12 +00:00
Hiroyasu Nishiyama 4a1d66f210 update UI, Runtime API, metadata handling, and others 2021-01-27 22:27:54 +09:00
Nick O'Leary 1f6328bf4e
Add initial support for ThemePlugins 2021-01-26 13:49:47 +00:00
Nick O'Leary a0f736bb88
Validate user-provided language parameter before passing to i18n 2021-01-25 17:06:27 +00:00
Nick O'Leary a006b52052
Initial plugin runtime api implementation 2021-01-18 16:25:40 +00:00
Tiago Ferreira 55ff035fc9
Ability to add projects path to the settings file (#2816)
* add the ability to set the projects path

* Update packages/node_modules/@node-red/runtime/locales/en-US/runtime.json

use directory to keep consistency with the project

Co-authored-by: Nick O'Leary <nick.oleary@gmail.com>

* Update packages/node_modules/@node-red/runtime/lib/storage/localfilesystem/projects/index.js

only show the projects directory is projects are enabled

Co-authored-by: Nick O'Leary <nick.oleary@gmail.com>

* use "directory" instead of "folder" to keep consistency with the Node-RED project

Co-authored-by: Nick O'Leary <nick.oleary@gmail.com>
2021-01-18 13:18:07 +00:00
Hiroyasu Nishiyama d51aefa156 initial support for npm module installation 2021-01-11 19:32:16 +09:00
Nick O'Leary c40412d7c6
Merge pull request #2690 from node-red/sf-module
[sf-modules] Support npm subflow modules
2021-01-08 21:16:05 +00:00
Nick O'Leary b0bc7ecacb
Merge pull request #2763 from node-red/simple-git-setting
Allow project workflow to be configured via settings file
2021-01-08 15:20:11 +00:00
Nick O'Leary 5489bd37c9
Fix handling of default workflow mode when projects not active 2021-01-08 15:05:34 +00:00
Nick O'Leary da96c85d32
Handle subflow modules with their own npm dependencies 2021-01-07 11:26:20 +00:00
Nick O'Leary 814fc8bc69
Add SubflowModule class for running subflow modules 2021-01-07 11:10:58 +00:00
Nick O'Leary 0c9fd25d3e
Nodes log via parent flow to allow flow-info to be added 2021-01-07 11:10:34 +00:00
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