Commit Graph

300 Commits

Author SHA1 Message Date
Hideki Nakamura 2ea2af7d2a Use a fixed string instead of `os.hostname()` 2017-12-20 19:44:57 +09:00
Nick O'Leary 05f90394db
Flag misconfigured project credentialSecret 2017-12-19 14:00:58 +00:00
Hideki Nakamura c24b0c6bb4 Change "generateSSHKey" function signature 2017-12-19 22:57:40 +09:00
Nick O'Leary 33a5b84181
Add first-run dialog to migrate files to project 2017-12-19 00:56:02 +00:00
Hideki Nakamura 2a9d0a5e7d Merge branch 'projects' into sshkey-management 2017-12-17 23:54:44 +09:00
Nick O'Leary 474f4572f2
Fix conditional initialisation of projects 2017-12-16 23:43:08 +00:00
Hideki Nakamura bf57cb209f Delete unnecessary logs 2017-12-16 00:46:05 +09:00
Hideki Nakamura 9bc41c1709 Merge branch "projects" 2017-12-16 00:33:08 +09:00
Hideki Nakamura fe10b8650f Add Git access feature via SSH and Enhance SSH Key management 2017-12-16 00:07:47 +09:00
Hideki Nakamura 3a311c9584 Detect a SSH key generation error 2017-12-15 23:48:52 +09:00
Nick O'Leary a3a1bba5ef
Add projects editorTheme flag to disable the feature 2017-12-13 09:44:48 +00:00
Nick O'Leary bb59cd5742
Allow unstaged files to be reverted 2017-12-11 17:05:12 +00:00
Nick O'Leary 27f1d3b704
Add delete local branch option 2017-12-08 16:31:42 +00:00
Nick O'Leary d007623347
Return more detailed information on /project/branches api 2017-12-07 22:24:57 +00:00
Hideki Nakamura 6a5cf7a1fa Merge branch 'projects' into sshkey-management 2017-12-07 23:29:58 +09:00
Hideki Nakamura 3adfe249b0 Support to delete project feature (#1509)
* First commit to support to delete projects

* Add delete project menu & Implement delete project API

* Correspond to the PR feedback
2017-12-07 14:28:26 +00:00
Hideki Nakamura 923893e160 Add SSH key management API 2017-12-07 23:11:24 +09:00
Nick O'Leary 304c597a2f
Store repo credentials per-user 2017-12-06 22:39:30 +00:00
Hideki Nakamura 3ca0e9c420 Fix the property "users" access error in runtime.start test caces (#1511) 2017-12-06 13:20:22 +00:00
Hideki Nakamura 1dd4323613 Fix the errors in credentials test cases (#1512) 2017-12-06 13:19:07 +00:00
Nick O'Leary 1840d15397
Restructure how editor/git settings are saved in userSettings 2017-12-05 23:50:32 +00:00
Nick O'Leary 3f6b1f6ccb
Fix loading of userSettings
Closes #1505
2017-12-05 16:23:55 +00:00
Nick O'Leary 91352e855a
Handle overwrite warning on local branch change 2017-12-05 16:12:07 +00:00
Nick O'Leary fff0b15ae5
Add /settings/user end point 2017-12-04 17:15:17 +00:00
Nick O'Leary a7e14f1093
Handle a local branch that does not yet track a remote 2017-12-04 13:26:47 +00:00
Nick O'Leary 94eeaeb8d3
Allow committer details to be set per-user 2017-12-04 11:42:44 +00:00
Nick O'Leary 64191e8303
Merge master to 0.18 2017-12-03 22:32:28 +00:00
Kazuki Nakanishi 6d2389945b allow a node's icon to be set dynamically (#1490)
* create a proto type

* Fixed some problems after reviewing
2017-11-30 13:13:35 +00:00
Nick O'Leary 14c48253f6
Confirm actions that would overwrite dirty workspace 2017-11-24 23:12:35 +00:00
Nick O'Leary e5ff25b92d
Fix project pull with authentication 2017-11-23 20:52:15 +00:00
Nick O'Leary 5c88888e02
Better auth handling in projects 2017-11-23 00:27:13 +00:00
Nick O'Leary 10057de9b3
A big projects update
Includes:

 - change local/remote branches
 - basic support for username/password handling
2017-11-21 23:31:41 +00:00
Jim Turner 6baedf909d Fix #1478 - Project files are not being flushed to disk after being written (#1479)
* Call fsync() before closing file

* Fix race condition in tests due to incorrect stub.

The startFlows() function wasn't really being stubbed, so it was still being called. But there was no corresponding call to stopFlows().

In later tests, the check in Flows.init() was throwing the "Cannot init without a stop" error.

* Test coverage for fsync() calls

For issue #1478

* Revert "Fix race condition in tests due to incorrect stub."

This reverts commit 4f71d7851b.

* Fix race condition in tests due to incorrect stub.

The startFlows() function wasn't really being stubbed, so it was still being called. But there was no corresponding call to stopFlows().

In later tests, the check in Flows.init() was throwing the "Cannot init without a stop" error.

* Fix intermittent test failure in Exec node.

Occasionally, the error text on stderr will come in more than one piece. The test only worked correctly if a single message was received.
2017-11-17 17:29:33 +00:00
Nick O'Leary 57533fd831
Add commit-diff view 2017-10-25 15:26:24 +01:00
Nick O'Leary 3d6468326a
Allow a project's flow file to be changed 2017-10-19 21:38:53 +01:00
Nick O'Leary 5218a3fbac
Add custom project.toJSON to simplify state mangement 2017-10-17 10:14:50 +01:00
Nick O'Leary 4569cb432d
Add Project object in runtime 2017-10-16 23:23:50 +01:00
Kazuhito Yokoi 0634a97598 Fix global.keys() bug in function node (#1417)
* Fix global.keys() bug in function node

* Filter set(), get() and keys() in global.keys() method
2017-10-10 21:13:38 +01:00
Nick O'Leary 19c84eb694
Add commit history view in sidebar 2017-10-09 23:37:19 +01:00
Nick O'Leary 10567afbb9
Add unified diff view to version control tab 2017-10-09 00:11:07 +01:00
Nick O'Leary 9a2fd0e2b2
Add initial version control sidebar with commit function 2017-10-07 00:18:20 +01:00
Nick O'Leary 522f7e6844
Do not include creds when calculating flow revision hash 2017-09-28 22:34:21 +01:00
Nick O'Leary 6a06142e1e
Allow credSecret to be managed via project settings 2017-09-26 22:51:08 +01:00
Nick O'Leary edc2310599
Move project sidebar to project settings dialog 2017-09-20 22:51:28 +01:00
Nick O'Leary b1cd13d629
Initial projects implementation 2017-09-20 10:30:07 +01:00
HirokiUchikawa ff40b521b7 Fix problem with multi-byte character (#1391) 2017-09-17 08:46:14 +01:00
Nick O'Leary 9a8b404054
Split localfilesystem storage plugin into component parts 2017-08-23 17:31:33 +01:00
Nick O'Leary 5bdb9e972e
Add httpStatic log statement on start up 2017-07-26 11:45:49 -07:00
Nick O'Leary f0373cd789
Add flow stopping trace messages 2017-07-21 11:15:40 +01:00
Kazuhito Yokoi b3ffd33507 Add file extension into flow name of library automatically (#1331) 2017-07-09 11:58:17 +01:00
Nick O'Leary c93870316c
Fix accessing global context from jsonata expressions
Fixes #1335
2017-07-09 10:40:23 +01:00
Nick O'Leary f9769a73fe
Retry auto-install of modules that fail
- introduces autoInstallModulesRetry - default 30000
 - backs off interval if repeated failures
 - fixes notification to the editor of an auto-reinstall
2017-07-08 17:30:17 +01:00
Kazuhito Yokoi ac60725d2a Fix flow library in menu to support period characters as flow name (#1320) 2017-07-04 10:02:24 +01:00
Kazuki Nakanishi 347e598715 Fix missing icons for some nodes (#1321) 2017-07-04 09:04:27 +01:00
Kazuki Nakanishi c34c98386e Fix creating userDir other than system drive on Windows (#1317) 2017-07-03 15:22:49 +01:00
Nick O'Leary 710f1e2ca0
Be consistent in how node settings are addressed 2017-06-29 11:17:39 +01:00
Dave Conway-Jones 303f67c036
let node installer try to save with ~ version prefix to allow minor updates 2017-06-27 10:17:09 +01:00
Nick O'Leary df9e50445e
Merge branch 'master' into 0.17 2017-06-26 10:18:42 +01:00
Nick O'Leary d9dc171c28
Add buffer mode to typedInput 2017-06-13 21:01:27 +01:00
Nick O'Leary f97f92c297
Strip BOM character from JSON files if present
Fixes #1239
2017-05-15 14:21:12 +01:00
mw75 0ee7ffb5e5 Version check no meta (#1243)
* Version check on module loading - remove all metadata information bevor comparing the versions.

* refined regex
2017-05-15 13:57:35 +01:00
Nick O'Leary d4135e80a6
Timeout a node that fails to close - default 15s timeout 2017-05-15 13:05:33 +01:00
btsimonh c0eabf0438 Add note of removed flows in diffConfig (#1253) 2017-05-11 15:39:41 +01:00
Nick O'Leary 7730d0a4f8
Merge branch 'master' into 0.17 2017-05-11 15:10:12 +01:00
Nick O'Leary dbf0486acb
Add JSONata expr tester and improved feedback 2017-05-05 11:23:24 +01:00
Nick O'Leary 29bd43413a
Add context.keys function to list top-level keys 2017-05-03 20:51:33 +01:00
Nick O'Leary 30920b1b78
Add $context/$flow/$global functions to jsonata 2017-05-03 15:48:30 +01:00
Nick O'Leary 8f92a3e875
Do not log node errors if handled by a Catch node 2017-05-03 13:42:38 +01:00
Nick O'Leary 4ea33ea482
Pass a 'removed' parameter to node close handler 2017-04-21 23:36:21 +01:00
Nick O'Leary 7bd0943412
Provide single endpoint to load all node message catalogs
Replaces potentially dozens of http requests with one or two.
2017-04-21 11:49:35 +01:00
Nick O'Leary d1c42262d6
Ensure all nodes have access to global context
Fixes #1230
2017-04-12 20:48:43 +01:00
Nick O'Leary bfb548636e
Merge branch 'master' into 0.17 2017-04-11 14:53:44 +01:00
Nick O'Leary 08d21ccba7
Clone credentials when passing to node
Fixes #1198
2017-04-10 21:45:04 +01:00
Nick O'Leary 67337e013a
Merge branch 'master' into 0.17 2017-04-10 15:45:21 +01:00
Andrey Bezugliy f987fa13ea Resolve dir argument of getLocalNodeFiles function (#1216)
* Resolve dir argument of getLocalNodeFiles function

The getLocalNodeFiles is called 3 times.  Each time it called, the callee needs to resolve the dir argument.
That was not done for several of calls, and local modules (specified in the "nodesDir" setting) were not returned to client because of that.

This fix will allow to make sure the dir is consistently resolved.

* Several changes in "localfilesystem_spec.js":
- Changed checkNodes to verify that every node's file property is resolved, i.e. containst absolute path, not relative.
- Added a unit-test "Finds nodes in settings.nodesDir (string,relative path)"
2017-04-10 15:41:20 +01:00
Nick O'Leary 73dfe631ce
Add .trace and .debug to Node prototype 2017-04-10 15:32:40 +01:00
Nick O'Leary b9379f2ddf
Provide notification when new flows deployed in the background 2017-03-17 21:29:03 +00:00
Nick O'Leary 5356373681
Finalise nodeSettings and update tlsConfigDisableLocalFiles
- increase test coverage around registerType
2017-03-09 21:06:49 +00:00
Nick O'Leary e55933706d
Merge branch 'nodeSettings' into 0.17 2017-03-09 20:00:54 +00:00
Kazuki-Nakanishi 3b3d696e45 Add the node setting tlsConfigDisableLocalFiles for tls node. (#1190)
* Add the node setting tlsConfigDisableLocalFiles for tls node.

* Fix the bug that shows node setting when specified in settings.js and exportable is false.
2017-03-09 19:58:34 +00:00
Kazuki-Nakanishi 34089aec70 Allow a node to declare what settings should be made available to the editor. (#1185)
* Implement register/exportNodeSettings.

* Change normaliseRegisterTypeName to normaliseNodeTypeName. Force it to name in a camel case.
2017-03-08 14:38:33 +00:00
kazuhitoyokoi 7a10636128 Add node whitelist function (#1184) 2017-03-08 10:00:00 +00:00
Nick O'Leary 7698990e37
Allows flows to be enabled/disabled in the runtime 2017-03-06 15:29:05 +00:00
Nick O'Leary 73501f3ad3
Resync with master 2017-03-01 17:45:09 +00:00
Nick O'Leary 54ee655472
Log error stack traces if verbose flag is set 2017-03-01 17:00:27 +00:00
Nick O'Leary 571b9fb8e0 Merge pull request #1122 from CANDY-LINE/feature/i18n-issue
Fix empty extra node help content issue
2017-03-01 16:38:08 +00:00
Nick O'Leary fca77a868f
Allow a node to declare settings that should be exported 2017-03-01 15:01:07 +00:00
Nick O'Leary 869fdbcc6a
Remove event passing for icons/examples from the api layer 2017-02-15 23:07:50 +00:00
Nick O'Leary 0643f149b7
Extract line number if available from node load errors 2017-01-30 09:37:08 +00:00
Nick O'Leary f2235dacdc
Shuffle promises for creating default package.json 2017-01-28 14:21:22 +00:00
Nick O'Leary 85b2a03a42
Create a package.json file in userDir if one doesn't exist 2017-01-27 22:35:17 +00:00
Nick O'Leary ddb2ea4b5f
autoInstallModules option must honour version/pending_version 2017-01-25 11:07:02 +00:00
Nick O'Leary e27f5d0460
Add node module update api and expose in palette editor 2017-01-21 23:46:44 +00:00
Daisuke Baba 5ba9a0eb3f Fix empty extra node help content issue 2017-01-19 16:55:57 +09:00
Nick O'Leary 11f4ae019c
Include module name in requests for node icons 2017-01-18 13:06:22 +00:00
Nick O'Leary d6f6b41145
Fix inner reference in install fail message catalog entry
Fixes #1120
2017-01-17 09:54:17 +00:00
Nick O'Leary 4b64aad5ce
Change hard error to verbose warning if using old node.js level 2017-01-14 23:57:39 +00:00
Nick O'Leary 0a96259ddf
Update copyright header for JS Foundation 2017-01-11 15:24:33 +00:00
Nick O'Leary 28678acf74
Add debug logging around flow revision ids 2017-01-10 14:20:51 +00:00
Nick O'Leary 75855d5450
Initialise nodeApp regardless of httpAdmin setting
Closes #1096 #1095
2017-01-09 22:22:49 +00:00
Nick O'Leary e45cb7fac1
Ensure flows exist before delegating status/error events
Fixes #1069
2017-01-09 16:39:41 +00:00
Nick O'Leary f0a4ea099c
Fix whitespace in localfilesystem 2017-01-08 23:01:28 +00:00
btsimonh c8d6693fba fix bug where savesettings did not honor local settings variables (#1073)
* fix bug where savesettings did not honor local settings variables

* don't create lib/flows on read;  It's already created in localfilesystem.init and in saveLibraryEntry -
so removed call to promiseDir, and added a return of [] if accessing a folder which did not exist.
This is important because else when settings.readOnly is true, it still creates folders.

* Fix a CI failure where path passed to getLibraryEntry is empty;
treat this case as meaning it was wanting a folder, and return empty if the folder dioes not exist

* Add a test for getLibraryEntry( type, '/' ) as called by node-red

* change newsettings to camelCase newSettings
2017-01-08 23:00:27 +00:00
Nick O'Leary 73a41707e5
Property expressions must not be blank 2017-01-06 21:58:17 +00:00
Nick O'Leary 4c6157a06e
Tidy up merge commit of validatePropertyExpression 2017-01-06 14:32:37 +00:00
Nick O'Leary e73216d4c1 Merge branch 'master' into 0.16 2017-01-06 14:30:13 +00:00
Nick O'Leary 0c7705beff
Allow quoted property expressions
Fixes #1101
2017-01-06 11:23:53 +00:00
Nick O'Leary 555f96cfaf
Info-tips update 2017-01-05 23:33:19 +00:00
Nick O'Leary 59ffacb3df
Fix merge conflicts 2017-01-05 10:07:23 +00:00
Josh f143a6ba08 update welcome message to use logger so it can be turned off/on if required (#1083) 2016-12-23 11:31:23 +00:00
Nick O'Leary c720d78c39 Ensure runtime event notification gets cleared on restart 2016-12-05 14:39:34 +00:00
Nick O'Leary 8d21e441a0 Add notification when runtime stopped due to missing types
Part of #832
2016-12-05 13:24:24 +00:00
Nick O'Leary 564902b886 Allow $ and _ at start of property identifiers
Fixes #1063
2016-11-21 21:36:18 +00:00
Dave Conway-Jones 8d5286703f reimplement $(env var) replace to share common code.
and add test to utils
2016-11-17 13:56:17 +00:00
Dave Conway-Jones 74f2180fa4 Fix error message for missing node html file, and add test.
To close #1053
2016-11-16 22:46:01 +00:00
Dave Conway-Jones d042169f2e Let credentials also use $(...) substitutions from ENV
to close #1051
(and add to test)
2016-11-16 21:47:13 +00:00
telogis-nodered 44a0f1b505 Palette editor fixes (#1033)
* ensure remove button is only enabled for local modules when refreshing palette editor

* ensure local field is propagated to the nodes when a new module is added to the registry
2016-11-16 14:12:31 +00:00
Dave Conway-Jones db2425c473 Seperated info messages to their own file
auto detect size still needs work
2016-11-14 19:10:02 +00:00
Nick O'Leary bf90509526 Add jsonata support to Change/Switch nodes 2016-11-10 23:58:34 +00:00
Ben Hardill 0a5a42b32a Fix node.error() not printing when passed false (#1037)
This should fix #1036
2016-11-07 18:28:35 +00:00
Nick O'Leary 5f0cab8cc2 Add log.removeHandler function 2016-10-20 23:31:40 +01:00
Nick O'Leary 67d5b39c96 Status messages from nodes in subflows not delegated properly
Fixes #1016
2016-10-19 21:06:45 +01:00
Nick O'Leary 49f72881f4 Disable palette editor if npm not found 2016-10-12 22:30:32 +01:00
Nick O'Leary 8e7d52e645 Avoid reencyrpting credentials if they haven't changed 2016-10-11 14:27:35 +01:00
Nick O'Leary b4be1184fd Add v2 /flows api and deploy-overwrite protection 2016-10-09 22:02:40 +01:00
Nick O'Leary d29abc2724 Encrypt credentials by default 2016-09-23 10:38:30 +01:00
Nick O'Leary f9b972349d Move credential load/save storage functions under get/setFlows 2016-09-21 21:58:50 +01:00
Nick O'Leary e06cadd761 Pass full runtime object to storage and flow sub-components 2016-09-21 10:22:04 +01:00
Nick O'Leary 7220af3ef0 Move palette editor to left hand side 2016-08-04 16:49:36 +01:00
Nick O'Leary 0ade8ff7a2 Add log warning if node module required version cannot be satisfied 2016-07-28 15:43:26 +01:00
Nick O'Leary d6b326c134 Handle empty credentials file
Closes #937
2016-07-26 22:23:49 +01:00
Nick O'Leary d57425a15e Fix node enable/disable over restart - load configs after settings init 2016-07-15 00:11:28 +01:00
Dave Conway-Jones e360e57a5b Fix node.status to check hasOwnProperty("text") 2016-07-06 17:22:45 +01:00
Nick O'Leary f62cf6818b Clear context in node test helper
Fixes #858
2016-07-03 23:08:53 +01:00
Nick O'Leary c05e9da9c5 Allow node properties to be same as existing object functions
Fixes #880
2016-07-03 23:00:48 +01:00
Nick O'Leary 78b1bf8f25 Merge branch '0.14.0' 2016-06-17 21:30:09 +01:00
Nick O'Leary 0441c83fd7 Fix use of hasOwnProperty in Flow
Closes #907
2016-06-14 20:30:37 +01:00
Nick O'Leary 08ade44dc8 Handle more edge cases with RED.util.normalisePropertyExpression 2016-06-13 22:00:42 +01:00
Nick O'Leary 945fbbc065 Capture error stack on node.error
Closes #879
2016-06-12 11:07:05 +01:00
Nick O'Leary 4dc9c7714c Clear node context on close
Fixes #870
2016-06-11 22:53:27 +01:00
Nick O'Leary 762eb07dd4 Add support for array-syntax in typedInput msg properties 2016-06-07 23:01:23 +01:00
Nick O'Leary 3959fcdc88 Handle null return from Function node in array of messages 2016-06-06 11:40:02 +01:00
Dave Conway-Jones 69f83cb905 fully log node warnings on start
(i.e. don’t need -v for simple errors on start)
2016-05-26 10:38:24 +01:00
Josh 3454e5ac77 Flows lib honours flowFilePretty setting (#837)
* Flow lib now adheres to pretty flow file, ui also adheres to this as well

* added settings mock object in flows_spec get api test

* reverted api changes, fixed parse of flow only

* try spell flows correctly
2016-05-17 22:09:57 +01:00
Nick O'Leary 9e26aeea1d Handle scoped node modules in the api 2016-05-17 21:56:03 +01:00
Nick O'Leary db433efbef Link nodes show hidden wires when selected
2016-05-17 09:18:32 +01:00
Nick O'Leary 594ff8cd3d Add support for loading scoped node modules
Fixes #885
2016-05-06 10:16:41 +01:00
Nick O'Leary 337f5f9b98 Handle missing tab nodes in a loaded flow config 2016-05-04 22:09:11 +01:00
Nick O'Leary 41445a1b48 Merge branch 'config' into 0.14.0
explain why this merge is necessary,
2016-05-04 15:44:48 +01:00
Nick O'Leary 0c53b5310a Protect against node types with reserved names such as toString
Fixes #880
2016-04-28 14:17:48 +01:00