{"action":"created","issue":{"url":"https://api.github.com/repos/jquery/jquery/issues/2534","labels_url":"https://api.github.com/repos/jquery/jquery/issues/2534/labels{/name}","comments_url":"https://api.github.com/repos/jquery/jquery/issues/2534/comments","events_url":"https://api.github.com/repos/jquery/jquery/issues/2534/events","html_url":"https://github.com/jquery/jquery/pull/2534","id":100233925,"number":2534,"title":"[WIP] Ajax: Allow for async converters.","user":{"login":"nathanhammond","id":20542,"avatar_url":"https://avatars.githubusercontent.com/u/20542?v=3","gravatar_id":"","url":"https://api.github.com/users/nathanhammond","html_url":"https://github.com/nathanhammond","followers_url":"https://api.github.com/users/nathanhammond/followers","following_url":"https://api.github.com/users/nathanhammond/following{/other_user}","gists_url":"https://api.github.com/users/nathanhammond/gists{/gist_id}","starred_url":"https://api.github.com/users/nathanhammond/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nathanhammond/subscriptions","organizations_url":"https://api.github.com/users/nathanhammond/orgs","repos_url":"https://api.github.com/users/nathanhammond/repos","events_url":"https://api.github.com/users/nathanhammond/events{/privacy}","received_events_url":"https://api.github.com/users/nathanhammond/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jquery/jquery/labels/CLA:%20Valid","name":"CLA: Valid","color":"007700"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-08-11T06:01:51Z","updated_at":"2015-08-17T00:05:07Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/jquery/jquery/pulls/2534","html_url":"https://github.com/jquery/jquery/pull/2534","diff_url":"https://github.com/jquery/jquery/pull/2534.diff","patch_url":"https://github.com/jquery/jquery/pull/2534.patch"},"body":"This PR is a proof-of-concept for #2532. It's far from perfect, but all existing tests in the Ajax module pass. Assuming that something like this would be a welcome inclusion to jQuery, there are a number of things still to do:\r\n\r\n- [ ] Additional tests.\r\n- [x] Chaining of async converters.\r\n- [ ] Performance impact review.\r\n- [ ] Code reformat–current format is designed to minimize the diff and make it easier to understand.\r\n\r\nAt this point I'd appreciate a review of concept to make sure continued experimentation in this vein is something worth entertaining. If so, I'll sign the CLA. :)\r\n\r\n/cc @dmethvin @dcherman"},"comment":{"url":"https://api.github.com/repos/jquery/jquery/issues/comments/131643597","html_url":"https://github.com/jquery/jquery/pull/2534#issuecomment-131643597","issue_url":"https://api.github.com/repos/jquery/jquery/issues/2534","id":131643597,"user":{"login":"nathanhammond","id":20542,"avatar_url":"https://avatars.githubusercontent.com/u/20542?v=3","gravatar_id":"","url":"https://api.github.com/users/nathanhammond","html_url":"https://github.com/nathanhammond","followers_url":"https://api.github.com/users/nathanhammond/followers","following_url":"https://api.github.com/users/nathanhammond/following{/other_user}","gists_url":"https://api.github.com/users/nathanhammond/gists{/gist_id}","starred_url":"https://api.github.com/users/nathanhammond/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nathanhammond/subscriptions","organizations_url":"https://api.github.com/users/nathanhammond/orgs","repos_url":"https://api.github.com/users/nathanhammond/repos","events_url":"https://api.github.com/users/nathanhammond/events{/privacy}","received_events_url":"https://api.github.com/users/nathanhammond/received_events","type":"User","site_admin":false},"created_at":"2015-08-17T00:05:07Z","updated_at":"2015-08-17T00:05:07Z","body":"I've simplified my approach, swapped in an async \"text json\" converter, made all existing tests pass, and identified one gap in test coverage (converter + datafilter). I want coverage to be \"run all existing tests with a sync \"text json\" converter, and with an async \"text json\" converter.\" Any recommendation as to how to do that?\r\n\r\nI believe that this solution (much simpler than my last, and I believe actually correct) fully addresses previous comments and doesn't have the logic gaps I introduced by not understanding `jQuery.Deferred`."}}