From e6b6f08369c06795bcfe77c2ac356acf0b88ce4a Mon Sep 17 00:00:00 2001 From: Yuki Okushi Date: Thu, 12 Mar 2020 04:35:29 +0900 Subject: [PATCH] actix-utils: Minimize `futures-*` dependencies --- actix-utils/Cargo.toml | 4 +++- actix-utils/src/condition.rs | 2 +- actix-utils/src/either.rs | 2 +- actix-utils/src/framed.rs | 2 +- actix-utils/src/inflight.rs | 4 ++-- actix-utils/src/keepalive.rs | 2 +- actix-utils/src/mpsc.rs | 7 ++++--- actix-utils/src/oneshot.rs | 4 ++-- actix-utils/src/order.rs | 6 +++--- actix-utils/src/stream.rs | 2 +- actix-utils/src/time.rs | 2 +- actix-utils/src/timeout.rs | 4 ++-- 12 files changed, 22 insertions(+), 19 deletions(-) diff --git a/actix-utils/Cargo.toml b/actix-utils/Cargo.toml index 62207b36..4c55da05 100644 --- a/actix-utils/Cargo.toml +++ b/actix-utils/Cargo.toml @@ -22,7 +22,9 @@ actix-codec = "0.2.0" bitflags = "1.2" bytes = "0.5.3" either = "1.5.3" -futures = "0.3.1" +futures-channel = { version = "0.3.4", default-features = false } +futures-sink = { version = "0.3.4", default-features = false } +futures-util = { version = "0.3.4", default-features = false } pin-project = "0.4.6" log = "0.4" slab = "0.4" diff --git a/actix-utils/src/condition.rs b/actix-utils/src/condition.rs index 097034da..fe459cf7 100644 --- a/actix-utils/src/condition.rs +++ b/actix-utils/src/condition.rs @@ -96,7 +96,7 @@ impl Drop for Waiter { #[cfg(test)] mod tests { use super::*; - use futures::future::lazy; + use futures_util::future::lazy; #[actix_rt::test] async fn test_condition() { diff --git a/actix-utils/src/either.rs b/actix-utils/src/either.rs index 0aeecf89..53d6e86e 100644 --- a/actix-utils/src/either.rs +++ b/actix-utils/src/either.rs @@ -3,7 +3,7 @@ use std::pin::Pin; use std::task::{Context, Poll}; use actix_service::{Service, ServiceFactory}; -use futures::{future, ready, Future}; +use futures_util::{future, ready, future::Future}; /// Combine two different service types into a single type. /// diff --git a/actix-utils/src/framed.rs b/actix-utils/src/framed.rs index 9def5992..1663db9d 100644 --- a/actix-utils/src/framed.rs +++ b/actix-utils/src/framed.rs @@ -6,7 +6,7 @@ use std::{fmt, mem}; use actix_codec::{AsyncRead, AsyncWrite, Decoder, Encoder, Framed}; use actix_service::{IntoService, Service}; -use futures::{Future, FutureExt, Stream}; +use futures_util::{future::Future, FutureExt, stream::Stream}; use log::debug; use crate::mpsc; diff --git a/actix-utils/src/inflight.rs b/actix-utils/src/inflight.rs index 3f547db2..f07e4592 100644 --- a/actix-utils/src/inflight.rs +++ b/actix-utils/src/inflight.rs @@ -4,7 +4,7 @@ use std::pin::Pin; use std::task::{Context, Poll}; use actix_service::{IntoService, Service, Transform}; -use futures::future::{ok, Ready}; +use futures_util::future::{ok, Ready}; use super::counter::{Counter, CounterGuard}; @@ -116,7 +116,7 @@ mod tests { use super::*; use actix_service::{apply, fn_factory, Service, ServiceFactory}; - use futures::future::{lazy, ok, FutureExt, LocalBoxFuture}; + use futures_util::future::{lazy, ok, FutureExt, LocalBoxFuture}; struct SleepService(Duration); diff --git a/actix-utils/src/keepalive.rs b/actix-utils/src/keepalive.rs index 9d4f8712..4413dcd5 100644 --- a/actix-utils/src/keepalive.rs +++ b/actix-utils/src/keepalive.rs @@ -7,7 +7,7 @@ use std::time::Duration; use actix_rt::time::{delay_until, Delay, Instant}; use actix_service::{Service, ServiceFactory}; -use futures::future::{ok, Ready}; +use futures_util::future::{ok, Ready}; use super::time::{LowResTime, LowResTimeService}; diff --git a/actix-utils/src/mpsc.rs b/actix-utils/src/mpsc.rs index 07014835..531c9684 100644 --- a/actix-utils/src/mpsc.rs +++ b/actix-utils/src/mpsc.rs @@ -6,7 +6,8 @@ use std::fmt; use std::pin::Pin; use std::task::{Context, Poll}; -use futures::{Sink, Stream}; +use futures_sink::Sink; +use futures_util::stream::Stream; use crate::cell::Cell; use crate::task::LocalWaker; @@ -180,8 +181,8 @@ impl SendError { #[cfg(test)] mod tests { use super::*; - use futures::future::lazy; - use futures::{Stream, StreamExt}; + use futures_util::future::lazy; + use futures_util::{stream::Stream, StreamExt}; #[actix_rt::test] async fn test_mpsc() { diff --git a/actix-utils/src/oneshot.rs b/actix-utils/src/oneshot.rs index 533167c9..9945e5d3 100644 --- a/actix-utils/src/oneshot.rs +++ b/actix-utils/src/oneshot.rs @@ -3,7 +3,7 @@ use std::future::Future; use std::pin::Pin; use std::task::{Context, Poll}; -pub use futures::channel::oneshot::Canceled; +pub use futures_channel::oneshot::Canceled; use slab::Slab; use crate::cell::Cell; @@ -253,7 +253,7 @@ impl Future for PReceiver { #[cfg(test)] mod tests { use super::*; - use futures::future::lazy; + use futures_util::future::lazy; #[actix_rt::test] async fn test_oneshot() { diff --git a/actix-utils/src/order.rs b/actix-utils/src/order.rs index 7dd4e2fc..ba589f30 100644 --- a/actix-utils/src/order.rs +++ b/actix-utils/src/order.rs @@ -8,7 +8,7 @@ use std::rc::Rc; use std::task::{Context, Poll}; use actix_service::{IntoService, Service, Transform}; -use futures::future::{ok, Ready}; +use futures_util::future::{ok, Ready}; use crate::oneshot; use crate::task::LocalWaker; @@ -210,8 +210,8 @@ mod tests { use super::*; use actix_service::Service; - use futures::channel::oneshot; - use futures::future::{lazy, poll_fn, FutureExt, LocalBoxFuture}; + use futures_channel::oneshot; + use futures_util::future::{lazy, poll_fn, FutureExt, LocalBoxFuture}; struct Srv; diff --git a/actix-utils/src/stream.rs b/actix-utils/src/stream.rs index b7f008e4..90df8c2f 100644 --- a/actix-utils/src/stream.rs +++ b/actix-utils/src/stream.rs @@ -3,7 +3,7 @@ use std::pin::Pin; use std::task::{Context, Poll}; use actix_service::{IntoService, Service}; -use futures::{FutureExt, Stream}; +use futures_util::{FutureExt, stream::Stream}; use crate::mpsc; diff --git a/actix-utils/src/time.rs b/actix-utils/src/time.rs index 49d6283a..c7bfa922 100644 --- a/actix-utils/src/time.rs +++ b/actix-utils/src/time.rs @@ -4,7 +4,7 @@ use std::time::{self, Duration, Instant}; use actix_rt::time::delay_for; use actix_service::{Service, ServiceFactory}; -use futures::future::{ok, ready, FutureExt, Ready}; +use futures_util::future::{ok, ready, FutureExt, Ready}; use super::cell::Cell; diff --git a/actix-utils/src/timeout.rs b/actix-utils/src/timeout.rs index cb8c24b4..83fbb84f 100644 --- a/actix-utils/src/timeout.rs +++ b/actix-utils/src/timeout.rs @@ -10,7 +10,7 @@ use std::{fmt, time}; use actix_rt::time::{delay_for, Delay}; use actix_service::{IntoService, Service, Transform}; -use futures::future::{ok, Ready}; +use futures_util::future::{ok, Ready}; /// Applies a timeout to requests. #[derive(Debug)] @@ -183,7 +183,7 @@ mod tests { use super::*; use actix_service::{apply, fn_factory, Service, ServiceFactory}; - use futures::future::{ok, FutureExt, LocalBoxFuture}; + use futures_util::future::{ok, FutureExt, LocalBoxFuture}; struct SleepService(Duration);