{"action":"created","issue":{"url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/issues/812","repository_url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine","labels_url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/issues/812/labels{/name}","comments_url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/issues/812/comments","events_url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/issues/812/events","html_url":"https://github.com/wireapp/wire-ios-sync-engine/pull/812","id":344066369,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAzNTQ5NDcz","number":812,"title":"Do not fail silently when SSO success URL callback is not valid","user":{"login":"alexaubry","id":16192914,"node_id":"MDQ6VXNlcjE2MTkyOTE0","avatar_url":"https://avatars2.githubusercontent.com/u/16192914?v=4","gravatar_id":"","url":"https://api.github.com/users/alexaubry","html_url":"https://github.com/alexaubry","followers_url":"https://api.github.com/users/alexaubry/followers","following_url":"https://api.github.com/users/alexaubry/following{/other_user}","gists_url":"https://api.github.com/users/alexaubry/gists{/gist_id}","starred_url":"https://api.github.com/users/alexaubry/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexaubry/subscriptions","organizations_url":"https://api.github.com/users/alexaubry/orgs","repos_url":"https://api.github.com/users/alexaubry/repos","events_url":"https://api.github.com/users/alexaubry/events{/privacy}","received_events_url":"https://api.github.com/users/alexaubry/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-07-24T14:36:20Z","updated_at":"2018-07-24T14:44:55Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/pulls/812","html_url":"https://github.com/wireapp/wire-ios-sync-engine/pull/812","diff_url":"https://github.com/wireapp/wire-ios-sync-engine/pull/812.diff","patch_url":"https://github.com/wireapp/wire-ios-sync-engine/pull/812.patch"},"body":"## What's new in this PR?\r\n\r\n### Issues\r\n\r\nBefore this PR, we were dismissing the URL action if the callback was not valid. This means that when the users were redirected to the app from a seemingly valid URL, we would not show an alert to tell them something went wrong. \r\n\r\nThis is a problem for troubleshooting issues, as we would have no context.\r\n\r\n### Solutions\r\n\r\nWhen decoding the `URLAction`, we return a company login error when the company login success could not be processed.\r\n\r\nThe error codes were borrowed from actual error codes from Apple to make sure we avoid conflicts, and are as follows:\r\n\r\n| Wire | Apple Equivalent | Raw Value |\r\n|------|------------------|-----------|\r\n| SessionManagerURLHandlerError.missingRequiredParameter | CarbonCore.missingRequiredParameterErr | -2063 |\r\n| SessionManagerURLHandlerError.invalidCookie | Security. errSecInvalidAccessCredentials | -67700 |"},"comment":{"url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/issues/comments/407432850","html_url":"https://github.com/wireapp/wire-ios-sync-engine/pull/812#issuecomment-407432850","issue_url":"https://api.github.com/repos/wireapp/wire-ios-sync-engine/issues/812","id":407432850,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNzQzMjg1MA==","user":{"login":"mikeger","id":715129,"node_id":"MDQ6VXNlcjcxNTEyOQ==","avatar_url":"https://avatars3.githubusercontent.com/u/715129?v=4","gravatar_id":"","url":"https://api.github.com/users/mikeger","html_url":"https://github.com/mikeger","followers_url":"https://api.github.com/users/mikeger/followers","following_url":"https://api.github.com/users/mikeger/following{/other_user}","gists_url":"https://api.github.com/users/mikeger/gists{/gist_id}","starred_url":"https://api.github.com/users/mikeger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikeger/subscriptions","organizations_url":"https://api.github.com/users/mikeger/orgs","repos_url":"https://api.github.com/users/mikeger/repos","events_url":"https://api.github.com/users/mikeger/events{/privacy}","received_events_url":"https://api.github.com/users/mikeger/received_events","type":"User","site_admin":false},"created_at":"2018-07-24T14:44:55Z","updated_at":"2018-07-24T14:44:55Z","author_association":"MEMBER","body":"For the reference, what is CarbonCore https://en.wikipedia.org/wiki/Carbon_(API)"}}
{"actor":{"display_login":"mikeger"}}