[INFO] cloning repository https://github.com/hezhaozhao-git/kitty_proxy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hezhaozhao-git/kitty_proxy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhezhaozhao-git%2Fkitty_proxy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhezhaozhao-git%2Fkitty_proxy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 31c22e62e43bc221c76c02b849ce4e155a4d87f9 [INFO] checking hezhaozhao-git/kitty_proxy against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhezhaozhao-git%2Fkitty_proxy" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/hezhaozhao-git/kitty_proxy [INFO] removed 0 missing examples [INFO] finished tweaking git repo https://github.com/hezhaozhao-git/kitty_proxy [INFO] tweaked toml for git repo https://github.com/hezhaozhao-git/kitty_proxy written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/hezhaozhao-git/kitty_proxy on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/hezhaozhao-git/kitty_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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bitstring v0.1.2 [INFO] [stderr] Downloaded anyhow v1.0.76 [INFO] [stderr] Downloaded cidr-utils v0.6.1 [INFO] [stderr] Downloaded cidr v0.2.2 [INFO] [stderr] Downloaded thiserror v1.0.51 [INFO] [stderr] Downloaded thiserror-impl v1.0.51 [INFO] [stderr] Downloaded proc-macro2 v1.0.71 [INFO] [stderr] Downloaded syn v2.0.42 [INFO] [stderr] Downloaded psl v2.1.13 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 882c8690ad8196871ab38eee91b5b7f2547c31cbcce2d61d0023a48cfc335b4c [INFO] running `Command { std: "docker" "start" "-a" "882c8690ad8196871ab38eee91b5b7f2547c31cbcce2d61d0023a48cfc335b4c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "882c8690ad8196871ab38eee91b5b7f2547c31cbcce2d61d0023a48cfc335b4c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "882c8690ad8196871ab38eee91b5b7f2547c31cbcce2d61d0023a48cfc335b4c", kill_on_drop: false }` [INFO] [stdout] 882c8690ad8196871ab38eee91b5b7f2547c31cbcce2d61d0023a48cfc335b4c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e9624846b533225c1777569bf62e0a97fc6a3d3e4e50a3a537ae8d7c3faf9321 [INFO] running `Command { std: "docker" "start" "-a" "e9624846b533225c1777569bf62e0a97fc6a3d3e4e50a3a537ae8d7c3faf9321", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.71 [INFO] [stderr] Compiling libc v0.2.151 [INFO] [stderr] Compiling anyhow v1.0.76 [INFO] [stderr] Compiling rustix v0.38.28 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking smallvec v1.13.1 [INFO] [stderr] Compiling itertools v0.9.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Checking itoa v1.0.10 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling bytes v1.5.0 [INFO] [stderr] Compiling serde v1.0.193 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking http v1.1.0 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Compiling unicode-segmentation v1.10.1 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Compiling fixedbitset v0.2.0 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling multimap v0.8.3 [INFO] [stderr] Checking unicode-bidi v0.3.14 [INFO] [stderr] Checking indexmap v2.2.5 [INFO] [stderr] Checking psl-types v2.0.11 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling petgraph v0.5.1 [INFO] [stderr] Checking bitstring v0.1.2 [INFO] [stderr] Compiling thiserror v1.0.51 [INFO] [stderr] Checking termcolor v1.4.0 [INFO] [stderr] Checking psl v2.1.13 [INFO] [stderr] Compiling syn v2.0.42 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking http-body v1.0.0 [INFO] [stderr] Checking http-body-util v0.1.1 [INFO] [stderr] Checking env_logger v0.10.1 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking pretty_env_logger v0.5.0 [INFO] [stderr] Checking parking_lot_core v0.9.9 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking socket2 v0.5.5 [INFO] [stderr] Checking mio v0.8.10 [INFO] [stderr] Checking num-integer v0.1.45 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Compiling tempfile v3.8.1 [INFO] [stderr] Compiling prost-build v0.7.0 [INFO] [stderr] Compiling tokio-macros v2.2.0 [INFO] [stderr] Compiling serde_derive v1.0.193 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling thiserror-impl v1.0.51 [INFO] [stderr] Compiling prost-derive v0.7.0 [INFO] [stderr] Compiling snafu-derive v0.7.5 [INFO] [stderr] Checking tokio v1.35.1 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Compiling prost v0.7.0 [INFO] [stderr] Compiling prost-types v0.7.0 [INFO] [stderr] Checking addr v0.15.6 [INFO] [stderr] Checking snafu v0.7.5 [INFO] [stderr] Compiling kitty_proxy v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking tower v0.4.13 [INFO] [stderr] Checking cidr v0.2.2 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking h2 v0.4.3 [INFO] [stderr] Checking cidr-utils v0.6.1 [INFO] [stderr] Checking hyper v1.2.0 [INFO] [stderr] Checking hyper-util v0.1.3 [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> src/socks_proxy.rs:359:37 [INFO] [stdout] | [INFO] [stdout] 359 | (u16::from(addr[(x * 2)]) << 8) | u16::from(addr[(x * 2) + 1]) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 359 - (u16::from(addr[(x * 2)]) << 8) | u16::from(addr[(x * 2) + 1]) [INFO] [stdout] 359 + (u16::from(addr[x * 2 ]) << 8) | u16::from(addr[(x * 2) + 1]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::error` [INFO] [stdout] --> src/types.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use log::error; [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 import: `std::collections::HashMap` [INFO] [stdout] --> src/types.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ipv4Addr` [INFO] [stdout] --> src/types.rs:11:24 [INFO] [stdout] | [INFO] [stdout] 11 | use std::net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::Mutex` [INFO] [stdout] --> src/types.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLock` [INFO] [stdout] --> src/banlancer.rs:3:26 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::sync::{Mutex, RwLock}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> src/socks_proxy.rs:359:37 [INFO] [stdout] | [INFO] [stdout] 359 | (u16::from(addr[(x * 2)]) << 8) | u16::from(addr[(x * 2) + 1]) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 359 - (u16::from(addr[(x * 2)]) << 8) | u16::from(addr[(x * 2) + 1]) [INFO] [stdout] 359 + (u16::from(addr[x * 2 ]) << 8) | u16::from(addr[(x * 2) + 1]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::error` [INFO] [stdout] --> src/types.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use log::error; [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 import: `std::collections::HashMap` [INFO] [stdout] --> src/types.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ipv4Addr` [INFO] [stdout] --> src/types.rs:11:24 [INFO] [stdout] | [INFO] [stdout] 11 | use std::net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::Mutex` [INFO] [stdout] --> src/types.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLock` [INFO] [stdout] --> src/banlancer.rs:3:26 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::sync::{Mutex, RwLock}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `resp` [INFO] [stdout] --> src/http_proxy.rs:247:9 [INFO] [stdout] | [INFO] [stdout] 247 | let resp = sender.send_request(req).await.unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_resp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `http_kill_tx` [INFO] [stdout] --> src/http_proxy.rs:455:14 [INFO] [stdout] | [INFO] [stdout] 455 | let (http_kill_tx, mut http_kill_rx) = watch::channel(false); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_http_kill_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `resp` [INFO] [stdout] --> src/http_proxy.rs:247:9 [INFO] [stdout] | [INFO] [stdout] 247 | let resp = sender.send_request(req).await.unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_resp` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `send_connect_req` is never used [INFO] [stdout] --> src/http_proxy.rs:225:10 [INFO] [stdout] | [INFO] [stdout] 225 | async fn send_connect_req( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `timeout` is never read [INFO] [stdout] --> src/http_proxy.rs:254:5 [INFO] [stdout] | [INFO] [stdout] 251 | pub struct HttpProxy { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 254 | timeout: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `RuleFailure`, `NetworkUnreachable`, `HostUnreachable`, `TtlExpired`, and `HttpBadGateway` are never constructed [INFO] [stdout] --> src/types.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 34 | pub enum ResponseCode { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 39 | RuleFailure = 0x02, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 40 | #[snafu(display("network unreachable"))] [INFO] [stdout] 41 | NetworkUnreachable = 0x03, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | #[snafu(display("host unreachable"))] [INFO] [stdout] 43 | HostUnreachable = 0x04, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | TtlExpired = 0x06, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | HttpBadGateway = 0x502, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResponseCode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StrategyWeight` is never constructed [INFO] [stdout] --> src/v2ray_config.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 198 | pub struct StrategyWeight { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StrategyLeastLoadConfig` is never constructed [INFO] [stdout] --> src/v2ray_config.rs:207:12 [INFO] [stdout] | [INFO] [stdout] 207 | pub struct StrategyLeastLoadConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `SiteIp` is never used [INFO] [stdout] --> src/traffic_diversion.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 34 | enum SiteIp { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/traffic_diversion.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 60 | impl SiteIp { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 61 | fn from_str(input: &str) -> SiteIp { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `ip_to_number` is never used [INFO] [stdout] --> src/traffic_diversion.rs:295:8 [INFO] [stdout] | [INFO] [stdout] 126 | impl MatchProxy { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 295 | fn ip_to_number(ip: Ipv4Addr) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BanlancerTrait` is never used [INFO] [stdout] --> src/traits.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait BanlancerTrait { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `send_connect_req` is never used [INFO] [stdout] --> src/http_proxy.rs:225:10 [INFO] [stdout] | [INFO] [stdout] 225 | async fn send_connect_req( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `timeout` is never read [INFO] [stdout] --> src/http_proxy.rs:254:5 [INFO] [stdout] | [INFO] [stdout] 251 | pub struct HttpProxy { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 254 | timeout: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `RuleFailure`, `NetworkUnreachable`, `HostUnreachable`, `TtlExpired`, and `HttpBadGateway` are never constructed [INFO] [stdout] --> src/types.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 34 | pub enum ResponseCode { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 39 | RuleFailure = 0x02, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 40 | #[snafu(display("network unreachable"))] [INFO] [stdout] 41 | NetworkUnreachable = 0x03, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | #[snafu(display("host unreachable"))] [INFO] [stdout] 43 | HostUnreachable = 0x04, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | TtlExpired = 0x06, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | HttpBadGateway = 0x502, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResponseCode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StrategyWeight` is never constructed [INFO] [stdout] --> src/v2ray_config.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 198 | pub struct StrategyWeight { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StrategyLeastLoadConfig` is never constructed [INFO] [stdout] --> src/v2ray_config.rs:207:12 [INFO] [stdout] | [INFO] [stdout] 207 | pub struct StrategyLeastLoadConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `SiteIp` is never used [INFO] [stdout] --> src/traffic_diversion.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 34 | enum SiteIp { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/traffic_diversion.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 60 | impl SiteIp { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 61 | fn from_str(input: &str) -> SiteIp { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `ip_to_number` is never used [INFO] [stdout] --> src/traffic_diversion.rs:295:8 [INFO] [stdout] | [INFO] [stdout] 126 | impl MatchProxy { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 295 | fn ip_to_number(ip: Ipv4Addr) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BanlancerTrait` is never used [INFO] [stdout] --> src/traits.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait BanlancerTrait { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `http_kill_tx` [INFO] [stdout] --> src/examples/proxy_example.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | let (http_kill_tx, mut http_kill_rx) = watch::channel(false); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_http_kill_tx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 39.68s [INFO] running `Command { std: "docker" "inspect" "e9624846b533225c1777569bf62e0a97fc6a3d3e4e50a3a537ae8d7c3faf9321", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e9624846b533225c1777569bf62e0a97fc6a3d3e4e50a3a537ae8d7c3faf9321", kill_on_drop: false }` [INFO] [stdout] e9624846b533225c1777569bf62e0a97fc6a3d3e4e50a3a537ae8d7c3faf9321