[INFO] cloning repository https://github.com/povilasb/http-proxy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/povilasb/http-proxy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpovilasb%2Fhttp-proxy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpovilasb%2Fhttp-proxy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 200b2f07fb0ae0742f07c5b68c2b8d6905ef7ba2
[INFO] checking povilasb/http-proxy against try#5f6abd89da253a562ad85d235b9342a3ac336c28 for pr-156114
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpovilasb%2Fhttp-proxy" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/povilasb/http-proxy
[INFO] finished tweaking git repo https://github.com/povilasb/http-proxy
[INFO] tweaked toml for git repo https://github.com/povilasb/http-proxy written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/povilasb/http-proxy on toolchain 5f6abd89da253a562ad85d235b9342a3ac336c28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5f6abd89da253a562ad85d235b9342a3ac336c28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/povilasb/http-proxy 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" "+5f6abd89da253a562ad85d235b9342a3ac336c28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unwrap v1.2.1
[INFO] [stderr]   Downloaded httparse v1.3.4
[INFO] [stderr]   Downloaded simple_logger v1.6.0
[INFO] [stderr]   Downloaded hermit-abi v0.1.6
[INFO] [stderr]   Downloaded scopeguard v1.0.0
[INFO] [stderr]   Downloaded futures-sink v0.3.4
[INFO] [stderr]   Downloaded iovec v0.1.4
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.15
[INFO] [stderr]   Downloaded kv-log-macro v1.0.4
[INFO] [stderr]   Downloaded itoa v0.4.4
[INFO] [stderr]   Downloaded pin-utils v0.1.0-alpha.4
[INFO] [stderr]   Downloaded err-derive v0.2.4
[INFO] [stderr]   Downloaded fuchsia-zircon-sys v0.3.3
[INFO] [stderr]   Downloaded proc-macro-nested v0.1.4
[INFO] [stderr]   Downloaded futures-executor v0.3.4
[INFO] [stderr]   Downloaded futures-io v0.3.4
[INFO] [stderr]   Downloaded once_cell v1.2.0
[INFO] [stderr]   Downloaded memoffset v0.5.3
[INFO] [stderr]   Downloaded async-attributes v1.1.1
[INFO] [stderr]   Downloaded proc-macro-error-attr v1.0.2
[INFO] [stderr]   Downloaded futures-task v0.3.4
[INFO] [stderr]   Downloaded futures-macro v0.3.4
[INFO] [stderr]   Downloaded futures-core v0.3.4
[INFO] [stderr]   Downloaded mio-uds v0.6.7
[INFO] [stderr]   Downloaded broadcaster v1.0.0
[INFO] [stderr]   Downloaded num_cpus v1.11.1
[INFO] [stderr]   Downloaded quote v1.0.2
[INFO] [stderr]   Downloaded futures-channel v0.3.4
[INFO] [stderr]   Downloaded pin-project-lite v0.1.4
[INFO] [stderr]   Downloaded proc-macro2 v1.0.7
[INFO] [stderr]   Downloaded parking_lot v0.10.2
[INFO] [stderr]   Downloaded lock_api v0.3.4
[INFO] [stderr]   Downloaded miow v0.2.1
[INFO] [stderr]   Downloaded fuchsia-zircon v0.3.3
[INFO] [stderr]   Downloaded futures-timer v2.0.2
[INFO] [stderr]   Downloaded crossbeam-deque v0.7.2
[INFO] [stderr]   Downloaded smallvec v1.4.0
[INFO] [stderr]   Downloaded proc-macro-error v1.0.2
[INFO] [stderr]   Downloaded net2 v0.2.33
[INFO] [stderr]   Downloaded async-task v1.3.1
[INFO] [stderr]   Downloaded crossbeam-epoch v0.8.0
[INFO] [stderr]   Downloaded crossbeam-utils v0.7.0
[INFO] [stderr]   Downloaded parking_lot_core v0.7.2
[INFO] [stderr]   Downloaded futures v0.3.4
[INFO] [stderr]   Downloaded crossbeam-channel v0.4.0
[INFO] [stderr]   Downloaded http v0.2.0
[INFO] [stderr]   Downloaded futures-util v0.3.4
[INFO] [stderr]   Downloaded mio v0.6.21
[INFO] [stderr]   Downloaded libc v0.2.66
[INFO] [stderr]   Downloaded syn v1.0.13
[INFO] [stderr]   Downloaded async-std v1.5.0
[INFO] [stderr]   Downloaded winapi v0.2.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+5f6abd89da253a562ad85d235b9342a3ac336c28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2f0dd2de8ee12026eeee3f561443ceeccdfe09b3ffc02ea7a09934156582a0e1
[INFO] running `Command { std: "docker" "start" "-a" "2f0dd2de8ee12026eeee3f561443ceeccdfe09b3ffc02ea7a09934156582a0e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2f0dd2de8ee12026eeee3f561443ceeccdfe09b3ffc02ea7a09934156582a0e1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f0dd2de8ee12026eeee3f561443ceeccdfe09b3ffc02ea7a09934156582a0e1", kill_on_drop: false }`
[INFO] [stdout] 2f0dd2de8ee12026eeee3f561443ceeccdfe09b3ffc02ea7a09934156582a0e1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+5f6abd89da253a562ad85d235b9342a3ac336c28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e508fe7155f72fedc918c450c93c18fe7668275a15370f634b482a327b04c45e
[INFO] running `Command { std: "docker" "start" "-a" "e508fe7155f72fedc918c450c93c18fe7668275a15370f634b482a327b04c45e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.7
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.13
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling autocfg v0.1.7
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling version_check v0.9.1
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling proc-macro-nested v0.1.4
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]    Compiling proc-macro-hack v0.5.15
[INFO] [stderr]     Checking futures-core v0.3.4
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]     Checking futures-sink v0.3.4
[INFO] [stderr]     Checking futures-io v0.3.4
[INFO] [stderr]     Checking pin-utils v0.1.0-alpha.4
[INFO] [stderr]     Checking futures-task v0.3.4
[INFO] [stderr]    Compiling rustversion v1.0.2
[INFO] [stderr]     Checking futures-channel v0.3.4
[INFO] [stderr]     Checking smallvec v1.4.0
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]    Compiling httparse v1.3.4
[INFO] [stderr]    Compiling crossbeam-utils v0.7.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.2
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking kv-log-macro v1.0.4
[INFO] [stderr]     Checking futures-timer v2.0.2
[INFO] [stderr]     Checking once_cell v1.2.0
[INFO] [stderr]     Checking pin-project-lite v0.1.4
[INFO] [stderr]     Checking fnv v1.0.6
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking bytes v0.5.4
[INFO] [stderr]     Checking unwrap v1.2.1
[INFO] [stderr]    Compiling memoffset v0.5.3
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking parking_lot_core v0.7.2
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking num_cpus v1.11.1
[INFO] [stderr]     Checking async-task v1.3.1
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking colored v1.9.3
[INFO] [stderr]     Checking http v0.2.0
[INFO] [stderr]     Checking parking_lot v0.10.2
[INFO] [stderr]     Checking crossbeam-channel v0.4.0
[INFO] [stderr]     Checking mio v0.6.21
[INFO] [stderr]     Checking crossbeam-deque v0.7.2
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking chrono v0.4.11
[INFO] [stderr]     Checking simple_logger v1.6.0
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]    Compiling synstructure v0.12.3
[INFO] [stderr]    Compiling futures-macro v0.3.4
[INFO] [stderr]    Compiling async-attributes v1.1.1
[INFO] [stderr]    Compiling err-derive v0.2.4
[INFO] [stderr]     Checking futures-util v0.3.4
[INFO] [stderr]     Checking broadcaster v1.0.0
[INFO] [stderr]     Checking futures-executor v0.3.4
[INFO] [stderr]     Checking async-std v1.5.0
[INFO] [stderr]     Checking futures v0.3.4
[INFO] [stderr]     Checking http-proxy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `io::Error` is more private than the item `handle_connection`
[INFO] [stdout]    --> src/io.rs:122:1
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub async fn handle_connection(mut client_conn: TcpStream) -> Result<(), Error> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `handle_connection` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `io::Error` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/io.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | enum Error {
[INFO] [stdout]     | ^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Session` is never used
[INFO] [stdout]   --> src/proxy.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum Session {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `waiting_request` and `on_data` are never used
[INFO] [stdout]   --> src/proxy.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Session {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 24 |     pub fn waiting_request() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn on_data(self, data: &[u8]) -> Session {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Failed` is never constructed
[INFO] [stdout]   --> src/proxy.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct Failed;
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WaitingRequest` is never constructed
[INFO] [stdout]   --> src/proxy.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct WaitingRequest;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_data` is never used
[INFO] [stdout]   --> src/proxy.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl WaitingRequest {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 45 |     pub fn on_data(self, data: &[u8]) -> Session {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OnConnectRequest` is never constructed
[INFO] [stdout]   --> src/proxy.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct OnConnectRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_connected` is never used
[INFO] [stdout]   --> src/proxy.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl OnConnectRequest {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] 76 |     pub fn on_connected(self, conn: TcpStream) -> ConnectTunnel {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConnectTunnel` is never constructed
[INFO] [stdout]   --> src/proxy.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct ConnectTunnel {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/io.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Error` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_std_error_Error_FOR_Error`
[INFO] [stdout] 21 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/io.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_fmt_Display_FOR_Error`
[INFO] [stdout] 21 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/io.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `From` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_convert_From_io_Error_FOR_Error`
[INFO] [stdout] 21 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout] 22 |     #[error(display = "I/O error")]
[INFO] [stdout] 23 |     Io(#[source] io::Error),
[INFO] [stdout]    |                  --------- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `io::Error` is more private than the item `handle_connection`
[INFO] [stdout]    --> src/io.rs:122:1
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub async fn handle_connection(mut client_conn: TcpStream) -> Result<(), Error> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `handle_connection` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `io::Error` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/io.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | enum Error {
[INFO] [stdout]     | ^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Session` is never used
[INFO] [stdout]   --> src/proxy.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum Session {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `waiting_request` and `on_data` are never used
[INFO] [stdout]   --> src/proxy.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Session {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 24 |     pub fn waiting_request() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn on_data(self, data: &[u8]) -> Session {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Failed` is never constructed
[INFO] [stdout]   --> src/proxy.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct Failed;
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WaitingRequest` is never constructed
[INFO] [stdout]   --> src/proxy.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct WaitingRequest;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_data` is never used
[INFO] [stdout]   --> src/proxy.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl WaitingRequest {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 45 |     pub fn on_data(self, data: &[u8]) -> Session {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OnConnectRequest` is never constructed
[INFO] [stdout]   --> src/proxy.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct OnConnectRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_connected` is never used
[INFO] [stdout]   --> src/proxy.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl OnConnectRequest {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] 76 |     pub fn on_connected(self, conn: TcpStream) -> ConnectTunnel {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConnectTunnel` is never constructed
[INFO] [stdout]   --> src/proxy.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct ConnectTunnel {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/io.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Error` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_std_error_Error_FOR_Error`
[INFO] [stdout] 21 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/io.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_fmt_Display_FOR_Error`
[INFO] [stdout] 21 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/io.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Error)]
[INFO] [stdout]    |                 ^----
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `From` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_core_convert_From_io_Error_FOR_Error`
[INFO] [stdout] 21 | enum Error {
[INFO] [stdout]    |      ----- `Error` is not local
[INFO] [stdout] 22 |     #[error(display = "I/O error")]
[INFO] [stdout] 23 |     Io(#[source] io::Error),
[INFO] [stdout]    |                  --------- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.18s
[INFO] running `Command { std: "docker" "inspect" "e508fe7155f72fedc918c450c93c18fe7668275a15370f634b482a327b04c45e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e508fe7155f72fedc918c450c93c18fe7668275a15370f634b482a327b04c45e", kill_on_drop: false }`
[INFO] [stdout] e508fe7155f72fedc918c450c93c18fe7668275a15370f634b482a327b04c45e
