{"action":"created","issue":{"url":"https://api.github.com/repos/marionettejs/backbone.radio/issues/216","labels_url":"https://api.github.com/repos/marionettejs/backbone.radio/issues/216/labels{/name}","comments_url":"https://api.github.com/repos/marionettejs/backbone.radio/issues/216/comments","events_url":"https://api.github.com/repos/marionettejs/backbone.radio/issues/216/events","html_url":"https://github.com/marionettejs/backbone.radio/issues/216","id":73296063,"number":216,"title":"Add async events","user":{"login":"JSteunou","id":2323127,"avatar_url":"https://avatars.githubusercontent.com/u/2323127?v=3","gravatar_id":"","url":"https://api.github.com/users/JSteunou","html_url":"https://github.com/JSteunou","followers_url":"https://api.github.com/users/JSteunou/followers","following_url":"https://api.github.com/users/JSteunou/following{/other_user}","gists_url":"https://api.github.com/users/JSteunou/gists{/gist_id}","starred_url":"https://api.github.com/users/JSteunou/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JSteunou/subscriptions","organizations_url":"https://api.github.com/users/JSteunou/orgs","repos_url":"https://api.github.com/users/JSteunou/repos","events_url":"https://api.github.com/users/JSteunou/events{/privacy}","received_events_url":"https://api.github.com/users/JSteunou/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2015-05-05T11:55:38Z","updated_at":"2015-05-05T17:18:47Z","closed_at":null,"body":"Radio events are sync and it's great the way it is. Some can trigger 2 events in a row and expect handlers are called in the same sequence.\r\n\r\nBut I think it would be useful to have async events. In a case of a long task handler, this will allow the event emitter to not be blocked.\r\n\r\nThoughts?"},"comment":{"url":"https://api.github.com/repos/marionettejs/backbone.radio/issues/comments/99146353","html_url":"https://github.com/marionettejs/backbone.radio/issues/216#issuecomment-99146353","issue_url":"https://api.github.com/repos/marionettejs/backbone.radio/issues/216","id":99146353,"user":{"login":"ahumphreys87","id":2510520,"avatar_url":"https://avatars.githubusercontent.com/u/2510520?v=3","gravatar_id":"","url":"https://api.github.com/users/ahumphreys87","html_url":"https://github.com/ahumphreys87","followers_url":"https://api.github.com/users/ahumphreys87/followers","following_url":"https://api.github.com/users/ahumphreys87/following{/other_user}","gists_url":"https://api.github.com/users/ahumphreys87/gists{/gist_id}","starred_url":"https://api.github.com/users/ahumphreys87/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ahumphreys87/subscriptions","organizations_url":"https://api.github.com/users/ahumphreys87/orgs","repos_url":"https://api.github.com/users/ahumphreys87/repos","events_url":"https://api.github.com/users/ahumphreys87/events{/privacy}","received_events_url":"https://api.github.com/users/ahumphreys87/received_events","type":"User","site_admin":false},"created_at":"2015-05-05T17:18:47Z","updated_at":"2015-05-05T17:18:47Z","body":"Handlers are blocking though, I think what's being asked for is an option\nto make them non-blocking.\n\nI was unaware that handlers were blocking also until recently :o\n\nOn Tuesday, 5 May 2015, James Kyle <notifications@github.com> wrote:\n\n> That sort of breaks the normal event pattern. Handlers shouldn't be\n> blocking, you should create a different interface for what you are doing.\n>\n> runAction() {\n>   return Promise.resolve()\n>     .then(_.bindKey(this, 'willAction'))\n>     .then(_.bindKey(this, 'action'))\n>     .then(_.bindKey(this, 'didAction'));\n> }\n>\n> —\n> Reply to this email directly or view it on GitHub\n> <https://github.com/marionettejs/backbone.radio/issues/216#issuecomment-99142702>\n> .\n>\n"}}