Skip to content

Commit 2ec0b36

Browse files
authored
stack: use LayerFn from upstream (#840)
Tower 0.4 now has a `layer_fn` utility, obviating the need for our _sui generis_ `layer::mk`.
1 parent 1df6856 commit 2ec0b36

File tree

3 files changed

+4
-32
lines changed

3 files changed

+4
-32
lines changed

Cargo.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2360,9 +2360,9 @@ dependencies = [
23602360

23612361
[[package]]
23622362
name = "tower"
2363-
version = "0.4.1"
2363+
version = "0.4.2"
23642364
source = "registry+https://github.com/rust-lang/crates.io-index"
2365-
checksum = "9ebe6c299e025c20c08a730be54f816b90089d153a58b8648adea98eee85c82a"
2365+
checksum = "5ed5c471f00236abe8c633860d8234646cb4993eaad7720844f79bb1b94e949b"
23662366
dependencies = [
23672367
"futures-core",
23682368
"futures-util",

linkerd/stack/Cargo.toml

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,9 @@ futures = "0.3.9"
1515
linkerd-error = { path = "../error" }
1616
pin-project = "1"
1717
tokio = { version = "1", features = ["time"] }
18+
tower = { version = "0.4.2", features = ["util"] }
1819
tracing = "0.1"
1920

20-
[dependencies.tower]
21-
version = "0.4"
22-
# disable tower's tracing `log` integration for performance reasons, since we
23-
# will consume tower's traces as traces.
24-
default-features = false
25-
features = [
26-
"util",
27-
]
28-
2921
[dev-dependencies]
3022
tower-test = "0.4"
3123
tokio-test = "0.4"

linkerd/stack/src/layer.rs

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1 @@
1-
pub use tower::layer::Layer;
2-
3-
/// Make a `Layer` from a closure.
4-
pub fn mk<F>(f: F) -> LayerFn<F> {
5-
LayerFn(f)
6-
}
7-
8-
/// Make a `Layer` from a closure.
9-
#[derive(Clone, Copy, Debug)]
10-
pub struct LayerFn<F>(F);
11-
12-
impl<F, S, Out> Layer<S> for LayerFn<F>
13-
where
14-
F: Fn(S) -> Out,
15-
{
16-
type Service = Out;
17-
18-
fn layer(&self, inner: S) -> Self::Service {
19-
(self.0)(inner)
20-
}
21-
}
1+
pub use tower::layer::{layer_fn as mk, Layer, LayerFn};

0 commit comments

Comments
 (0)