{"action":"opened","issue":{"url":"https://api.github.com/repos/facebook/react-native/issues/17081","repository_url":"https://api.github.com/repos/facebook/react-native","labels_url":"https://api.github.com/repos/facebook/react-native/issues/17081/labels{/name}","comments_url":"https://api.github.com/repos/facebook/react-native/issues/17081/comments","events_url":"https://api.github.com/repos/facebook/react-native/issues/17081/events","html_url":"https://github.com/facebook/react-native/issues/17081","id":279543719,"number":17081,"title":"Prefix ANDROID_LONG_TIMER_MESSAGE with \"(ADVICE)\" so it doesn't generate non-actionable support requests.","user":{"login":"mikelehen","id":206364,"avatar_url":"https://avatars1.githubusercontent.com/u/206364?v=4","gravatar_id":"","url":"https://api.github.com/users/mikelehen","html_url":"https://github.com/mikelehen","followers_url":"https://api.github.com/users/mikelehen/followers","following_url":"https://api.github.com/users/mikelehen/following{/other_user}","gists_url":"https://api.github.com/users/mikelehen/gists{/gist_id}","starred_url":"https://api.github.com/users/mikelehen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikelehen/subscriptions","organizations_url":"https://api.github.com/users/mikelehen/orgs","repos_url":"https://api.github.com/users/mikelehen/repos","events_url":"https://api.github.com/users/mikelehen/events{/privacy}","received_events_url":"https://api.github.com/users/mikelehen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-12-05T21:50:52Z","updated_at":"2017-12-05T21:50:52Z","closed_at":null,"author_association":"NONE","body":"Can we please please please change the warning text here to be prefixed with \"(ADVICE)\" so it’s no longer as disruptive? https://github.com/facebook/react-native/blob/3fa648204c6b89e16b9f9d89dd5705f42e087bb6/Libraries/Core/Timers/JSTimers.js#L54\r\n\r\n**Context:**\r\nThe Firebase JavaScript SDK uses setTimeout / setInterval for a variety of tasks that need to be scheduled. For example, refreshing auth tokens, making reconnect attempts after a backoff delay, etc. This is done in the standard JavaScript way by using setInterval() or setTimeout().\r\n\r\nReact Native supports timers of any length, but currently displays a non-actionable but disruptive yellow warning if you schedule a timer for > 60 seconds. https://github.com/facebook/react-native/blob/3fa648204c6b89e16b9f9d89dd5705f42e087bb6/Libraries/Core/Timers/JSTimers.js#L52\r\n\r\nThe warning references https://github.com/facebook/react-native/issues/12981 which has received a _very large_ amount of comments, upvotes, etc., but it does not actually provide any solution.  As far as I can tell, the underlying issue is a React Native one (in how it implements setTimeout / setInterval on Android) and there's nothing developers can do.\r\n\r\nFirebase has received multiple support requests and github issues (e.g. https://github.com/firebase/firebase-js-sdk/issues/97, https://github.com/firebase/firebase-js-sdk/issues/283) and the comments regarding Firebase on #12981 have gathered over 100 upvotes.\r\n\r\nWe (Firebase) have no way to fix this other than reduce our timeouts which if anything will make things worse (we would need to set multiple short timeouts to get to the desired longer timeout).\r\n\r\nFrom my reading of the code, warnings prefixed with \"(ADVICE)\" do not result in the disruptive yellow box: https://github.com/facebook/react-native/blob/eae4fe810f43266ee54a3bb89558621324d7a326/Libraries/ReactNative/YellowBox.js#L126\r\n\r\nSo can we please please please change the warning text here to be prefixed with \"(ADVICE)\" so it’s no longer as disruptive? https://github.com/facebook/react-native/blob/3fa648204c6b89e16b9f9d89dd5705f42e087bb6/Libraries/Core/Timers/JSTimers.js#L54"}}
{"actor":{"display_login":"mikelehen"}}