summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYosi Pramajaya <yosi.pramajaya@gmail.com>2021-01-10 19:20:47 +0700
committerGitHub <noreply@github.com>2021-01-10 13:20:47 +0100
commit9e9e104664d8574c7480f0800e08326f56254f6f (patch)
treee593f34ae0873edaad215db0653efe054778ffa1
parent43618954766a2ba525541501422bb6e7d5ccc913 (diff)
upgrade: tokio 0.1 in test_util crate (#8885)
This commit upgrades "tokio" and crates from tokio ecosystem in "test_util" crate.
-rw-r--r--Cargo.lock284
-rw-r--r--test_util/Cargo.toml15
-rw-r--r--test_util/src/lib.rs65
3 files changed, 285 insertions, 79 deletions
diff --git a/Cargo.lock b/Cargo.lock
index ab546e2d6..0f94d525a 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -105,6 +105,27 @@ dependencies = [
]
[[package]]
+name = "async-stream"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3670df70cbc01729f901f94c887814b3c68db038aad1329a418bae178bc5295c"
+dependencies = [
+ "async-stream-impl",
+ "futures-core",
+]
+
+[[package]]
+name = "async-stream-impl"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3548b8efc9f8e8a5a0a2808c5bd8451a9031b9e5b879a79590304ae928b0a70"
+dependencies = [
+ "proc-macro2 1.0.24",
+ "quote 1.0.7",
+ "syn 1.0.56",
+]
+
+[[package]]
name = "async-trait"
version = "0.1.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -157,6 +178,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
[[package]]
+name = "base64"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
+
+[[package]]
name = "bitflags"
version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -223,6 +250,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e0dcbc35f504eb6fc275a6d20e4ebcda18cf50d40ba6fabff8c711fa16cb3b16"
[[package]]
+name = "bytes"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad1f8e949d755f9d79112b5bb46938e0ef9d3804a0b16dfab13aafcaa5f0fa72"
+
+[[package]]
name = "cargo_gn"
version = "0.0.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -297,7 +330,7 @@ version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "25e4c606eb459dd29f7c57b2e0879f2b6f14ee130918c2b78ccb58a9624e6c7a"
dependencies = [
- "getrandom",
+ "getrandom 0.1.15",
"proc-macro-hack",
]
@@ -451,7 +484,7 @@ dependencies = [
"termcolor",
"test_util",
"tokio 0.2.22",
- "tokio-rustls",
+ "tokio-rustls 0.14.1",
"tower-test",
"uuid",
"walkdir",
@@ -483,7 +516,7 @@ name = "deno_crypto"
version = "0.9.0"
dependencies = [
"deno_core",
- "rand",
+ "rand 0.7.3",
]
[[package]]
@@ -545,7 +578,7 @@ dependencies = [
"filetime",
"fwdansi",
"http",
- "hyper",
+ "hyper 0.13.9",
"indexmap",
"lazy_static",
"libc",
@@ -563,7 +596,7 @@ dependencies = [
"termcolor",
"test_util",
"tokio 0.2.22",
- "tokio-rustls",
+ "tokio-rustls 0.14.1",
"uuid",
"webpki",
"webpki-roots",
@@ -589,8 +622,8 @@ dependencies = [
"http",
"serde",
"tokio 0.2.22",
- "tokio-rustls",
- "tokio-tungstenite",
+ "tokio-rustls 0.14.1",
+ "tokio-tungstenite 0.11.0",
"webpki",
"webpki-roots",
]
@@ -1026,6 +1059,17 @@ dependencies = [
]
[[package]]
+name = "getrandom"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4060f4657be78b8e766215b02b18a2e862d83745545de804638e2b545e81aee6"
+dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+ "wasi 0.10.0+wasi-snapshot-preview1",
+]
+
+[[package]]
name = "h2"
version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1090,6 +1134,16 @@ dependencies = [
]
[[package]]
+name = "http-body"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2861bd27ee074e5ee891e8b539837a9430012e249d7f0ca2d795650f579c1994"
+dependencies = [
+ "bytes 1.0.0",
+ "http",
+]
+
+[[package]]
name = "httparse"
version = "1.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1122,7 +1176,7 @@ dependencies = [
"futures-util",
"h2",
"http",
- "http-body",
+ "http-body 0.3.1",
"httparse",
"httpdate",
"itoa",
@@ -1135,6 +1189,29 @@ dependencies = [
]
[[package]]
+name = "hyper"
+version = "0.14.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12219dc884514cb4a6a03737f4413c0e01c23a1b059b0156004b23f1e19dccbe"
+dependencies = [
+ "bytes 1.0.0",
+ "futures-channel",
+ "futures-core",
+ "futures-util",
+ "http",
+ "http-body 0.4.0",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project 1.0.2",
+ "socket2",
+ "tokio 1.0.1",
+ "tower-service",
+ "tracing",
+ "want",
+]
+
+[[package]]
name = "hyper-rustls"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1142,11 +1219,11 @@ checksum = "37743cc83e8ee85eacfce90f2f4102030d9ff0a95244098d781e9bee4a90abb6"
dependencies = [
"bytes 0.5.6",
"futures-util",
- "hyper",
+ "hyper 0.13.9",
"log",
- "rustls",
+ "rustls 0.18.1",
"tokio 0.2.22",
- "tokio-rustls",
+ "tokio-rustls 0.14.1",
"webpki",
]
@@ -1213,6 +1290,15 @@ dependencies = [
]
[[package]]
+name = "input_buffer"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f97967975f448f1a7ddb12b0bc41069d09ed6a1c161a92687e057325db35d413"
+dependencies = [
+ "bytes 1.0.0",
+]
+
+[[package]]
name = "instant"
version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1698,7 +1784,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
dependencies = [
"phf_shared",
- "rand",
+ "rand 0.7.3",
]
[[package]]
@@ -1905,22 +1991,44 @@ version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
dependencies = [
- "getrandom",
+ "getrandom 0.1.15",
"libc",
- "rand_chacha",
- "rand_core",
- "rand_hc",
+ "rand_chacha 0.2.2",
+ "rand_core 0.5.1",
+ "rand_hc 0.2.0",
"rand_pcg",
]
[[package]]
+name = "rand"
+version = "0.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c24fcd450d3fa2b592732565aa4f17a27a61c65ece4726353e000939b0edee34"
+dependencies = [
+ "libc",
+ "rand_chacha 0.3.0",
+ "rand_core 0.6.1",
+ "rand_hc 0.3.0",
+]
+
+[[package]]
name = "rand_chacha"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
dependencies = [
"ppv-lite86",
- "rand_core",
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
+dependencies = [
+ "ppv-lite86",
+ "rand_core 0.6.1",
]
[[package]]
@@ -1929,7 +2037,16 @@ version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
dependencies = [
- "getrandom",
+ "getrandom 0.1.15",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c026d7df8b298d90ccbbc5190bd04d85e159eaf5576caeacf8741da93ccbd2e5"
+dependencies = [
+ "getrandom 0.2.1",
]
[[package]]
@@ -1938,7 +2055,16 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
dependencies = [
- "rand_core",
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "rand_hc"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
+dependencies = [
+ "rand_core 0.6.1",
]
[[package]]
@@ -1947,7 +2073,7 @@ version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
dependencies = [
- "rand_core",
+ "rand_core 0.5.1",
]
[[package]]
@@ -2002,8 +2128,8 @@ dependencies = [
"futures-core",
"futures-util",
"http",
- "http-body",
- "hyper",
+ "http-body 0.3.1",
+ "hyper 0.13.9",
"hyper-rustls",
"ipnet",
"js-sys",
@@ -2013,11 +2139,11 @@ dependencies = [
"mime_guess",
"percent-encoding",
"pin-project-lite 0.1.7",
- "rustls",
+ "rustls 0.18.1",
"serde",
"serde_urlencoded",
"tokio 0.2.22",
- "tokio-rustls",
+ "tokio-rustls 0.14.1",
"url",
"wasm-bindgen",
"wasm-bindgen-futures",
@@ -2070,6 +2196,19 @@ dependencies = [
]
[[package]]
+name = "rustls"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "064fd21ff87c6e87ed4506e68beb42459caa4a0e2eb144932e6776768556980b"
+dependencies = [
+ "base64 0.13.0",
+ "log",
+ "ring",
+ "sct",
+ "webpki",
+]
+
+[[package]]
name = "rusty_v8"
version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2746,7 +2885,7 @@ checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
dependencies = [
"cfg-if 0.1.10",
"libc",
- "rand",
+ "rand 0.7.3",
"redox_syscall",
"remove_dir_all",
"winapi 0.3.9",
@@ -2774,17 +2913,18 @@ dependencies = [
name = "test_util"
version = "0.1.0"
dependencies = [
- "bytes 0.5.6",
+ "async-stream",
+ "bytes 1.0.0",
"futures",
- "hyper",
+ "hyper 0.14.2",
"lazy_static",
"os_pipe",
"pty",
"regex",
"tempfile",
- "tokio 0.2.22",
- "tokio-rustls",
- "tokio-tungstenite",
+ "tokio 1.0.1",
+ "tokio-rustls 0.22.0",
+ "tokio-tungstenite 0.13.0",
]
[[package]]
@@ -2889,6 +3029,26 @@ dependencies = [
]
[[package]]
+name = "tokio"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d258221f566b6c803c7b4714abadc080172b272090cdc5e244a6d4dd13c3a6bd"
+dependencies = [
+ "autocfg",
+ "bytes 1.0.0",
+ "libc",
+ "memchr",
+ "mio 0.7.6",
+ "num_cpus",
+ "once_cell",
+ "parking_lot",
+ "pin-project-lite 0.2.0",
+ "signal-hook-registry",
+ "tokio-macros 1.0.0",
+ "winapi 0.3.9",
+]
+
+[[package]]
name = "tokio-macros"
version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2911,18 +3071,40 @@ dependencies = [
]
[[package]]
+name = "tokio-macros"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42517d2975ca3114b22a16192634e8241dc5cc1f130be194645970cc1c371494"
+dependencies = [
+ "proc-macro2 1.0.24",
+ "quote 1.0.7",
+ "syn 1.0.56",
+]
+
+[[package]]
name = "tokio-rustls"
version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e12831b255bcfa39dc0436b01e19fea231a37db570686c06ee72c423479f889a"
dependencies = [
"futures-core",
- "rustls",
+ "rustls 0.18.1",
"tokio 0.2.22",
"webpki",
]
[[package]]
+name = "tokio-rustls"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6"
+dependencies = [
+ "rustls 0.19.0",
+ "tokio 1.0.1",
+ "webpki",
+]
+
+[[package]]
name = "tokio-test"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2943,7 +3125,20 @@ dependencies = [
"log",
"pin-project 0.4.23",
"tokio 0.2.22",
- "tungstenite",
+ "tungstenite 0.11.1",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1a5f475f1b9d077ea1017ecbc60890fda8e54942d680ca0b1d2b47cfa2d861b"
+dependencies = [
+ "futures-util",
+ "log",
+ "pin-project 1.0.2",
+ "tokio 1.0.1",
+ "tungstenite 0.12.0",
]
[[package]]
@@ -3032,9 +3227,28 @@ dependencies = [
"bytes 0.5.6",
"http",
"httparse",
- "input_buffer",
+ "input_buffer 0.3.1",
+ "log",
+ "rand 0.7.3",
+ "sha-1",
+ "url",
+ "utf-8",
+]
+
+[[package]]
+name = "tungstenite"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ada8297e8d70872fa9a551d93250a9f407beb9f37ef86494eb20012a2ff7c24"
+dependencies = [
+ "base64 0.13.0",
+ "byteorder",
+ "bytes 1.0.0",
+ "http",
+ "httparse",
+ "input_buffer 0.4.0",
"log",
- "rand",
+ "rand 0.8.1",
"sha-1",
"url",
"utf-8",
@@ -3134,7 +3348,7 @@ version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11"
dependencies = [
- "rand",
+ "rand 0.7.3",
]
[[package]]
diff --git a/test_util/Cargo.toml b/test_util/Cargo.toml
index 6eee12ebc..3831c68f1 100644
--- a/test_util/Cargo.toml
+++ b/test_util/Cargo.toml
@@ -12,16 +12,17 @@ name = "test_server"
path = "src/test_server.rs"
[dependencies]
-tokio = { version = "0.2.22", features = ["full"] }
-futures = "0.3.8"
-bytes = "0.5.6"
+tokio = { version = "1.0", features = ["full"] }
+futures = "0.3"
+bytes = "1"
lazy_static = "1.4.0"
-os_pipe = "0.9.2"
+os_pipe = "0.9"
regex = "1.3.9"
tempfile = "3.1.0"
-hyper = "0.13"
-tokio-tungstenite = "0.11"
-tokio-rustls = "0.14"
+hyper = { version = "0.14.2", features = ["server", "http1", "runtime"] }
+tokio-tungstenite = "0.13"
+tokio-rustls = "0.22"
+async-stream = "0.3.0"
[target.'cfg(unix)'.dependencies]
pty = "0.2.2"
diff --git a/test_util/src/lib.rs b/test_util/src/lib.rs
index 3d5c60175..3f54fa9ee 100644
--- a/test_util/src/lib.rs
+++ b/test_util/src/lib.rs
@@ -5,28 +5,28 @@
#[macro_use]
extern crate lazy_static;
+use core::mem::replace;
use futures::FutureExt;
use futures::Stream;
use futures::StreamExt;
-use futures::TryStreamExt;
use hyper::header::HeaderValue;
+use hyper::server::Server;
use hyper::service::make_service_fn;
use hyper::service::service_fn;
use hyper::Body;
use hyper::Request;
use hyper::Response;
-use hyper::Server;
use hyper::StatusCode;
use os_pipe::pipe;
#[cfg(unix)]
pub use pty;
use regex::Regex;
use std::collections::HashMap;
+use std::convert::Infallible;
use std::env;
use std::io;
use std::io::Read;
use std::io::Write;
-use std::mem::replace;
use std::net::SocketAddr;
use std::path::PathBuf;
use std::pin::Pin;
@@ -146,11 +146,9 @@ async fn hyper_hello(port: u16) {
println!("hyper hello");
let addr = SocketAddr::from(([127, 0, 0, 1], port));
let hello_svc = make_service_fn(|_| async move {
- Ok::<_, hyper::error::Error>(service_fn(
- move |_: Request<Body>| async move {
- Ok::<_, hyper::error::Error>(Response::new(Body::from("Hello World!")))
- },
- ))
+ Ok::<_, Infallible>(service_fn(move |_: Request<Body>| async move {
+ Ok::<_, Infallible>(Response::new(Body::from("Hello World!")))
+ }))
});
let server = Server::bind(&addr).serve(hello_svc);
@@ -203,7 +201,7 @@ async fn another_redirect(req: Request<Body>) -> hyper::Result<Response<Body>> {
}
async fn run_ws_server(addr: &SocketAddr) {
- let mut listener = TcpListener::bind(addr).await.unwrap();
+ let listener = TcpListener::bind(addr).await.unwrap();
while let Ok((stream, _addr)) = listener.accept().await {
tokio::spawn(async move {
let ws_stream_fut = accept_async(stream);
@@ -278,7 +276,7 @@ async fn run_wss_server(addr: &SocketAddr) {
let tls_config = get_tls_config(cert_file, key_file).await.unwrap();
let tls_acceptor = TlsAcceptor::from(tls_config);
- let mut listener = TcpListener::bind(addr).await.unwrap();
+ let listener = TcpListener::bind(addr).await.unwrap();
while let Ok((stream, _addr)) = listener.accept().await {
let acceptor = tls_acceptor.clone();
@@ -620,7 +618,7 @@ unsafe impl std::marker::Send for HyperAcceptor<'_> {}
async fn wrap_redirect_server() {
let redirect_svc =
- make_service_fn(|_| async { Ok::<_, hyper::Error>(service_fn(redirect)) });
+ make_service_fn(|_| async { Ok::<_, Infallible>(service_fn(redirect)) });
let redirect_addr = SocketAddr::from(([127, 0, 0, 1], REDIRECT_PORT));
let redirect_server = Server::bind(&redirect_addr).serve(redirect_svc);
if let Err(e) = redirect_server.await {
@@ -630,7 +628,7 @@ async fn wrap_redirect_server() {
async fn wrap_double_redirect_server() {
let double_redirects_svc = make_service_fn(|_| async {
- Ok::<_, hyper::Error>(service_fn(double_redirects))
+ Ok::<_, Infallible>(service_fn(double_redirects))
});
let double_redirects_addr =
SocketAddr::from(([127, 0, 0, 1], DOUBLE_REDIRECTS_PORT));
@@ -643,7 +641,7 @@ async fn wrap_double_redirect_server() {
async fn wrap_inf_redirect_server() {
let inf_redirects_svc = make_service_fn(|_| async {
- Ok::<_, hyper::Error>(service_fn(inf_redirects))
+ Ok::<_, Infallible>(service_fn(inf_redirects))
});
let inf_redirects_addr =
SocketAddr::from(([127, 0, 0, 1], INF_REDIRECTS_PORT));
@@ -656,7 +654,7 @@ async fn wrap_inf_redirect_server() {
async fn wrap_another_redirect_server() {
let another_redirect_svc = make_service_fn(|_| async {
- Ok::<_, hyper::Error>(service_fn(another_redirect))
+ Ok::<_, Infallible>(service_fn(another_redirect))
});
let another_redirect_addr =
SocketAddr::from(([127, 0, 0, 1], ANOTHER_REDIRECT_PORT));
@@ -669,7 +667,7 @@ async fn wrap_another_redirect_server() {
async fn wrap_abs_redirect_server() {
let abs_redirect_svc = make_service_fn(|_| async {
- Ok::<_, hyper::Error>(service_fn(absolute_redirect))
+ Ok::<_, Infallible>(service_fn(absolute_redirect))
});
let abs_redirect_addr =
SocketAddr::from(([127, 0, 0, 1], REDIRECT_ABSOLUTE_PORT));
@@ -681,9 +679,8 @@ async fn wrap_abs_redirect_server() {
}
async fn wrap_main_server() {
- let main_server_svc = make_service_fn(|_| async {
- Ok::<_, hyper::Error>(service_fn(main_server))
- });
+ let main_server_svc =
+ make_service_fn(|_| async { Ok::<_, Infallible>(service_fn(main_server)) });
let main_server_addr = SocketAddr::from(([127, 0, 0, 1], PORT));
let main_server = Server::bind(&main_server_addr).serve(main_server_svc);
if let Err(e) = main_server.await {
@@ -698,29 +695,23 @@ async fn wrap_main_https_server() {
let tls_config = get_tls_config(cert_file, key_file)
.await
.expect("Cannot get TLS config");
- let mut tcp = TcpListener::bind(&main_server_https_addr)
- .await
- .expect("Cannot bind TCP");
loop {
+ let tcp = TcpListener::bind(&main_server_https_addr)
+ .await
+ .expect("Cannot bind TCP");
let tls_acceptor = TlsAcceptor::from(tls_config.clone());
// Prepare a long-running future stream to accept and serve cients.
- let incoming_tls_stream = tcp
- .incoming()
- .map_err(|e| {
- eprintln!("Error Incoming: {:?}", e);
- io::Error::new(io::ErrorKind::Other, e)
- })
- .and_then(move |s| {
- use futures::TryFutureExt;
- tls_acceptor.accept(s).map_err(|e| {
- eprintln!("TLS Error {:?}", e);
- e
- })
- })
- .boxed();
+ let incoming_tls_stream = async_stream::stream! {
+ loop {
+ let (socket, _) = tcp.accept().await?;
+ let stream = tls_acceptor.accept(socket);
+ yield stream.await;
+ }
+ }
+ .boxed();
let main_server_https_svc = make_service_fn(|_| async {
- Ok::<_, hyper::Error>(service_fn(main_server))
+ Ok::<_, Infallible>(service_fn(main_server))
});
let main_server_https = Server::builder(HyperAcceptor {
acceptor: incoming_tls_stream,
@@ -737,7 +728,7 @@ async fn wrap_main_https_server() {
// Use the single-threaded scheduler. The hyper server is used as a point of
// comparison for the (single-threaded!) benchmarks in cli/bench. We're not
// comparing apples to apples if we use the default multi-threaded scheduler.
-#[tokio::main(basic_scheduler)]
+#[tokio::main(flavor = "current_thread")]
pub async fn run_all_servers() {
if let Some(port) = env::args().nth(1) {
return hyper_hello(port.parse::<u16>().unwrap()).await;