[INFO] cloning repository https://github.com/xutianyi1999/t-proxy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xutianyi1999/t-proxy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxutianyi1999%2Ft-proxy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxutianyi1999%2Ft-proxy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] feddde1f9cf8739ba24de0c247e433a1e195b0a7 [INFO] checking xutianyi1999/t-proxy against try#353a0a223066e9f46a1d935f2271a26c3c5002bb for pr-75180 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxutianyi1999%2Ft-proxy" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/xutianyi1999/t-proxy on toolchain 353a0a223066e9f46a1d935f2271a26c3c5002bb [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+353a0a223066e9f46a1d935f2271a26c3c5002bb" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/xutianyi1999/t-proxy [INFO] finished tweaking git repo https://github.com/xutianyi1999/t-proxy [INFO] tweaked toml for git repo https://github.com/xutianyi1999/t-proxy written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/xutianyi1999/t-proxy already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+353a0a223066e9f46a1d935f2271a26c3c5002bb" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded nanoid v0.3.0 [INFO] [stderr] Downloaded dashmap v3.11.10 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+353a0a223066e9f46a1d935f2271a26c3c5002bb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 70e717d06e9e81f82e73931a89c55f923f19e7d54fd5de83db71f8eb699ba304 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "70e717d06e9e81f82e73931a89c55f923f19e7d54fd5de83db71f8eb699ba304", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "70e717d06e9e81f82e73931a89c55f923f19e7d54fd5de83db71f8eb699ba304", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "70e717d06e9e81f82e73931a89c55f923f19e7d54fd5de83db71f8eb699ba304", kill_on_drop: false }` [INFO] [stdout] 70e717d06e9e81f82e73931a89c55f923f19e7d54fd5de83db71f8eb699ba304 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+353a0a223066e9f46a1d935f2271a26c3c5002bb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] f533935775898a5e8b7b69f267e4c436779cde11f24445fb687edc018809fcd9 [INFO] running `Command { std: "docker" "start" "-a" "f533935775898a5e8b7b69f267e4c436779cde11f24445fb687edc018809fcd9", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling autocfg v0.1.7 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling syn v1.0.33 [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Checking bytes v0.5.5 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking pin-project-lite v0.1.7 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.34 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Compiling const-random-macro v0.1.8 [INFO] [stderr] Checking mio v0.6.22 [INFO] [stderr] Checking const-random v0.1.8 [INFO] [stderr] Checking ahash v0.3.8 [INFO] [stderr] Checking nanoid v0.3.0 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Checking dashmap v3.11.10 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Checking tokio v0.2.21 [INFO] [stderr] Checking t-proxy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: expected one of `,`, `.`, `?`, `}`, or an operator, found `;` [INFO] [stdout] --> src/message.rs:27:55 [INFO] [stdout] | [INFO] [stdout] 27 | Msg::DATA(id, data) => encode_data_msg(&id, &data); [INFO] [stdout] | -- ^ expected one of `,`, `.`, `?`, `}`, or an operator [INFO] [stdout] | | [INFO] [stdout] | while parsing the `match` arm starting here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected one of `,`, `.`, `?`, `}`, or an operator, found `;` [INFO] [stdout] --> src/message.rs:27:55 [INFO] [stdout] | [INFO] [stdout] 27 | Msg::DATA(id, data) => encode_data_msg(&id, &data); [INFO] [stdout] | -- ^ expected one of `,`, `.`, `?`, `}`, or an operator [INFO] [stdout] | | [INFO] [stdout] | while parsing the `match` arm starting here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `rx` in this scope [INFO] [stdout] --> src/message.rs:81:3 [INFO] [stdout] | [INFO] [stdout] 81 | rx.read_exact(&mut msg).await?; [INFO] [stdout] | ^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dashmap::DashMap` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use dashmap::DashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::net::TcpStream` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::net::TcpStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::prelude::*` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use tokio::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::Mutex` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> src/client/mod.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/client/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLock` [INFO] [stdout] --> src/client/mod.rs:4:29 [INFO] [stdout] | [INFO] [stdout] 4 | use std::sync::{Arc, Mutex, RwLock}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicU8`, `Ordering` [INFO] [stdout] --> src/client/mod.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::atomic::{AtomicU8, Ordering}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DashMap`, `DashSet`, `Map` [INFO] [stdout] --> src/client/mod.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | use dashmap::{DashMap, DashSet, Map}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stdout] --> src/client/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> src/client/client_mux.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryInto` [INFO] [stdout] --> src/client/client_mux.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::convert::TryInto; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IpAddr`, `Shutdown` [INFO] [stdout] --> src/client/client_mux.rs:3:16 [INFO] [stdout] | [INFO] [stdout] 3 | use std::net::{IpAddr, Shutdown}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/client/client_mux.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/client_mux.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::macros::support::Future` [INFO] [stdout] --> src/client/client_mux.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::macros::support::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TcpListener`, `TcpStream` [INFO] [stdout] --> src/client/client_mux.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | use tokio::net::{TcpListener, TcpStream}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stdout] --> src/client/client_mux.rs:12:54 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::net::tcp::{OwnedReadHalf, OwnedWriteHalf, ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MutexGuard` [INFO] [stdout] --> src/client/client_mux.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::sync::{Mutex, MutexGuard}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/client_proxy.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufMut` [INFO] [stdout] --> src/client/client_proxy.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::Mutex` [INFO] [stdout] --> src/client/client_proxy.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use tokio::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::client::client_mux::ClientMuxChannel` [INFO] [stdout] --> src/client/client_proxy.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::client::client_mux::ClientMuxChannel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `create_channel_id` [INFO] [stdout] --> src/client/client_proxy.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::commons::{Address, create_channel_id}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/server/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Write` [INFO] [stdout] --> src/server/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fmt::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OwnedReadHalf` [INFO] [stdout] --> src/server/mod.rs:9:23 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::net::tcp::{OwnedReadHalf, OwnedWriteHalf}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::IpAddr` [INFO] [stdout] --> src/message.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::net::IpAddr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/message.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bytes::buf::BufExt` [INFO] [stdout] --> src/message.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use bytes::buf::BufExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `rx` in this scope [INFO] [stdout] --> src/message.rs:81:3 [INFO] [stdout] | [INFO] [stdout] 81 | rx.read_exact(&mut msg).await?; [INFO] [stdout] | ^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dashmap::DashMap` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use dashmap::DashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::net::TcpStream` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::net::TcpStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::prelude::*` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use tokio::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::Mutex` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> src/client/mod.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/client/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLock` [INFO] [stdout] --> src/client/mod.rs:4:29 [INFO] [stdout] | [INFO] [stdout] 4 | use std::sync::{Arc, Mutex, RwLock}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicU8`, `Ordering` [INFO] [stdout] --> src/client/mod.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::atomic::{AtomicU8, Ordering}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DashMap`, `DashSet`, `Map` [INFO] [stdout] --> src/client/mod.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | use dashmap::{DashMap, DashSet, Map}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stdout] --> src/client/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> src/client/client_mux.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryInto` [INFO] [stdout] --> src/client/client_mux.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::convert::TryInto; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IpAddr`, `Shutdown` [INFO] [stdout] --> src/client/client_mux.rs:3:16 [INFO] [stdout] | [INFO] [stdout] 3 | use std::net::{IpAddr, Shutdown}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/client/client_mux.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/client_mux.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::macros::support::Future` [INFO] [stdout] --> src/client/client_mux.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::macros::support::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TcpListener`, `TcpStream` [INFO] [stdout] --> src/client/client_mux.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | use tokio::net::{TcpListener, TcpStream}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stdout] --> src/client/client_mux.rs:12:54 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::net::tcp::{OwnedReadHalf, OwnedWriteHalf, ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MutexGuard` [INFO] [stdout] --> src/client/client_mux.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::sync::{Mutex, MutexGuard}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/client_proxy.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufMut` [INFO] [stdout] --> src/client/client_proxy.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::Mutex` [INFO] [stdout] --> src/client/client_proxy.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use tokio::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::client::client_mux::ClientMuxChannel` [INFO] [stdout] --> src/client/client_proxy.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::client::client_mux::ClientMuxChannel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `create_channel_id` [INFO] [stdout] --> src/client/client_proxy.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::commons::{Address, create_channel_id}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/server/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Write` [INFO] [stdout] --> src/server/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fmt::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OwnedReadHalf` [INFO] [stdout] --> src/server/mod.rs:9:23 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::net::tcp::{OwnedReadHalf, OwnedWriteHalf}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::IpAddr` [INFO] [stdout] --> src/message.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::net::IpAddr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/message.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bytes::buf::BufExt` [INFO] [stdout] --> src/message.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use bytes::buf::BufExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `IP` found for tuple `(std::string::String, u16)` in the current scope [INFO] [stdout] --> src/client/socks5.rs:59:16 [INFO] [stdout] | [INFO] [stdout] 59 | Address::IP(IpAddr::from(addr), u16::from_be_bytes(port)) [INFO] [stdout] | ^^ associated item not found in `(std::string::String, u16)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `IP` found for tuple `(std::string::String, u16)` in the current scope [INFO] [stdout] --> src/client/socks5.rs:68:16 [INFO] [stdout] | [INFO] [stdout] 68 | Address::IP(IpAddr::from(addr), u16::from_be_bytes(port)) [INFO] [stdout] | ^^ associated item not found in `(std::string::String, u16)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `DOMAIN` found for tuple `(std::string::String, u16)` in the current scope [INFO] [stdout] --> src/client/socks5.rs:79:16 [INFO] [stdout] | [INFO] [stdout] 79 | Address::DOMAIN(domain_name, u16::from_be_bytes(port)) [INFO] [stdout] | ^^^^^^ associated item not found in `(std::string::String, u16)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `IP` found for tuple `(std::string::String, u16)` in the current scope [INFO] [stdout] --> src/client/socks5.rs:59:16 [INFO] [stdout] | [INFO] [stdout] 59 | Address::IP(IpAddr::from(addr), u16::from_be_bytes(port)) [INFO] [stdout] | ^^ associated item not found in `(std::string::String, u16)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `IP` found for tuple `(std::string::String, u16)` in the current scope [INFO] [stdout] --> src/client/socks5.rs:68:16 [INFO] [stdout] | [INFO] [stdout] 68 | Address::IP(IpAddr::from(addr), u16::from_be_bytes(port)) [INFO] [stdout] | ^^ associated item not found in `(std::string::String, u16)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `DOMAIN` found for tuple `(std::string::String, u16)` in the current scope [INFO] [stdout] --> src/client/socks5.rs:79:16 [INFO] [stdout] | [INFO] [stdout] 79 | Address::DOMAIN(domain_name, u16::from_be_bytes(port)) [INFO] [stdout] | ^^^^^^ associated item not found in `(std::string::String, u16)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `(std::string::String, u16): tokio::net::ToSocketAddrs` is not satisfied [INFO] [stdout] --> src/server/mod.rs:64:35 [INFO] [stdout] | [INFO] [stdout] 64 | let socket = TcpStream::connect(addr).await?; [INFO] [stdout] | ^^^^ the trait `tokio::net::ToSocketAddrs` is not implemented for `(std::string::String, u16)` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.21/src/net/tcp/stream.rs:97:29 [INFO] [stdout] | [INFO] [stdout] 97 | pub async fn connect(addr: A) -> io::Result { [INFO] [stdout] | ------------- required by this bound in `tokio::net::TcpStream::connect` [INFO] [stdout] | [INFO] [stdout] = help: the following implementations were found: [INFO] [stdout] <(&str, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] <(std::net::IpAddr, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] <(std::net::Ipv4Addr, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] <(std::net::Ipv6Addr, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `(std::string::String, u16): tokio::net::ToSocketAddrs` is not satisfied [INFO] [stdout] --> src/server/mod.rs:64:35 [INFO] [stdout] | [INFO] [stdout] 64 | let socket = TcpStream::connect(addr).await?; [INFO] [stdout] | ^^^^ the trait `tokio::net::ToSocketAddrs` is not implemented for `(std::string::String, u16)` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.21/src/net/tcp/stream.rs:97:29 [INFO] [stdout] | [INFO] [stdout] 97 | pub async fn connect(addr: A) -> io::Result { [INFO] [stdout] | ------------- required by this bound in `tokio::net::TcpStream::connect` [INFO] [stdout] | [INFO] [stdout] = help: the following implementations were found: [INFO] [stdout] <(&str, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] <(std::net::IpAddr, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] <(std::net::Ipv4Addr, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] <(std::net::Ipv6Addr, u16) as tokio::net::ToSocketAddrs> [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/server/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 42 | / match message::decode(msg)? { [INFO] [stdout] 43 | | Msg::CONNECT(channel_id, addr) => { [INFO] [stdout] 44 | | let tx = tx.clone(); [INFO] [stdout] 45 | | let db = db.clone(); [INFO] [stdout] ... | [INFO] [stdout] 52 | | db.remove(&channel_id) [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found enum `std::option::Option` [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] 59 | | } [INFO] [stdout] | |_____- expected this to be `()` [INFO] [stdout] | [INFO] [stdout] = note: expected unit type `()` [INFO] [stdout] found enum `std::option::Option<(std::string::String, tokio::net::tcp::OwnedWriteHalf)>` [INFO] [stdout] help: try adding a semicolon [INFO] [stdout] | [INFO] [stdout] 52 | db.remove(&channel_id); [INFO] [stdout] | ^ [INFO] [stdout] help: consider using a semicolon here [INFO] [stdout] | [INFO] [stdout] 59 | }; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 7 previous errors; 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0425, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `t-proxy`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/server/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 42 | / match message::decode(msg)? { [INFO] [stdout] 43 | | Msg::CONNECT(channel_id, addr) => { [INFO] [stdout] 44 | | let tx = tx.clone(); [INFO] [stdout] 45 | | let db = db.clone(); [INFO] [stdout] ... | [INFO] [stdout] 52 | | db.remove(&channel_id) [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found enum `std::option::Option` [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] 59 | | } [INFO] [stdout] | |_____- expected this to be `()` [INFO] [stdout] | [INFO] [stdout] = note: expected unit type `()` [INFO] [stdout] found enum `std::option::Option<(std::string::String, tokio::net::tcp::OwnedWriteHalf)>` [INFO] [stdout] help: try adding a semicolon [INFO] [stdout] | [INFO] [stdout] 52 | db.remove(&channel_id); [INFO] [stdout] | ^ [INFO] [stdout] help: consider using a semicolon here [INFO] [stdout] | [INFO] [stdout] 59 | }; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 7 previous errors; 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0425, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "f533935775898a5e8b7b69f267e4c436779cde11f24445fb687edc018809fcd9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f533935775898a5e8b7b69f267e4c436779cde11f24445fb687edc018809fcd9", kill_on_drop: false }` [INFO] [stdout] f533935775898a5e8b7b69f267e4c436779cde11f24445fb687edc018809fcd9