[INFO] cloning repository https://github.com/mattnappo/hypernet [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mattnappo/hypernet" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattnappo%2Fhypernet", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattnappo%2Fhypernet'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f465bfc4b94fa94c1469da3d01f21feb07c69197 [INFO] checking mattnappo/hypernet against try#95813608313bff49cfc1afc393a946a3c085b772 for pr-148946 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattnappo%2Fhypernet" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/mattnappo/hypernet [INFO] finished tweaking git repo https://github.com/mattnappo/hypernet [INFO] tweaked toml for git repo https://github.com/mattnappo/hypernet written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mattnappo/hypernet on toolchain 95813608313bff49cfc1afc393a946a3c085b772 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/mattnappo/hypernet already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 293362a0beeb1f442430e9a6fbc742ae8a9025f2d5cd6c3e946a3e6420068d2b [INFO] running `Command { std: "docker" "start" "-a" "293362a0beeb1f442430e9a6fbc742ae8a9025f2d5cd6c3e946a3e6420068d2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "293362a0beeb1f442430e9a6fbc742ae8a9025f2d5cd6c3e946a3e6420068d2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "293362a0beeb1f442430e9a6fbc742ae8a9025f2d5cd6c3e946a3e6420068d2b", kill_on_drop: false }` [INFO] [stdout] 293362a0beeb1f442430e9a6fbc742ae8a9025f2d5cd6c3e946a3e6420068d2b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f712062b3228babad616328ef2819ef5b9f623542ce08eac82346c55c28b574 [INFO] running `Command { std: "docker" "start" "-a" "4f712062b3228babad616328ef2819ef5b9f623542ce08eac82346c55c28b574", kill_on_drop: false }` [INFO] [stderr] Compiling futures-core v0.3.29 [INFO] [stderr] Checking futures-io v0.3.29 [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Checking value-bag v1.4.2 [INFO] [stderr] Compiling polling v2.8.0 [INFO] [stderr] Compiling futures-task v0.3.29 [INFO] [stderr] Compiling futures-channel v0.3.29 [INFO] [stderr] Compiling async-io v1.13.0 [INFO] [stderr] Checking async-task v4.5.0 [INFO] [stderr] Checking futures-sink v0.3.29 [INFO] [stderr] Compiling futures-util v0.3.29 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Compiling syn v2.0.38 [INFO] [stderr] Compiling serde v1.0.190 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking piper v0.2.1 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking kv-log-macro v1.0.7 [INFO] [stderr] Checking concurrent-queue v2.3.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking io-lifetimes v1.0.11 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Checking rustix v0.37.27 [INFO] [stderr] Checking async-executor v1.6.0 [INFO] [stderr] Checking blocking v1.4.1 [INFO] [stderr] Checking async-global-executor v2.3.1 [INFO] [stderr] Compiling async-attributes v1.1.2 [INFO] [stderr] Checking async-std v1.12.0 [INFO] [stderr] Compiling futures-macro v0.3.29 [INFO] [stderr] Compiling serde_derive v1.0.190 [INFO] [stderr] Checking futures-executor v0.3.29 [INFO] [stderr] Checking futures v0.3.29 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking hypernet v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `async_std::task::spawn` [INFO] [stdout] --> src/lib.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use async_std::task::spawn; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/lib.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | sync::{Arc, Mutex}, [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_std::task::spawn` [INFO] [stdout] --> src/lib.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use async_std::task::spawn; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/lib.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | sync::{Arc, Mutex}, [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/lib.rs:233:14 [INFO] [stdout] | [INFO] [stdout] 233 | .map(|(id, identity)| async move { [INFO] [stdout] | ^^^ multiple `map` found [INFO] [stdout] | [INFO] [stdout] = note: candidate #1 is defined in an impl of the trait `async_std::stream::StreamExt` for the type `T` [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `futures::StreamExt` for the type `T` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 232 ~ let values = async_std::stream::StreamExt::map(stream::iter(self.addrs.clone()), |(id, identity)| async move { [INFO] [stdout] 233 + // Connect to node [INFO] [stdout] 234 + let mut stream = TcpStream::connect(identity.address).await.unwrap(); [INFO] [stdout] 235 + [INFO] [stdout] 236 + // Write request [INFO] [stdout] 237 + stream [INFO] [stdout] 238 + .write(&bincode::serialize(&Request::Value).unwrap()) [INFO] [stdout] 239 + .await [INFO] [stdout] 240 + .unwrap(); [INFO] [stdout] 241 + [INFO] [stdout] 242 + // Read response [INFO] [stdout] 243 + let mut buf = [0u8; 1024]; [INFO] [stdout] 244 + stream.read(&mut buf).await.unwrap(); [INFO] [stdout] 245 + let res: Request = bincode::deserialize(&buf).unwrap(); [INFO] [stdout] 246 + match res { [INFO] [stdout] 247 + Request::Message(m) => (id.clone(), m), [INFO] [stdout] 248 + _ => unreachable!(), [INFO] [stdout] 249 + } [INFO] [stdout] 250 + }) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 232 ~ let values = futures::StreamExt::map(stream::iter(self.addrs.clone()), |(id, identity)| async move { [INFO] [stdout] 233 + // Connect to node [INFO] [stdout] 234 + let mut stream = TcpStream::connect(identity.address).await.unwrap(); [INFO] [stdout] 235 + [INFO] [stdout] 236 + // Write request [INFO] [stdout] 237 + stream [INFO] [stdout] 238 + .write(&bincode::serialize(&Request::Value).unwrap()) [INFO] [stdout] 239 + .await [INFO] [stdout] 240 + .unwrap(); [INFO] [stdout] 241 + [INFO] [stdout] 242 + // Read response [INFO] [stdout] 243 + let mut buf = [0u8; 1024]; [INFO] [stdout] 244 + stream.read(&mut buf).await.unwrap(); [INFO] [stdout] 245 + let res: Request = bincode::deserialize(&buf).unwrap(); [INFO] [stdout] 246 + match res { [INFO] [stdout] 247 + Request::Message(m) => (id.clone(), m), [INFO] [stdout] 248 + _ => unreachable!(), [INFO] [stdout] 249 + } [INFO] [stdout] 250 + }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/lib.rs:235:34 [INFO] [stdout] | [INFO] [stdout] 235 | let mut stream = TcpStream::connect(identity.address).await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/lib.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | / stream [INFO] [stdout] 239 | | .write(&bincode::serialize(&Request::Value).unwrap()) [INFO] [stdout] 240 | | .await [INFO] [stdout] | |__________________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/lib.rs:245:17 [INFO] [stdout] | [INFO] [stdout] 245 | stream.read(&mut buf).await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed for `(_, {type error})` [INFO] [stdout] --> src/lib.rs:233:19 [INFO] [stdout] | [INFO] [stdout] 233 | .map(|(id, identity)| async move { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | Request::Message(m) => (id.clone(), m), [INFO] [stdout] | -- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type, where the placeholders `_` are specified [INFO] [stdout] | [INFO] [stdout] 233 | .map(|(id, identity): (_, _)| async move { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/lib.rs:233:14 [INFO] [stdout] | [INFO] [stdout] 233 | .map(|(id, identity)| async move { [INFO] [stdout] | ^^^ multiple `map` found [INFO] [stdout] | [INFO] [stdout] = note: candidate #1 is defined in an impl of the trait `async_std::stream::StreamExt` for the type `T` [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `futures::StreamExt` for the type `T` [INFO] [stdout] help: disambiguate the method for candidate #1 [INFO] [stdout] | [INFO] [stdout] 232 ~ let values = async_std::stream::StreamExt::map(stream::iter(self.addrs.clone()), |(id, identity)| async move { [INFO] [stdout] 233 + // Connect to node [INFO] [stdout] 234 + let mut stream = TcpStream::connect(identity.address).await.unwrap(); [INFO] [stdout] 235 + [INFO] [stdout] 236 + // Write request [INFO] [stdout] 237 + stream [INFO] [stdout] 238 + .write(&bincode::serialize(&Request::Value).unwrap()) [INFO] [stdout] 239 + .await [INFO] [stdout] 240 + .unwrap(); [INFO] [stdout] 241 + [INFO] [stdout] 242 + // Read response [INFO] [stdout] 243 + let mut buf = [0u8; 1024]; [INFO] [stdout] 244 + stream.read(&mut buf).await.unwrap(); [INFO] [stdout] 245 + let res: Request = bincode::deserialize(&buf).unwrap(); [INFO] [stdout] 246 + match res { [INFO] [stdout] 247 + Request::Message(m) => (id.clone(), m), [INFO] [stdout] 248 + _ => unreachable!(), [INFO] [stdout] 249 + } [INFO] [stdout] 250 + }) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the method for candidate #2 [INFO] [stdout] | [INFO] [stdout] 232 ~ let values = futures::StreamExt::map(stream::iter(self.addrs.clone()), |(id, identity)| async move { [INFO] [stdout] 233 + // Connect to node [INFO] [stdout] 234 + let mut stream = TcpStream::connect(identity.address).await.unwrap(); [INFO] [stdout] 235 + [INFO] [stdout] 236 + // Write request [INFO] [stdout] 237 + stream [INFO] [stdout] 238 + .write(&bincode::serialize(&Request::Value).unwrap()) [INFO] [stdout] 239 + .await [INFO] [stdout] 240 + .unwrap(); [INFO] [stdout] 241 + [INFO] [stdout] 242 + // Read response [INFO] [stdout] 243 + let mut buf = [0u8; 1024]; [INFO] [stdout] 244 + stream.read(&mut buf).await.unwrap(); [INFO] [stdout] 245 + let res: Request = bincode::deserialize(&buf).unwrap(); [INFO] [stdout] 246 + match res { [INFO] [stdout] 247 + Request::Message(m) => (id.clone(), m), [INFO] [stdout] 248 + _ => unreachable!(), [INFO] [stdout] 249 + } [INFO] [stdout] 250 + }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/lib.rs:235:34 [INFO] [stdout] | [INFO] [stdout] 235 | let mut stream = TcpStream::connect(identity.address).await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/lib.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | / stream [INFO] [stdout] 239 | | .write(&bincode::serialize(&Request::Value).unwrap()) [INFO] [stdout] 240 | | .await [INFO] [stdout] | |__________________________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/lib.rs:245:17 [INFO] [stdout] | [INFO] [stdout] 245 | stream.read(&mut buf).await.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed for `(_, {type error})` [INFO] [stdout] --> src/lib.rs:233:19 [INFO] [stdout] | [INFO] [stdout] 233 | .map(|(id, identity)| async move { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | Request::Message(m) => (id.clone(), m), [INFO] [stdout] | -- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type, where the placeholders `_` are specified [INFO] [stdout] | [INFO] [stdout] 233 | .map(|(id, identity): (_, _)| async move { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/lib.rs:134:55 [INFO] [stdout] | [INFO] [stdout] 134 | async fn handle(mut stream: TcpStream, data: u32, d: u16) -> Result<(), std::io::Error> { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/lib.rs:134:55 [INFO] [stdout] | [INFO] [stdout] 134 | async fn handle(mut stream: TcpStream, data: u32, d: u16) -> Result<(), std::io::Error> { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from` [INFO] [stdout] --> src/lib.rs:271:32 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn broadcast(&self, from: u32, value: T) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/lib.rs:271:43 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn broadcast(&self, from: u32, value: T) {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from` [INFO] [stdout] --> src/lib.rs:271:32 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn broadcast(&self, from: u32, value: T) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/lib.rs:271:43 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn broadcast(&self, from: u32, value: T) {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0034, E0282. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0034`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0034, E0282. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0034`. [INFO] [stdout] [INFO] [stderr] error: could not compile `hypernet` (lib) due to 5 previous errors; 5 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `hypernet` (lib test) due to 5 previous errors; 5 warnings emitted [INFO] running `Command { std: "docker" "inspect" "4f712062b3228babad616328ef2819ef5b9f623542ce08eac82346c55c28b574", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f712062b3228babad616328ef2819ef5b9f623542ce08eac82346c55c28b574", kill_on_drop: false }` [INFO] [stdout] 4f712062b3228babad616328ef2819ef5b9f623542ce08eac82346c55c28b574