Commit Graph

381 Commits

Author SHA1 Message Date
Hiroyasu Nishiyama 6aecc3915c add support of environtment variable for tab & group 2021-08-19 21:15:13 +09:00
Nick O'Leary ddb715d88d
Record runtime-installed modules in .config.modules.json 2021-07-14 23:13:52 +01:00
Nick O'Leary 58023b4bf0
Merge branch 'pr_3024' into dev 2021-06-28 15:32:32 +01:00
Sam Machin bd3a8db438 log readOnly on startup 2021-06-16 10:10:31 +01:00
Nick O'Leary ce905ba2c4
Merge branch 'master' into dev 2021-06-08 11:44:31 +01:00
Nick O'Leary 7651941722
Do not assign z property to tab node when updating flow
Fixes #3010
2021-06-08 11:35:43 +01:00
Nick O'Leary 3541b4b968
Merge pull request #3004 from node-red-hitachi/fix-get-subflow-info
Fix allow Flow.getNode to return subflowInstance nodes
2021-06-07 18:16:01 +01:00
Nick O'Leary 5b1bf35a23
Fix over-greeding matching whilst parsing commit history
Fixes #3006
2021-06-07 18:07:58 +01:00
Kazuhiro Ito a7b8adb0e1 Fix allow Flow.getNode to return subflowInstance nodes 2021-06-04 15:08:03 +09:00
Nick O'Leary 7c02e4d66a
Merge branch 'master' into dev 2021-06-02 15:40:56 +01:00
Nick O'Leary 711794cfe1
Merge pull request #2993 from Steve-Mcl/master
ensure context get/set key is a string
2021-06-02 15:20:25 +01:00
Nick O'Leary c0e4cf2358
Fix handling of boolean subflow module properties
Fixes #3000
2021-06-02 14:48:54 +01:00
Steve-Mcl a92f0c4c6e fix context key validation + add tests
- adds a helper function validateContextKey to keep it DRY
- adds tests ensure key of null "" 1 {} [] [""] [1] [{}] all throw error
2021-05-26 13:04:09 +01:00
Nick O'Leary 468ef7ecff
Allow RED.settings.set to replace string property with object property 2021-05-25 21:02:14 +01:00
Steve-Mcl 4d768fd236 ensure context get/set key is a string 2021-05-25 14:53:06 +01:00
Nick O'Leary a9164e63ab
Merge branch 'dev' into pr_2971 2021-05-18 16:30:13 +01:00
Nick O'Leary d49d9a783c
Merge branch 'master' into dev 2021-05-13 16:06:33 +01:00
Nick O'Leary d7dc7c4eda
Fix error handling in runtime/lib/api/nodes 2021-05-13 15:46:56 +01:00
Nick O'Leary 001f066769
Remove all input event listeners on a node once it is closed
This prevents in-flight messages being passed to the node after
it has closed.
2021-05-13 13:37:21 +01:00
Nick O'Leary 5dbaaae68e
Merge branch 'master' into dev 2021-05-12 16:00:36 +01:00
Nick O'Leary 9cdec156dc
Merge pull request #2974 from aheissenberger/fix-bundle-error
Fixed esbuild bundle error "installRetry" was declared a constant and changed
2021-05-11 17:45:07 +01:00
Nick O'Leary d8d384a979
Fix plugin loading when browser sends unrecognised lang 2021-05-11 16:42:00 +01:00
Nick O'Leary 71ba73b38f
Merge branch 'master' into dev 2021-05-04 11:19:05 +01:00
Andreas Heissenberger 54c9d27fd8 fix 2021-05-03 17:35:50 +02:00
Andreas Heissenberger 01888ff078 fix "installRetry" was declared a constant and changed 2021-05-03 17:23:27 +02:00
Steve-Mcl 69dafd6c68 add codeEditor settings 2021-04-29 16:53:59 +01:00
Nick O'Leary 7df1a03b4b
Handle subflow modules that contain subflows 2021-04-28 21:50:00 +01:00
Nick O'Leary 4133f9c56f
Merge pull request #2936 from node-red/npm-install-hooks
Add pre/postInstall hooks to npm install handling
2021-04-27 10:57:14 +01:00
Nick O'Leary b62e4f6662
Fix deprecation of httpRoot 2021-04-26 14:43:06 +01:00
Nick O'Leary f5a1c8bc49
Merge pull request #2957 from node-red-hitachi/fix-error-on-git-auto-commit
fix error on auto commit for no flow change
2021-04-26 11:54:05 +01:00
Nick O'Leary 4cb8e99430
Timeout http upgrade requests that are not otherwise handled
Fixes #2956
2021-04-26 11:45:28 +01:00
Hiroyasu Nishiyama a480919ec3 fix error on auto commit for no flow change 2021-04-26 09:05:53 +09:00
Nick O'Leary 62f2a552ea
Merge pull request #2953 from node-red/depreacte-usage-of-httpRoot-and-add-warning
Deprecate usage of httpRoot and add warning
2021-04-23 16:42:01 +01:00
Dave Conway-Jones 56fe2014e1
Update packages/node_modules/@node-red/runtime/lib/index.js
Co-authored-by: Nick O'Leary <nick.oleary@gmail.com>
2021-04-23 16:36:15 +01:00
Dave Conway-Jones fdd0a93bad
Deprecate use of httpRoot in settings and add warning
(no change is actual behaviour yet - just warning)
Should we remove option from settings ? or just label it ?
2021-04-23 15:42:57 +01:00
Dave Conway-Jones 5cc791690b
fix flowfile name to flows.json in settings
and warn if not set (as if anyone reads warnings)
Move setting to top of settings.js as it will be edited more often.
Default behaviour will still work
(needs translations)
2021-04-23 14:09:06 +01:00
Nick O'Leary ed351eee54
Move hooks to util package 2021-04-15 15:12:30 +01:00
Nick O'Leary 70632706f9
Allow Flow.getNode to return subflowInstance nodes
Related to #2898
2021-03-31 23:14:26 +01:00
Nick O'Leary d555fcf7bd
Merge pull request #2903 from node-red/plugin-resources
Allow module to provide resources and automatically expose them
2021-03-30 22:50:36 +01:00
Nick O'Leary f8a7835341
Fix credential lookup for nested subflows
Fixes #2910
2021-03-25 22:27:49 +00:00
Nick O'Leary 8543613563
Allow module to provide resources and automatically expose them 2021-03-15 21:06:10 +00:00
Nick O'Leary 99a9e3a91b
Fix handling encrypted creds on /flows api 2021-03-06 20:27:51 +00:00
Nick O'Leary 101378c625
Properly handle credentials passed to /flows api 2021-03-06 20:09:03 +00:00
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
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