{"action":"created","issue":{"url":"https://api.github.com/repos/getlantern/lantern/issues/21","labels_url":"https://api.github.com/repos/getlantern/lantern/issues/21/labels{/name}","comments_url":"https://api.github.com/repos/getlantern/lantern/issues/21/comments","events_url":"https://api.github.com/repos/getlantern/lantern/issues/21/events","html_url":"https://github.com/getlantern/lantern/issues/21","id":2305052,"number":21,"title":"[feature] install updates automatically","user":{"login":"skivvies","id":475147,"avatar_url":"https://avatars.githubusercontent.com/u/475147?v=3","gravatar_id":"","url":"https://api.github.com/users/skivvies","html_url":"https://github.com/skivvies","followers_url":"https://api.github.com/users/skivvies/followers","following_url":"https://api.github.com/users/skivvies/following{/other_user}","gists_url":"https://api.github.com/users/skivvies/gists{/gist_id}","starred_url":"https://api.github.com/users/skivvies/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skivvies/subscriptions","organizations_url":"https://api.github.com/users/skivvies/orgs","repos_url":"https://api.github.com/users/skivvies/repos","events_url":"https://api.github.com/users/skivvies/events{/privacy}","received_events_url":"https://api.github.com/users/skivvies/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/getlantern/lantern/labels/P1","name":"P1","color":"eb6420"}],"state":"open","locked":false,"assignee":{"login":"xiam","id":385670,"avatar_url":"https://avatars.githubusercontent.com/u/385670?v=3","gravatar_id":"","url":"https://api.github.com/users/xiam","html_url":"https://github.com/xiam","followers_url":"https://api.github.com/users/xiam/followers","following_url":"https://api.github.com/users/xiam/following{/other_user}","gists_url":"https://api.github.com/users/xiam/gists{/gist_id}","starred_url":"https://api.github.com/users/xiam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xiam/subscriptions","organizations_url":"https://api.github.com/users/xiam/orgs","repos_url":"https://api.github.com/users/xiam/repos","events_url":"https://api.github.com/users/xiam/events{/privacy}","received_events_url":"https://api.github.com/users/xiam/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/getlantern/lantern/milestones/64","labels_url":"https://api.github.com/repos/getlantern/lantern/milestones/64/labels","id":779013,"number":64,"title":"Short-term","description":"","creator":{"login":"scouttle","id":245240,"avatar_url":"https://avatars.githubusercontent.com/u/245240?v=3","gravatar_id":"","url":"https://api.github.com/users/scouttle","html_url":"https://github.com/scouttle","followers_url":"https://api.github.com/users/scouttle/followers","following_url":"https://api.github.com/users/scouttle/following{/other_user}","gists_url":"https://api.github.com/users/scouttle/gists{/gist_id}","starred_url":"https://api.github.com/users/scouttle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scouttle/subscriptions","organizations_url":"https://api.github.com/users/scouttle/orgs","repos_url":"https://api.github.com/users/scouttle/repos","events_url":"https://api.github.com/users/scouttle/events{/privacy}","received_events_url":"https://api.github.com/users/scouttle/received_events","type":"User","site_admin":false},"open_issues":129,"closed_issues":25,"state":"open","created_at":"2014-09-04T20:45:49Z","updated_at":"2015-02-04T18:43:16Z","due_on":"2015-03-02T08:00:00Z","closed_at":null},"comments":60,"created_at":"2011-11-21T14:25:31Z","updated_at":"2015-02-04T19:09:09Z","closed_at":null,"body":"evergreen style (e.g. à la Google Chrome).\r\n\r\nAuto-updates using jardiff or something similar to auto-patch deployed jar files.\r\n\r\nSub-tasks:\r\n- [ ] #898"},"comment":{"url":"https://api.github.com/repos/getlantern/lantern/issues/comments/72917633","html_url":"https://github.com/getlantern/lantern/issues/21#issuecomment-72917633","issue_url":"https://api.github.com/repos/getlantern/lantern/issues/21","id":72917633,"user":{"login":"xiam","id":385670,"avatar_url":"https://avatars.githubusercontent.com/u/385670?v=3","gravatar_id":"","url":"https://api.github.com/users/xiam","html_url":"https://github.com/xiam","followers_url":"https://api.github.com/users/xiam/followers","following_url":"https://api.github.com/users/xiam/following{/other_user}","gists_url":"https://api.github.com/users/xiam/gists{/gist_id}","starred_url":"https://api.github.com/users/xiam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xiam/subscriptions","organizations_url":"https://api.github.com/users/xiam/orgs","repos_url":"https://api.github.com/users/xiam/repos","events_url":"https://api.github.com/users/xiam/events{/privacy}","received_events_url":"https://api.github.com/users/xiam/received_events","type":"User","site_admin":false},"created_at":"2015-02-04T19:09:08Z","updated_at":"2015-02-04T19:09:08Z","body":"I'm going to create an \"autoupdate\" repository to propose a solution for this, along with tests and documents. As far as I understand we don't actually have the final binary yet but we're going to prepare to work with only one binary, this binary itself must not be a compressed executable, but it can safely be gzipped (as a common file). \r\n\r\nAlso, we should consider updating via proxy when the direct update fails and the binary diff is important because we also want to optimise our user's bandwidth usage.\r\n\r\nI think that adding support for updating more than one file (for example, a PNG icon + flashlight binary + README) would not be that difficult and won't hurt at all, even if we finally manage to do everything in one single binary.\r\n\r\nWhat do you think?"}}