{"action":"closed","issue":{"url":"https://api.github.com/repos/ShopBotTools/FabMo-Engine/issues/72","labels_url":"https://api.github.com/repos/ShopBotTools/FabMo-Engine/issues/72/labels{/name}","comments_url":"https://api.github.com/repos/ShopBotTools/FabMo-Engine/issues/72/comments","events_url":"https://api.github.com/repos/ShopBotTools/FabMo-Engine/issues/72/events","html_url":"https://github.com/ShopBotTools/FabMo-Engine/issues/72","id":58437611,"number":72,"title":"App Management at Startup","user":{"login":"ryansturmer","id":1383181,"avatar_url":"https://avatars.githubusercontent.com/u/1383181?v=3","gravatar_id":"","url":"https://api.github.com/users/ryansturmer","html_url":"https://github.com/ryansturmer","followers_url":"https://api.github.com/users/ryansturmer/followers","following_url":"https://api.github.com/users/ryansturmer/following{/other_user}","gists_url":"https://api.github.com/users/ryansturmer/gists{/gist_id}","starred_url":"https://api.github.com/users/ryansturmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryansturmer/subscriptions","organizations_url":"https://api.github.com/users/ryansturmer/orgs","repos_url":"https://api.github.com/users/ryansturmer/repos","events_url":"https://api.github.com/users/ryansturmer/events{/privacy}","received_events_url":"https://api.github.com/users/ryansturmer/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-02-21T02:47:34Z","updated_at":"2015-02-23T13:03:43Z","closed_at":"2015-02-23T13:03:43Z","body":"The current app loading strategy is a bit of a mess, and it makes development difficult.  There are two scenarios:\r\n\r\n1) More sophisticated built-in apps such as the job manager or the app manager require iteration and development\r\n2) User apps need to be deployed and iterated upon.\r\n\r\nCurrently, apps are all copied to a temporary directory from which they are hosted.  Built-in apps are copied from the installation directory, and the user apps are copied from an installed apps directory.  There is no need to do this copy operation every time, but we do want updated apps to be copied from the installation when new versions are installed, and user apps will be updated routinely, and need to be copied over.  In addition, it's advantageous to be able to edit the apps in place, in their temporary hosted location, but of course these changes don't take effect unless the app contents are manually copied from the temp directory back to the app installation location.\r\n\r\nWe need a way to\r\n\r\n1. Facilitate development of internal and user apps by allowing edits to \"live\" apps that are preserved\r\n2. Speed up the app loading process if no new apps are to be installed/changes to be made.\r\n\r\nOne strategy might be to:\r\n\r\n1. Scan all the installed apps, if an app isn't installed, install it.\r\n2. Have a special flag in an app launch that \"reabsorbs\" apps into the system app tree, that way apps can be edited live, and maintained in the tree.\r\n\r\nI dunno.  More to think about here."}}