{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/react/issues/8238","repository_url":"https://api.github.com/repos/facebook/react","labels_url":"https://api.github.com/repos/facebook/react/issues/8238/labels{/name}","comments_url":"https://api.github.com/repos/facebook/react/issues/8238/comments","events_url":"https://api.github.com/repos/facebook/react/issues/8238/events","html_url":"https://github.com/facebook/react/issues/8238","id":188076022,"number":8238,"title":"[Fiber] Handle errors in callbacks","user":{"login":"acdlite","id":3624098,"avatar_url":"https://avatars.githubusercontent.com/u/3624098?v=3","gravatar_id":"","url":"https://api.github.com/users/acdlite","html_url":"https://github.com/acdlite","followers_url":"https://api.github.com/users/acdlite/followers","following_url":"https://api.github.com/users/acdlite/following{/other_user}","gists_url":"https://api.github.com/users/acdlite/gists{/gist_id}","starred_url":"https://api.github.com/users/acdlite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/acdlite/subscriptions","organizations_url":"https://api.github.com/users/acdlite/orgs","repos_url":"https://api.github.com/users/acdlite/repos","events_url":"https://api.github.com/users/acdlite/events{/privacy}","received_events_url":"https://api.github.com/users/acdlite/received_events","type":"User","site_admin":false},"labels":[{"id":52079258,"url":"https://api.github.com/repos/facebook/react/labels/good%20first%20bug","name":"good first bug","color":"009800","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-11-08T19:03:52Z","updated_at":"2016-11-08T19:05:43Z","closed_at":null,"body":"During the commit phase (when updates are flushed to the DOM), errors that are thrown inside `componentDidMount` and `componentDidUpdate` are trapped so they can be handled later, after the tree has been committed.\r\n\r\nAn error thrown in a `setState` callback should be trapped and handled the same way.\r\n\r\nHere's the relevant section of code: https://github.com/facebook/react/blob/master/src/renderers/shared/fiber/ReactFiberCommitWork.js#L302-L330\r\n\r\n`callCallbacks` calls all the `setState` callbacks that are part of the update queue (a linked list of updates). If any of those callbacks throw an error, we should catch the error and continue calling the rest of the callbacks.\r\n\r\nThis is a good first issue for someone interested in contributing to React/React Fiber. Please read [Fiber Principles: Contributing to Fiber](https://github.com/facebook/react/issues/7942) before submitting a PR."},"comment":{"url":"https://api.github.com/repos/facebook/react/issues/comments/259228480","html_url":"https://github.com/facebook/react/issues/8238#issuecomment-259228480","issue_url":"https://api.github.com/repos/facebook/react/issues/8238","id":259228480,"user":{"login":"acdlite","id":3624098,"avatar_url":"https://avatars.githubusercontent.com/u/3624098?v=3","gravatar_id":"","url":"https://api.github.com/users/acdlite","html_url":"https://github.com/acdlite","followers_url":"https://api.github.com/users/acdlite/followers","following_url":"https://api.github.com/users/acdlite/following{/other_user}","gists_url":"https://api.github.com/users/acdlite/gists{/gist_id}","starred_url":"https://api.github.com/users/acdlite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/acdlite/subscriptions","organizations_url":"https://api.github.com/users/acdlite/orgs","repos_url":"https://api.github.com/users/acdlite/repos","events_url":"https://api.github.com/users/acdlite/events{/privacy}","received_events_url":"https://api.github.com/users/acdlite/received_events","type":"User","site_admin":false},"created_at":"2016-11-08T19:05:43Z","updated_at":"2016-11-08T19:05:43Z","body":"If anyone wants to claim this, please comment here so everyone knows."}}
{"actor":{"display_login":"acdlite"}}