Closed udoprog closed 4 years ago
Using async functions
This would mean raising the minimum required Rust version, right?
@8573 Yes. As well as a major API break.
Started working on it here: https://github.com/udoprog/irc/tree/tokio-bump
I did an initial pass where I tried to maintain the existing API, but it didn't make much sense to me.
ClientExt
in favor if tiny bit of duplication in ClientState
.IrcClient
to Client
.PackedIrcClient
to PackedClient
.error::IrcError
to error::Error
.mockstream
is not up-to-date with unstable tokio, so had to drop that for now. Tests don't run until that has been implemented.ClientStream
drives the stream for outgoing messages by default, unless it has been taken from the Client
through Client::outgoing
.Client::sender
, which uses the outgoing queue for sending messages.parking_lot
.You can see the new API in-use in the build-bot
bin. I'm considering making the send future part of the client stream instead of having it be a separate thing. Alternative have it be a thing that can be taken out of the client similarly to how This is done.stream
is right now.
Examples ported:
Done since #184 was merged
I've been tinkering with bumping this crate to the upcoming std future and tokio to make sure it's ready when both are released.
My thinking here would be to:
I was hoping to track progress here.