{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/vscode/issues/15642","repository_url":"https://api.github.com/repos/Microsoft/vscode","labels_url":"https://api.github.com/repos/Microsoft/vscode/issues/15642/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/vscode/issues/15642/comments","events_url":"https://api.github.com/repos/Microsoft/vscode/issues/15642/events","html_url":"https://github.com/Microsoft/vscode/issues/15642","id":190039486,"number":15642,"title":"IBackupFileService should not be aware of getWorkspaceBackupPaths","user":{"login":"bpasero","id":900690,"avatar_url":"https://avatars.githubusercontent.com/u/900690?v=3","gravatar_id":"","url":"https://api.github.com/users/bpasero","html_url":"https://github.com/bpasero","followers_url":"https://api.github.com/users/bpasero/followers","following_url":"https://api.github.com/users/bpasero/following{/other_user}","gists_url":"https://api.github.com/users/bpasero/gists{/gist_id}","starred_url":"https://api.github.com/users/bpasero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bpasero/subscriptions","organizations_url":"https://api.github.com/users/bpasero/orgs","repos_url":"https://api.github.com/users/bpasero/repos","events_url":"https://api.github.com/users/bpasero/events{/privacy}","received_events_url":"https://api.github.com/users/bpasero/received_events","type":"User","site_admin":false},"labels":[{"id":296418715,"url":"https://api.github.com/repos/Microsoft/vscode/labels/debt","name":"debt","color":"bfe5bf","default":false},{"id":461390715,"url":"https://api.github.com/repos/Microsoft/vscode/labels/hot-exit","name":"hot-exit","color":"1d76db","default":false},{"id":256129998,"url":"https://api.github.com/repos/Microsoft/vscode/labels/question","name":"question","color":"E2A1C2","default":true}],"state":"open","locked":false,"assignee":{"login":"Tyriar","id":2193314,"avatar_url":"https://avatars.githubusercontent.com/u/2193314?v=3","gravatar_id":"","url":"https://api.github.com/users/Tyriar","html_url":"https://github.com/Tyriar","followers_url":"https://api.github.com/users/Tyriar/followers","following_url":"https://api.github.com/users/Tyriar/following{/other_user}","gists_url":"https://api.github.com/users/Tyriar/gists{/gist_id}","starred_url":"https://api.github.com/users/Tyriar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tyriar/subscriptions","organizations_url":"https://api.github.com/users/Tyriar/orgs","repos_url":"https://api.github.com/users/Tyriar/repos","events_url":"https://api.github.com/users/Tyriar/events{/privacy}","received_events_url":"https://api.github.com/users/Tyriar/received_events","type":"User","site_admin":false},"assignees":[{"login":"Tyriar","id":2193314,"avatar_url":"https://avatars.githubusercontent.com/u/2193314?v=3","gravatar_id":"","url":"https://api.github.com/users/Tyriar","html_url":"https://github.com/Tyriar","followers_url":"https://api.github.com/users/Tyriar/followers","following_url":"https://api.github.com/users/Tyriar/following{/other_user}","gists_url":"https://api.github.com/users/Tyriar/gists{/gist_id}","starred_url":"https://api.github.com/users/Tyriar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tyriar/subscriptions","organizations_url":"https://api.github.com/users/Tyriar/orgs","repos_url":"https://api.github.com/users/Tyriar/repos","events_url":"https://api.github.com/users/Tyriar/events{/privacy}","received_events_url":"https://api.github.com/users/Tyriar/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2016-11-17T12:54:56Z","updated_at":"2016-11-17T22:42:03Z","closed_at":null,"body":"I am wondering why each `IBackupFileService` needs to be aware of `workspaces.json` and the contents. To me a backup file service is being created on exactly one backup workspace (determined by `IWorkspaceContextService`) and thats it. With a dependency to `workspaces.json`, this service steps into the territory of `IBackupMainService` and that smells of debt. \r\n\r\nI would like to understand why this is really needed?\r\n\r\nThe only use case seems to be the already very complicated `backupBeforeShutdown` conditions in https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/services/backup/node/backupService.ts#L135 which are impossible for me to understand quickly even with the comments.\r\n"},"comment":{"url":"https://api.github.com/repos/Microsoft/vscode/issues/comments/261393210","html_url":"https://github.com/Microsoft/vscode/issues/15642#issuecomment-261393210","issue_url":"https://api.github.com/repos/Microsoft/vscode/issues/15642","id":261393210,"user":{"login":"Tyriar","id":2193314,"avatar_url":"https://avatars.githubusercontent.com/u/2193314?v=3","gravatar_id":"","url":"https://api.github.com/users/Tyriar","html_url":"https://github.com/Tyriar","followers_url":"https://api.github.com/users/Tyriar/followers","following_url":"https://api.github.com/users/Tyriar/following{/other_user}","gists_url":"https://api.github.com/users/Tyriar/gists{/gist_id}","starred_url":"https://api.github.com/users/Tyriar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tyriar/subscriptions","organizations_url":"https://api.github.com/users/Tyriar/orgs","repos_url":"https://api.github.com/users/Tyriar/repos","events_url":"https://api.github.com/users/Tyriar/events{/privacy}","received_events_url":"https://api.github.com/users/Tyriar/received_events","type":"User","site_admin":false},"created_at":"2016-11-17T22:42:03Z","updated_at":"2016-11-17T22:42:03Z","body":"Yes it's only used during shutdown, specifically to determine the number of windows that are opened and reacting to it. Hot exit will trigger on Linux and Windows when he window being closed it the last window. The main process remains active on Mac which is why it only applies on Linux and Windows.\r\n\r\nThis could be changed to pinging the main process for the window count over IPC, I can make that change if that's better (using `electron.ipcRenderer`?)."}}
{"actor":{"display_login":"Tyriar"}}