Skip to content

Commit 1f34f47

Browse files
committed
feat(upgrade): add upgrade feature
1 parent 8ebe25c commit 1f34f47

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

Cargo.toml

+6-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ futures-util = { version = "0.3", default-features = false }
2626
http = "0.2"
2727
http-body = "=1.0.0-rc.2"
2828
pin-project-lite = "0.2.4"
29-
tokio = { version = "1.13", features = ["sync"] }
3029

3130
# Optional
3231

@@ -36,6 +35,7 @@ httparse = { version = "1.8", optional = true }
3635
httpdate = { version = "1.0", optional = true }
3736
itoa = { version = "1", optional = true }
3837
libc = { version = "0.2", optional = true }
38+
tokio = { version = "1", features = ["sync"], optional = true }
3939
tracing = { version = "0.1", default-features = false, features = ["std"], optional = true }
4040
want = { version = "0.3", optional = true }
4141

@@ -74,13 +74,16 @@ full = [
7474
]
7575

7676
# HTTP versions
77-
http1 = ["dep:httparse", "dep:itoa"]
78-
http2 = ["dep:h2"]
77+
http1 = ["upgrade", "dep:httparse", "dep:itoa"]
78+
http2 = ["upgrade", "dep:h2"]
7979

8080
# Client/Server
8181
client = ["dep:want"]
8282
server = ["dep:httpdate"]
8383

84+
# HTTP Upgrades
85+
upgrade = ["dep:tokio"]
86+
8487
# C-API support (currently unstable (no semver))
8588
ffi = ["dep:libc", "dep:http-body-util"]
8689

src/lib.rs

+8-1
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,10 @@
4949
//! - `http2`: Enables HTTP/2 support.
5050
//! - `client`: Enables the HTTP `client`.
5151
//! - `server`: Enables the HTTP `server`.
52+
//! - `upgrade`: Enables [HTTP Upgrades].
5253
//!
5354
//! [feature flags]: https://doc.rust-lang.org/cargo/reference/manifest.html#the-features-section
55+
//! [Http Upgrades]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Protocol_upgrade_mechanism
5456
//!
5557
//! # Unstable Features
5658
//! hyper includes a set of unstable optional features that can be enabled through the use of a
@@ -93,7 +95,6 @@ pub mod ext;
9395
mod mock;
9496
pub mod rt;
9597
pub mod service;
96-
pub mod upgrade;
9798

9899
#[cfg(feature = "ffi")]
99100
#[cfg_attr(docsrs, doc(cfg(all(feature = "ffi", hyper_unstable_ffi))))]
@@ -115,3 +116,9 @@ cfg_feature! {
115116

116117
pub mod server;
117118
}
119+
120+
cfg_feature! {
121+
#![feature = "upgrade"]
122+
123+
pub mod upgrade;
124+
}

0 commit comments

Comments
 (0)