diff --git a/Cargo.toml b/Cargo.toml index e80f491..bd54ae6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -42,6 +42,7 @@ futures-util = { version = "0.3.16", default-features = false, features = ["allo http-body-util = "0.1.0" tokio = { version = "1", features = ["macros", "test-util", "signal"] } tokio-test = "0.4" +tower-test = "0.4" pretty_env_logger = "0.5" [target.'cfg(any(target_os = "linux", target_os = "macos"))'.dev-dependencies] @@ -60,6 +61,7 @@ default = [] full = [ "client", "client-legacy", + "client-pool", "client-proxy", "client-proxy-system", "server", @@ -74,6 +76,7 @@ full = [ client = ["hyper/client", "tokio/net", "dep:tracing", "dep:futures-channel", "dep:tower-service"] client-legacy = ["client", "dep:socket2", "tokio/sync", "dep:libc", "dep:futures-util"] +client-pool = [] client-proxy = ["client", "dep:base64", "dep:ipnet", "dep:percent-encoding"] client-proxy-system = ["dep:system-configuration", "dep:windows-registry"] diff --git a/src/client/mod.rs b/src/client/mod.rs index 0d89603..268cadf 100644 --- a/src/client/mod.rs +++ b/src/client/mod.rs @@ -4,5 +4,8 @@ #[cfg(feature = "client-legacy")] pub mod legacy; +#[cfg(feature = "client-pool")] +pub mod pool; + #[cfg(feature = "client-proxy")] pub mod proxy; diff --git a/src/client/pool/mod.rs b/src/client/pool/mod.rs new file mode 100644 index 0000000..c0e9bfe --- /dev/null +++ b/src/client/pool/mod.rs @@ -0,0 +1,3 @@ +//! Composable pool services + +pub mod singleton; diff --git a/src/client/pool/singleton.rs b/src/client/pool/singleton.rs new file mode 100644 index 0000000..8b8a763 --- /dev/null +++ b/src/client/pool/singleton.rs @@ -0,0 +1,350 @@ +//! Singleton pools +//! +//! The singleton pool combines a MakeService that should only produce a single +//! active connection. It can bundle all concurrent calls to it, so that only +//! one connection is made. All calls to the singleton will return a clone of +//! the inner service once established. +//! +//! This fits the HTTP/2 case well. + +use std::sync::{Arc, Mutex}; +use std::task::{self, Poll}; + +use tokio::sync::oneshot; +use tower_service::Service; + +use self::internal::{DitchGuard, SingletonError, SingletonFuture}; + +type BoxError = Box; + +/// A singleton pool over an inner service. +/// +/// The singleton wraps an inner service maker, bundling all calls to ensure +/// only one service is created. Once made, it returns clones of the made +/// service. +#[derive(Debug)] +pub struct Singleton +where + M: Service, +{ + mk_svc: M, + state: Arc>>, +} + +#[derive(Debug)] +enum State { + Empty, + Making(Vec>), + Made(S), +} + +impl Singleton +where + M: Service, + M::Response: Clone, +{ + /// Create a new singleton pool over an inner make service. + pub fn new(mk_svc: M) -> Self { + Singleton { + mk_svc, + state: Arc::new(Mutex::new(State::Empty)), + } + } + + // pub fn reset? + + /* + /// Retains the inner made service if specified by the predicate. + pub fn retain(&mut self, predicate: F) + where + F: FnMut(&mut M::Response) -> bool, + { + let mut locked = self.state.lock().unwrap(); + match *locked { + State::Empty => {}, + State::Making(..) => {}, + State::Made(mut svc) => { + + } + } + } + */ +} + +impl Service for Singleton +where + M: Service, + M::Response: Clone, + M::Error: Into, +{ + type Response = M::Response; + type Error = SingletonError; + type Future = SingletonFuture; + + fn poll_ready(&mut self, cx: &mut task::Context<'_>) -> Poll> { + if let State::Empty = *self.state.lock().unwrap() { + return self + .mk_svc + .poll_ready(cx) + .map_err(|e| SingletonError(e.into())); + } + Poll::Ready(Ok(())) + } + + fn call(&mut self, dst: Target) -> Self::Future { + let mut locked = self.state.lock().unwrap(); + match *locked { + State::Empty => { + let fut = self.mk_svc.call(dst); + *locked = State::Making(Vec::new()); + SingletonFuture::Driving { + future: fut, + singleton: DitchGuard(Arc::downgrade(&self.state)), + } + } + State::Making(ref mut waiters) => { + let (tx, rx) = oneshot::channel(); + waiters.push(tx); + SingletonFuture::Waiting { rx } + } + State::Made(ref svc) => SingletonFuture::Made { + svc: Some(svc.clone()), + }, + } + } +} + +impl Clone for Singleton +where + M: Service + Clone, +{ + fn clone(&self) -> Self { + Self { + mk_svc: self.mk_svc.clone(), + state: self.state.clone(), + } + } +} + +// Holds some "pub" items that otherwise shouldn't be public. +mod internal { + use std::future::Future; + use std::pin::Pin; + use std::sync::{Mutex, Weak}; + use std::task::{self, Poll}; + + use futures_core::ready; + use pin_project_lite::pin_project; + use tokio::sync::oneshot; + + use super::{BoxError, State}; + + pin_project! { + #[project = SingletonFutureProj] + pub enum SingletonFuture { + Driving { + #[pin] + future: F, + singleton: DitchGuard, + }, + Waiting { + rx: oneshot::Receiver, + }, + Made { + svc: Option, + }, + } + } + + // XXX: pub because of the enum SingletonFuture + pub struct DitchGuard(pub(super) Weak>>); + + impl Future for SingletonFuture + where + F: Future>, + E: Into, + S: Clone, + { + type Output = Result; + + fn poll(self: Pin<&mut Self>, cx: &mut task::Context<'_>) -> Poll { + match self.project() { + SingletonFutureProj::Driving { future, singleton } => { + match ready!(future.poll(cx)) { + Ok(svc) => { + if let Some(state) = singleton.0.upgrade() { + let mut locked = state.lock().unwrap(); + singleton.0 = Weak::new(); + match std::mem::replace(&mut *locked, State::Made(svc.clone())) { + State::Making(waiters) => { + for tx in waiters { + let _ = tx.send(svc.clone()); + } + } + State::Empty | State::Made(_) => { + // shouldn't happen! + unreachable!() + } + } + } + Poll::Ready(Ok(svc)) + } + Err(e) => { + if let Some(state) = singleton.0.upgrade() { + let mut locked = state.lock().unwrap(); + singleton.0 = Weak::new(); + *locked = State::Empty; + } + Poll::Ready(Err(SingletonError(e.into()))) + } + } + } + SingletonFutureProj::Waiting { rx } => match ready!(Pin::new(rx).poll(cx)) { + Ok(svc) => Poll::Ready(Ok(svc)), + Err(_canceled) => Poll::Ready(Err(SingletonError(Canceled.into()))), + }, + SingletonFutureProj::Made { svc } => Poll::Ready(Ok(svc.take().unwrap())), + } + } + } + + impl Drop for DitchGuard { + fn drop(&mut self) { + if let Some(state) = self.0.upgrade() { + if let Ok(mut locked) = state.lock() { + *locked = State::Empty; + } + } + } + } + + // An opaque error type. By not exposing the type, nor being specifically + // Box, we can _change_ the type once we no longer need the Canceled + // error type. This will be possible with the refactor to baton passing. + #[derive(Debug)] + pub struct SingletonError(pub(super) BoxError); + + impl std::fmt::Display for SingletonError { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + f.write_str("singleton connection error") + } + } + + impl std::error::Error for SingletonError { + fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { + Some(&*self.0) + } + } + + #[derive(Debug)] + struct Canceled; + + impl std::fmt::Display for Canceled { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + f.write_str("singleton connection canceled") + } + } + + impl std::error::Error for Canceled {} +} + +#[cfg(test)] +mod tests { + use std::future::Future; + use std::pin::Pin; + use std::task::Poll; + + use tower_service::Service; + + use super::Singleton; + + #[tokio::test] + async fn first_call_drives_subsequent_wait() { + let (mock_svc, mut handle) = tower_test::mock::pair::<(), &'static str>(); + + let mut singleton = Singleton::new(mock_svc); + + handle.allow(1); + crate::common::future::poll_fn(|cx| singleton.poll_ready(cx)) + .await + .unwrap(); + // First call: should go into Driving + let fut1 = singleton.call(()); + // Second call: should go into Waiting + let fut2 = singleton.call(()); + + // Expect exactly one request to the inner service + let ((), send_response) = handle.next_request().await.unwrap(); + send_response.send_response("svc"); + + // Both futures should resolve to the same value + assert_eq!(fut1.await.unwrap(), "svc"); + assert_eq!(fut2.await.unwrap(), "svc"); + } + + #[tokio::test] + async fn made_state_returns_immediately() { + let (mock_svc, mut handle) = tower_test::mock::pair::<(), &'static str>(); + let mut singleton = Singleton::new(mock_svc); + + handle.allow(1); + crate::common::future::poll_fn(|cx| singleton.poll_ready(cx)) + .await + .unwrap(); + // Drive first call to completion + let fut1 = singleton.call(()); + let ((), send_response) = handle.next_request().await.unwrap(); + send_response.send_response("svc"); + assert_eq!(fut1.await.unwrap(), "svc"); + + // Second call should not hit inner service + let res = singleton.call(()).await.unwrap(); + assert_eq!(res, "svc"); + } + + #[tokio::test] + async fn cancel_waiter_does_not_affect_others() { + let (mock_svc, mut handle) = tower_test::mock::pair::<(), &'static str>(); + let mut singleton = Singleton::new(mock_svc); + + crate::common::future::poll_fn(|cx| singleton.poll_ready(cx)) + .await + .unwrap(); + let fut1 = singleton.call(()); + let fut2 = singleton.call(()); + drop(fut2); // cancel one waiter + + let ((), send_response) = handle.next_request().await.unwrap(); + send_response.send_response("svc"); + + assert_eq!(fut1.await.unwrap(), "svc"); + } + + // TODO: this should be able to be improved with a cooperative baton refactor + #[tokio::test] + async fn cancel_driver_cancels_all() { + let (mock_svc, mut handle) = tower_test::mock::pair::<(), &'static str>(); + let mut singleton = Singleton::new(mock_svc); + + crate::common::future::poll_fn(|cx| singleton.poll_ready(cx)) + .await + .unwrap(); + let mut fut1 = singleton.call(()); + let fut2 = singleton.call(()); + + // poll driver just once, and then drop + crate::common::future::poll_fn(move |cx| { + let _ = Pin::new(&mut fut1).poll(cx); + Poll::Ready(()) + }) + .await; + + let ((), send_response) = handle.next_request().await.unwrap(); + send_response.send_response("svc"); + + assert_eq!( + fut2.await.unwrap_err().0.to_string(), + "singleton connection canceled" + ); + } +} diff --git a/src/client/pool/target/rust-analyzer/flycheck0/stderr b/src/client/pool/target/rust-analyzer/flycheck0/stderr new file mode 100644 index 0000000..26d05b8 --- /dev/null +++ b/src/client/pool/target/rust-analyzer/flycheck0/stderr @@ -0,0 +1,93 @@ + 0.112845877s INFO prepare_target{force=false package_id=hyper-util v0.1.17 (/home/sean/code/hyper-util) target="legacy_client"}: cargo::core::compiler::fingerprint: fingerprint error for hyper-util v0.1.17 (/home/sean/code/hyper-util)/Check { test: true }/TargetInner { kind: "test", name: "legacy_client", benched: false, ..: with_path("/home/sean/code/hyper-util/tests/legacy_client.rs", Edition2021) } + 0.113026998s INFO prepare_target{force=false package_id=hyper-util v0.1.17 (/home/sean/code/hyper-util) target="legacy_client"}: cargo::core::compiler::fingerprint: err: failed to read `/home/sean/code/hyper-util/target/debug/.fingerprint/hyper-util-8c5eca22e264ab85/test-integration-test-legacy_client` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/core/src/ops/function.rs:287:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:590:40 + 16: std::panicking::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:553:19 + 17: std::panic::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:590:40 + 20: std::panicking::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:553:19 + 21: std::panic::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.213487562s INFO prepare_target{force=false package_id=hyper-util v0.1.17 (/home/sean/code/hyper-util) target="proxy"}: cargo::core::compiler::fingerprint: fingerprint error for hyper-util v0.1.17 (/home/sean/code/hyper-util)/Check { test: true }/TargetInner { kind: "test", name: "proxy", benched: false, ..: with_path("/home/sean/code/hyper-util/tests/proxy.rs", Edition2021) } + 0.213581563s INFO prepare_target{force=false package_id=hyper-util v0.1.17 (/home/sean/code/hyper-util) target="proxy"}: cargo::core::compiler::fingerprint: err: failed to read `/home/sean/code/hyper-util/target/debug/.fingerprint/hyper-util-c6bd5b6aa0f73e77/test-integration-test-proxy` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/core/src/ops/function.rs:287:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:590:40 + 16: std::panicking::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:553:19 + 17: std::panic::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:590:40 + 20: std::panicking::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panicking.rs:553:19 + 21: std::panic::catch_unwind + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/adaa838976ff99a4f0661136322f64cb466b58a0/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + Checking hyper-util v0.1.17 (/home/sean/code/hyper-util) +error: could not compile `hyper-util` (test "legacy_client") due to 29 previous errors +error: could not compile `hyper-util` (test "proxy") due to 85 previous errors diff --git a/src/client/pool/target/rust-analyzer/flycheck0/stdout b/src/client/pool/target/rust-analyzer/flycheck0/stdout new file mode 100644 index 0000000..f555db6 --- /dev/null +++ b/src/client/pool/target/rust-analyzer/flycheck0/stdout @@ -0,0 +1,202 @@ +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.101","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.101/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.101/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/sean/code/hyper-util/target/debug/build/proc-macro2-17e32568540fc90a/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.177","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.177/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.177/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/build/libc-295f477fb058fbb9/build-script-build"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.177","linked_libs":[],"linked_paths":[],"cfgs":["freebsd12"],"env":[],"out_dir":"/home/sean/code/hyper-util/target/debug/build/libc-fb1350fc81e9f154/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.101","linked_libs":[],"linked_paths":[],"cfgs":["wrap_proc_macro","proc_macro_span","proc_macro_span_location","proc_macro_span_file"],"env":[],"out_dir":"/home/sean/code/hyper-util/target/debug/build/proc-macro2-c3506195f8804da6/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.19","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_ident","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.19/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libunicode_ident-591df15350997623.rlib","/home/sean/code/hyper-util/target/debug/deps/libunicode_ident-591df15350997623.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.41","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.41/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.41/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/sean/code/hyper-util/target/debug/build/quote-9cf6aa672522b25c/build-script-build"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.41","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/sean/code/hyper-util/target/debug/build/quote-29c9639cefb85ff6/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.101","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.101/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro2","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.101/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libproc_macro2-7007d4933373c581.rlib","/home/sean/code/hyper-util/target/debug/deps/libproc_macro2-7007d4933373c581.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.177","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.177/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.177/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/liblibc-09bc1e25b6956a3f.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.41","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.41/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"quote","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.41/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libquote-a91dae4ea458b48f.rlib","/home/sean/code/hyper-util/target/debug/deps/libquote-a91dae4ea458b48f.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@2.0.106","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.106/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.106/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","full","parsing","printing","proc-macro","visit-mut"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libsyn-0931b3da662252d7.rlib","/home/sean/code/hyper-util/target/debug/deps/libsyn-0931b3da662252d7.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.16","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpin_project_lite-d39827a1100fb9ef.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.10.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libbytes-9d3487932bdbd853.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.31","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libfutures_core-928ec4daade86234.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-macros@2.5.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"tokio_macros","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtokio_macros-6d9feeb873d3b48c.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#signal-hook-registry@1.4.6","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"signal_hook_registry","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.6/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libsignal_hook_registry-23bc263d874f94f9.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.0.4","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libmio-de36dacb5509a274.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.47.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","io-util","libc","macros","mio","rt","signal","signal-hook-registry","sync","test-util","time","tokio-macros"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtokio-90a7f091d7d9e373.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fnv@1.0.7","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fnv","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libfnv-77c502cd42f57b8f.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libitoa-a41e1811ddda7bbe.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http@1.3.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-1.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-1.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhttp-1011bad67192e6a8.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libonce_cell-a196c0519b93602c.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["result","std"],"filenames":["/home/sean/code/hyper-util/target/debug/build/serde_core-c44f039cd676198c/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.6","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libmemchr-0f957f453f209228.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aho_corasick","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf-literal","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libaho_corasick-4456e926ab7cf816.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/sean/code/hyper-util/target/debug/build/serde_core-c95867eba98b952a/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing-core@0.1.34","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.34/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tracing_core","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.34/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["once_cell","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtracing_core-ea0328b9508f171e.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libequivalent-dbd0be9061b7acbc.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/build/serde-e58c1d6fb639cf0d/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/build/httparse-05246e2aa92cc113/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-utils@0.1.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_utils","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpin_utils-7f3687f361877058.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.6","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libregex_syntax-37398a1b76c1964b.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.31","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libfutures_sink-0305eccffc39046b.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.16.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhashbrown-14a51d3705e84ead.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#indexmap@2.11.4","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.11.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"indexmap","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.11.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libindexmap-1dd5229ddbfd6817.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-util@0.7.16","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_util","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["codec","default","io"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtokio_util-6a888b5c689da964.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.11","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","dfa-onepass","hybrid","meta","nfa-backtrack","nfa-pikevm","nfa-thompson","perf-inline","perf-literal","perf-literal-multisubstring","perf-literal-substring","std","syntax"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libregex_automata-781ca882576488dd.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","linked_libs":[],"linked_paths":[],"cfgs":["httparse_simd_neon_intrinsics","httparse_simd"],"env":[],"out_dir":"/home/sean/code/hyper-util/target/debug/build/httparse-4a4751aff91f1e29/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","linked_libs":[],"linked_paths":[],"cfgs":["if_docsrs_then_no_serde_core"],"env":[],"out_dir":"/home/sean/code/hyper-util/target/debug/build/serde-e612e86ffa702f9d/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing@0.1.41","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tracing","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtracing-2e3c89be3ca065d5.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["result","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libserde_core-595310025e4486d8.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http-body@1.0.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http_body","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-1.0.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhttp_body-9ed23291c56a6c25.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#async-stream-impl@0.3.6","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-stream-impl-0.3.6/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"async_stream_impl","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-stream-impl-0.3.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libasync_stream_impl-35dbe5f5891db963.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#atomic-waker@1.1.2","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atomic-waker-1.1.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"atomic_waker","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atomic-waker-1.1.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libatomic_waker-20260b4402dc237a.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.11","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.11/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libslab-0f7d78e81fd9c627.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#try-lock@0.2.5","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/try-lock-0.2.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"try_lock","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/try-lock-0.2.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtry_lock-014b8dacdcc310d6.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#want@0.3.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/want-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"want","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/want-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libwant-abca090310cbd894.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#h2@0.4.12","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.4.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"h2","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.4.12/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libh2-e627dbaa5fbc640f.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#async-stream@0.3.6","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-stream-0.3.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"async_stream","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-stream-0.3.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libasync_stream-cc5fcf397c17217d.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libserde-c950a6e44566446a.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"httparse","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhttparse-18c0333df5b5f665.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf","perf-backtrack","perf-cache","perf-dfa","perf-inline","perf-literal","perf-onepass","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libregex-a4f666b115698f05.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-stream@0.1.17","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-stream-0.1.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_stream","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-stream-0.1.17/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","time"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtokio_stream-2a24862dec233543.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.31","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libfutures_channel-c83de858d5464c85.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-internal@1.1.10","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-internal-1.1.10/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"pin_project_internal","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-internal-1.1.10/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpin_project_internal-902211fe168c8424.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is-terminal@0.4.16","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is-terminal-0.4.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is-terminal-0.4.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libis_terminal-083fdd33080d6c28.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.15.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["const_generics","const_new"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libsmallvec-70d5fd5aa87b6bea.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#no-std-net@0.6.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/no-std-net-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"no_std_net","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/no-std-net-0.6.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libno_std_net-b53e0fabdd488e64.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.31","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libfutures_task-fdb245a69f872492.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#termcolor@1.4.1","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/termcolor-1.4.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"termcolor","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/termcolor-1.4.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtermcolor-636a756f6388b07c.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#humantime@2.3.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/humantime-2.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"humantime","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/humantime-2.3.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhumantime-bbd29123e033ddcd.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httpdate@1.0.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httpdate-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"httpdate","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httpdate-1.0.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhttpdate-785a8fde9f31b304.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.28","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/liblog-e8b417e6864a09da.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#env_logger@0.10.2","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.10.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"env_logger","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.10.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto-color","color","default","humantime","regex"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libenv_logger-d720e88bcc0ecf88.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper@1.7.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["client","default","full","http1","http2","server"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhyper-5b1212735e694a60.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.31","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libfutures_util-22961d7fc5fc1d1b.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pnet_base@0.35.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pnet_base-0.35.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pnet_base","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pnet_base-0.35.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpnet_base-9013f661c0e20c00.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project@1.1.10","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-1.1.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-1.1.10/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpin_project-86948608a15aabb1.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-test@0.4.4","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-test-0.4.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_test","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-test-0.4.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtokio_test-978d3de8187555a6.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnetwork@0.20.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnetwork-0.20.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnetwork","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnetwork-0.20.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","serde"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libipnetwork-912a4b9886749070.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pnet_sys@0.35.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pnet_sys-0.35.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pnet_sys","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pnet_sys-0.35.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpnet_sys-a8ce4ead516b8adc.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-service@0.3.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-service-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_service","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-service-0.3.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtower_service-0c244bdadb1c689c.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-layer@0.3.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-layer-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_layer","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-layer-0.3.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtower_layer-3838c515db690a98.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-test@0.4.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-test-0.4.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_test","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-test-0.4.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libtower_test-179ef0e34e66d510.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pnet_datalink@0.35.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pnet_datalink-0.35.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pnet_datalink","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pnet_datalink-0.35.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpnet_datalink-85f3d03178b67455.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pretty_env_logger@0.5.0","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pretty_env_logger-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pretty_env_logger","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pretty_env_logger-0.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libpretty_env_logger-e62c76c3b7596a70.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http-body-util@0.1.3","manifest_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-util-0.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http_body_util","src_path":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-util-0.1.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhttp_body_util-c9e02e90a2a2b34c.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/home/sean/code/hyper-util/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"rendered":"warning: function `poll_fn` is never used\n --> src/common/future.rs:8:15\n |\n8 | pub(crate) fn poll_fn(f: F) -> PollFn\n | ^^^^^^^\n |\n = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"`#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default","rendered":null,"spans":[]}],"level":"warning","message":"function `poll_fn` is never used","spans":[{"byte_end":160,"byte_start":153,"column_end":22,"column_start":15,"expansion":null,"file_name":"src/common/future.rs","is_primary":true,"label":null,"line_end":8,"line_start":8,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":22,"highlight_start":15,"text":"pub(crate) fn poll_fn(f: F) -> PollFn"}]}],"code":{"code":"dead_code","explanation":null}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/home/sean/code/hyper-util/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"rendered":"warning: struct `PollFn` is never constructed\n --> src/common/future.rs:15:19\n |\n15 | pub(crate) struct PollFn {\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[],"level":"warning","message":"struct `PollFn` is never constructed","spans":[{"byte_end":281,"byte_start":275,"column_end":25,"column_start":19,"expansion":null,"file_name":"src/common/future.rs","is_primary":true,"label":null,"line_end":15,"line_start":15,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":19,"text":"pub(crate) struct PollFn {"}]}],"code":{"code":"dead_code","explanation":null}}} +{"reason":"compiler-artifact","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/home/sean/code/hyper-util/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhyper_util-1ea9d177f7e6705a.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/test_utils/mod.rs:15:17\n |\n15 | use hyper_util::client::legacy::connect::HttpConnector;\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":366,"byte_start":360,"column_end":23,"column_start":17,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":15,"line_start":15,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":23,"highlight_start":17,"text":"use hyper_util::client::legacy::connect::HttpConnector;"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/test_utils/mod.rs:16:17\n |\n16 | use hyper_util::client::legacy::connect::{Connected, Connection};\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":422,"byte_start":416,"column_end":23,"column_start":17,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":16,"line_start":16,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":23,"highlight_start":17,"text":"use hyper_util::client::legacy::connect::{Connected, Connection};"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `tokio::net::TcpStream`\n --> tests/test_utils/mod.rs:11:5\n |\n11 | use tokio::net::TcpStream;\n | ^^^^^^^^^^^^^^^^^^^^^ no `TcpStream` in `net`\n |\nnote: found an item that was configured out\n --> /home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs:44:26\n |\n38 | / cfg_net! {\n39 | | mod lookup_host;\n40 | | pub use lookup_host::lookup_host;\n... |\n44 | | pub use tcp::stream::TcpStream;\n | | ^^^^^^^^^\n... |\n52 | | }\n | |_- the item is gated behind the `net` feature\nhelp: consider importing this struct instead\n |\n11 - use tokio::net::TcpStream;\n11 + use std::net::TcpStream;\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":7253,"byte_start":7238,"column_end":34,"column_start":19,"expansion":{"def_site_span":{"byte_end":7180,"byte_start":7160,"column_end":21,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":null,"line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":21,"highlight_start":1,"text":"macro_rules! cfg_net {"}]},"macro_decl_name":"cfg_net!","span":{"byte_end":1704,"byte_start":1400,"column_end":2,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":false,"label":null,"line_end":52,"line_start":38,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":1,"highlight_start":1,"text":"cfg_net! {"},{"highlight_end":1,"highlight_start":1,"text":" mod lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":" pub use lookup_host::lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":1,"highlight_start":1,"text":" pub mod tcp;"},{"highlight_end":1,"highlight_start":1,"text":" pub use tcp::listener::TcpListener;"},{"highlight_end":1,"highlight_start":1,"text":" pub use tcp::stream::TcpStream;"},{"highlight_end":1,"highlight_start":1,"text":" cfg_not_wasi! {"},{"highlight_end":1,"highlight_start":1,"text":" pub use tcp::socket::TcpSocket;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":1,"highlight_start":1,"text":" mod udp;"},{"highlight_end":1,"highlight_start":1,"text":" #[doc(inline)]"},{"highlight_end":1,"highlight_start":1,"text":" pub use udp::UdpSocket;"},{"highlight_end":1,"highlight_start":1,"text":" }"},{"highlight_end":2,"highlight_start":1,"text":"}"}]}},"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":"the item is gated behind the `net` feature","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":34,"highlight_start":19,"text":" #[cfg(feature = \"net\")]"}]},{"byte_end":1562,"byte_start":1553,"column_end":35,"column_start":26,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":true,"label":null,"line_end":44,"line_start":44,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":35,"highlight_start":26,"text":" pub use tcp::stream::TcpStream;"}]}]},{"children":[],"code":null,"level":"help","message":"consider importing this struct instead","rendered":null,"spans":[{"byte_end":310,"byte_start":289,"column_end":26,"column_start":5,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":null,"line_end":11,"line_start":11,"suggested_replacement":"std::net::TcpStream","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":26,"highlight_start":5,"text":"use tokio::net::TcpStream;"}]}]}],"level":"error","message":"unresolved import `tokio::net::TcpStream`","spans":[{"byte_end":310,"byte_start":289,"column_end":26,"column_start":5,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"no `TcpStream` in `net`","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":26,"highlight_start":5,"text":"use tokio::net::TcpStream;"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:23:17\n |\n23 | use hyper_util::client::legacy::connect::{capture_connection, HttpConnector};\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":603,"byte_start":597,"column_end":23,"column_start":17,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":23,"line_start":23,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":23,"highlight_start":17,"text":"use hyper_util::client::legacy::connect::{capture_connection, HttpConnector};"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:24:17\n |\n24 | use hyper_util::client::legacy::Client;\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":681,"byte_start":675,"column_end":23,"column_start":17,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":24,"line_start":24,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":23,"highlight_start":17,"text":"use hyper_util::client::legacy::Client;"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `hyper_util::rt::TokioIo`\n --> tests/test_utils/mod.rs:17:5\n |\n17 | use hyper_util::rt::TokioIo;\n | ^^^^^^^^^^^^^^^^^^^^^^^ no `TokioIo` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:38\n |\n11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":256,"byte_start":249,"column_end":45,"column_start":38,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":38,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"unresolved import `hyper_util::rt::TokioIo`","spans":[{"byte_end":493,"byte_start":470,"column_end":28,"column_start":5,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"no `TokioIo` in `rt`","line_end":17,"line_start":17,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":28,"highlight_start":5,"text":"use hyper_util::rt::TokioIo;"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved imports `hyper_util::rt::TokioExecutor`, `hyper_util::rt::TokioIo`\n --> tests/legacy_client.rs:25:22\n |\n25 | use hyper_util::rt::{TokioExecutor, TokioIo};\n | ^^^^^^^^^^^^^ ^^^^^^^ no `TokioIo` in `rt`\n | |\n | no `TokioExecutor` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:23\n |\n11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^^^^^^^\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:38\n |\n11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":247,"byte_start":234,"column_end":36,"column_start":23,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":23,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]},{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":256,"byte_start":249,"column_end":45,"column_start":38,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":38,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"unresolved imports `hyper_util::rt::TokioExecutor`, `hyper_util::rt::TokioIo`","spans":[{"byte_end":733,"byte_start":720,"column_end":35,"column_start":22,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"no `TokioExecutor` in `rt`","line_end":25,"line_start":25,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":35,"highlight_start":22,"text":"use hyper_util::rt::{TokioExecutor, TokioIo};"}]},{"byte_end":742,"byte_start":735,"column_end":44,"column_start":37,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"no `TokioIo` in `rt`","line_end":25,"line_start":25,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":44,"highlight_start":37,"text":"use hyper_util::rt::{TokioExecutor, TokioIo};"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `futures_channel`\n --> tests/test_utils/mod.rs:5:5\n |\n5 | use futures_channel::mpsc;\n | ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_channel`\n |\nhelp: there is a crate or module with a similar name\n |\n5 - use futures_channel::mpsc;\n5 + use futures_core::mpsc;\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"there is a crate or module with a similar name","rendered":null,"spans":[{"byte_end":107,"byte_start":92,"column_end":20,"column_start":5,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":null,"line_end":5,"line_start":5,"suggested_replacement":"futures_core","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":20,"highlight_start":5,"text":"use futures_channel::mpsc;"}]}]}],"level":"error","message":"unresolved import `futures_channel`","spans":[{"byte_end":107,"byte_start":92,"column_end":20,"column_start":5,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `futures_channel`","line_end":5,"line_start":5,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":20,"highlight_start":5,"text":"use futures_channel::mpsc;"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `futures_channel`\n --> tests/legacy_client.rs:12:5\n |\n12 | use futures_channel::{mpsc, oneshot};\n | ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `futures_channel`\n |\nhelp: there is a crate or module with a similar name\n |\n12 - use futures_channel::{mpsc, oneshot};\n12 + use futures_core::{mpsc, oneshot};\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"there is a crate or module with a similar name","rendered":null,"spans":[{"byte_end":241,"byte_start":226,"column_end":20,"column_start":5,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":"futures_core","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":20,"highlight_start":5,"text":"use futures_channel::{mpsc, oneshot};"}]}]}],"level":"error","message":"unresolved import `futures_channel`","spans":[{"byte_end":241,"byte_start":226,"column_end":20,"column_start":5,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `futures_channel`","line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":20,"highlight_start":5,"text":"use futures_channel::{mpsc, oneshot};"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `tokio::net::TcpListener`\n --> tests/legacy_client.rs:808:9\n |\n808 | use tokio::net::TcpListener;\n | ^^^^^^^^^^^^^^^^^^^^^^^ no `TcpListener` in `net`\n |\nnote: found an item that was configured out\n --> /home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs:43:28\n |\n 38 | / cfg_net! {\n 39 | | mod lookup_host;\n 40 | | pub use lookup_host::lookup_host;\n... |\n 43 | | pub use tcp::listener::TcpListener;\n | | ^^^^^^^^^^^\n... |\n 52 | | }\n | |_- the item is gated behind the `net` feature\nhelp: consider importing one of these structs instead\n |\n808 - use tokio::net::TcpListener;\n808 + use crate::TcpListener;\n |\n808 - use tokio::net::TcpListener;\n808 + use std::net::TcpListener;\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":7253,"byte_start":7238,"column_end":34,"column_start":19,"expansion":{"def_site_span":{"byte_end":7180,"byte_start":7160,"column_end":21,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":null,"line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":21,"highlight_start":1,"text":"macro_rules! cfg_net {"}]},"macro_decl_name":"cfg_net!","span":{"byte_end":1704,"byte_start":1400,"column_end":2,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":false,"label":null,"line_end":52,"line_start":38,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":11,"highlight_start":1,"text":"cfg_net! {"},{"highlight_end":21,"highlight_start":1,"text":" mod lookup_host;"},{"highlight_end":38,"highlight_start":1,"text":" pub use lookup_host::lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" pub mod tcp;"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::listener::TcpListener;"},{"highlight_end":36,"highlight_start":1,"text":" pub use tcp::stream::TcpStream;"},{"highlight_end":20,"highlight_start":1,"text":" cfg_not_wasi! {"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::socket::TcpSocket;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" mod udp;"},{"highlight_end":23,"highlight_start":1,"text":" #[doc(inline)]"},{"highlight_end":32,"highlight_start":1,"text":" pub use udp::UdpSocket;"},{"highlight_end":6,"highlight_start":1,"text":" }"},{"highlight_end":2,"highlight_start":1,"text":"}"}]}},"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":"the item is gated behind the `net` feature","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":34,"highlight_start":19,"text":" #[cfg(feature = \"net\")]"}]},{"byte_end":1526,"byte_start":1515,"column_end":39,"column_start":28,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":true,"label":null,"line_end":43,"line_start":43,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":39,"highlight_start":28,"text":" pub use tcp::listener::TcpListener;"}]}]},{"children":[],"code":null,"level":"help","message":"consider importing one of these structs instead","rendered":null,"spans":[{"byte_end":26954,"byte_start":26931,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":808,"line_start":808,"suggested_replacement":"crate::TcpListener","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":32,"highlight_start":9,"text":" use tokio::net::TcpListener;"}]},{"byte_end":26954,"byte_start":26931,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":808,"line_start":808,"suggested_replacement":"std::net::TcpListener","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":32,"highlight_start":9,"text":" use tokio::net::TcpListener;"}]}]}],"level":"error","message":"unresolved import `tokio::net::TcpListener`","spans":[{"byte_end":26954,"byte_start":26931,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"no `TcpListener` in `net`","line_end":808,"line_start":808,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":32,"highlight_start":9,"text":" use tokio::net::TcpListener;"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `tokio::net::TcpListener`\n --> tests/legacy_client.rs:889:9\n |\n889 | use tokio::net::TcpListener;\n | ^^^^^^^^^^^^^^^^^^^^^^^ no `TcpListener` in `net`\n |\nnote: found an item that was configured out\n --> /home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs:43:28\n |\n 38 | / cfg_net! {\n 39 | | mod lookup_host;\n 40 | | pub use lookup_host::lookup_host;\n... |\n 43 | | pub use tcp::listener::TcpListener;\n | | ^^^^^^^^^^^\n... |\n 52 | | }\n | |_- the item is gated behind the `net` feature\nhelp: consider importing one of these structs instead\n |\n889 - use tokio::net::TcpListener;\n889 + use crate::TcpListener;\n |\n889 - use tokio::net::TcpListener;\n889 + use std::net::TcpListener;\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":7253,"byte_start":7238,"column_end":34,"column_start":19,"expansion":{"def_site_span":{"byte_end":7180,"byte_start":7160,"column_end":21,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":null,"line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":21,"highlight_start":1,"text":"macro_rules! cfg_net {"}]},"macro_decl_name":"cfg_net!","span":{"byte_end":1704,"byte_start":1400,"column_end":2,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":false,"label":null,"line_end":52,"line_start":38,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":11,"highlight_start":1,"text":"cfg_net! {"},{"highlight_end":21,"highlight_start":1,"text":" mod lookup_host;"},{"highlight_end":38,"highlight_start":1,"text":" pub use lookup_host::lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" pub mod tcp;"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::listener::TcpListener;"},{"highlight_end":36,"highlight_start":1,"text":" pub use tcp::stream::TcpStream;"},{"highlight_end":20,"highlight_start":1,"text":" cfg_not_wasi! {"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::socket::TcpSocket;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" mod udp;"},{"highlight_end":23,"highlight_start":1,"text":" #[doc(inline)]"},{"highlight_end":32,"highlight_start":1,"text":" pub use udp::UdpSocket;"},{"highlight_end":6,"highlight_start":1,"text":" }"},{"highlight_end":2,"highlight_start":1,"text":"}"}]}},"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":"the item is gated behind the `net` feature","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":34,"highlight_start":19,"text":" #[cfg(feature = \"net\")]"}]},{"byte_end":1526,"byte_start":1515,"column_end":39,"column_start":28,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":true,"label":null,"line_end":43,"line_start":43,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":39,"highlight_start":28,"text":" pub use tcp::listener::TcpListener;"}]}]},{"children":[],"code":null,"level":"help","message":"consider importing one of these structs instead","rendered":null,"spans":[{"byte_end":29977,"byte_start":29954,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":889,"line_start":889,"suggested_replacement":"crate::TcpListener","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":32,"highlight_start":9,"text":" use tokio::net::TcpListener;"}]},{"byte_end":29977,"byte_start":29954,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":889,"line_start":889,"suggested_replacement":"std::net::TcpListener","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":32,"highlight_start":9,"text":" use tokio::net::TcpListener;"}]}]}],"level":"error","message":"unresolved import `tokio::net::TcpListener`","spans":[{"byte_end":29977,"byte_start":29954,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"no `TcpListener` in `net`","line_end":889,"line_start":889,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":32,"highlight_start":9,"text":" use tokio::net::TcpListener;"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `TokioExecutor` in `rt`\n --> tests/legacy_client.rs:50:50\n |\n50 | let client = Client::builder(hyper_util::rt::TokioExecutor::new()).build(\n | ^^^^^^^^^^^^^ could not find `TokioExecutor` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:23\n |\n11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":247,"byte_start":234,"column_end":36,"column_start":23,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":23,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"failed to resolve: could not find `TokioExecutor` in `rt`","spans":[{"byte_end":1452,"byte_start":1439,"column_end":63,"column_start":50,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `TokioExecutor` in `rt`","line_end":50,"line_start":50,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":63,"highlight_start":50,"text":" let client = Client::builder(hyper_util::rt::TokioExecutor::new()).build("}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `TokioIo` in `rt`\n --> tests/legacy_client.rs:1107:36\n |\n1107 | inner: hyper_util::rt::TokioIo::new(mock),\n | ^^^^^^^ could not find `TokioIo` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:38\n |\n 11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n 12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":256,"byte_start":249,"column_end":45,"column_start":38,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":38,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"failed to resolve: could not find `TokioIo` in `rt`","spans":[{"byte_end":38654,"byte_start":38647,"column_end":43,"column_start":36,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `TokioIo` in `rt`","line_end":1107,"line_start":1107,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":43,"highlight_start":36,"text":" inner: hyper_util::rt::TokioIo::new(mock),"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:1220:18\n |\n1220 | impl hyper_util::client::legacy::connect::Connection for MockConnection {\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n 10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":43841,"byte_start":43835,"column_end":24,"column_start":18,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":1220,"line_start":1220,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":18,"text":"impl hyper_util::client::legacy::connect::Connection for MockConnection {"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:1223:40\n |\n1223 | fn connected(&self) -> hyper_util::client::legacy::connect::Connected {\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n 10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":44060,"byte_start":44054,"column_end":46,"column_start":40,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":1223,"line_start":1223,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":46,"highlight_start":40,"text":" fn connected(&self) -> hyper_util::client::legacy::connect::Connected {"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:1224:21\n |\n1224 | hyper_util::client::legacy::connect::Connected::new()\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n 10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":44117,"byte_start":44111,"column_end":27,"column_start":21,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":1224,"line_start":1224,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":27,"highlight_start":21,"text":" hyper_util::client::legacy::connect::Connected::new()"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:1346:30\n |\n1346 | let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n 10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":49915,"byte_start":49909,"column_end":36,"column_start":30,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":1346,"line_start":1346,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":30,"text":" let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `TokioExecutor` in `rt`\n --> tests/legacy_client.rs:1346:78\n |\n1346 | let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())\n | ^^^^^^^^^^^^^ could not find `TokioExecutor` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:23\n |\n 11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n 12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":247,"byte_start":234,"column_end":36,"column_start":23,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":23,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"failed to resolve: could not find `TokioExecutor` in `rt`","spans":[{"byte_end":49970,"byte_start":49957,"column_end":91,"column_start":78,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `TokioExecutor` in `rt`","line_end":1346,"line_start":1346,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":91,"highlight_start":78,"text":" let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:1398:30\n |\n1398 | let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n 10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":52788,"byte_start":52782,"column_end":36,"column_start":30,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":1398,"line_start":1398,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":30,"text":" let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `TokioExecutor` in `rt`\n --> tests/legacy_client.rs:1398:78\n |\n1398 | let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())\n | ^^^^^^^^^^^^^ could not find `TokioExecutor` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:23\n |\n 11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n 12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":247,"byte_start":234,"column_end":36,"column_start":23,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":23,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"failed to resolve: could not find `TokioExecutor` in `rt`","spans":[{"byte_end":52843,"byte_start":52830,"column_end":91,"column_start":78,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `TokioExecutor` in `rt`","line_end":1398,"line_start":1398,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":91,"highlight_start":78,"text":" let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/legacy_client.rs:1465:30\n |\n1465 | let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n 10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":56193,"byte_start":56187,"column_end":36,"column_start":30,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":1465,"line_start":1465,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":30,"text":" let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `TokioExecutor` in `rt`\n --> tests/legacy_client.rs:1465:78\n |\n1465 | let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())\n | ^^^^^^^^^^^^^ could not find `TokioExecutor` in `rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:23\n |\n 11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n 12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":247,"byte_start":234,"column_end":36,"column_start":23,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":36,"highlight_start":23,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"failed to resolve: could not find `TokioExecutor` in `rt`","spans":[{"byte_end":56248,"byte_start":56235,"column_end":91,"column_start":78,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `TokioExecutor` in `rt`","line_end":1465,"line_start":1465,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":91,"highlight_start":78,"text":" let client = hyper_util::client::legacy::Client::builder(hyper_util::rt::TokioExecutor::new())"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tower_service`\n --> tests/test_utils/mod.rs:58:9\n |\n58 | tower_service::Service::::poll_ready(&mut self.http, cx)\n | ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `tower_service`\n |\n = help: if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`\nhelp: consider importing this trait\n |\n 1 + use hyper::service::Service;\n |\nhelp: if you import `Service`, refer to it directly\n |\n58 - tower_service::Service::::poll_ready(&mut self.http, cx)\n58 + Service::::poll_ready(&mut self.http, cx)\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`","rendered":null,"spans":[]},{"children":[],"code":null,"level":"help","message":"consider importing this trait","rendered":null,"spans":[{"byte_end":0,"byte_start":0,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":null,"line_end":1,"line_start":1,"suggested_replacement":"use hyper::service::Service;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::pin::Pin;"}]}]},{"children":[],"code":null,"level":"help","message":"if you import `Service`, refer to it directly","rendered":null,"spans":[{"byte_end":1692,"byte_start":1677,"column_end":24,"column_start":9,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":null,"line_end":58,"line_start":58,"suggested_replacement":"","suggestion_applicability":"Unspecified","text":[{"highlight_end":24,"highlight_start":9,"text":" tower_service::Service::::poll_ready(&mut self.http, cx)"}]}]}],"level":"error","message":"failed to resolve: use of unresolved module or unlinked crate `tower_service`","spans":[{"byte_end":1690,"byte_start":1677,"column_end":22,"column_start":9,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `tower_service`","line_end":58,"line_start":58,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":22,"highlight_start":9,"text":" tower_service::Service::::poll_ready(&mut self.http, cx)"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `TcpListener` in `net`\n --> tests/legacy_client.rs:93:30\n |\n93 | let server = tokio::net::TcpListener::bind(\"127.0.0.1:0\").await.unwrap();\n | ^^^^^^^^^^^ could not find `TcpListener` in `net`\n |\nnote: found an item that was configured out\n --> /home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs:43:28\n |\n38 | / cfg_net! {\n39 | | mod lookup_host;\n40 | | pub use lookup_host::lookup_host;\n... |\n43 | | pub use tcp::listener::TcpListener;\n | | ^^^^^^^^^^^\n... |\n52 | | }\n | |_- the item is gated behind the `net` feature\nhelp: consider importing one of these structs\n |\n 3 + use crate::TcpListener;\n |\n 3 + use std::net::TcpListener;\n |\nhelp: if you import `TcpListener`, refer to it directly\n |\n93 - let server = tokio::net::TcpListener::bind(\"127.0.0.1:0\").await.unwrap();\n93 + let server = TcpListener::bind(\"127.0.0.1:0\").await.unwrap();\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":7253,"byte_start":7238,"column_end":34,"column_start":19,"expansion":{"def_site_span":{"byte_end":7180,"byte_start":7160,"column_end":21,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":null,"line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":21,"highlight_start":1,"text":"macro_rules! cfg_net {"}]},"macro_decl_name":"cfg_net!","span":{"byte_end":1704,"byte_start":1400,"column_end":2,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":false,"label":null,"line_end":52,"line_start":38,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":11,"highlight_start":1,"text":"cfg_net! {"},{"highlight_end":21,"highlight_start":1,"text":" mod lookup_host;"},{"highlight_end":38,"highlight_start":1,"text":" pub use lookup_host::lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" pub mod tcp;"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::listener::TcpListener;"},{"highlight_end":36,"highlight_start":1,"text":" pub use tcp::stream::TcpStream;"},{"highlight_end":20,"highlight_start":1,"text":" cfg_not_wasi! {"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::socket::TcpSocket;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" mod udp;"},{"highlight_end":23,"highlight_start":1,"text":" #[doc(inline)]"},{"highlight_end":32,"highlight_start":1,"text":" pub use udp::UdpSocket;"},{"highlight_end":6,"highlight_start":1,"text":" }"},{"highlight_end":2,"highlight_start":1,"text":"}"}]}},"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":"the item is gated behind the `net` feature","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":34,"highlight_start":19,"text":" #[cfg(feature = \"net\")]"}]},{"byte_end":1526,"byte_start":1515,"column_end":39,"column_start":28,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":true,"label":null,"line_end":43,"line_start":43,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":39,"highlight_start":28,"text":" pub use tcp::listener::TcpListener;"}]}]},{"children":[],"code":null,"level":"help","message":"consider importing one of these structs","rendered":null,"spans":[{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use crate::TcpListener;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use std::net::TcpListener;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]}]},{"children":[],"code":null,"level":"help","message":"if you import `TcpListener`, refer to it directly","rendered":null,"spans":[{"byte_end":2841,"byte_start":2829,"column_end":30,"column_start":18,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":93,"line_start":93,"suggested_replacement":"","suggestion_applicability":"Unspecified","text":[{"highlight_end":30,"highlight_start":18,"text":" let server = tokio::net::TcpListener::bind(\"127.0.0.1:0\").await.unwrap();"}]}]}],"level":"error","message":"failed to resolve: could not find `TcpListener` in `net`","spans":[{"byte_end":2852,"byte_start":2841,"column_end":41,"column_start":30,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `TcpListener` in `net`","line_end":93,"line_start":93,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":41,"highlight_start":30,"text":" let server = tokio::net::TcpListener::bind(\"127.0.0.1:0\").await.unwrap();"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `server` in `hyper_util`\n --> tests/legacy_client.rs:824:39\n |\n824 | let mut builder = hyper_util::server::conn::auto::Builder::new(TokioExecutor::new());\n | ^^^^^^ could not find `server` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:14:9\n |\n 13 | #[cfg(feature = \"server\")]\n | ------------------ the item is gated behind the `server` feature\n 14 | pub mod server;\n | ^^^^^^\nhelp: consider importing one of these structs\n |\n 3 + use crate::thread::Builder;\n |\n 3 + use std::thread::Builder;\n |\n 3 + use http::request::Builder;\n |\n 3 + use http::response::Builder;\n |\n = and 7 other candidates\nhelp: if you import `Builder`, refer to it directly\n |\n824 - let mut builder = hyper_util::server::conn::auto::Builder::new(TokioExecutor::new());\n824 + let mut builder = Builder::new(TokioExecutor::new());\n |\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":344,"byte_start":326,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `server` feature","line_end":13,"line_start":13,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"server\")]"}]},{"byte_end":361,"byte_start":355,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":14,"line_start":14,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod server;"}]}]},{"children":[],"code":null,"level":"help","message":"consider importing one of these structs","rendered":null,"spans":[{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use crate::thread::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use std::thread::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use http::request::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use http::response::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use http::uri::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use hyper::client::conn::http1::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use hyper::client::conn::http2::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use hyper::server::conn::http1::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use hyper::server::conn::http2::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use tokio::runtime::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]},{"byte_end":17,"byte_start":17,"column_end":1,"column_start":1,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":3,"line_start":3,"suggested_replacement":"use tokio_test::io::Builder;\n","suggestion_applicability":"MaybeIncorrect","text":[{"highlight_end":1,"highlight_start":1,"text":"use std::io::{Read, Write};"}]}]},{"children":[],"code":null,"level":"help","message":"if you import `Builder`, refer to it directly","rendered":null,"spans":[{"byte_end":27529,"byte_start":27497,"column_end":59,"column_start":27,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":null,"line_end":824,"line_start":824,"suggested_replacement":"","suggestion_applicability":"Unspecified","text":[{"highlight_end":59,"highlight_start":27,"text":" let mut builder = hyper_util::server::conn::auto::Builder::new(TokioExecutor::new());"}]}]}],"level":"error","message":"failed to resolve: could not find `server` in `hyper_util`","spans":[{"byte_end":27515,"byte_start":27509,"column_end":45,"column_start":39,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"could not find `server` in `hyper_util`","line_end":824,"line_start":824,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":39,"text":" let mut builder = hyper_util::server::conn::auto::Builder::new(TokioExecutor::new());"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0412]: cannot find type `TokioIo` in module `hyper_util::rt`\n --> tests/legacy_client.rs:1086:28\n |\n1086 | inner: hyper_util::rt::TokioIo,\n | ^^^^^^^ not found in `hyper_util::rt`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/rt/mod.rs:12:38\n |\n 11 | #[cfg(feature = \"tokio\")]\n | ----------------- the item is gated behind the `tokio` feature\n 12 | pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};\n | ^^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":209,"byte_start":192,"column_end":24,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":false,"label":"the item is gated behind the `tokio` feature","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":24,"highlight_start":7,"text":"#[cfg(feature = \"tokio\")]"}]},{"byte_end":256,"byte_start":249,"column_end":45,"column_start":38,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/rt/mod.rs","is_primary":true,"label":null,"line_end":12,"line_start":12,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":38,"text":"pub use self::tokio::{TokioExecutor, TokioIo, TokioTimer};"}]}]}],"level":"error","message":"cannot find type `TokioIo` in module `hyper_util::rt`","spans":[{"byte_end":37688,"byte_start":37681,"column_end":35,"column_start":28,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"not found in `hyper_util::rt`","line_end":1086,"line_start":1086,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":35,"highlight_start":28,"text":" inner: hyper_util::rt::TokioIo,"}]}],"code":{"code":"E0412","explanation":"A used type name is not in scope.\n\nErroneous code examples:\n\n```compile_fail,E0412\nimpl Something {} // error: type name `Something` is not in scope\n\n// or:\n\ntrait Foo {\n fn bar(N); // error: type name `N` is not in scope\n}\n\n// or:\n\nfn foo(x: T) {} // type name `T` is not in scope\n```\n\nTo fix this error, please verify you didn't misspell the type name, you did\ndeclare it or imported it into the scope. Examples:\n\n```\nstruct Something;\n\nimpl Something {} // ok!\n\n// or:\n\ntrait Foo {\n type N;\n\n fn bar(_: Self::N); // ok!\n}\n\n// or:\n\nfn foo(x: T) {} // ok!\n```\n\nAnother case that causes this error is when a type is imported into a parent\nmodule. To fix this, you can follow the suggestion and use File directly or\n`use super::File;` which will import the types from the parent namespace. An\nexample that causes this error is below:\n\n```compile_fail,E0412\nuse std::fs::File;\n\nmod foo {\n fn some_function(f: File) {}\n}\n```\n\n```\nuse std::fs::File;\n\nmod foo {\n // either\n use super::File;\n // or\n // use std::fs::File;\n fn foo(f: File) {}\n}\n# fn main() {} // don't insert it for us; that'll break imports\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tower_service`\n --> tests/test_utils/mod.rs:51:6\n |\n51 | impl tower_service::Service for DebugConnector {\n | ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `tower_service`\n |\n = help: if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`","rendered":null,"spans":[]}],"level":"error","message":"failed to resolve: use of unresolved module or unlinked crate `tower_service`","spans":[{"byte_end":1289,"byte_start":1276,"column_end":19,"column_start":6,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `tower_service`","line_end":51,"line_start":51,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":19,"highlight_start":6,"text":"impl tower_service::Service for DebugConnector {"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tower_service`\n --> tests/test_utils/mod.rs:53:36\n |\n53 | type Error = >::Error;\n | ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `tower_service`\n |\n = help: if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`","rendered":null,"spans":[]}],"level":"error","message":"failed to resolve: use of unresolved module or unlinked crate `tower_service`","spans":[{"byte_end":1406,"byte_start":1393,"column_end":49,"column_start":36,"expansion":null,"file_name":"tests/test_utils/mod.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `tower_service`","line_end":53,"line_start":53,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":36,"text":" type Error = >::Error;"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tower_service`\n --> tests/legacy_client.rs:1253:6\n |\n1253 | impl tower_service::Service for MockConnector {\n | ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `tower_service`\n |\n = help: if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`","rendered":null,"spans":[]}],"level":"error","message":"failed to resolve: use of unresolved module or unlinked crate `tower_service`","spans":[{"byte_end":45122,"byte_start":45109,"column_end":19,"column_start":6,"expansion":null,"file_name":"tests/legacy_client.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `tower_service`","line_end":1253,"line_start":1253,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":19,"highlight_start":6,"text":"impl tower_service::Service for MockConnector {"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"Some errors have detailed explanations: E0412, E0432, E0433.\n","$message_type":"diagnostic","children":[],"level":"failure-note","message":"Some errors have detailed explanations: E0412, E0432, E0433.","spans":[],"code":null}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"legacy_client","src_path":"/home/sean/code/hyper-util/tests/legacy_client.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"For more information about an error, try `rustc --explain E0412`.\n","$message_type":"diagnostic","children":[],"level":"failure-note","message":"For more information about an error, try `rustc --explain E0412`.","spans":[],"code":null}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/proxy.rs:5:17\n |\n 5 | use hyper_util::client::legacy::connect::proxy::{SocksV4, SocksV5, Tunnel};\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":139,"byte_start":133,"column_end":23,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":5,"line_start":5,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":23,"highlight_start":17,"text":"use hyper_util::client::legacy::connect::proxy::{SocksV4, SocksV5, Tunnel};"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0433]: failed to resolve: could not find `client` in `hyper_util`\n --> tests/proxy.rs:6:17\n |\n 6 | use hyper_util::client::legacy::connect::HttpConnector;\n | ^^^^^^ could not find `client` in `hyper_util`\n |\nnote: found an item that was configured out\n --> /home/sean/code/hyper-util/src/lib.rs:10:9\n |\n 9 | #[cfg(feature = \"client\")]\n | ------------------ the item is gated behind the `client` feature\n10 | pub mod client;\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":277,"byte_start":259,"column_end":25,"column_start":7,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":false,"label":"the item is gated behind the `client` feature","line_end":9,"line_start":9,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":7,"text":"#[cfg(feature = \"client\")]"}]},{"byte_end":294,"byte_start":288,"column_end":15,"column_start":9,"expansion":null,"file_name":"/home/sean/code/hyper-util/src/lib.rs","is_primary":true,"label":null,"line_end":10,"line_start":10,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":15,"highlight_start":9,"text":"pub mod client;"}]}]}],"level":"error","message":"failed to resolve: could not find `client` in `hyper_util`","spans":[{"byte_end":215,"byte_start":209,"column_end":23,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"could not find `client` in `hyper_util`","line_end":6,"line_start":6,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":23,"highlight_start":17,"text":"use hyper_util::client::legacy::connect::HttpConnector;"}]}],"code":{"code":"E0433","explanation":"An undeclared crate, module, or type was used.\n\nErroneous code example:\n\n```compile_fail,E0433\nlet map = HashMap::new();\n// error: failed to resolve: use of undeclared type `HashMap`\n```\n\nPlease verify you didn't misspell the type/module's name or that you didn't\nforget to import it:\n\n```\nuse std::collections::HashMap; // HashMap has been imported.\nlet map: HashMap = HashMap::new(); // So it can be used!\n```\n\nIf you've expected to use a crate name:\n\n```compile_fail\nuse ferris_wheel::BigO;\n// error: failed to resolve: use of undeclared module or unlinked crate\n```\n\nMake sure the crate has been added as a dependency in `Cargo.toml`.\n\nTo use a module from your current crate, add the `crate::` prefix to the path.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved imports `tokio::net::TcpListener`, `tokio::net::TcpStream`\n --> tests/proxy.rs:2:18\n |\n 2 | use tokio::net::{TcpListener, TcpStream};\n | ^^^^^^^^^^^ ^^^^^^^^^ no `TcpStream` in `net`\n | |\n | no `TcpListener` in `net`\n |\n = help: consider importing this struct instead:\n std::net::TcpListener\nnote: found an item that was configured out\n --> /home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs:43:28\n |\n38 | / cfg_net! {\n39 | | mod lookup_host;\n40 | | pub use lookup_host::lookup_host;\n... |\n43 | | pub use tcp::listener::TcpListener;\n | | ^^^^^^^^^^^\n... |\n52 | | }\n | |_- the item is gated behind the `net` feature\n = help: consider importing this struct instead:\n std::net::TcpStream\nnote: found an item that was configured out\n --> /home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs:44:26\n |\n38 | / cfg_net! {\n39 | | mod lookup_host;\n40 | | pub use lookup_host::lookup_host;\n... |\n44 | | pub use tcp::stream::TcpStream;\n | | ^^^^^^^^^\n... |\n52 | | }\n | |_- the item is gated behind the `net` feature\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"consider importing this struct instead:\nstd::net::TcpListener","rendered":null,"spans":[]},{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":7253,"byte_start":7238,"column_end":34,"column_start":19,"expansion":{"def_site_span":{"byte_end":7180,"byte_start":7160,"column_end":21,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":null,"line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":21,"highlight_start":1,"text":"macro_rules! cfg_net {"}]},"macro_decl_name":"cfg_net!","span":{"byte_end":1704,"byte_start":1400,"column_end":2,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":false,"label":null,"line_end":52,"line_start":38,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":1,"highlight_start":1,"text":"cfg_net! {"},{"highlight_end":1,"highlight_start":1,"text":" mod lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":" pub use lookup_host::lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":1,"highlight_start":1,"text":" pub mod tcp;"},{"highlight_end":1,"highlight_start":1,"text":" pub use tcp::listener::TcpListener;"},{"highlight_end":1,"highlight_start":1,"text":" pub use tcp::stream::TcpStream;"},{"highlight_end":1,"highlight_start":1,"text":" cfg_not_wasi! {"},{"highlight_end":1,"highlight_start":1,"text":" pub use tcp::socket::TcpSocket;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":1,"highlight_start":1,"text":" mod udp;"},{"highlight_end":1,"highlight_start":1,"text":" #[doc(inline)]"},{"highlight_end":1,"highlight_start":1,"text":" pub use udp::UdpSocket;"},{"highlight_end":1,"highlight_start":1,"text":" }"},{"highlight_end":2,"highlight_start":1,"text":"}"}]}},"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":"the item is gated behind the `net` feature","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":34,"highlight_start":19,"text":" #[cfg(feature = \"net\")]"}]},{"byte_end":1526,"byte_start":1515,"column_end":39,"column_start":28,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":true,"label":null,"line_end":43,"line_start":43,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":39,"highlight_start":28,"text":" pub use tcp::listener::TcpListener;"}]}]},{"children":[],"code":null,"level":"help","message":"consider importing this struct instead:\nstd::net::TcpStream","rendered":null,"spans":[]},{"children":[],"code":null,"level":"note","message":"found an item that was configured out","rendered":null,"spans":[{"byte_end":7253,"byte_start":7238,"column_end":34,"column_start":19,"expansion":{"def_site_span":{"byte_end":7180,"byte_start":7160,"column_end":21,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":null,"line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":21,"highlight_start":1,"text":"macro_rules! cfg_net {"}]},"macro_decl_name":"cfg_net!","span":{"byte_end":1704,"byte_start":1400,"column_end":2,"column_start":1,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":false,"label":null,"line_end":52,"line_start":38,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":11,"highlight_start":1,"text":"cfg_net! {"},{"highlight_end":21,"highlight_start":1,"text":" mod lookup_host;"},{"highlight_end":38,"highlight_start":1,"text":" pub use lookup_host::lookup_host;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" pub mod tcp;"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::listener::TcpListener;"},{"highlight_end":36,"highlight_start":1,"text":" pub use tcp::stream::TcpStream;"},{"highlight_end":20,"highlight_start":1,"text":" cfg_not_wasi! {"},{"highlight_end":40,"highlight_start":1,"text":" pub use tcp::socket::TcpSocket;"},{"highlight_end":1,"highlight_start":1,"text":""},{"highlight_end":17,"highlight_start":1,"text":" mod udp;"},{"highlight_end":23,"highlight_start":1,"text":" #[doc(inline)]"},{"highlight_end":32,"highlight_start":1,"text":" pub use udp::UdpSocket;"},{"highlight_end":6,"highlight_start":1,"text":" }"},{"highlight_end":2,"highlight_start":1,"text":"}"}]}},"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/macros/cfg.rs","is_primary":false,"label":"the item is gated behind the `net` feature","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":34,"highlight_start":19,"text":" #[cfg(feature = \"net\")]"}]},{"byte_end":1562,"byte_start":1553,"column_end":35,"column_start":26,"expansion":null,"file_name":"/home/sean/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/net/mod.rs","is_primary":true,"label":null,"line_end":44,"line_start":44,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":35,"highlight_start":26,"text":" pub use tcp::stream::TcpStream;"}]}]}],"level":"error","message":"unresolved imports `tokio::net::TcpListener`, `tokio::net::TcpStream`","spans":[{"byte_end":74,"byte_start":63,"column_end":29,"column_start":18,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"no `TcpListener` in `net`","line_end":2,"line_start":2,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":29,"highlight_start":18,"text":"use tokio::net::{TcpListener, TcpStream};"}]},{"byte_end":85,"byte_start":76,"column_end":40,"column_start":31,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"no `TcpStream` in `net`","line_end":2,"line_start":2,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":31,"text":"use tokio::net::{TcpListener, TcpStream};"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0432]: unresolved import `tower_service`\n --> tests/proxy.rs:3:5\n |\n3 | use tower_service::Service;\n | ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `tower_service`\n |\n = help: if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"help","message":"if you wanted to use a crate named `tower_service`, use `cargo add tower_service` to add it to your `Cargo.toml`","rendered":null,"spans":[]}],"level":"error","message":"unresolved import `tower_service`","spans":[{"byte_end":105,"byte_start":92,"column_end":18,"column_start":5,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"use of unresolved module or unlinked crate `tower_service`","line_end":3,"line_start":3,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":18,"highlight_start":5,"text":"use tower_service::Service;"}]}],"code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:11:15\n |\n11 | let tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":366,"byte_start":328,"column_end":53,"column_start":15,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":11,"line_start":11,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":53,"highlight_start":15,"text":" let tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:17:21\n |\n17 | let _conn = connector\n | _____________________^\n18 | | .call(\"https://hyper.rs\".parse().unwrap())\n19 | | .await\n | |__________________^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":718,"byte_start":635,"column_end":19,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":19,"line_start":17,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":30,"highlight_start":21,"text":" let _conn = connector"},{"highlight_end":55,"highlight_start":1,"text":" .call(\"https://hyper.rs\".parse().unwrap())"},{"highlight_end":19,"highlight_start":1,"text":" .await"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:24:27\n |\n24 | let (mut io, _) = tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":842,"byte_start":824,"column_end":45,"column_start":27,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":24,"line_start":24,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":27,"text":" let (mut io, _) = tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:26:17\n |\n26 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":912,"byte_start":910,"column_end":19,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":26,"line_start":26,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":19,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:26:17\n |\n26 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":933,"byte_start":910,"column_end":40,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":26,"line_start":26,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:31:9\n |\n31 | / io.write_all(b\"HTTP/1.1 200 OK\\r\\n\\r\\n\")\n32 | | .await\n | |__________________^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":1148,"byte_start":1089,"column_end":19,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":32,"line_start":31,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" io.write_all(b\"HTTP/1.1 200 OK\\r\\n\\r\\n\")"},{"highlight_end":19,"highlight_start":1,"text":" .await"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:43:21\n |\n43 | let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":1392,"byte_start":1354,"column_end":59,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":43,"line_start":43,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":59,"highlight_start":21,"text":" let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:47:22\n |\n47 | let target_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":1609,"byte_start":1571,"column_end":60,"column_start":22,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":47,"line_start":47,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":60,"highlight_start":22,"text":" let target_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:58:20\n |\n58 | let conn = connector.call(target_dst).await.expect(\"tunnel\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2082,"byte_start":2050,"column_end":52,"column_start":20,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":58,"line_start":58,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":52,"highlight_start":20,"text":" let conn = connector.call(target_dst).await.expect(\"tunnel\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:61:9\n |\n61 | tcp.write_all(b\"Hello World!\").await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2187,"byte_start":2151,"column_end":45,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":61,"line_start":61,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":9,"text":" tcp.write_all(b\"Hello World!\").await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:64:17\n |\n64 | let n = tcp.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2281,"byte_start":2257,"column_end":41,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":64,"line_start":64,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":41,"highlight_start":17,"text":" let n = tcp.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:74:34\n |\n74 | let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2635,"byte_start":2611,"column_end":58,"column_start":34,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":74,"line_start":74,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":58,"highlight_start":34,"text":" let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:78:17\n |\n78 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2745,"byte_start":2736,"column_end":26,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":78,"line_start":78,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":26,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:78:17\n |\n78 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2766,"byte_start":2736,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":78,"line_start":78,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:81:9\n |\n81 | to_client.write_all(&[0x05, 0x00]).await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":2885,"byte_start":2845,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":81,"line_start":81,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x05, 0x00]).await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:87:17\n |\n87 | let n = to_client.read(&mut buf).await.expect(\"read 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":3172,"byte_start":3142,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":87,"line_start":87,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:90:29\n |\n90 | let mut to_target = TcpStream::connect(target_addr).await.expect(\"connect\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":3297,"byte_start":3260,"column_end":66,"column_start":29,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":90,"line_start":90,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":66,"highlight_start":29,"text":" let mut to_target = TcpStream::connect(target_addr).await.expect(\"connect\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:93:9\n |\n93 | to_client.write_all(&message).await.expect(\"write 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":3437,"byte_start":3402,"column_end":44,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":93,"line_start":93,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":44,"highlight_start":9,"text":" to_client.write_all(&message).await.expect(\"write 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:109:27\n |\n109 | let (mut io, _) = target_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":3951,"byte_start":3926,"column_end":52,"column_start":27,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":109,"line_start":109,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":52,"highlight_start":27,"text":" let (mut io, _) = target_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:112:17\n |\n112 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":4022,"byte_start":4020,"column_end":19,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":112,"line_start":112,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":19,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:112:17\n |\n112 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":4043,"byte_start":4020,"column_end":40,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":112,"line_start":112,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:115:9\n |\n115 | io.write_all(b\"Goodbye!\").await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":4150,"byte_start":4119,"column_end":40,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":115,"line_start":115,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":9,"text":" io.write_all(b\"Goodbye!\").await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:126:21\n |\n126 | let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":4429,"byte_start":4391,"column_end":59,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":126,"line_start":126,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":59,"highlight_start":21,"text":" let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:130:22\n |\n130 | let target_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":4646,"byte_start":4608,"column_end":60,"column_start":22,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":130,"line_start":130,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":60,"highlight_start":22,"text":" let target_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:142:20\n |\n142 | let conn = connector.call(target_dst).await.expect(\"tunnel\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5167,"byte_start":5135,"column_end":52,"column_start":20,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":142,"line_start":142,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":52,"highlight_start":20,"text":" let conn = connector.call(target_dst).await.expect(\"tunnel\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:145:9\n |\n145 | tcp.write_all(b\"Hello World!\").await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5272,"byte_start":5236,"column_end":45,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":145,"line_start":145,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":9,"text":" tcp.write_all(b\"Hello World!\").await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:148:17\n |\n148 | let n = tcp.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5366,"byte_start":5342,"column_end":41,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":148,"line_start":148,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":41,"highlight_start":17,"text":" let n = tcp.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:158:34\n |\n158 | let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5720,"byte_start":5696,"column_end":58,"column_start":34,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":158,"line_start":158,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":58,"highlight_start":34,"text":" let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:162:17\n |\n162 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5830,"byte_start":5821,"column_end":26,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":162,"line_start":162,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":26,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:162:17\n |\n162 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5851,"byte_start":5821,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":162,"line_start":162,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:165:9\n |\n165 | to_client.write_all(&[0x05, 0x02]).await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":5970,"byte_start":5930,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":165,"line_start":165,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x05, 0x02]).await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:168:17\n |\n168 | let n = to_client.read(&mut buf).await.expect(\"read 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":6061,"byte_start":6031,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":168,"line_start":168,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:174:9\n |\n174 | to_client.write_all(&[0x01, 0x00]).await.expect(\"write 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":6331,"byte_start":6291,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":174,"line_start":174,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x01, 0x00]).await.expect(\"write 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:177:17\n |\n177 | let n = to_client.read(&mut buf).await.expect(\"read 3\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":6425,"byte_start":6395,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":177,"line_start":177,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 3\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:183:29\n |\n183 | let mut to_target = TcpStream::connect(target_addr).await.expect(\"connect\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":6744,"byte_start":6707,"column_end":66,"column_start":29,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":183,"line_start":183,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":66,"highlight_start":29,"text":" let mut to_target = TcpStream::connect(target_addr).await.expect(\"connect\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:186:9\n |\n186 | to_client.write_all(&message).await.expect(\"write 3\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":6884,"byte_start":6849,"column_end":44,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":186,"line_start":186,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":44,"highlight_start":9,"text":" to_client.write_all(&message).await.expect(\"write 3\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:202:27\n |\n202 | let (mut io, _) = target_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":7398,"byte_start":7373,"column_end":52,"column_start":27,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":202,"line_start":202,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":52,"highlight_start":27,"text":" let (mut io, _) = target_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:205:17\n |\n205 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":7469,"byte_start":7467,"column_end":19,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":205,"line_start":205,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":19,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:205:17\n |\n205 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":7490,"byte_start":7467,"column_end":40,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":205,"line_start":205,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:208:9\n |\n208 | io.write_all(b\"Goodbye!\").await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":7597,"byte_start":7566,"column_end":40,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":208,"line_start":208,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":9,"text":" io.write_all(b\"Goodbye!\").await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:219:21\n |\n219 | let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":7894,"byte_start":7856,"column_end":59,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":219,"line_start":219,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":59,"highlight_start":21,"text":" let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:232:21\n |\n232 | let _conn = connector\n | _____________________^\n233 | | .call(\"https://hyper.rs:443\".try_into().unwrap())\n234 | | .await\n | |__________________^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":8499,"byte_start":8409,"column_end":19,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":234,"line_start":232,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":30,"highlight_start":21,"text":" let _conn = connector"},{"highlight_end":62,"highlight_start":1,"text":" .call(\"https://hyper.rs:443\".try_into().unwrap())"},{"highlight_end":19,"highlight_start":1,"text":" .await"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:244:34\n |\n244 | let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":8822,"byte_start":8798,"column_end":58,"column_start":34,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":244,"line_start":244,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":58,"highlight_start":34,"text":" let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:248:17\n |\n248 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":8932,"byte_start":8923,"column_end":26,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":248,"line_start":248,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":26,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:248:17\n |\n248 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":8953,"byte_start":8923,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":248,"line_start":248,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:251:9\n |\n251 | to_client.write_all(&[0x05, 0x02]).await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":9072,"byte_start":9032,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":251,"line_start":251,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x05, 0x02]).await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:254:17\n |\n254 | let n = to_client.read(&mut buf).await.expect(\"read 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":9163,"byte_start":9133,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":254,"line_start":254,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:260:9\n |\n260 | to_client.write_all(&[0x01, 0x00]).await.expect(\"write 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":9433,"byte_start":9393,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":260,"line_start":260,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x01, 0x00]).await.expect(\"write 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:263:17\n |\n263 | let n = to_client.read(&mut buf).await.expect(\"read 3\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":9527,"byte_start":9497,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":263,"line_start":263,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 3\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:275:9\n |\n275 | to_client.write_all(&message).await.expect(\"write 3\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":10003,"byte_start":9968,"column_end":44,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":275,"line_start":275,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":44,"highlight_start":9,"text":" to_client.write_all(&message).await.expect(\"write 3\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:285:21\n |\n285 | let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":10263,"byte_start":10225,"column_end":59,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":285,"line_start":285,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":59,"highlight_start":21,"text":" let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:298:21\n |\n298 | let _conn = connector\n | _____________________^\n299 | | .call(\"https://hyper.rs:443\".try_into().unwrap())\n300 | | .await\n | |__________________^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":10867,"byte_start":10777,"column_end":19,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":300,"line_start":298,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":30,"highlight_start":21,"text":" let _conn = connector"},{"highlight_end":62,"highlight_start":1,"text":" .call(\"https://hyper.rs:443\".try_into().unwrap())"},{"highlight_end":19,"highlight_start":1,"text":" .await"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:310:34\n |\n310 | let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11190,"byte_start":11166,"column_end":58,"column_start":34,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":310,"line_start":310,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":58,"highlight_start":34,"text":" let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:314:17\n |\n314 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11300,"byte_start":11291,"column_end":26,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":314,"line_start":314,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":26,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:314:17\n |\n314 | let n = to_client.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11321,"byte_start":11291,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":314,"line_start":314,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:317:9\n |\n317 | to_client.write_all(&[0x05, 0x02]).await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11440,"byte_start":11400,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":317,"line_start":317,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x05, 0x02]).await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:320:17\n |\n320 | let n = to_client.read(&mut buf).await.expect(\"read 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11531,"byte_start":11501,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":320,"line_start":320,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:326:9\n |\n326 | to_client.write_all(&[0x01, 0x00]).await.expect(\"write 2\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11801,"byte_start":11761,"column_end":49,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":326,"line_start":326,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":9,"text":" to_client.write_all(&[0x01, 0x00]).await.expect(\"write 2\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:329:17\n |\n329 | let n = to_client.read(&mut buf).await.expect(\"read 3\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":11895,"byte_start":11865,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":329,"line_start":329,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read 3\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:336:9\n |\n336 | to_client.write_all(&message).await.expect(\"write 3\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":12231,"byte_start":12196,"column_end":44,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":336,"line_start":336,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":44,"highlight_start":9,"text":" to_client.write_all(&message).await.expect(\"write 3\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:346:21\n |\n346 | let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":12462,"byte_start":12424,"column_end":59,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":346,"line_start":346,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":59,"highlight_start":21,"text":" let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:350:22\n |\n350 | let target_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":12679,"byte_start":12641,"column_end":60,"column_start":22,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":350,"line_start":350,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":60,"highlight_start":22,"text":" let target_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:361:20\n |\n361 | let conn = connector.call(target_dst).await.expect(\"tunnel\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":13152,"byte_start":13120,"column_end":52,"column_start":20,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":361,"line_start":361,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":52,"highlight_start":20,"text":" let conn = connector.call(target_dst).await.expect(\"tunnel\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:364:9\n |\n364 | tcp.write_all(b\"Hello World!\").await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":13257,"byte_start":13221,"column_end":45,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":364,"line_start":364,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":9,"text":" tcp.write_all(b\"Hello World!\").await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:367:17\n |\n367 | let n = tcp.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":13351,"byte_start":13327,"column_end":41,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":367,"line_start":367,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":41,"highlight_start":17,"text":" let n = tcp.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:377:34\n |\n377 | let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":13705,"byte_start":13681,"column_end":58,"column_start":34,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":377,"line_start":377,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":58,"highlight_start":34,"text":" let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:383:17\n |\n383 | let n = to_client.read(&mut buf).await.expect(\"read\");\n | ^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":13959,"byte_start":13950,"column_end":26,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":383,"line_start":383,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":26,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:383:17\n |\n383 | let n = to_client.read(&mut buf).await.expect(\"read\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":13980,"byte_start":13950,"column_end":47,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":383,"line_start":383,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":47,"highlight_start":17,"text":" let n = to_client.read(&mut buf).await.expect(\"read\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:386:29\n |\n386 | let mut to_target = TcpStream::connect(target_addr).await.expect(\"connect\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":14103,"byte_start":14066,"column_end":66,"column_start":29,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":386,"line_start":386,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":66,"highlight_start":29,"text":" let mut to_target = TcpStream::connect(target_addr).await.expect(\"connect\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:389:9\n |\n389 | to_client.write_all(&message).await.expect(\"write\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":14226,"byte_start":14191,"column_end":44,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":389,"line_start":389,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":44,"highlight_start":9,"text":" to_client.write_all(&message).await.expect(\"write\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:405:27\n |\n405 | let (mut io, _) = target_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":14738,"byte_start":14713,"column_end":52,"column_start":27,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":405,"line_start":405,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":52,"highlight_start":27,"text":" let (mut io, _) = target_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:408:17\n |\n408 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":14809,"byte_start":14807,"column_end":19,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":408,"line_start":408,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":19,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:408:17\n |\n408 | let n = io.read(&mut buf).await.expect(\"read 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":14830,"byte_start":14807,"column_end":40,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":408,"line_start":408,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":17,"text":" let n = io.read(&mut buf).await.expect(\"read 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:411:9\n |\n411 | io.write_all(b\"Goodbye!\").await.expect(\"write 1\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":14937,"byte_start":14906,"column_end":40,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":411,"line_start":411,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":40,"highlight_start":9,"text":" io.write_all(b\"Goodbye!\").await.expect(\"write 1\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:422:21\n |\n422 | let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":15217,"byte_start":15179,"column_end":59,"column_start":21,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":422,"line_start":422,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":59,"highlight_start":21,"text":" let proxy_tcp = TcpListener::bind(\"127.0.0.1:0\").await.expect(\"bind\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:438:17\n |\n438 | let _ = connector.call(target_dst).await.expect(\"tunnel\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":15920,"byte_start":15888,"column_end":49,"column_start":17,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":438,"line_start":438,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":49,"highlight_start":17,"text":" let _ = connector.call(target_dst).await.expect(\"tunnel\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:447:34\n |\n447 | let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":16230,"byte_start":16206,"column_end":58,"column_start":34,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":447,"line_start":447,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":58,"highlight_start":34,"text":" let (mut to_client, _) = proxy_tcp.accept().await.expect(\"accept\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:464:9\n |\n464 | to_client.read_exact(&mut buf).await.expect(\"read\");\n | ^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":16751,"byte_start":16742,"column_end":18,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":464,"line_start":464,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":18,"highlight_start":9,"text":" to_client.read_exact(&mut buf).await.expect(\"read\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:464:9\n |\n464 | to_client.read_exact(&mut buf).await.expect(\"read\");\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":16778,"byte_start":16742,"column_end":45,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":464,"line_start":464,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":45,"highlight_start":9,"text":" to_client.read_exact(&mut buf).await.expect(\"read\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:468:9\n |\n468 | / to_client\n469 | | .write_all(response.as_slice())\n470 | | .await\n | |__________________^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":16965,"byte_start":16893,"column_end":19,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":470,"line_start":468,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":18,"highlight_start":9,"text":" to_client"},{"highlight_end":44,"highlight_start":1,"text":" .write_all(response.as_slice())"},{"highlight_end":19,"highlight_start":1,"text":" .await"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"error[E0282]: type annotations needed\n --> tests/proxy.rs:473:9\n |\n473 | to_client.flush().await.expect(\"flush\");\n | ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type\n\n","$message_type":"diagnostic","children":[],"level":"error","message":"type annotations needed","spans":[{"byte_end":17028,"byte_start":17005,"column_end":32,"column_start":9,"expansion":null,"file_name":"tests/proxy.rs","is_primary":true,"label":"cannot infer type","line_end":473,"line_start":473,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":32,"highlight_start":9,"text":" to_client.flush().await.expect(\"flush\");"}]}],"code":{"code":"E0282","explanation":"The compiler could not infer a type and asked for a type annotation.\n\nErroneous code example:\n\n```compile_fail,E0282\nlet x = Vec::new();\n```\n\nThis error indicates that type inference did not result in one unique possible\ntype, and extra information is required. In most cases this can be provided\nby adding a type annotation. Sometimes you need to specify a generic type\nparameter manually.\n\nIn the example above, type `Vec` has a type parameter `T`. When calling\n`Vec::new`, barring any other later usage of the variable `x` that allows the\ncompiler to infer what type `T` is, the compiler needs to be told what it is.\n\nThe type can be specified on the variable:\n\n```\nlet x: Vec = Vec::new();\n```\n\nThe type can also be specified in the path of the expression:\n\n```\nlet x = Vec::::new();\n```\n\nIn cases with more complex types, it is not necessary to annotate the full\ntype. Once the ambiguity is resolved, the compiler can infer the rest:\n\n```\nlet x: Vec<_> = \"hello\".chars().rev().collect();\n```\n\nAnother way to provide the compiler with enough information, is to specify the\ngeneric type parameter:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nAgain, you need not specify the full type if the compiler can infer it:\n\n```\nlet x = \"hello\".chars().rev().collect::>();\n```\n\nApart from a method or function with a generic type parameter, this error can\noccur when a type parameter of a struct or trait cannot be inferred. In that\ncase it is not always possible to use a type annotation, because all candidates\nhave the same return type. For instance:\n\n```compile_fail,E0282\nstruct Foo {\n num: T,\n}\n\nimpl Foo {\n fn bar() -> i32 {\n 0\n }\n\n fn baz() {\n let number = Foo::bar();\n }\n}\n```\n\nThis will fail because the compiler does not know which instance of `Foo` to\ncall `bar` on. Change `Foo::bar()` to `Foo::::bar()` to resolve the error.\n"}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"Some errors have detailed explanations: E0282, E0432, E0433.\n","$message_type":"diagnostic","children":[],"level":"failure-note","message":"Some errors have detailed explanations: E0282, E0432, E0433.","spans":[],"code":null}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"proxy","src_path":"/home/sean/code/hyper-util/tests/proxy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"rendered":"For more information about an error, try `rustc --explain E0282`.\n","$message_type":"diagnostic","children":[],"level":"failure-note","message":"For more information about an error, try `rustc --explain E0282`.","spans":[],"code":null}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/home/sean/code/hyper-util/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"rendered":"warning: function `poll_fn` is never used\n --> src/common/future.rs:8:15\n |\n8 | pub(crate) fn poll_fn(f: F) -> PollFn\n | ^^^^^^^\n |\n = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default\n\n","$message_type":"diagnostic","children":[{"children":[],"code":null,"level":"note","message":"`#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default","rendered":null,"spans":[]}],"level":"warning","message":"function `poll_fn` is never used","spans":[{"byte_end":160,"byte_start":153,"column_end":22,"column_start":15,"expansion":null,"file_name":"src/common/future.rs","is_primary":true,"label":null,"line_end":8,"line_start":8,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":22,"highlight_start":15,"text":"pub(crate) fn poll_fn(f: F) -> PollFn"}]}],"code":{"code":"dead_code","explanation":null}}} +{"reason":"compiler-message","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/home/sean/code/hyper-util/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"rendered":"warning: struct `PollFn` is never constructed\n --> src/common/future.rs:15:19\n |\n15 | pub(crate) struct PollFn {\n | ^^^^^^\n\n","$message_type":"diagnostic","children":[],"level":"warning","message":"struct `PollFn` is never constructed","spans":[{"byte_end":281,"byte_start":275,"column_end":25,"column_start":19,"expansion":null,"file_name":"src/common/future.rs","is_primary":true,"label":null,"line_end":15,"line_start":15,"suggested_replacement":null,"suggestion_applicability":null,"text":[{"highlight_end":25,"highlight_start":19,"text":"pub(crate) struct PollFn {"}]}],"code":{"code":"dead_code","explanation":null}}} +{"reason":"compiler-artifact","package_id":"path+file:///home/sean/code/hyper-util#0.1.17","manifest_path":"/home/sean/code/hyper-util/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/home/sean/code/hyper-util/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default"],"filenames":["/home/sean/code/hyper-util/target/debug/deps/libhyper_util-554beb56bd5da6e8.rmeta"],"executable":null,"fresh":true} +{"reason":"build-finished","success":false}