Description
In preparation for #170, we should reduce the API surface of any new dependency and make it easier to swap between implementations.
To that extent it's probably best if we only rely on futures_timer::Delay
, and remove our dependency on other parts of the futures-timer
crate.
Once that's done we can vastly reduce the API surface of futures-timer
itself, and then create a new crate that implements the same (much smaller) API surface.
This should be reasonably straight forward, and fairly easy to pick up. So this is marked as "good first issue". If someone wants to pick this up it'd be greatly appreciated!
Tasks
-
src/io/timeout.rs
remove dependency onfutures_timer::TryFutureExt
by inlining the logic.