1
0
mirror of https://github.com/node-red/node-red.git synced 2023-10-10 13:36:53 +02:00
Commit Graph

347 Commits

Author SHA1 Message Date
Nick O'Leary
67d7930aef
Remember to disable projects in editor when git not found 2018-02-01 20:35:18 +00:00
Nick O'Leary
1377439bb0
Fix pull/push when no tracked branch 2018-02-01 17:08:22 +00:00
Nick O'Leary
407123a280
Add git_pull_unrelated_history handling 2018-02-01 17:07:46 +00:00
Nick O'Leary
750dd590c8
Handle delete of last remote in project settings 2018-02-01 11:25:56 +00:00
Nick O'Leary
d0d93d7070
Handle more repo clone error cases 2018-02-01 10:42:14 +00:00
Nick O'Leary
b847e962aa
Handle project first-run without existing flow file 2018-01-31 21:31:45 +00:00
Nick O'Leary
8672fcd2bb
Fix authServer on Windows path
Fixes #1588
2018-01-29 21:47:20 +00:00
Nick O'Leary
519edce0ed
Replace when.otherwise() with Promise.catch()
Fixes #1584
2018-01-29 09:51:38 +00:00
Nick O'Leary
0dd7bc7fb9
Better default README.md content and edit button 2018-01-25 13:30:27 +00:00
Nick O'Leary
c43647ca86
Handle null profile flow file name 2018-01-25 11:14:16 +00:00
Nick O'Leary
6d02e70025
Ensure existing files are migrated to first project 2018-01-25 10:13:07 +00:00
Nick O'Leary
b7a0a9d7c2
Merge branch 'master' into 0.18 2018-01-24 23:08:14 +00:00
Nick O'Leary
e250a91f09
Merge branch '0.18' into projects 2018-01-24 23:06:27 +00:00
Nick O'Leary
4b129d94e4
Move node install to spawn to allow for big stdout
Fixes #1488
2018-01-24 22:41:26 +00:00
Nick O'Leary
95589307cd
Better reporting of project-not-found 2018-01-24 21:54:18 +00:00
Nick O'Leary
7a89e3cf33
Check the global git config to ensure its setup 2018-01-24 21:05:48 +00:00
Nick O'Leary
64607df929
Ensure git username/email are set on project creation 2018-01-24 15:51:11 +00:00
Nick O'Leary
a62a1012fa
Handle scoped modules via palette editor 2018-01-24 15:07:43 +00:00
Nick O'Leary
cf34716a57
Tidy up project first-run experience 2018-01-23 11:26:05 +00:00
Nick O'Leary
cf40497e6e
Flip logic for opt-in to projects 2018-01-22 23:14:38 +00:00
Nick O'Leary
ad6e55ca17
Allow a user to install missing modules from project settings 2018-01-22 13:46:11 +00:00
Nick O'Leary
7e27dd7678
Don't rely on ssh-keygen output to prevent known errors 2018-01-19 22:31:41 +00:00
Nick O'Leary
c2508296a5
Add debug to sshkeygen 2018-01-19 22:10:29 +00:00
Nick O'Leary
eac98a6d4d
Prevent ssh-keygen prompting for passphrase when blank 2018-01-19 13:12:22 +00:00
Nick O'Leary
7e2b2a9a02
Timeout sshkey-gen calls 2018-01-19 12:57:37 +00:00
Nick O'Leary
353de471eb
Add debug to sshkeygen for travis 2018-01-19 12:50:12 +00:00
Nick O'Leary
d93a92c1c8
Rearrange ssh logic to bring it together 2018-01-18 23:13:55 +00:00
Nick O'Leary
f7f795f58a
Fixup SSH key auth for project repos 2018-01-18 22:17:48 +00:00
Nick O'Leary
f95b414d22
First pass of projects test coverage 2018-01-16 23:04:39 +00:00
Nick O'Leary
b76010cb5a
Add sshkeygen test 2018-01-16 16:38:53 +00:00
Nick O'Leary
52475df783
Fix various tests due to projects rework 2018-01-16 16:18:18 +00:00
Nick O'Leary
25f4a018d9
Merge branch '0.18' into projects 2018-01-16 11:21:54 +00:00
Nick O'Leary
fd4fdb31b5
Better error reporting when module provides duplicate type 2018-01-15 23:20:20 +00:00
Nick O'Leary
1a62a7831b
Handle undefined/null in log functions
Fixes #1418
2018-01-14 00:50:58 +00:00
Nick O'Leary
fd9e3fc03a
Update jsonata to 1.4.1 2018-01-13 20:42:23 +00:00
Nick O'Leary
3306d30094
Get proper path to local keyfile when selected 2018-01-11 11:19:04 +00:00
Nick O'Leary
6516e0dfd2
Allow a user to pick existing sshkeys from ~/.ssh 2018-01-10 17:37:41 +00:00
Nick O'Leary
13356047dc
Better handling of empty projects and lifecycle 2018-01-09 15:06:05 +00:00
Nick O'Leary
1c2ea56f42
Allow a project to be specified on the command-line
Reuses the existing flowFile - if its value is found
to be the name of an existing project, that project
is set as the active one.

If it is not the name of an existing project, it is
ignored.
2018-01-08 16:10:54 +00:00
Nick O'Leary
1d7ae300e2
Handle cloning a bare repository 2018-01-08 14:46:56 +00:00
Hideki Nakamura
5a6cde1446 Refactoring ssh-keygen function (#1533) 2018-01-05 16:12:01 +00:00
Kazuki Nakanishi
63f7d826bc Enable it to store icon files in {settings.userDir}/lib/icons directory for dynamic nodes's icon feature (#1536) 2018-01-05 14:23:47 +00:00
Nick O'Leary
9c350311e8
Fix reauthentication of remote repositories 2017-12-21 17:40:24 +00:00
Nick O'Leary
816442f5f0
Update sshey UI to use common list style 2017-12-20 23:45:17 +00:00
Simon Hailes
6696b6661a When creating 'redserver' for a node, use runtime.server rather than runtime.adminApi.server, and fill runtime.server at startup with the valid http server regardless of adminApi being available.
This resolves websockets not working when the adminApi (httpAdminRoot) is disabled in settings.
2017-12-20 16:04:32 +00:00
Nick O'Leary
8c87478636
Merge sshkeys 2017-12-20 15:12:10 +00:00
Nick O'Leary
d870b072d7
Tidy up branch/remote list in projectSettings 2017-12-20 14:37:34 +00:00
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