diff --git a/linkerd/app/Cargo.toml b/linkerd/app/Cargo.toml index 1bc1994d78..3128a32c63 100644 --- a/linkerd/app/Cargo.toml +++ b/linkerd/app/Cargo.toml @@ -47,4 +47,4 @@ tokio-io = "0.1.6" tokio-current-thread = "0.1.4" tokio-rustls = "0.10" tower = "0.1" -webpki = "0.21" +webpki = "=0.21.0" diff --git a/linkerd/app/core/Cargo.toml b/linkerd/app/core/Cargo.toml index 9e23af5d1c..8cf026b249 100644 --- a/linkerd/app/core/Cargo.toml +++ b/linkerd/app/core/Cargo.toml @@ -92,6 +92,7 @@ features = [ "util", "make", "timeout", + "spawn-ready" ] [target.'cfg(target_os = "linux")'.dependencies] diff --git a/linkerd/app/core/src/svc.rs b/linkerd/app/core/src/svc.rs index e4f6720b75..c57eebce51 100644 --- a/linkerd/app/core/src/svc.rs +++ b/linkerd/app/core/src/svc.rs @@ -14,10 +14,10 @@ use std::task::{Context, Poll}; use std::time::Duration; use tower::layer::util::{Identity, Stack as Pair}; pub use tower::layer::Layer; +pub use tower::make::MakeService; +use tower::spawn_ready::SpawnReadyLayer; pub use tower::util::{Either, Oneshot}; pub use tower::{service_fn as mk, Service, ServiceExt}; -pub use tower_make::MakeService; -use tower_spawn_ready::SpawnReadyLayer; #[derive(Clone, Debug)] pub struct Layers(L); @@ -182,10 +182,10 @@ impl Stack { self.push(InstrumentMakeLayer::from_target()) } - // /// Wraps an inner `MakeService` to be a `NewService`. - // pub fn into_new_service(self) -> Stack> { - // self.push(stack::new_service::FromMakeServiceLayer::default()) - // } + /// Wraps an inner `MakeService` to be a `NewService`. + pub fn into_new_service(self) -> Stack> { + self.push(stack::new_service::FromMakeServiceLayer::default()) + } pub fn push_make_ready(self) -> Stack> { self.push(stack::MakeReadyLayer::new()) @@ -203,15 +203,15 @@ impl Stack { self.push(buffer::SpawnBufferLayer::new(capacity)) } - // /// Assuming `S` implements `NewService` or `MakeService`, applies the given - // /// `L`-typed layer on each service produced by `S`. - // pub fn push_on_response(self, layer: L) -> Stack> { - // self.push(stack::OnResponseLayer::new(layer)) - // } + /// Assuming `S` implements `NewService` or `MakeService`, applies the given + /// `L`-typed layer on each service produced by `S`. + pub fn push_on_response(self, layer: L) -> Stack> { + self.push(stack::OnResponseLayer::new(layer)) + } - // pub fn push_spawn_ready(self) -> Stack> { - // self.push(SpawnReadyLayer::new()) - // } + pub fn push_spawn_ready(self) -> Stack> { + self.push(SpawnReadyLayer::new()) + } // pub fn push_concurrency_limit( // self,