{"action":"created","issue":{"url":"https://api.github.com/repos/Instabug/instabug-reactnative/issues/174","repository_url":"https://api.github.com/repos/Instabug/instabug-reactnative","labels_url":"https://api.github.com/repos/Instabug/instabug-reactnative/issues/174/labels{/name}","comments_url":"https://api.github.com/repos/Instabug/instabug-reactnative/issues/174/comments","events_url":"https://api.github.com/repos/Instabug/instabug-reactnative/issues/174/events","html_url":"https://github.com/Instabug/instabug-reactnative/issues/174","id":339052949,"node_id":"MDU6SXNzdWUzMzkwNTI5NDk=","number":174,"title":"Does this really `requiresMainQueueSetup` on iOS?","user":{"login":"jamesreggio","id":822205,"node_id":"MDQ6VXNlcjgyMjIwNQ==","avatar_url":"https://avatars1.githubusercontent.com/u/822205?v=4","gravatar_id":"","url":"https://api.github.com/users/jamesreggio","html_url":"https://github.com/jamesreggio","followers_url":"https://api.github.com/users/jamesreggio/followers","following_url":"https://api.github.com/users/jamesreggio/following{/other_user}","gists_url":"https://api.github.com/users/jamesreggio/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesreggio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesreggio/subscriptions","organizations_url":"https://api.github.com/users/jamesreggio/orgs","repos_url":"https://api.github.com/users/jamesreggio/repos","events_url":"https://api.github.com/users/jamesreggio/events{/privacy}","received_events_url":"https://api.github.com/users/jamesreggio/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"Korazy","id":4321051,"node_id":"MDQ6VXNlcjQzMjEwNTE=","avatar_url":"https://avatars1.githubusercontent.com/u/4321051?v=4","gravatar_id":"","url":"https://api.github.com/users/Korazy","html_url":"https://github.com/Korazy","followers_url":"https://api.github.com/users/Korazy/followers","following_url":"https://api.github.com/users/Korazy/following{/other_user}","gists_url":"https://api.github.com/users/Korazy/gists{/gist_id}","starred_url":"https://api.github.com/users/Korazy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Korazy/subscriptions","organizations_url":"https://api.github.com/users/Korazy/orgs","repos_url":"https://api.github.com/users/Korazy/repos","events_url":"https://api.github.com/users/Korazy/events{/privacy}","received_events_url":"https://api.github.com/users/Korazy/received_events","type":"User","site_admin":false},"assignees":[{"login":"Korazy","id":4321051,"node_id":"MDQ6VXNlcjQzMjEwNTE=","avatar_url":"https://avatars1.githubusercontent.com/u/4321051?v=4","gravatar_id":"","url":"https://api.github.com/users/Korazy","html_url":"https://github.com/Korazy","followers_url":"https://api.github.com/users/Korazy/followers","following_url":"https://api.github.com/users/Korazy/following{/other_user}","gists_url":"https://api.github.com/users/Korazy/gists{/gist_id}","starred_url":"https://api.github.com/users/Korazy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Korazy/subscriptions","organizations_url":"https://api.github.com/users/Korazy/orgs","repos_url":"https://api.github.com/users/Korazy/repos","events_url":"https://api.github.com/users/Korazy/events{/privacy}","received_events_url":"https://api.github.com/users/Korazy/received_events","type":"User","site_admin":false}],"milestone":null,"comments":3,"created_at":"2018-07-06T19:49:01Z","updated_at":"2018-08-07T21:31:27Z","closed_at":null,"author_association":"NONE","body":"It's not clear to me why Instabug can't be initialized in the background. In fact, I've been using a branch for three months with `requiresMainQueueSetup` set to `return NO` without any issue.\r\n\r\nAllowing background setup helps to cut down on app startup times, and because Instabug brings in some hefty native frameworks, removing main queue setup reduced our app launch time by about 150ms on an iPhone 6. (Every 100ms matters, especially when using many external dependencies.)\r\n\r\nIt would be great if you could investigate and consider whether this could safely be set to `NO`."},"comment":{"url":"https://api.github.com/repos/Instabug/instabug-reactnative/issues/comments/411209393","html_url":"https://github.com/Instabug/instabug-reactnative/issues/174#issuecomment-411209393","issue_url":"https://api.github.com/repos/Instabug/instabug-reactnative/issues/174","id":411209393,"node_id":"MDEyOklzc3VlQ29tbWVudDQxMTIwOTM5Mw==","user":{"login":"jamesreggio","id":822205,"node_id":"MDQ6VXNlcjgyMjIwNQ==","avatar_url":"https://avatars1.githubusercontent.com/u/822205?v=4","gravatar_id":"","url":"https://api.github.com/users/jamesreggio","html_url":"https://github.com/jamesreggio","followers_url":"https://api.github.com/users/jamesreggio/followers","following_url":"https://api.github.com/users/jamesreggio/following{/other_user}","gists_url":"https://api.github.com/users/jamesreggio/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesreggio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesreggio/subscriptions","organizations_url":"https://api.github.com/users/jamesreggio/orgs","repos_url":"https://api.github.com/users/jamesreggio/repos","events_url":"https://api.github.com/users/jamesreggio/events{/privacy}","received_events_url":"https://api.github.com/users/jamesreggio/received_events","type":"User","site_admin":false},"created_at":"2018-08-07T21:31:27Z","updated_at":"2018-08-07T21:31:27Z","author_association":"NONE","body":"Thanks @rdiaa.\r\n\r\n`requiresMainQueueSetup` should only be necessary if you interact with UIKit _during_ module setup. This means that it's only necessary if you access the view hierarchy inside of `constantsToExport`, `supportedEvents`, or `initWithBridge:` (which this module doesn't even implement).\r\n\r\nAll methods that are called _after_ setup will be run on whatever is returned by `methodQueue`, which you've rightfully set to be the main queue.\r\n\r\nSo, knowing this, I'm quite confident that `requiresMainQueueSetup` can be `NO` since you're not touching anything in the view hierarchy during those setup methods. As I said earlier, I've been using a fork of the code for many months now with `requiresMainQueueSetup` already set to `NO` and I haven't experienced a single issue.\r\n\r\nHow do you feel about disabling it?"}}
{"actor":{"display_login":"jamesreggio"}}