rust-zookeeper
rust-zookeeper copied to clipboard
Remove or replace deprecated mio components
For the mio-0.6 changes, many components were deprecated and moved to the mio-more package. Unfortunately, this does not yet exist on crates.io and might not ever exist there -- the whole thing is unmaintained at the moment.
This leaves a few options...
- Rely on mio-more and trust that it will be published/maintained at some point in the future.
- Pull the requisite deprecated mio code into this package (it's ~250 lines...so not a huge burden).
- Switch to using Tokio.
Option 1 is rather optimistic -- trusting that an unmaintained open-source project will acquire a maintainer runs counter to every experience I have had.
Option 2 is also on the optimistic side -- while the lift is small now (copy and paste), it might not be so easy in the future.
Option 3 is the biggest lift, but I think it is best for long-term maintenance. The majority of the community seems to have embraced Tokio for the slightly-higher-level things. This library will inevitably embrace the futures portion of Tokio when implementing async methods (#5).
I vote for tokio as well, I was already thinking about when I was first seeing that project, which I guess is more mature now then it was by that time. It has a very nice documentation page now, with a lot of examples.
I recommend switching to the latest tokio release with async/await support.