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

Created Design: Concurrent editing handling (markdown)

Nick O'Leary 2016-07-26 11:39:21 +01:00
parent d501ed5fb8
commit 5afee5d0c7

@ -0,0 +1,17 @@
Target: 15 + beyond
If you have the editor open and new flows are deployed from another location (ie a co-worker deploys their changes), when you deploy your changes the previous changes are lost.
The editor should:
- warn if the flows are open in another editor (use number of comms connections to determine)
- notify when new flows are deployed (inc when done via the flow add/remove api)
- (longer term) automatically load the new flow into the editor - with a scheme for resolving conflicts
With the addition of [Version Control](https://github.com/node-red/node-red/wiki/Design%3A-Version-Control) of flows, each version of flow will now have an associated ID.
The editor will know the ID of flows it loaded. When it does a deploy, it will include that ID in the request. If the ID does not match the ID of the flows in the runtime, the request will be rejected with a well-defined response. The editor can then prompt the user to confirm the deploy. If the user confirms, the http POST is resent with an additional flag set confirm the action.
**TODO**
- define the changes to the `/flows` api to support this flow
- design UI dialog for the prompt