Skip to content

Commit 22b4875

Browse files
committed
Add cargo features "client" and "server"
Since many consumers of this library do not need both client and server features, this allows them to shrink their dependencies somewhat.
1 parent 644b906 commit 22b4875

File tree

3 files changed

+21
-5
lines changed

3 files changed

+21
-5
lines changed

Cargo.toml

+13-2
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,24 @@ appveyor = { repository = "async-std/async-tls" }
1818
[dependencies]
1919
futures = "0.3.4"
2020
rustls = "0.17.0"
21-
webpki = "0.21.2"
22-
webpki-roots = "0.19.0"
21+
webpki = { version = "0.21.2", optional = true }
22+
webpki-roots = { version = "0.19.0", optional = true }
2323

2424
[features]
25+
default = ["client", "server"]
26+
client = ["webpki", "webpki-roots"]
2527
early-data = []
28+
server = []
2629

2730
[dev-dependencies]
2831
lazy_static = "1"
2932
futures-util = "0.3"
3033
async-std = { version = "1.0", features = ["unstable"] }
34+
35+
[[test]]
36+
name = "test"
37+
required-features = ["client", "server"]
38+
39+
[[test]]
40+
name = "google"
41+
required-features = ["client"]

src/lib.rs

+7-2
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,21 @@
22
33
#![deny(unsafe_code)]
44

5+
#[cfg(feature = "server")]
56
mod acceptor;
7+
#[cfg(feature = "client")]
68
pub mod client;
79
mod common;
10+
#[cfg(feature = "client")]
811
mod connector;
912
mod rusttls;
13+
#[cfg(feature = "server")]
1014
pub mod server;
1115

16+
#[cfg(feature = "server")]
1217
pub use acceptor::{Accept, TlsAcceptor};
18+
#[cfg(feature = "client")]
1319
pub use connector::{Connect, TlsConnector};
1420

15-
#[cfg(feature = "early-data")]
16-
#[cfg(test)]
21+
#[cfg(all(test, feature = "client", feature = "early-data"))]
1722
mod test_0rtt;

src/rusttls/stream.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,6 @@ impl<'a, IO: AsyncRead + AsyncWrite + Unpin, S: Session> AsyncWrite for Stream<'
257257
}
258258
}
259259

260-
#[cfg(test)]
260+
#[cfg(all(test, feature = "client"))]
261261
#[path = "test_stream.rs"]
262262
mod test_stream;

0 commit comments

Comments
 (0)