{"action":"created","issue":{"url":"https://api.github.com/repos/python/asyncio/issues/282","labels_url":"https://api.github.com/repos/python/asyncio/issues/282/labels{/name}","comments_url":"https://api.github.com/repos/python/asyncio/issues/282/comments","events_url":"https://api.github.com/repos/python/asyncio/issues/282/events","html_url":"https://github.com/python/asyncio/issues/282","id":114505193,"number":282,"title":"ABC for Futures","user":{"login":"1st1","id":239003,"avatar_url":"https://avatars.githubusercontent.com/u/239003?v=3","gravatar_id":"","url":"https://api.github.com/users/1st1","html_url":"https://github.com/1st1","followers_url":"https://api.github.com/users/1st1/followers","following_url":"https://api.github.com/users/1st1/following{/other_user}","gists_url":"https://api.github.com/users/1st1/gists{/gist_id}","starred_url":"https://api.github.com/users/1st1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/1st1/subscriptions","organizations_url":"https://api.github.com/users/1st1/orgs","repos_url":"https://api.github.com/users/1st1/repos","events_url":"https://api.github.com/users/1st1/events{/privacy}","received_events_url":"https://api.github.com/users/1st1/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":18,"created_at":"2015-11-02T00:45:08Z","updated_at":"2015-11-12T18:02:27Z","closed_at":null,"body":"I'm experimenting with implementing an asyncio-compatible event loop on top of libuv with Cython. It would be great if there is a way to provide a custom Future implementation.  I was thinking about adding `loop.create_future()` (instead of `Future(loop=loop)`) API method, as well as an ABC, so that functions like `ensure_future` would recognize custom Futures.  @gvanrossum @haypo what do you think about this?"},"comment":{"url":"https://api.github.com/repos/python/asyncio/issues/comments/156185315","html_url":"https://github.com/python/asyncio/issues/282#issuecomment-156185315","issue_url":"https://api.github.com/repos/python/asyncio/issues/282","id":156185315,"user":{"login":"gvanrossum","id":2894642,"avatar_url":"https://avatars.githubusercontent.com/u/2894642?v=3","gravatar_id":"","url":"https://api.github.com/users/gvanrossum","html_url":"https://github.com/gvanrossum","followers_url":"https://api.github.com/users/gvanrossum/followers","following_url":"https://api.github.com/users/gvanrossum/following{/other_user}","gists_url":"https://api.github.com/users/gvanrossum/gists{/gist_id}","starred_url":"https://api.github.com/users/gvanrossum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gvanrossum/subscriptions","organizations_url":"https://api.github.com/users/gvanrossum/orgs","repos_url":"https://api.github.com/users/gvanrossum/repos","events_url":"https://api.github.com/users/gvanrossum/events{/privacy}","received_events_url":"https://api.github.com/users/gvanrossum/received_events","type":"User","site_admin":false},"created_at":"2015-11-12T18:02:27Z","updated_at":"2015-11-12T18:02:27Z","body":"Sure. Then you plan to use register(), right? Have you timed the speed of\nisinstance() checks involving ABCMeta and registration()? Isn't that\nexpensive?\n"}}