-
Notifications
You must be signed in to change notification settings - Fork 274
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate core to futures=0.3 #565
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Braver than me tackling this beast. Looks good, only a few insubstantial comments.
@ascjones I believe I've addressed all of your comments now, would you mind taking another look? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
This is the first step towards #485 (also see #422). The PR rewrites
jsonrpc-core
&jsonrpc-derive
&jsonrpc-core-client
(but not transports) to be compatible withfutures=0.3
.jsonrpc-derive
is limited to return eitherResult<_>
orBoxFuture<Result<_>>
(seeWrapFuture
trait), supporting custom future types would require a bit more work. Actually it would be best to check out if we can integrate it withasync_trait
, so that the implementations can simply defineasync
functions.The transports (servers) currently run the futures in
compat
mode, they should be updated as well.