[INFO] cloning repository https://github.com/laomeifun/ezsingbox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/laomeifun/ezsingbox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaomeifun%2Fezsingbox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaomeifun%2Fezsingbox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7a334c9ed162535cb50823699737d8e869cee546 [INFO] testing laomeifun/ezsingbox/7a334c9ed162535cb50823699737d8e869cee546 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaomeifun%2Fezsingbox" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/laomeifun/ezsingbox [INFO] finished tweaking git repo https://github.com/laomeifun/ezsingbox [INFO] tweaked toml for git repo https://github.com/laomeifun/ezsingbox written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/laomeifun/ezsingbox on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/laomeifun/ezsingbox 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rustls-pki-types v1.13.1 [INFO] [stderr] Downloaded chunked_transfer v1.5.0 [INFO] [stderr] Downloaded ascii v1.1.0 [INFO] [stderr] Downloaded tiny_http v0.12.0 [INFO] [stderr] Downloaded ureq-proto v0.5.3 [INFO] [stderr] Downloaded cc v1.2.49 [INFO] [stderr] Downloaded ureq v3.1.4 [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b1920448ec3154c467e1e3f699b3cb64477ce47494752c2e0cea227c89dd4609 [INFO] running `Command { std: "docker" "start" "-a" "b1920448ec3154c467e1e3f699b3cb64477ce47494752c2e0cea227c89dd4609", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b1920448ec3154c467e1e3f699b3cb64477ce47494752c2e0cea227c89dd4609", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1920448ec3154c467e1e3f699b3cb64477ce47494752c2e0cea227c89dd4609", kill_on_drop: false }` [INFO] [stdout] b1920448ec3154c467e1e3f699b3cb64477ce47494752c2e0cea227c89dd4609 [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d8fa9474b5b86f7fe32f0d77ea0339136f11357debe1686dcc875eedaff6266a [INFO] running `Command { std: "docker" "start" "-a" "d8fa9474b5b86f7fe32f0d77ea0339136f11357debe1686dcc875eedaff6266a", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling find-msvc-tools v0.1.5 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Compiling bytes v1.11.0 [INFO] [stderr] Compiling rustls v0.23.35 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling flate2 v1.1.5 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling ascii v1.1.0 [INFO] [stderr] Compiling chunked_transfer v1.5.0 [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling cc v1.2.49 [INFO] [stderr] Compiling tiny_http v0.12.0 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling ureq-proto v0.5.3 [INFO] [stderr] Compiling uuid v1.19.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling rustls-pki-types v1.13.1 [INFO] [stderr] Compiling webpki-roots v1.0.4 [INFO] [stderr] Compiling rustls-webpki v0.103.8 [INFO] [stderr] Compiling x25519-dalek v2.0.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling ureq v3.1.4 [INFO] [stderr] Compiling ezsingbox v0.1.16 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `VlessFlow` [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:15:70 [INFO] [stdout] | [INFO] [stdout] 15 | AnyTlsInbound, CongestionControl, Hysteria2Inbound, TuicInbound, VlessFlow, VlessInbound, [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: `AutoAnyTlsBuilder`, `AutoAnyTlsConfig`, `AutoAnyTlsError`, `AutoAnyTlsResult`, and `ConnectionInfo` [INFO] [stdout] --> src/autoconfig/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | AutoAnyTlsBuilder, AutoAnyTlsConfig, AutoAnyTlsError, AutoAnyTlsResult, ConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AutoHysteria2Builder`, `AutoHysteria2Config`, `AutoHysteria2Error`, `AutoHysteria2Result`, and `Hysteria2ConnectionInfo` [INFO] [stdout] --> src/autoconfig/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | AutoHysteria2Builder, AutoHysteria2Config, AutoHysteria2Error, AutoHysteria2Result, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | Hysteria2ConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AutoTuicBuilder`, `AutoTuicConfig`, `AutoTuicError`, `AutoTuicResult`, `TuicConnectionInfo`, and `TuicUserConfig` [INFO] [stdout] --> src/autoconfig/mod.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | AutoTuicBuilder, AutoTuicConfig, AutoTuicError, AutoTuicResult, TuicConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | TuicUserConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AutoVlessBuilder`, `AutoVlessConfig`, `AutoVlessError`, `AutoVlessResult`, `VlessConnectionInfo`, and `VlessUserConfig` [INFO] [stdout] --> src/autoconfig/mod.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | AutoVlessBuilder, AutoVlessConfig, AutoVlessError, AutoVlessResult, VlessConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | VlessUserConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AnyTlsAutoResult`, `AutoBuildResult`, `AutoDefaultError`, `AutoDefaultResult`, `AutoDefault`, `DEFAULT_PORTS`, `Hysteria2AutoResult`, `Protocol`, `TuicAutoResult`, `default_port`, `fallback_port`, `quick_all`, `quick_anytls`, `quick_hysteria2`, and `quick_tuic` [INFO] [stdout] --> src/autoconfig/mod.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | AnyTlsAutoResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 40 | AutoBuildResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | // 构建器 [INFO] [stdout] 42 | AutoDefault, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 43 | // 辅助类型 [INFO] [stdout] 44 | AutoDefaultError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 45 | AutoDefaultResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | // 端口常量和函数 [INFO] [stdout] 47 | DEFAULT_PORTS, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 48 | GeneratedUser, [INFO] [stdout] 49 | Hysteria2AutoResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | Protocol, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 53 | TuicAutoResult, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 54 | default_port, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 55 | fallback_port, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 56 | // 便捷函数 [INFO] [stdout] 57 | quick_all, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 58 | quick_anytls, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 59 | quick_hysteria2, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | quick_tuic, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PublicIpError`, `TlsMode`, `UserConfig`, `generate_hex_string`, `generate_nip_domain`, `generate_password_with_length`, `generate_password`, `generate_random_bytes`, `generate_sslip_domain`, `generate_uuid_simple`, `generate_uuid`, `get_public_ip_with_timeout`, and `get_public_ip` [INFO] [stdout] --> src/autoconfig/mod.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | PublicIpError, TlsMode, UserConfig, generate_hex_string, generate_nip_domain, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 66 | generate_password, generate_password_with_length, generate_random_bytes, generate_sslip_domain, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 67 | generate_uuid, generate_uuid_simple, get_public_ip, get_public_ip_with_timeout, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dns::*` [INFO] [stdout] --> src/dns/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use dns::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Hysteria2MasqueradeConfig`, `Hysteria2Masquerade`, `Hysteria2Obfs`, and `MasqueradeType` [INFO] [stdout] --> src/singboxconfig/inbound/mod.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | Hysteria2Inbound, Hysteria2Masquerade, Hysteria2MasqueradeConfig, Hysteria2Obfs, MasqueradeType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DomainResolverConfig` and `DomainResolver` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | pub use dial::{DialFields, DomainResolver, DomainResolverConfig}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AliDnsConfig`, `CloudflareConfig`, and `Dns01Challenge` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:13:27 [INFO] [stdout] | [INFO] [stdout] 13 | pub use dns01_challenge::{AliDnsConfig, CloudflareConfig, Dns01Challenge}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MultiplexOutbound`, `MultiplexProtocol`, and `TcpBrutal` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:15:39 [INFO] [stdout] | [INFO] [stdout] 15 | pub use multiplex::{MultiplexInbound, MultiplexOutbound, MultiplexProtocol, TcpBrutal}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AcmeExternalAccount`, `AcmeProviderPreset`, `AcmeProvider`, `CipherSuite`, `ClientAuthentication`, `CurvePreference`, `EchInboundConfig`, `EchOutboundConfig`, `RealityOutboundConfig`, `TlsVersion`, `UtlsConfig`, and `UtlsFingerprint` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:17:17 [INFO] [stdout] | [INFO] [stdout] 17 | AcmeConfig, AcmeExternalAccount, AcmeProvider, AcmeProviderPreset, CipherSuite, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 18 | ClientAuthentication, CurvePreference, EchInboundConfig, EchOutboundConfig, InboundTlsConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | OutboundTlsConfig, RealityHandshake, RealityInboundConfig, RealityOutboundConfig, TlsVersion, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] 20 | UtlsConfig, UtlsFingerprint, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GrpcTransport`, `HttpTransport`, `HttpUpgradeTransport`, `QuicTransport`, and `WebSocketTransport` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | GrpcTransport, HttpTransport, HttpUpgradeTransport, QuicTransport, V2RayTransport, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] 24 | WebSocketTransport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ParseDurationError` [INFO] [stdout] --> src/singboxconfig/types/mod.rs:13:30 [INFO] [stdout] | [INFO] [stdout] 13 | pub use duration::{Duration, ParseDurationError}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ShadowsocksDestination`, `VMessUser`, `VlessFlow`, and `VlessUser` [INFO] [stdout] --> src/singboxconfig/types/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | ShadowsocksDestination, TuicUser, UserWithPassword, VMessUser, VlessFlow, VlessUser, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | sniff: None, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff_override_destination`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | sniff_override_destination: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff_timeout`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | sniff_timeout: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::domain_strategy`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 130 | domain_strategy: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::udp_disable_domain_unmapping`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | udp_disable_domain_unmapping: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fallback_port` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:42:8 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn fallback_port(index: usize) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `public_ip` and `domain` are never read [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct AutoDefaultResult { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 145 | /// 服务器公网 IP [INFO] [stdout] 146 | pub public_ip: IpAddr, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 147 | /// 使用的域名 [INFO] [stdout] 148 | pub domain: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoDefaultResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `NoAvailablePort` and `ConfigError` are never constructed [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:270:5 [INFO] [stdout] | [INFO] [stdout] 266 | pub enum AutoDefaultError { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 270 | NoAvailablePort, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 271 | /// 配置生成失败 [INFO] [stdout] 272 | ConfigError(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoDefaultError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `public_ip_str`, `fallback_port`, `tag`, `masquerade`, `server_name`, and `build` are never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:405:12 [INFO] [stdout] | [INFO] [stdout] 350 | impl AutoDefault { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 405 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 417 | pub fn fallback_port(mut self, index: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 423 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 487 | pub fn masquerade(mut self, url: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 524 | pub fn server_name(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 803 | pub fn build(self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AutoBuildResult` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:817:10 [INFO] [stdout] | [INFO] [stdout] 817 | pub enum AutoBuildResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_anytls` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1108:8 [INFO] [stdout] | [INFO] [stdout] 1108 | pub fn quick_anytls() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_hysteria2` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1113:8 [INFO] [stdout] | [INFO] [stdout] 1113 | pub fn quick_hysteria2() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_tuic` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1118:8 [INFO] [stdout] | [INFO] [stdout] 1118 | pub fn quick_tuic() -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_all` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1123:8 [INFO] [stdout] | [INFO] [stdout] 1123 | pub fn quick_all() -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_vless_reality` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1128:8 [INFO] [stdout] | [INFO] [stdout] 1128 | pub fn quick_vless_reality() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoAnyTlsConfig` is never constructed [INFO] [stdout] --> src/autoconfig/autoanytls.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct AutoAnyTlsConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoAnyTlsBuilder` is never constructed [INFO] [stdout] --> src/autoconfig/autoanytls.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct AutoAnyTlsBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/autoconfig/autoanytls.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl AutoAnyTlsBuilder { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 56 | /// 创建新的构建器 [INFO] [stdout] 57 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn port(mut self, port: u16) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn public_ip(mut self, ip: IpAddr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn add_user(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn add_user_with_password( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn acme_with_domain(mut self, domain: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn custom_cert_with_server_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn disable_tls(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn no_padding(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn build(self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoAnyTlsResult` is never constructed [INFO] [stdout] --> src/autoconfig/autoanytls.rs:180:12 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct AutoAnyTlsResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConnectionInfo` is never constructed [INFO] [stdout] --> src/autoconfig/autoanytls.rs:193:12 [INFO] [stdout] | [INFO] [stdout] 193 | pub struct ConnectionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AutoAnyTlsError` is never used [INFO] [stdout] --> src/autoconfig/autoanytls.rs:204:10 [INFO] [stdout] | [INFO] [stdout] 204 | pub enum AutoAnyTlsError { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate`, `generate_users`, and `generate_tls_config` are never used [INFO] [stdout] --> src/autoconfig/autoanytls.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 225 | impl AutoAnyTlsConfig { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 226 | /// 生成配置 [INFO] [stdout] 227 | pub fn generate(&self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | fn generate_users(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | fn generate_tls_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoHysteria2Config` is never constructed [INFO] [stdout] --> src/autoconfig/autohy2.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct AutoHysteria2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoHysteria2Builder` is never constructed [INFO] [stdout] --> src/autoconfig/autohy2.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct AutoHysteria2Builder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/autoconfig/autohy2.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl AutoHysteria2Builder { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 68 | /// 创建新的构建器 [INFO] [stdout] 69 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn port(mut self, port: u16) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn public_ip(mut self, ip: IpAddr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn add_user(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn add_user_with_password( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn bandwidth(mut self, up_mbps: u32, down_mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn up_mbps(mut self, mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn down_mbps(mut self, mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn with_obfs(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | pub fn with_obfs_password(mut self, password: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn with_masquerade(mut self, url: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn ignore_client_bandwidth(mut self, ignore: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | pub fn acme_with_domain(mut self, domain: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn custom_cert_with_server_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub fn build(self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoHysteria2Result` is never constructed [INFO] [stdout] --> src/autoconfig/autohy2.rs:222:12 [INFO] [stdout] | [INFO] [stdout] 222 | pub struct AutoHysteria2Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Hysteria2ConnectionInfo` is never constructed [INFO] [stdout] --> src/autoconfig/autohy2.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 237 | pub struct Hysteria2ConnectionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AutoHysteria2Error` is never used [INFO] [stdout] --> src/autoconfig/autohy2.rs:254:10 [INFO] [stdout] | [INFO] [stdout] 254 | pub enum AutoHysteria2Error { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate`, `generate_users`, and `generate_tls_config` are never used [INFO] [stdout] --> src/autoconfig/autohy2.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 275 | impl AutoHysteria2Config { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] 276 | /// 生成配置 [INFO] [stdout] 277 | pub fn generate(&self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 353 | fn generate_users(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 369 | fn generate_tls_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TuicUserConfig` is never constructed [INFO] [stdout] --> src/autoconfig/autotuic.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct TuicUserConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_uuid`, `with_credentials`, `uuid_only`, `get_or_generate_uuid`, and `get_or_generate_password` are never used [INFO] [stdout] --> src/autoconfig/autotuic.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl TuicUserConfig { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 29 | /// 创建新用户配置(自动生成 UUID 和密码) [INFO] [stdout] 30 | pub fn new(name: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn with_uuid(name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn with_credentials( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn uuid_only(uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn get_or_generate_uuid(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn get_or_generate_password(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoTuicConfig` is never constructed [INFO] [stdout] --> src/autoconfig/autotuic.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | pub struct AutoTuicConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoTuicBuilder` is never constructed [INFO] [stdout] --> src/autoconfig/autotuic.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | pub struct AutoTuicBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/autoconfig/autotuic.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl AutoTuicBuilder { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 137 | /// 创建新的构建器 [INFO] [stdout] 138 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn port(mut self, port: u16) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn public_ip(mut self, ip: IpAddr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn add_user(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn add_user_with_uuid(mut self, name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn add_user_with_credentials( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn congestion_control(mut self, cc: CongestionControl) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn cubic(mut self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | pub fn bbr(mut self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn new_reno(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn auth_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn auth_timeout_secs(mut self, secs: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub fn zero_rtt_handshake(mut self, enabled: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn heartbeat(mut self, interval: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 255 | pub fn heartbeat_secs(mut self, secs: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 270 | pub fn acme_with_domain(mut self, domain: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 292 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn custom_cert_with_server_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub fn build(self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoTuicResult` is never constructed [INFO] [stdout] --> src/autoconfig/autotuic.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 332 | pub struct AutoTuicResult { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TuicConnectionInfo` is never constructed [INFO] [stdout] --> src/autoconfig/autotuic.rs:345:12 [INFO] [stdout] | [INFO] [stdout] 345 | pub struct TuicConnectionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AutoTuicError` is never used [INFO] [stdout] --> src/autoconfig/autotuic.rs:362:10 [INFO] [stdout] | [INFO] [stdout] 362 | pub enum AutoTuicError { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate`, `generate_users`, and `generate_tls_config` are never used [INFO] [stdout] --> src/autoconfig/autotuic.rs:389:12 [INFO] [stdout] | [INFO] [stdout] 387 | impl AutoTuicConfig { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 388 | /// 生成配置 [INFO] [stdout] 389 | pub fn generate(&self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 463 | fn generate_users(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 491 | fn generate_tls_config(&self) -> Result<(InboundTlsConfig, Option), AutoTuicError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VlessUserConfig` is never constructed [INFO] [stdout] --> src/autoconfig/autovless.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct VlessUserConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/autoconfig/autovless.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl VlessUserConfig { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 28 | /// 创建新用户配置(自动生成UUID) [INFO] [stdout] 29 | pub fn new(name: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn with_uuid(name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn with_flow(name: impl Into, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn full(name: impl Into, uuid: impl Into, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn get_or_generate_uuid(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn xtls_vision(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoVlessConfig` is never constructed [INFO] [stdout] --> src/autoconfig/autovless.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct AutoVlessConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoVlessBuilder` is never constructed [INFO] [stdout] --> src/autoconfig/autovless.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 127 | pub struct AutoVlessBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/autoconfig/autovless.rs:133:12 [INFO] [stdout] | [INFO] [stdout] 131 | impl AutoVlessBuilder { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 132 | /// 创建新的构建器 [INFO] [stdout] 133 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn port(mut self, port: u16) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn public_ip(mut self, ip: IpAddr) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn add_user(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn add_user_with_uuid(mut self, name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn add_user_with_xtls_vision(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn add_user_full( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn add_user_config(mut self, user: VlessUserConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn acme_with_domain(mut self, domain: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn custom_cert_with_server_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn disable_tls(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 266 | pub fn with_multiplex(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn with_multiplex_config(mut self, multiplex: MultiplexInbound) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn with_transport(mut self, transport: V2RayTransport) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn default_xtls_vision(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn build(self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutoVlessResult` is never constructed [INFO] [stdout] --> src/autoconfig/autovless.rs:301:12 [INFO] [stdout] | [INFO] [stdout] 301 | pub struct AutoVlessResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VlessConnectionInfo` is never constructed [INFO] [stdout] --> src/autoconfig/autovless.rs:314:12 [INFO] [stdout] | [INFO] [stdout] 314 | pub struct VlessConnectionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AutoVlessError` is never used [INFO] [stdout] --> src/autoconfig/autovless.rs:333:10 [INFO] [stdout] | [INFO] [stdout] 333 | pub enum AutoVlessError { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate`, `generate_users`, and `generate_tls_config` are never used [INFO] [stdout] --> src/autoconfig/autovless.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | impl AutoVlessConfig { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 359 | /// 生成配置 [INFO] [stdout] 360 | pub fn generate(&self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 435 | fn generate_users(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | fn generate_tls_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_nip_domain` is never used [INFO] [stdout] --> src/autoconfig/tools.rs:137:8 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn generate_nip_domain(ip: &IpAddr) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_uuid_simple` is never used [INFO] [stdout] --> src/autoconfig/tools.rs:151:8 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn generate_uuid_simple() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UserConfig` is never constructed [INFO] [stdout] --> src/autoconfig/tools.rs:162:12 [INFO] [stdout] | [INFO] [stdout] 162 | pub struct UserConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_password`, and `get_or_generate_password` are never used [INFO] [stdout] --> src/autoconfig/tools.rs:171:12 [INFO] [stdout] | [INFO] [stdout] 169 | impl UserConfig { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 170 | /// 创建新用户配置(自动生成密码) [INFO] [stdout] 171 | pub fn new(name: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn with_password(name: impl Into, password: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn get_or_generate_password(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TlsMode` is never used [INFO] [stdout] --> src/autoconfig/tools.rs:198:10 [INFO] [stdout] | [INFO] [stdout] 198 | pub enum TlsMode { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `acme`, `acme_with_domain`, `acme_with_domain_and_email`, `custom`, `custom_with_server_name`, and `disabled` are never used [INFO] [stdout] --> src/autoconfig/tools.rs:230:12 [INFO] [stdout] | [INFO] [stdout] 228 | impl TlsMode { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 229 | /// 创建 ACME 模式(使用 sslip.io) [INFO] [stdout] 230 | pub fn acme() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn acme_with_domain(domain: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub fn acme_with_domain_and_email(domain: impl Into, email: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn custom(certificate_path: impl Into, key_path: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn custom_with_server_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub fn disabled() -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cmd_serve` is never used [INFO] [stdout] --> src/commands.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn cmd_serve() -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dns` is never constructed [INFO] [stdout] --> src/dns/dns.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Dns { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DnsServer` is never used [INFO] [stdout] --> src/dns/dns.rs:99:10 [INFO] [stdout] | [INFO] [stdout] 99 | pub enum DnsServer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LegacyDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct LegacyDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LocalDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct LocalDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HostsDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub struct HostsDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RemoteDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 217 | pub struct RemoteDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DhcpDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:254:12 [INFO] [stdout] | [INFO] [stdout] 254 | pub struct DhcpDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FakeIPDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 271 | pub struct FakeIPDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TailscaleDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:288:12 [INFO] [stdout] | [INFO] [stdout] 288 | pub struct TailscaleDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ResolvedDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:297:12 [INFO] [stdout] | [INFO] [stdout] 297 | pub struct ResolvedDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DnsDialFields` is never constructed [INFO] [stdout] --> src/dns/dns.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 305 | pub struct DnsDialFields { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LegacyFakeIP` is never constructed [INFO] [stdout] --> src/dns/dns.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 354 | pub struct LegacyFakeIP { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DnsRule` is never used [INFO] [stdout] --> src/dns/dns.rs:379:10 [INFO] [stdout] | [INFO] [stdout] 379 | pub enum DnsRule { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DefaultDnsRule` is never constructed [INFO] [stdout] --> src/dns/dns.rs:387:12 [INFO] [stdout] | [INFO] [stdout] 387 | pub struct DefaultDnsRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogicalDnsRule` is never constructed [INFO] [stdout] --> src/dns/dns.rs:607:12 [INFO] [stdout] | [INFO] [stdout] 607 | pub struct LogicalDnsRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LogicalMode` is never used [INFO] [stdout] --> src/dns/dns.rs:632:10 [INFO] [stdout] | [INFO] [stdout] 632 | pub enum LogicalMode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DnsRuleAction` is never used [INFO] [stdout] --> src/dns/dns.rs:653:10 [INFO] [stdout] | [INFO] [stdout] 653 | pub enum DnsRuleAction { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DnsRouteAction` is never constructed [INFO] [stdout] --> src/dns/dns.rs:670:12 [INFO] [stdout] | [INFO] [stdout] 670 | pub struct DnsRouteAction { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DnsRouteOptionsAction` is never constructed [INFO] [stdout] --> src/dns/dns.rs:690:12 [INFO] [stdout] | [INFO] [stdout] 690 | pub struct DnsRouteOptionsAction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DnsRejectAction` is never constructed [INFO] [stdout] --> src/dns/dns.rs:706:12 [INFO] [stdout] | [INFO] [stdout] 706 | pub struct DnsRejectAction { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DnsRejectMethod` is never used [INFO] [stdout] --> src/dns/dns.rs:719:10 [INFO] [stdout] | [INFO] [stdout] 719 | pub enum DnsRejectMethod { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DnsPredefinedAction` is never constructed [INFO] [stdout] --> src/dns/dns.rs:728:12 [INFO] [stdout] | [INFO] [stdout] 728 | pub struct DnsPredefinedAction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `QueryType` is never used [INFO] [stdout] --> src/dns/dns.rs:746:10 [INFO] [stdout] | [INFO] [stdout] 746 | pub enum QueryType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `QueryTypeValue` is never used [INFO] [stdout] --> src/dns/dns.rs:756:10 [INFO] [stdout] | [INFO] [stdout] 756 | pub enum QueryTypeValue { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PortOrArray` is never used [INFO] [stdout] --> src/dns/dns.rs:766:10 [INFO] [stdout] | [INFO] [stdout] 766 | pub enum PortOrArray { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `UidOrArray` is never used [INFO] [stdout] --> src/dns/dns.rs:776:10 [INFO] [stdout] | [INFO] [stdout] 776 | pub enum UidOrArray { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/dns/dns.rs:789:12 [INFO] [stdout] | [INFO] [stdout] 787 | impl Dns { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 788 | /// 创建新的 DNS 配置 [INFO] [stdout] 789 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 794 | pub fn add_server(mut self, server: DnsServer) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 800 | pub fn add_rule(mut self, rule: DnsRule) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 806 | pub fn final_server>(mut self, server: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 812 | pub fn strategy(mut self, strategy: DomainStrategy) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 818 | pub fn disable_cache(mut self, disable: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 824 | pub fn cache_capacity(mut self, capacity: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 830 | pub fn reverse_mapping(mut self, enable: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 836 | pub fn client_subnet>(mut self, subnet: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `tag`, and `prefer_go` are never used [INFO] [stdout] --> src/dns/dns.rs:844:12 [INFO] [stdout] | [INFO] [stdout] 842 | impl LocalDnsServer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 843 | /// 创建新的本地 DNS 服务器 [INFO] [stdout] 844 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 849 | pub fn tag>(mut self, tag: S) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 855 | pub fn prefer_go(mut self, prefer: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `tag`, `path`, and `paths` are never used [INFO] [stdout] --> src/dns/dns.rs:863:12 [INFO] [stdout] | [INFO] [stdout] 861 | impl HostsDnsServer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 862 | /// 创建新的 Hosts DNS 服务器 [INFO] [stdout] 863 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 868 | pub fn tag>(mut self, tag: S) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 874 | pub fn path>(mut self, path: S) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 880 | pub fn paths(mut self, paths: I) -> Self [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `tag`, `server`, `server_port`, `address_resolver`, and `strategy` are never used [INFO] [stdout] --> src/dns/dns.rs:894:12 [INFO] [stdout] | [INFO] [stdout] 892 | impl RemoteDnsServer { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 893 | /// 创建新的远程 DNS 服务器 [INFO] [stdout] 894 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 899 | pub fn tag>(mut self, tag: S) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 905 | pub fn server>(mut self, server: S) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 911 | pub fn server_port(mut self, port: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 917 | pub fn address_resolver>(mut self, resolver: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 923 | pub fn strategy(mut self, strategy: DomainStrategy) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `tag`, `inet4_range`, and `inet6_range` are never used [INFO] [stdout] --> src/dns/dns.rs:931:12 [INFO] [stdout] | [INFO] [stdout] 929 | impl FakeIPDnsServer { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 930 | /// 创建新的 FakeIP DNS 服务器 [INFO] [stdout] 931 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 936 | pub fn tag>(mut self, tag: S) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 942 | pub fn inet4_range>(mut self, range: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 948 | pub fn inet6_range>(mut self, range: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/dns/dns.rs:956:12 [INFO] [stdout] | [INFO] [stdout] 954 | impl DefaultDnsRule { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 955 | /// 创建新的默认 DNS 规则 [INFO] [stdout] 956 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 961 | pub fn domain>(mut self, domain: S) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 967 | pub fn domains(mut self, domains: I) -> Self [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 979 | pub fn domain_suffix>(mut self, suffix: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 985 | pub fn server>(mut self, server: S) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 991 | pub fn action(mut self, action: DnsRuleAction) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 997 | pub fn invert(mut self, invert: bool) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_padding_scheme`, `with_default_padding_scheme`, `with_listen_fields`, and `default_padding_scheme` are never used [INFO] [stdout] --> src/singboxconfig/inbound/anytls.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl AnyTlsInbound { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn with_padding_scheme(mut self, scheme: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn with_default_padding_scheme(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn default_padding_scheme() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_masquerade_file`, `with_masquerade_proxy`, `with_ignore_client_bandwidth`, `with_brutal_debug`, and `with_listen_fields` are never used [INFO] [stdout] --> src/singboxconfig/inbound/hysteria2.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 133 | impl Hysteria2Inbound { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn with_masquerade_file(mut self, directory: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn with_masquerade_proxy(mut self, url: impl Into, rewrite_host: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn with_ignore_client_bandwidth(mut self, ignore: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn with_brutal_debug(mut self, debug: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `salamander` is never used [INFO] [stdout] --> src/singboxconfig/inbound/hysteria2.rs:246:12 [INFO] [stdout] | [INFO] [stdout] 244 | impl Hysteria2Obfs { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 245 | /// 创建 salamander 混淆 [INFO] [stdout] 246 | pub fn salamander(password: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_user_uuid`, `add_user_with_credentials`, `with_auth_timeout`, `with_zero_rtt_handshake`, `with_heartbeat`, and `with_listen_fields` are never used [INFO] [stdout] --> src/singboxconfig/inbound/tuic.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl TuicInbound { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn add_user_uuid(mut self, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn add_user_with_credentials( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn with_auth_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn with_zero_rtt_handshake(mut self, enabled: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn with_heartbeat(mut self, interval: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_simple_user`, `add_user_with_flow`, `with_listen_fields`, `with_multiplex`, and `with_transport` are never used [INFO] [stdout] --> src/singboxconfig/inbound/vless.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 77 | impl VlessInbound { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn add_simple_user(mut self, name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn add_user_with_flow( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn with_multiplex(mut self, multiplex: MultiplexInbound) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn with_transport(mut self, transport: V2RayTransport) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_flow` and `set_flow` are never used [INFO] [stdout] --> src/singboxconfig/inbound/vless.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 161 | impl VlessUser { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn with_flow(name: impl Into, uuid: impl Into, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AnyTlsOutbound` is never constructed [INFO] [stdout] --> src/singboxconfig/outbound/anytls.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct AnyTlsOutbound { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_idle_session_check_interval`, `with_idle_session_timeout`, `with_min_idle_session`, `with_tls`, and `with_dial` are never used [INFO] [stdout] --> src/singboxconfig/outbound/anytls.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 56 | impl AnyTlsOutbound { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 57 | /// 创建新的 AnyTLS 出站配置 [INFO] [stdout] 58 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn with_idle_session_check_interval(mut self, interval: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn with_idle_session_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn with_min_idle_session(mut self, min: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn with_tls(mut self, tls: OutboundTlsConfig) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn with_dial(mut self, dial: DialFields) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DialFields` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/dial.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct DialFields { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DomainResolver` is never used [INFO] [stdout] --> src/singboxconfig/shared/dial.rs:130:10 [INFO] [stdout] | [INFO] [stdout] 130 | pub enum DomainResolver { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DomainResolverConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/dial.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 139 | pub struct DomainResolverConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Dns01Challenge` is never used [INFO] [stdout] --> src/singboxconfig/shared/dns01_challenge.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum Dns01Challenge { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AliDnsConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/dns01_challenge.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct AliDnsConfig { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CloudflareConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/dns01_challenge.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct CloudflareConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `alidns`, `alidns_with_region`, and `cloudflare` are never used [INFO] [stdout] --> src/singboxconfig/shared/dns01_challenge.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl Dns01Challenge { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 56 | /// 创建阿里云 DNS 配置 [INFO] [stdout] 57 | pub fn alidns( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn alidns_with_region( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn cloudflare(api_token: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `with_region` are never used [INFO] [stdout] --> src/singboxconfig/shared/dns01_challenge.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl AliDnsConfig { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 90 | /// 创建新的阿里云 DNS 配置 [INFO] [stdout] 91 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn with_region(mut self, region_id: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/singboxconfig/shared/dns01_challenge.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 109 | impl CloudflareConfig { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 110 | /// 创建新的 Cloudflare DNS 配置 [INFO] [stdout] 111 | pub fn new(api_token: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiplexOutbound` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct MultiplexOutbound { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MultiplexProtocol` is never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:94:10 [INFO] [stdout] | [INFO] [stdout] 94 | pub enum MultiplexProtocol { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `enabled`, `with_padding`, and `with_brutal` are never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 118 | impl MultiplexInbound { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 119 | /// 创建新的入站多路复用配置 [INFO] [stdout] 120 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn enabled(mut self) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn with_padding(mut self, padding: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn with_brutal(mut self, brutal: TcpBrutal) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 143 | impl MultiplexOutbound { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 144 | /// 创建新的出站多路复用配置 [INFO] [stdout] 145 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn enabled(mut self) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn with_protocol(mut self, protocol: MultiplexProtocol) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn with_max_connections(mut self, max: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn with_min_streams(mut self, min: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn with_max_streams(mut self, max: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn with_padding(mut self, padding: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn with_brutal(mut self, brutal: TcpBrutal) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn smux(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn yamux(mut self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn h2mux(mut self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `with_bandwidth` are never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 210 | impl TcpBrutal { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 211 | /// 创建新的 TCP Brutal 配置 [INFO] [stdout] 212 | pub fn new(up_mbps: u32, down_mbps: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn with_bandwidth(mut self, up_mbps: u32, down_mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OutboundTlsConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/tls.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | pub struct OutboundTlsConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EchOutboundConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/tls.rs:261:12 [INFO] [stdout] | [INFO] [stdout] 261 | pub struct EchOutboundConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RealityOutboundConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/tls.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | pub struct RealityOutboundConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UtlsConfig` is never constructed [INFO] [stdout] --> src/singboxconfig/shared/tls.rs:479:12 [INFO] [stdout] | [INFO] [stdout] 479 | pub struct UtlsConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `UtlsFingerprint` is never used [INFO] [stdout] --> src/singboxconfig/shared/tls.rs:598:10 [INFO] [stdout] | [INFO] [stdout] 598 | pub enum UtlsFingerprint { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `http`, `ws`, `quic`, `grpc`, and `http_upgrade` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 170 | impl V2RayTransport { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 171 | /// 创建 HTTP 传输 [INFO] [stdout] 172 | pub fn http() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | pub fn ws() -> Self { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn quic() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn grpc() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn http_upgrade() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 197 | impl HttpTransport { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 198 | /// 创建新的 HTTP 传输配置 [INFO] [stdout] 199 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn with_host(mut self, host: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn with_path(mut self, path: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn with_method(mut self, method: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn with_idle_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 242 | pub fn with_ping_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 248 | impl WebSocketTransport { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 249 | /// 创建新的 WebSocket 传输配置 [INFO] [stdout] 250 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 255 | pub fn with_path(mut self, path: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn with_max_early_data(mut self, size: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 281 | pub fn with_early_data_header_name(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn xray_compatible(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_service_name`, `with_idle_timeout`, `with_ping_timeout`, and `with_permit_without_stream` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 293 | impl GrpcTransport { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 294 | /// 创建新的 gRPC 传输配置 [INFO] [stdout] 295 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 300 | pub fn with_service_name(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn with_idle_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn with_ping_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub fn with_permit_without_stream(mut self, permit: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_host`, `with_path`, `with_headers`, and `add_header` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:326:12 [INFO] [stdout] | [INFO] [stdout] 324 | impl HttpUpgradeTransport { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 325 | /// 创建新的 HTTPUpgrade 传输配置 [INFO] [stdout] 326 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 331 | pub fn with_host(mut self, host: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 337 | pub fn with_path(mut self, path: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 343 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_mins`, `from_hours`, `as_millis`, `as_secs`, `as_mins`, and `to_std` are never used [INFO] [stdout] --> src/singboxconfig/types/duration.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Duration { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn from_mins(mins: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn from_hours(hours: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn as_millis(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn as_secs(&self) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn as_mins(&self) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn to_std(&self) -> std::time::Duration { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `NetworkStrategy` is never used [INFO] [stdout] --> src/singboxconfig/types/network_strategy.rs:13:10 [INFO] [stdout] | [INFO] [stdout] 13 | pub enum NetworkStrategy { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `NetworkType` is never used [INFO] [stdout] --> src/singboxconfig/types/network_strategy.rs:54:10 [INFO] [stdout] | [INFO] [stdout] 54 | pub enum NetworkType { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_int`, `from_hex`, and `as_u32` are never used [INFO] [stdout] --> src/singboxconfig/types/routing_mark.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl RoutingMark { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 20 | /// 从整数创建 [INFO] [stdout] 21 | pub fn from_int(value: u32) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn from_hex(value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn as_u32(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/singboxconfig/types/string_or_array.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl StringOrArray { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 37 | /// 创建单个字符串 [INFO] [stdout] 38 | pub fn single>(s: S) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn array(iter: I) -> Self [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn is_single(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn is_array(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn as_single(&self) -> Option<&str> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn as_array(&self) -> Option<&[String]> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn into_vec(self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn as_slice(&self) -> Vec<&str> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn join(&self, separator: &str) -> String { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `VlessFlow` is never used [INFO] [stdout] --> src/singboxconfig/types/user.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum VlessFlow { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VMessUser` is never constructed [INFO] [stdout] --> src/singboxconfig/types/user.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct VMessUser { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `with_alter_id` are never used [INFO] [stdout] --> src/singboxconfig/types/user.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl VMessUser { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 72 | /// 创建新的 VMess 用户 [INFO] [stdout] 73 | pub fn new(name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn with_alter_id(name: impl Into, uuid: impl Into, alter_id: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VlessUser` is never constructed [INFO] [stdout] --> src/singboxconfig/types/user.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct VlessUser { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_flow`, `set_flow`, and `with_xtls_vision` are never used [INFO] [stdout] --> src/singboxconfig/types/user.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 121 | impl VlessUser { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 122 | /// 创建新的 VLESS 用户 [INFO] [stdout] 123 | pub fn new(name: impl Into, uuid: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn with_flow(name: impl Into, uuid: impl Into, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn with_xtls_vision(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_name`, and `with_password` are never used [INFO] [stdout] --> src/singboxconfig/types/user.rs:185:12 [INFO] [stdout] | [INFO] [stdout] 183 | impl TuicUser { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 184 | /// 创建新的 TUIC 用户(仅 UUID) [INFO] [stdout] 185 | pub fn new(uuid: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn with_name(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | pub fn with_password(mut self, password: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ShadowsocksDestination` is never constructed [INFO] [stdout] --> src/singboxconfig/types/user.rs:236:12 [INFO] [stdout] | [INFO] [stdout] 236 | pub struct ShadowsocksDestination { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/singboxconfig/types/user.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 250 | impl ShadowsocksDestination { [INFO] [stdout] | --------------------------- associated function in this implementation [INFO] [stdout] 251 | /// 创建新的中继目标 [INFO] [stdout] 252 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 31.93s [INFO] running `Command { std: "docker" "inspect" "d8fa9474b5b86f7fe32f0d77ea0339136f11357debe1686dcc875eedaff6266a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d8fa9474b5b86f7fe32f0d77ea0339136f11357debe1686dcc875eedaff6266a", kill_on_drop: false }` [INFO] [stdout] d8fa9474b5b86f7fe32f0d77ea0339136f11357debe1686dcc875eedaff6266a [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a6a787d33b924a8a71d94e3ca2b898ea0c3142446960697a0f89c3e1e8c88a75 [INFO] running `Command { std: "docker" "start" "-a" "a6a787d33b924a8a71d94e3ca2b898ea0c3142446960697a0f89c3e1e8c88a75", kill_on_drop: false }` [INFO] [stderr] Compiling ezsingbox v0.1.16 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `VlessFlow` [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:15:70 [INFO] [stdout] | [INFO] [stdout] 15 | AnyTlsInbound, CongestionControl, Hysteria2Inbound, TuicInbound, VlessFlow, VlessInbound, [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: `AutoAnyTlsBuilder`, `AutoAnyTlsConfig`, `AutoAnyTlsError`, `AutoAnyTlsResult`, and `ConnectionInfo` [INFO] [stdout] --> src/autoconfig/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | AutoAnyTlsBuilder, AutoAnyTlsConfig, AutoAnyTlsError, AutoAnyTlsResult, ConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AutoHysteria2Builder`, `AutoHysteria2Config`, `AutoHysteria2Error`, `AutoHysteria2Result`, and `Hysteria2ConnectionInfo` [INFO] [stdout] --> src/autoconfig/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | AutoHysteria2Builder, AutoHysteria2Config, AutoHysteria2Error, AutoHysteria2Result, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | Hysteria2ConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AutoTuicBuilder`, `AutoTuicConfig`, `AutoTuicError`, `AutoTuicResult`, `TuicConnectionInfo`, and `TuicUserConfig` [INFO] [stdout] --> src/autoconfig/mod.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | AutoTuicBuilder, AutoTuicConfig, AutoTuicError, AutoTuicResult, TuicConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | TuicUserConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AutoVlessBuilder`, `AutoVlessConfig`, `AutoVlessError`, `AutoVlessResult`, `VlessConnectionInfo`, and `VlessUserConfig` [INFO] [stdout] --> src/autoconfig/mod.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | AutoVlessBuilder, AutoVlessConfig, AutoVlessError, AutoVlessResult, VlessConnectionInfo, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | VlessUserConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AnyTlsAutoResult`, `AutoBuildResult`, `AutoDefaultError`, `AutoDefaultResult`, `AutoDefault`, `DEFAULT_PORTS`, `Hysteria2AutoResult`, `Protocol`, `TuicAutoResult`, `default_port`, `fallback_port`, `quick_all`, `quick_anytls`, `quick_hysteria2`, and `quick_tuic` [INFO] [stdout] --> src/autoconfig/mod.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | AnyTlsAutoResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 40 | AutoBuildResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | // 构建器 [INFO] [stdout] 42 | AutoDefault, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 43 | // 辅助类型 [INFO] [stdout] 44 | AutoDefaultError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 45 | AutoDefaultResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 46 | // 端口常量和函数 [INFO] [stdout] 47 | DEFAULT_PORTS, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 48 | GeneratedUser, [INFO] [stdout] 49 | Hysteria2AutoResult, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | Protocol, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 53 | TuicAutoResult, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 54 | default_port, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 55 | fallback_port, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 56 | // 便捷函数 [INFO] [stdout] 57 | quick_all, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 58 | quick_anytls, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 59 | quick_hysteria2, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | quick_tuic, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PublicIpError`, `TlsMode`, `UserConfig`, `generate_hex_string`, `generate_nip_domain`, `generate_password_with_length`, `generate_password`, `generate_random_bytes`, `generate_sslip_domain`, `generate_uuid_simple`, `generate_uuid`, `get_public_ip_with_timeout`, and `get_public_ip` [INFO] [stdout] --> src/autoconfig/mod.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | PublicIpError, TlsMode, UserConfig, generate_hex_string, generate_nip_domain, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 66 | generate_password, generate_password_with_length, generate_random_bytes, generate_sslip_domain, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 67 | generate_uuid, generate_uuid_simple, get_public_ip, get_public_ip_with_timeout, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dns::*` [INFO] [stdout] --> src/dns/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use dns::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Hysteria2MasqueradeConfig`, `Hysteria2Masquerade`, `Hysteria2Obfs`, and `MasqueradeType` [INFO] [stdout] --> src/singboxconfig/inbound/mod.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | Hysteria2Inbound, Hysteria2Masquerade, Hysteria2MasqueradeConfig, Hysteria2Obfs, MasqueradeType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DomainResolverConfig` and `DomainResolver` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | pub use dial::{DialFields, DomainResolver, DomainResolverConfig}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AliDnsConfig`, `CloudflareConfig`, and `Dns01Challenge` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:13:27 [INFO] [stdout] | [INFO] [stdout] 13 | pub use dns01_challenge::{AliDnsConfig, CloudflareConfig, Dns01Challenge}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MultiplexOutbound`, `MultiplexProtocol`, and `TcpBrutal` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:15:39 [INFO] [stdout] | [INFO] [stdout] 15 | pub use multiplex::{MultiplexInbound, MultiplexOutbound, MultiplexProtocol, TcpBrutal}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AcmeExternalAccount`, `AcmeProviderPreset`, `AcmeProvider`, `CipherSuite`, `ClientAuthentication`, `CurvePreference`, `EchInboundConfig`, `EchOutboundConfig`, `RealityOutboundConfig`, `TlsVersion`, `UtlsConfig`, and `UtlsFingerprint` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:17:17 [INFO] [stdout] | [INFO] [stdout] 17 | AcmeConfig, AcmeExternalAccount, AcmeProvider, AcmeProviderPreset, CipherSuite, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 18 | ClientAuthentication, CurvePreference, EchInboundConfig, EchOutboundConfig, InboundTlsConfig, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | OutboundTlsConfig, RealityHandshake, RealityInboundConfig, RealityOutboundConfig, TlsVersion, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] 20 | UtlsConfig, UtlsFingerprint, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GrpcTransport`, `HttpTransport`, `HttpUpgradeTransport`, `QuicTransport`, and `WebSocketTransport` [INFO] [stdout] --> src/singboxconfig/shared/mod.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | GrpcTransport, HttpTransport, HttpUpgradeTransport, QuicTransport, V2RayTransport, [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] 24 | WebSocketTransport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ParseDurationError` [INFO] [stdout] --> src/singboxconfig/types/mod.rs:13:30 [INFO] [stdout] | [INFO] [stdout] 13 | pub use duration::{Duration, ParseDurationError}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ShadowsocksDestination`, `VMessUser`, `VlessFlow`, and `VlessUser` [INFO] [stdout] --> src/singboxconfig/types/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | ShadowsocksDestination, TuicUser, UserWithPassword, VMessUser, VlessFlow, VlessUser, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | sniff: None, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff_override_destination`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | sniff_override_destination: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff_timeout`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | sniff_timeout: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::domain_strategy`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 130 | domain_strategy: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::udp_disable_domain_unmapping`: 请使用路由嗅探设置 [INFO] [stdout] --> src/singboxconfig/shared/listen.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | udp_disable_domain_unmapping: None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `public_ip` is never read [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct AutoDefaultResult { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 145 | /// 服务器公网 IP [INFO] [stdout] 146 | pub public_ip: IpAddr, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoDefaultResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `NoAvailablePort` and `ConfigError` are never constructed [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:270:5 [INFO] [stdout] | [INFO] [stdout] 266 | pub enum AutoDefaultError { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 270 | NoAvailablePort, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 271 | /// 配置生成失败 [INFO] [stdout] 272 | ConfigError(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoDefaultError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `public_ip_str` and `masquerade` are never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:405:12 [INFO] [stdout] | [INFO] [stdout] 350 | impl AutoDefault { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 405 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 487 | pub fn masquerade(mut self, url: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:819:12 [INFO] [stdout] | [INFO] [stdout] 819 | AnyTls(AnyTlsAutoResult), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 819 - AnyTls(AnyTlsAutoResult), [INFO] [stdout] 819 + AnyTls(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:821:15 [INFO] [stdout] | [INFO] [stdout] 821 | Hysteria2(Hysteria2AutoResult), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 821 - Hysteria2(Hysteria2AutoResult), [INFO] [stdout] 821 + Hysteria2(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:823:10 [INFO] [stdout] | [INFO] [stdout] 823 | Tuic(TuicAutoResult), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 823 - Tuic(TuicAutoResult), [INFO] [stdout] 823 + Tuic(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:825:18 [INFO] [stdout] | [INFO] [stdout] 825 | VlessReality(VlessRealityAutoResult), [INFO] [stdout] | ------------ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 825 - VlessReality(VlessRealityAutoResult), [INFO] [stdout] 825 + VlessReality(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_anytls` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1108:8 [INFO] [stdout] | [INFO] [stdout] 1108 | pub fn quick_anytls() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_hysteria2` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1113:8 [INFO] [stdout] | [INFO] [stdout] 1113 | pub fn quick_hysteria2() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_tuic` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1118:8 [INFO] [stdout] | [INFO] [stdout] 1118 | pub fn quick_tuic() -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_all` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1123:8 [INFO] [stdout] | [INFO] [stdout] 1123 | pub fn quick_all() -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_vless_reality` is never used [INFO] [stdout] --> src/autoconfig/autoByDefault.rs:1128:8 [INFO] [stdout] | [INFO] [stdout] 1128 | pub fn quick_vless_reality() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/autoconfig/autoanytls.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl AutoAnyTlsBuilder { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn disable_tls(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn no_padding(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `server` and `server_name` are never read [INFO] [stdout] --> src/autoconfig/autoanytls.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 193 | pub struct ConnectionInfo { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 194 | /// 服务器地址 [INFO] [stdout] 195 | pub server: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub server_name: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ConfigConflict` and `InvalidConfig` are never constructed [INFO] [stdout] --> src/autoconfig/autoanytls.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 204 | pub enum AutoAnyTlsError { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 208 | ConfigConflict(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 209 | /// 无效配置 [INFO] [stdout] 210 | InvalidConfig(String), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoAnyTlsError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/autoconfig/autohy2.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl AutoHysteria2Builder { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn up_mbps(mut self, mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn down_mbps(mut self, mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn with_obfs(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn ignore_client_bandwidth(mut self, ignore: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn custom_cert_with_server_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `server` and `server_name` are never read [INFO] [stdout] --> src/autoconfig/autohy2.rs:239:9 [INFO] [stdout] | [INFO] [stdout] 237 | pub struct Hysteria2ConnectionInfo { [INFO] [stdout] | ----------------------- fields in this struct [INFO] [stdout] 238 | /// 服务器地址 [INFO] [stdout] 239 | pub server: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub server_name: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Hysteria2ConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ConfigConflict` is never constructed [INFO] [stdout] --> src/autoconfig/autohy2.rs:258:5 [INFO] [stdout] | [INFO] [stdout] 254 | pub enum AutoHysteria2Error { [INFO] [stdout] | ------------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 258 | ConfigConflict(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoHysteria2Error` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `uuid_only` is never used [INFO] [stdout] --> src/autoconfig/autotuic.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl TuicUserConfig { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn uuid_only(uuid: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/autoconfig/autotuic.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl AutoTuicBuilder { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn congestion_control(mut self, cc: CongestionControl) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn new_reno(mut self) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn auth_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn heartbeat(mut self, interval: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 292 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `server` and `server_name` are never read [INFO] [stdout] --> src/autoconfig/autotuic.rs:347:9 [INFO] [stdout] | [INFO] [stdout] 345 | pub struct TuicConnectionInfo { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 346 | /// 服务器地址 [INFO] [stdout] 347 | pub server: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | pub server_name: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TuicConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ConfigConflict` is never constructed [INFO] [stdout] --> src/autoconfig/autotuic.rs:366:5 [INFO] [stdout] | [INFO] [stdout] 362 | pub enum AutoTuicError { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 366 | ConfigConflict(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoTuicError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_flow` is never used [INFO] [stdout] --> src/autoconfig/autovless.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl VlessUserConfig { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/autoconfig/autovless.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 131 | impl AutoVlessBuilder { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn add_user_config(mut self, user: VlessUserConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn acme(mut self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn acme_with_domain_and_email( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn custom_cert( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn with_multiplex_config(mut self, multiplex: MultiplexInbound) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn with_transport(mut self, transport: V2RayTransport) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `server`, `server_name`, and `transport_type` are never read [INFO] [stdout] --> src/autoconfig/autovless.rs:316:9 [INFO] [stdout] | [INFO] [stdout] 314 | pub struct VlessConnectionInfo { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 315 | /// 服务器地址 [INFO] [stdout] 316 | pub server: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | pub server_name: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub transport_type: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VlessConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ConfigConflict` and `InvalidConfig` are never constructed [INFO] [stdout] --> src/autoconfig/autovless.rs:337:5 [INFO] [stdout] | [INFO] [stdout] 333 | pub enum AutoVlessError { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 337 | ConfigConflict(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 338 | /// 无效配置 [INFO] [stdout] 339 | InvalidConfig(String), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AutoVlessError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `acme` and `acme_with_domain_and_email` are never used [INFO] [stdout] --> src/autoconfig/tools.rs:230:12 [INFO] [stdout] | [INFO] [stdout] 228 | impl TlsMode { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 229 | /// 创建 ACME 模式(使用 sslip.io) [INFO] [stdout] 230 | pub fn acme() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub fn acme_with_domain_and_email(domain: impl Into, email: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cmd_serve` is never used [INFO] [stdout] --> src/commands.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn cmd_serve() -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LegacyDnsServer` is never constructed [INFO] [stdout] --> src/dns/dns.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct LegacyDnsServer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_server`, `add_rule`, and `client_subnet` are never used [INFO] [stdout] --> src/dns/dns.rs:794:12 [INFO] [stdout] | [INFO] [stdout] 787 | impl Dns { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 794 | pub fn add_server(mut self, server: DnsServer) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 800 | pub fn add_rule(mut self, rule: DnsRule) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 836 | pub fn client_subnet>(mut self, subnet: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `tag`, `path`, and `paths` are never used [INFO] [stdout] --> src/dns/dns.rs:863:12 [INFO] [stdout] | [INFO] [stdout] 861 | impl HostsDnsServer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 862 | /// 创建新的 Hosts DNS 服务器 [INFO] [stdout] 863 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 868 | pub fn tag>(mut self, tag: S) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 874 | pub fn path>(mut self, path: S) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 880 | pub fn paths(mut self, paths: I) -> Self [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `address_resolver` is never used [INFO] [stdout] --> src/dns/dns.rs:917:12 [INFO] [stdout] | [INFO] [stdout] 892 | impl RemoteDnsServer { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 917 | pub fn address_resolver>(mut self, resolver: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `domains`, `domain_suffix`, `action`, and `invert` are never used [INFO] [stdout] --> src/dns/dns.rs:967:12 [INFO] [stdout] | [INFO] [stdout] 954 | impl DefaultDnsRule { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 967 | pub fn domains(mut self, domains: I) -> Self [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 979 | pub fn domain_suffix>(mut self, suffix: S) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 991 | pub fn action(mut self, action: DnsRuleAction) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 997 | pub fn invert(mut self, invert: bool) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_padding_scheme` and `with_listen_fields` are never used [INFO] [stdout] --> src/singboxconfig/inbound/anytls.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl AnyTlsInbound { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn with_padding_scheme(mut self, scheme: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_masquerade_proxy`, `with_brutal_debug`, and `with_listen_fields` are never used [INFO] [stdout] --> src/singboxconfig/inbound/hysteria2.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 133 | impl Hysteria2Inbound { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn with_masquerade_proxy(mut self, url: impl Into, rewrite_host: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn with_brutal_debug(mut self, debug: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `salamander` is never used [INFO] [stdout] --> src/singboxconfig/inbound/hysteria2.rs:246:12 [INFO] [stdout] | [INFO] [stdout] 244 | impl Hysteria2Obfs { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 245 | /// 创建 salamander 混淆 [INFO] [stdout] 246 | pub fn salamander(password: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `with_listen_fields` is never used [INFO] [stdout] --> src/singboxconfig/inbound/tuic.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl TuicInbound { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `with_listen_fields` is never used [INFO] [stdout] --> src/singboxconfig/inbound/vless.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 77 | impl VlessInbound { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_idle_session_check_interval`, `with_idle_session_timeout`, `with_tls`, and `with_dial` are never used [INFO] [stdout] --> src/singboxconfig/outbound/anytls.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 56 | impl AnyTlsOutbound { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn with_idle_session_check_interval(mut self, interval: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn with_idle_session_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn with_tls(mut self, tls: OutboundTlsConfig) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn with_dial(mut self, dial: DialFields) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `with_brutal` is never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 118 | impl MultiplexInbound { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn with_brutal(mut self, brutal: TcpBrutal) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_protocol` and `with_max_streams` are never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 143 | impl MultiplexOutbound { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn with_protocol(mut self, protocol: MultiplexProtocol) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn with_max_streams(mut self, max: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `with_bandwidth` is never used [INFO] [stdout] --> src/singboxconfig/shared/multiplex.rs:221:12 [INFO] [stdout] | [INFO] [stdout] 210 | impl TcpBrutal { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn with_bandwidth(mut self, up_mbps: u32, down_mbps: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_method`, `with_headers`, `with_idle_timeout`, and `with_ping_timeout` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 197 | impl HttpTransport { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn with_method(mut self, method: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn with_idle_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 242 | pub fn with_ping_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_headers`, `add_header`, and `with_early_data_header_name` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:261:12 [INFO] [stdout] | [INFO] [stdout] 248 | impl WebSocketTransport { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 281 | pub fn with_early_data_header_name(mut self, name: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_idle_timeout` and `with_ping_timeout` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:306:12 [INFO] [stdout] | [INFO] [stdout] 293 | impl GrpcTransport { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn with_idle_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn with_ping_timeout(mut self, timeout: Duration) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_headers` and `add_header` are never used [INFO] [stdout] --> src/singboxconfig/shared/v2ray.rs:343:12 [INFO] [stdout] | [INFO] [stdout] 324 | impl HttpUpgradeTransport { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 343 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `as_secs`, `as_mins`, and `to_std` are never used [INFO] [stdout] --> src/singboxconfig/types/duration.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Duration { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn as_secs(&self) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn as_mins(&self) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn to_std(&self) -> std::time::Duration { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_slice` is never used [INFO] [stdout] --> src/singboxconfig/types/string_or_array.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl StringOrArray { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn as_slice(&self) -> Vec<&str> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_flow` is never used [INFO] [stdout] --> src/singboxconfig/types/user.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 121 | impl VlessUser { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.52s [INFO] running `Command { std: "docker" "inspect" "a6a787d33b924a8a71d94e3ca2b898ea0c3142446960697a0f89c3e1e8c88a75", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a6a787d33b924a8a71d94e3ca2b898ea0c3142446960697a0f89c3e1e8c88a75", kill_on_drop: false }` [INFO] [stdout] a6a787d33b924a8a71d94e3ca2b898ea0c3142446960697a0f89c3e1e8c88a75 [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 156ad83515d78ed268c52df7fcb8792b8ef85d8c211bb783f2c7fdeaedfd5ce0 [INFO] running `Command { std: "docker" "start" "-a" "156ad83515d78ed268c52df7fcb8792b8ef85d8c211bb783f2c7fdeaedfd5ce0", kill_on_drop: false }` [INFO] [stdout] [INFO] [stdout] running 212 tests [INFO] [stdout] test autoconfig::autoByDefault::tests::test_auto_hysteria2 ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_auto_anytls ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_auto_build_generic ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_custom_tag ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_default_user_generation ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_default_ports ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_builder_custom_domain ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_fallback_port_usage ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_auto_tuic ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_multi_protocol_builder ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_serialize_inbound ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_short_id_generation ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_builder_multiple_users ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_multi_protocol_with_vless_reality ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_vless_reality_custom_handshake ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_protocol_default_tags ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_builder_custom_port ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_multi_protocol_enable_all ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_reality_keypair_generation ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_builder_custom_cert ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_builder_no_users_generates_default ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_serialize_result ... ok [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_custom_domain ... ok [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_default ... ok [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_multiple_users ... ok [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_no_users_generates_default ... ok [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_with_bandwidth ... ok [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_with_obfs ... ok [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_custom_domain ... ok [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_multiple_users ... ok [INFO] [stderr] warning: unused import: `VlessFlow` [INFO] [stdout] test autoconfig::autohy2::tests::test_serialize_result ... ok [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:15:70 [INFO] [stdout] test autoconfig::autohy2::tests::test_tls_disabled_error ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_default ... ok [INFO] [stderr] 15 | AnyTlsInbound, CongestionControl, Hysteria2Inbound, TuicInbound, VlessFlow, VlessInbound, [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_with_auth_timeout ... ok [INFO] [stderr] | ^^^^^^^^^ [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_with_congestion_control ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_no_users_generates_default ... ok [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] test autoconfig::autohy2::tests::test_builder_with_masquerade ... ok [INFO] [stderr] [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_with_heartbeat ... ok [INFO] [stderr] warning: unused imports: `AutoAnyTlsBuilder`, `AutoAnyTlsConfig`, `AutoAnyTlsError`, `AutoAnyTlsResult`, and `ConnectionInfo` [INFO] [stdout] test autoconfig::autotuic::tests::test_custom_cert ... ok [INFO] [stderr] --> src/autoconfig/mod.rs:15:5 [INFO] [stdout] test autoconfig::autotuic::tests::test_tls_disabled_error ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::autotuic::tests::test_tuic_user_config_new ... ok [INFO] [stderr] 15 | AutoAnyTlsBuilder, AutoAnyTlsConfig, AutoAnyTlsError, AutoAnyTlsResult, ConnectionInfo, [INFO] [stdout] test autoconfig::autovless::tests::test_builder_custom_port ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::autovless::tests::test_builder_custom_domain ... ok [INFO] [stderr] [INFO] [stdout] test autoconfig::autovless::tests::test_builder_default ... ok [INFO] [stderr] warning: unused imports: `AutoHysteria2Builder`, `AutoHysteria2Config`, `AutoHysteria2Error`, `AutoHysteria2Result`, and `Hysteria2ConnectionInfo` [INFO] [stdout] test autoconfig::autovless::tests::test_builder_full_config ... ok [INFO] [stderr] --> src/autoconfig/mod.rs:20:5 [INFO] [stdout] test autoconfig::autovless::tests::test_builder_default_xtls_vision ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::autovless::tests::test_builder_multiple_users ... ok [INFO] [stderr] 20 | AutoHysteria2Builder, AutoHysteria2Config, AutoHysteria2Error, AutoHysteria2Result, [INFO] [stdout] test autoconfig::autotuic::tests::test_tuic_user_config_with_uuid ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::autovless::tests::test_builder_disable_tls ... ok [INFO] [stderr] 21 | Hysteria2ConnectionInfo, [INFO] [stdout] test autoconfig::autotuic::tests::test_serialize_result ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::autotuic::tests::test_builder_with_zero_rtt ... ok [INFO] [stderr] [INFO] [stdout] test autoconfig::autotuic::tests::test_tuic_user_config_get_or_generate ... ok [INFO] [stderr] warning: unused imports: `AutoTuicBuilder`, `AutoTuicConfig`, `AutoTuicError`, `AutoTuicResult`, `TuicConnectionInfo`, and `TuicUserConfig` [INFO] [stdout] test autoconfig::autovless::tests::test_builder_custom_cert ... ok [INFO] [stderr] --> src/autoconfig/mod.rs:26:5 [INFO] [stdout] test autoconfig::autovless::tests::test_builder_no_users_generates_default ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::autovless::tests::test_error_missing_config ... ok [INFO] [stderr] 26 | AutoTuicBuilder, AutoTuicConfig, AutoTuicError, AutoTuicResult, TuicConnectionInfo, [INFO] [stdout] test autoconfig::autovless::tests::test_vless_user_config_get_or_generate_uuid ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::autovless::tests::test_serialize_result ... ok [INFO] [stderr] 27 | TuicUserConfig, [INFO] [stdout] test autoconfig::autovless::tests::test_vless_user_config_xtls_vision ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::autovless::tests::test_builder_with_multiplex ... ok [INFO] [stderr] [INFO] [stdout] test autoconfig::autovless::tests::test_vless_user_config_new ... ok [INFO] [stderr] warning: unused imports: `AutoVlessBuilder`, `AutoVlessConfig`, `AutoVlessError`, `AutoVlessResult`, `VlessConnectionInfo`, and `VlessUserConfig` [INFO] [stdout] test autoconfig::tools::tests::test_generate_hex_string ... ok [INFO] [stderr] --> src/autoconfig/mod.rs:32:5 [INFO] [stdout] test autoconfig::autovless::tests::test_vless_user_config_with_flow ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::tools::tests::test_generate_nip_domain ... ok [INFO] [stderr] 32 | AutoVlessBuilder, AutoVlessConfig, AutoVlessError, AutoVlessResult, VlessConnectionInfo, [INFO] [stdout] test autoconfig::tools::tests::test_generate_password_with_length ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::autovless::tests::test_vless_user_config_with_uuid ... ok [INFO] [stderr] 33 | VlessUserConfig, [INFO] [stdout] test autoconfig::tools::tests::test_generate_uuid_simple ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::tools::tests::test_generate_sslip_domain_v6 ... ok [INFO] [stderr] [INFO] [stdout] test autoconfig::tools::tests::test_generate_uuid ... ok [INFO] [stderr] warning: unused imports: `AnyTlsAutoResult`, `AutoBuildResult`, `AutoDefaultError`, `AutoDefaultResult`, `AutoDefault`, `DEFAULT_PORTS`, `Hysteria2AutoResult`, `Protocol`, `TuicAutoResult`, `default_port`, `fallback_port`, `quick_all`, `quick_anytls`, `quick_hysteria2`, and `quick_tuic` [INFO] [stdout] test autoconfig::tools::tests::test_generate_password ... ok [INFO] [stderr] --> src/autoconfig/mod.rs:39:5 [INFO] [stdout] test autoconfig::tools::tests::test_tls_mode_acme_with_domain ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::tools::tests::test_tls_mode_custom ... ok [INFO] [stderr] 39 | AnyTlsAutoResult, [INFO] [stdout] test autoconfig::tools::tests::test_tls_mode_default ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::tools::tests::test_generate_sslip_domain_v4 ... ok [INFO] [stderr] 40 | AutoBuildResult, [INFO] [stdout] test autoconfig::tools::tests::test_user_config_with_password ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] test dns::dns::tests::test_default_dns_rule ... ok [INFO] [stderr] 41 | // 构建器 [INFO] [stdout] test dns::dns::tests::test_dns_config_serialize ... ok [INFO] [stderr] 42 | AutoDefault, [INFO] [stdout] test dns::dns::tests::test_dns_reject_action ... ok [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stdout] test dns::dns::tests::test_dns_rule_serialize ... ok [INFO] [stderr] 43 | // 辅助类型 [INFO] [stdout] test dns::dns::tests::test_fakeip_dns_server ... ok [INFO] [stderr] 44 | AutoDefaultError, [INFO] [stdout] test dns::dns::tests::test_legacy_fakeip ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] test dns::dns::tests::test_local_dns_server ... ok [INFO] [stderr] 45 | AutoDefaultResult, [INFO] [stdout] test dns::dns::tests::test_hosts_dns_server_serialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] test dns::dns::tests::test_port_or_array ... ok [INFO] [stderr] 46 | // 端口常量和函数 [INFO] [stdout] test dns::dns::tests::test_query_type ... ok [INFO] [stderr] 47 | DEFAULT_PORTS, [INFO] [stdout] test singboxconfig::inbound::anytls::tests::test_builder_pattern ... ok [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::anytls::tests::test_default_padding_scheme ... ok [INFO] [stderr] 48 | GeneratedUser, [INFO] [stdout] test singboxconfig::inbound::anytls::tests::test_add_user ... ok [INFO] [stderr] 49 | Hysteria2AutoResult, [INFO] [stdout] test singboxconfig::inbound::anytls::tests::test_new ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::tools::tests::test_user_config_new ... ok [INFO] [stderr] ... [INFO] [stdout] test dns::dns::tests::test_remote_dns_server ... ok [INFO] [stderr] 52 | Protocol, [INFO] [stdout] test dns::dns::tests::test_dns_builder ... ok [INFO] [stderr] | ^^^^^^^^ [INFO] [stdout] test dns::dns::tests::test_dns_config_deserialize ... ok [INFO] [stderr] 53 | TuicAutoResult, [INFO] [stdout] test dns::dns::tests::test_dns_route_action ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] test dns::dns::tests::test_logical_dns_rule ... ok [INFO] [stderr] 54 | default_port, [INFO] [stdout] test singboxconfig::inbound::anytls::tests::test_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] test autoconfig::tools::tests::test_user_config_get_or_generate_password ... ok [INFO] [stderr] 55 | fallback_port, [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_masquerade_file ... ok [INFO] [stderr] 56 | // 便捷函数 [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_with_bandwidth ... ok [INFO] [stderr] 57 | quick_all, [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_add_user_uuid_only ... ok [INFO] [stderr] | ^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_congestion_control_deserialize ... ok [INFO] [stderr] 58 | quick_anytls, [INFO] [stdout] test singboxconfig::inbound::anytls::tests::test_serialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_deserialize ... ok [INFO] [stderr] 59 | quick_hysteria2, [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_masquerade_url ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_new ... ok [INFO] [stderr] 60 | quick_tuic, [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_deserialize_minimal ... ok [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_serialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_add_user ... ok [INFO] [stderr] warning: unused imports: `PublicIpError`, `TlsMode`, `UserConfig`, `generate_hex_string`, `generate_nip_domain`, `generate_password_with_length`, `generate_password`, `generate_random_bytes`, `generate_sslip_domain`, `generate_uuid_simple`, `generate_uuid`, `get_public_ip_with_timeout`, and `get_public_ip` [INFO] [stdout] test singboxconfig::inbound::hysteria2::tests::test_with_obfs ... ok [INFO] [stderr] --> src/autoconfig/mod.rs:65:5 [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_with_zero_rtt ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_serialize ... ok [INFO] [stderr] 65 | PublicIpError, TlsMode, UserConfig, generate_hex_string, generate_nip_domain, [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_with_congestion_control ... ok [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_add_user ... ok [INFO] [stderr] 66 | generate_password, generate_password_with_length, generate_random_bytes, generate_sslip_domain, [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_add_simple_user ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_congestion_control_serialize ... ok [INFO] [stderr] 67 | generate_uuid, generate_uuid_simple, get_public_ip, get_public_ip_with_timeout, [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_add_user_with_flow ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::inbound::tuic::tests::test_new ... ok [INFO] [stderr] warning: unused import: `dns::*` [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_deserialize_without_flow ... ok [INFO] [stderr] --> src/dns/mod.rs:8:9 [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_new ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_serialize ... ok [INFO] [stderr] 8 | pub use dns::*; [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_vless_flow_deserialize ... ok [INFO] [stderr] | ^^^^^^ [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_vless_flow_serialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_serialize_with_flow ... ok [INFO] [stderr] warning: unused imports: `Hysteria2MasqueradeConfig`, `Hysteria2Masquerade`, `Hysteria2Obfs`, and `MasqueradeType` [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_full_config ... ok [INFO] [stderr] --> src/singboxconfig/inbound/mod.rs:12:23 [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_vless_user_new ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::outbound::anytls::tests::test_new ... ok [INFO] [stderr] 12 | Hysteria2Inbound, Hysteria2Masquerade, Hysteria2MasqueradeConfig, Hysteria2Obfs, MasqueradeType, [INFO] [stdout] test singboxconfig::outbound::anytls::tests::test_serialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_alidns_deserialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_cloudflare_config_new ... ok [INFO] [stderr] warning: unused imports: `DomainResolverConfig` and `DomainResolver` [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_cloudflare_deserialize ... ok [INFO] [stderr] --> src/singboxconfig/shared/mod.rs:12:28 [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_alidns_config_builder ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_alidns_with_region_serialize ... ok [INFO] [stderr] 12 | pub use dial::{DialFields, DomainResolver, DomainResolverConfig}; [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_inbound_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::inbound::vless::tests::test_vless_user_with_xtls_vision ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_inbound_serialize ... ok [INFO] [stderr] warning: unused imports: `AliDnsConfig`, `CloudflareConfig`, and `Dns01Challenge` [INFO] [stdout] test singboxconfig::outbound::anytls::tests::test_builder_pattern ... ok [INFO] [stderr] --> src/singboxconfig/shared/mod.rs:13:27 [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_outbound_deserialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::outbound::anytls::tests::test_deserialize ... ok [INFO] [stderr] 13 | pub use dns01_challenge::{AliDnsConfig, CloudflareConfig, Dns01Challenge}; [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_cloudflare_serialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_default_protocol ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::shared::dns01_challenge::tests::test_alidns_serialize ... ok [INFO] [stderr] warning: unused imports: `MultiplexOutbound`, `MultiplexProtocol`, and `TcpBrutal` [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_builder_chain ... ok [INFO] [stderr] --> src/singboxconfig/shared/mod.rs:15:39 [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_protocol_deserialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_protocol_serialize ... ok [INFO] [stderr] 15 | pub use multiplex::{MultiplexInbound, MultiplexOutbound, MultiplexProtocol, TcpBrutal}; [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_tcp_brutal_serialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_factory_methods ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_http_transport_serialize ... ok [INFO] [stderr] warning: unused imports: `AcmeExternalAccount`, `AcmeProviderPreset`, `AcmeProvider`, `CipherSuite`, `ClientAuthentication`, `CurvePreference`, `EchInboundConfig`, `EchOutboundConfig`, `RealityOutboundConfig`, `TlsVersion`, `UtlsConfig`, and `UtlsFingerprint` [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_http_transport_with_headers ... ok [INFO] [stderr] --> src/singboxconfig/shared/mod.rs:17:17 [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_httpupgrade_transport_serialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_with_brutal ... ok [INFO] [stderr] 17 | AcmeConfig, AcmeExternalAccount, AcmeProvider, AcmeProviderPreset, CipherSuite, [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_tcp_brutal_new ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_grpc_transport_serialize ... ok [INFO] [stderr] 18 | ClientAuthentication, CurvePreference, EchInboundConfig, EchOutboundConfig, InboundTlsConfig, [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_grpc_transport_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_httpupgrade_transport_deserialize ... ok [INFO] [stderr] 19 | OutboundTlsConfig, RealityHandshake, RealityInboundConfig, RealityOutboundConfig, TlsVersion, [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_multiplex_outbound_serialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_quic_transport_serialize ... ok [INFO] [stderr] 20 | UtlsConfig, UtlsFingerprint, [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_ws_transport_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_http_transport_deserialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::domain_strategy::tests::test_deserialize ... ok [INFO] [stderr] warning: unused imports: `GrpcTransport`, `HttpTransport`, `HttpUpgradeTransport`, `QuicTransport`, and `WebSocketTransport` [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_ws_transport_serialize ... ok [INFO] [stderr] --> src/singboxconfig/shared/mod.rs:23:5 [INFO] [stdout] test singboxconfig::shared::v2ray::tests::test_quic_transport_deserialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::shared::multiplex::tests::test_tcp_brutal_deserialize ... ok [INFO] [stderr] 23 | GrpcTransport, HttpTransport, HttpUpgradeTransport, QuicTransport, V2RayTransport, [INFO] [stdout] test singboxconfig::types::duration::tests::test_parse_simple ... ok [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::duration::tests::test_preserves_raw ... ok [INFO] [stderr] 24 | WebSocketTransport, [INFO] [stdout] test singboxconfig::types::network_strategy::tests::test_display ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::duration::tests::test_serialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::network_strategy::tests::test_network_strategy_deserialize ... ok [INFO] [stderr] warning: unused import: `ParseDurationError` [INFO] [stdout] test singboxconfig::types::network_strategy::tests::test_network_strategy_serialize ... ok [INFO] [stderr] --> src/singboxconfig/types/mod.rs:13:30 [INFO] [stdout] test singboxconfig::types::network_strategy::tests::test_network_type_deserialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::routing_mark::tests::test_from_hex ... ok [INFO] [stderr] 13 | pub use duration::{Duration, ParseDurationError}; [INFO] [stdout] test singboxconfig::types::routing_mark::tests::test_deserialize_hex ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::routing_mark::tests::test_deserialize_int ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::domain_strategy::tests::test_serialize ... ok [INFO] [stderr] warning: unused imports: `ShadowsocksDestination`, `VMessUser`, `VlessFlow`, and `VlessUser` [INFO] [stdout] test singboxconfig::types::domain_strategy::tests::test_display ... ok [INFO] [stderr] --> src/singboxconfig/types/mod.rs:18:5 [INFO] [stdout] test singboxconfig::types::network_strategy::tests::test_network_type_serialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::duration::tests::test_deserialize ... ok [INFO] [stderr] 18 | ShadowsocksDestination, TuicUser, UserWithPassword, VMessUser, VlessFlow, VlessUser, [INFO] [stdout] test singboxconfig::types::routing_mark::tests::test_from_int ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::routing_mark::tests::test_serialize_hex ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::duration::tests::test_format ... ok [INFO] [stderr] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff`: 请使用路由嗅探设置 [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_deserialize_single ... ok [INFO] [stderr] --> src/singboxconfig/shared/listen.rs:127:13 [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_into_vec ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_serialize_array ... ok [INFO] [stderr] 127 | sniff: None, [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_join ... ok [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_serialize_single ... ok [INFO] [stderr] | [INFO] [stdout] test autoconfig::autotuic::tests::test_tuic_user_config_with_credentials ... ok [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] test singboxconfig::types::user::tests::test_shadowsocks_destination_serialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::user::tests::test_user_with_password_new ... ok [INFO] [stderr] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff_override_destination`: 请使用路由嗅探设置 [INFO] [stdout] test singboxconfig::types::user::tests::test_user_with_password_serialize ... ok [INFO] [stderr] --> src/singboxconfig/shared/listen.rs:128:13 [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_flow_deserialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_flow_serialize ... ok [INFO] [stderr] 128 | sniff_override_destination: None, [INFO] [stdout] test singboxconfig::types::user::tests::test_user_with_password_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::duration::tests::test_parse_compound ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_array ... ok [INFO] [stderr] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::sniff_timeout`: 请使用路由嗅探设置 [INFO] [stdout] test singboxconfig::types::routing_mark::tests::test_serialize_int ... ok [INFO] [stderr] --> src/singboxconfig/shared/listen.rs:129:13 [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_deserialize_array ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::user::tests::test_shadowsocks_destination_new ... ok [INFO] [stderr] 129 | sniff_timeout: None, [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_deserialize_with_flow ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_deserialize ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_with_flow ... ok [INFO] [stderr] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::domain_strategy`: 请使用路由嗅探设置 [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_serialize_with_flow ... ok [INFO] [stderr] --> src/singboxconfig/shared/listen.rs:130:13 [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_serialize ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_with_xtls_vision ... ok [INFO] [stderr] 130 | domain_strategy: None, [INFO] [stdout] test singboxconfig::types::user::tests::test_vmess_user_deserialize ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] test singboxconfig::types::user::tests::test_vless_user_new ... ok [INFO] [stderr] [INFO] [stdout] test singboxconfig::types::user::tests::test_vmess_user_serialize ... ok [INFO] [stderr] warning: use of deprecated field `singboxconfig::shared::listen::ListenFields::udp_disable_domain_unmapping`: 请使用路由嗅探设置 [INFO] [stdout] test singboxconfig::types::user::tests::test_vmess_user_with_alter_id ... ok [INFO] [stderr] --> src/singboxconfig/shared/listen.rs:131:13 [INFO] [stdout] test singboxconfig::types::user::tests::test_vmess_user_new ... ok [INFO] [stderr] | [INFO] [stdout] test singboxconfig::types::string_or_array::tests::test_single ... ok [INFO] [stderr] 131 | udp_disable_domain_unmapping: None, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `public_ip` is never read [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:146:9 [INFO] [stderr] | [INFO] [stderr] 144 | pub struct AutoDefaultResult { [INFO] [stderr] | ----------------- field in this struct [INFO] [stderr] 145 | /// 服务器公网 IP [INFO] [stderr] 146 | pub public_ip: IpAddr, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AutoDefaultResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variants `NoAvailablePort` and `ConfigError` are never constructed [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 266 | pub enum AutoDefaultError { [INFO] [stderr] | ---------------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 270 | NoAvailablePort, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 271 | /// 配置生成失败 [INFO] [stderr] 272 | ConfigError(String), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AutoDefaultError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `public_ip_str` and `masquerade` are never used [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:405:12 [INFO] [stderr] | [INFO] [stderr] 350 | impl AutoDefault { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 405 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 487 | pub fn masquerade(mut self, url: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:819:12 [INFO] [stderr] | [INFO] [stderr] 819 | AnyTls(AnyTlsAutoResult), [INFO] [stderr] | ------ ^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 819 - AnyTls(AnyTlsAutoResult), [INFO] [stderr] 819 + AnyTls(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:821:15 [INFO] [stderr] | [INFO] [stderr] 821 | Hysteria2(Hysteria2AutoResult), [INFO] [stderr] | --------- ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 821 - Hysteria2(Hysteria2AutoResult), [INFO] [stderr] 821 + Hysteria2(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:823:10 [INFO] [stderr] | [INFO] [stderr] 823 | Tuic(TuicAutoResult), [INFO] [stderr] | ---- ^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 823 - Tuic(TuicAutoResult), [INFO] [stderr] 823 + Tuic(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:825:18 [INFO] [stderr] | [INFO] [stderr] 825 | VlessReality(VlessRealityAutoResult), [INFO] [stderr] | ------------ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `AutoBuildResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 825 - VlessReality(VlessRealityAutoResult), [INFO] [stderr] 825 + VlessReality(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: function `quick_anytls` is never used [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:1108:8 [INFO] [stderr] | [INFO] [stderr] 1108 | pub fn quick_anytls() -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `quick_hysteria2` is never used [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:1113:8 [INFO] [stderr] | [INFO] [stderr] 1113 | pub fn quick_hysteria2() -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `quick_tuic` is never used [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:1118:8 [INFO] [stderr] | [INFO] [stderr] 1118 | pub fn quick_tuic() -> Result { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `quick_all` is never used [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:1123:8 [INFO] [stderr] | [INFO] [stderr] 1123 | pub fn quick_all() -> Result { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `quick_vless_reality` is never used [INFO] [stderr] --> src/autoconfig/autoByDefault.rs:1128:8 [INFO] [stderr] | [INFO] [stderr] 1128 | pub fn quick_vless_reality() -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/autoconfig/autoanytls.rs:68:12 [INFO] [stderr] | [INFO] [stderr] 55 | impl AutoAnyTlsBuilder { [INFO] [stderr] | ---------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 68 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 80 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 87 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 111 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 117 | pub fn acme(mut self) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 129 | pub fn acme_with_domain_and_email( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 139 | pub fn custom_cert( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 161 | pub fn disable_tls(mut self) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | pub fn no_padding(mut self) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `server` and `server_name` are never read [INFO] [stderr] --> src/autoconfig/autoanytls.rs:195:9 [INFO] [stderr] | [INFO] [stderr] 193 | pub struct ConnectionInfo { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] 194 | /// 服务器地址 [INFO] [stderr] 195 | pub server: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 199 | pub server_name: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `ConfigConflict` and `InvalidConfig` are never constructed [INFO] [stderr] --> src/autoconfig/autoanytls.rs:208:5 [INFO] [stderr] | [INFO] [stderr] 204 | pub enum AutoAnyTlsError { [INFO] [stderr] | --------------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 208 | ConfigConflict(String), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 209 | /// 无效配置 [INFO] [stderr] 210 | InvalidConfig(String), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AutoAnyTlsError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/autoconfig/autohy2.rs:80:12 [INFO] [stderr] | [INFO] [stderr] 67 | impl AutoHysteria2Builder { [INFO] [stderr] | ------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 80 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 92 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 98 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 122 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 135 | pub fn up_mbps(mut self, mbps: u32) -> Self { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 141 | pub fn down_mbps(mut self, mbps: u32) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 147 | pub fn with_obfs(mut self) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 165 | pub fn ignore_client_bandwidth(mut self, ignore: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 171 | pub fn acme(mut self) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 183 | pub fn acme_with_domain_and_email( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 193 | pub fn custom_cert( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 203 | pub fn custom_cert_with_server_name( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `server` and `server_name` are never read [INFO] [stderr] --> src/autoconfig/autohy2.rs:239:9 [INFO] [stderr] | [INFO] [stderr] 237 | pub struct Hysteria2ConnectionInfo { [INFO] [stderr] | ----------------------- fields in this struct [INFO] [stderr] 238 | /// 服务器地址 [INFO] [stderr] 239 | pub server: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 243 | pub server_name: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Hysteria2ConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `ConfigConflict` is never constructed [INFO] [stderr] --> src/autoconfig/autohy2.rs:258:5 [INFO] [stderr] | [INFO] [stderr] 254 | pub enum AutoHysteria2Error { [INFO] [stderr] | ------------------ variant in this enum [INFO] [stderr] ... [INFO] [stderr] 258 | ConfigConflict(String), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AutoHysteria2Error` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `uuid_only` is never used [INFO] [stderr] --> src/autoconfig/autotuic.rs:61:12 [INFO] [stderr] | [INFO] [stderr] 28 | impl TuicUserConfig { [INFO] [stderr] | ------------------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 61 | pub fn uuid_only(uuid: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/autoconfig/autotuic.rs:149:12 [INFO] [stderr] | [INFO] [stderr] 136 | impl AutoTuicBuilder { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 149 | pub fn listen(mut self, listen: impl Into) -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 161 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 200 | pub fn tag(mut self, tag: impl Into) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | pub fn congestion_control(mut self, cc: CongestionControl) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 224 | pub fn new_reno(mut self) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 230 | pub fn auth_timeout(mut self, timeout: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 249 | pub fn heartbeat(mut self, interval: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 261 | pub fn acme(mut self) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 279 | pub fn acme_with_domain_and_email( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 292 | pub fn custom_cert( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `server` and `server_name` are never read [INFO] [stderr] --> src/autoconfig/autotuic.rs:347:9 [INFO] [stderr] | [INFO] [stderr] 345 | pub struct TuicConnectionInfo { [INFO] [stderr] | ------------------ fields in this struct [INFO] [stderr] 346 | /// 服务器地址 [INFO] [stderr] 347 | pub server: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 351 | pub server_name: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TuicConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `ConfigConflict` is never constructed [INFO] [stderr] --> src/autoconfig/autotuic.rs:366:5 [INFO] [stderr] | [INFO] [stderr] 362 | pub enum AutoTuicError { [INFO] [stderr] | ------------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 366 | ConfigConflict(String), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AutoTuicError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `set_flow` is never used [INFO] [stderr] --> src/autoconfig/autovless.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 27 | impl VlessUserConfig { [INFO] [stderr] | -------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 70 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/autoconfig/autovless.rs:156:12 [INFO] [stderr] | [INFO] [stderr] 131 | impl AutoVlessBuilder { [INFO] [stderr] | --------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 156 | pub fn public_ip_str(mut self, ip: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 163 | pub fn auto_detect_ip(mut self) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 204 | pub fn add_user_config(mut self, user: VlessUserConfig) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 216 | pub fn acme(mut self) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 228 | pub fn acme_with_domain_and_email( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 238 | pub fn custom_cert( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 272 | pub fn with_multiplex_config(mut self, multiplex: MultiplexInbound) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 278 | pub fn with_transport(mut self, transport: V2RayTransport) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `server`, `server_name`, and `transport_type` are never read [INFO] [stderr] --> src/autoconfig/autovless.rs:316:9 [INFO] [stderr] | [INFO] [stderr] 314 | pub struct VlessConnectionInfo { [INFO] [stderr] | ------------------- fields in this struct [INFO] [stderr] 315 | /// 服务器地址 [INFO] [stderr] 316 | pub server: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 320 | pub server_name: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 324 | pub transport_type: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `VlessConnectionInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `ConfigConflict` and `InvalidConfig` are never constructed [INFO] [stderr] --> src/autoconfig/autovless.rs:337:5 [INFO] [stderr] | [INFO] [stderr] 333 | pub enum AutoVlessError { [INFO] [stderr] | -------------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 337 | ConfigConflict(String), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 338 | /// 无效配置 [INFO] [stderr] 339 | InvalidConfig(String), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AutoVlessError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated functions `acme` and `acme_with_domain_and_email` are never used [INFO] [stderr] --> src/autoconfig/tools.rs:230:12 [INFO] [stderr] | [INFO] [stderr] 228 | impl TlsMode { [INFO] [stderr] | ------------ associated functions in this implementation [INFO] [stderr] 229 | /// 创建 ACME 模式(使用 sslip.io) [INFO] [stderr] 230 | pub fn acme() -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 243 | pub fn acme_with_domain_and_email(domain: impl Into, email: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `cmd_serve` is never used [INFO] [stderr] --> src/commands.rs:110:8 [INFO] [stderr] | [INFO] [stderr] 110 | pub fn cmd_serve() -> Result { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `LegacyDnsServer` is never constructed [INFO] [stderr] --> src/dns/dns.rs:145:12 [INFO] [stderr] | [INFO] [stderr] 145 | pub struct LegacyDnsServer { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `add_server`, `add_rule`, and `client_subnet` are never used [INFO] [stderr] --> src/dns/dns.rs:794:12 [INFO] [stderr] | [INFO] [stderr] 787 | impl Dns { [INFO] [stderr] | -------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 794 | pub fn add_server(mut self, server: DnsServer) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 800 | pub fn add_rule(mut self, rule: DnsRule) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 836 | pub fn client_subnet>(mut self, subnet: S) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `tag`, `path`, and `paths` are never used [INFO] [stderr] --> src/dns/dns.rs:863:12 [INFO] [stderr] | [INFO] [stderr] 861 | impl HostsDnsServer { [INFO] [stderr] | ------------------- associated items in this implementation [INFO] [stderr] 862 | /// 创建新的 Hosts DNS 服务器 [INFO] [stderr] 863 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 868 | pub fn tag>(mut self, tag: S) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 874 | pub fn path>(mut self, path: S) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 880 | pub fn paths(mut self, paths: I) -> Self [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `address_resolver` is never used [INFO] [stderr] --> src/dns/dns.rs:917:12 [INFO] [stderr] | [INFO] [stderr] 892 | impl RemoteDnsServer { [INFO] [stderr] | -------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 917 | pub fn address_resolver>(mut self, resolver: S) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `domains`, `domain_suffix`, `action`, and `invert` are never used [INFO] [stderr] --> src/dns/dns.rs:967:12 [INFO] [stderr] | [INFO] [stderr] 954 | impl DefaultDnsRule { [INFO] [stderr] | ------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 967 | pub fn domains(mut self, domains: I) -> Self [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 979 | pub fn domain_suffix>(mut self, suffix: S) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 991 | pub fn action(mut self, action: DnsRuleAction) -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 997 | pub fn invert(mut self, invert: bool) -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_padding_scheme` and `with_listen_fields` are never used [INFO] [stderr] --> src/singboxconfig/inbound/anytls.rs:71:12 [INFO] [stderr] | [INFO] [stderr] 39 | impl AnyTlsInbound { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 71 | pub fn with_padding_scheme(mut self, scheme: Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 89 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_masquerade_proxy`, `with_brutal_debug`, and `with_listen_fields` are never used [INFO] [stderr] --> src/singboxconfig/inbound/hysteria2.rs:212:12 [INFO] [stderr] | [INFO] [stderr] 133 | impl Hysteria2Inbound { [INFO] [stderr] | --------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 212 | pub fn with_masquerade_proxy(mut self, url: impl Into, rewrite_host: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 232 | pub fn with_brutal_debug(mut self, debug: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 238 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `salamander` is never used [INFO] [stderr] --> src/singboxconfig/inbound/hysteria2.rs:246:12 [INFO] [stderr] | [INFO] [stderr] 244 | impl Hysteria2Obfs { [INFO] [stderr] | ------------------ associated function in this implementation [INFO] [stderr] 245 | /// 创建 salamander 混淆 [INFO] [stderr] 246 | pub fn salamander(password: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `with_listen_fields` is never used [INFO] [stderr] --> src/singboxconfig/inbound/tuic.rs:156:12 [INFO] [stderr] | [INFO] [stderr] 72 | impl TuicInbound { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 156 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `with_listen_fields` is never used [INFO] [stderr] --> src/singboxconfig/inbound/vless.rs:127:12 [INFO] [stderr] | [INFO] [stderr] 77 | impl VlessInbound { [INFO] [stderr] | ----------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 127 | pub fn with_listen_fields(mut self, listen: ListenFields) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_idle_session_check_interval`, `with_idle_session_timeout`, `with_tls`, and `with_dial` are never used [INFO] [stderr] --> src/singboxconfig/outbound/anytls.rs:79:12 [INFO] [stderr] | [INFO] [stderr] 56 | impl AnyTlsOutbound { [INFO] [stderr] | ------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 79 | pub fn with_idle_session_check_interval(mut self, interval: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 85 | pub fn with_idle_session_timeout(mut self, timeout: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 97 | pub fn with_tls(mut self, tls: OutboundTlsConfig) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 103 | pub fn with_dial(mut self, dial: DialFields) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `with_brutal` is never used [INFO] [stderr] --> src/singboxconfig/shared/multiplex.rs:137:12 [INFO] [stderr] | [INFO] [stderr] 118 | impl MultiplexInbound { [INFO] [stderr] | --------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 137 | pub fn with_brutal(mut self, brutal: TcpBrutal) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_protocol` and `with_max_streams` are never used [INFO] [stderr] --> src/singboxconfig/shared/multiplex.rs:156:12 [INFO] [stderr] | [INFO] [stderr] 143 | impl MultiplexOutbound { [INFO] [stderr] | ---------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 156 | pub fn with_protocol(mut self, protocol: MultiplexProtocol) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 174 | pub fn with_max_streams(mut self, max: u32) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `with_bandwidth` is never used [INFO] [stderr] --> src/singboxconfig/shared/multiplex.rs:221:12 [INFO] [stderr] | [INFO] [stderr] 210 | impl TcpBrutal { [INFO] [stderr] | -------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 221 | pub fn with_bandwidth(mut self, up_mbps: u32, down_mbps: u32) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_method`, `with_headers`, `with_idle_timeout`, and `with_ping_timeout` are never used [INFO] [stderr] --> src/singboxconfig/shared/v2ray.rs:216:12 [INFO] [stderr] | [INFO] [stderr] 197 | impl HttpTransport { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 216 | pub fn with_method(mut self, method: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 236 | pub fn with_idle_timeout(mut self, timeout: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 242 | pub fn with_ping_timeout(mut self, timeout: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_headers`, `add_header`, and `with_early_data_header_name` are never used [INFO] [stderr] --> src/singboxconfig/shared/v2ray.rs:261:12 [INFO] [stderr] | [INFO] [stderr] 248 | impl WebSocketTransport { [INFO] [stderr] | ----------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 261 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 267 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 281 | pub fn with_early_data_header_name(mut self, name: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_idle_timeout` and `with_ping_timeout` are never used [INFO] [stderr] --> src/singboxconfig/shared/v2ray.rs:306:12 [INFO] [stderr] | [INFO] [stderr] 293 | impl GrpcTransport { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 306 | pub fn with_idle_timeout(mut self, timeout: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 312 | pub fn with_ping_timeout(mut self, timeout: Duration) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `with_headers` and `add_header` are never used [INFO] [stderr] --> src/singboxconfig/shared/v2ray.rs:343:12 [INFO] [stderr] | [INFO] [stderr] 324 | impl HttpUpgradeTransport { [INFO] [stderr] | ------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 343 | pub fn with_headers(mut self, headers: HashMap) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 349 | pub fn add_header(mut self, key: impl Into, value: impl Into) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `as_secs`, `as_mins`, and `to_std` are never used [INFO] [stderr] --> src/singboxconfig/types/duration.rs:56:12 [INFO] [stderr] | [INFO] [stderr] 20 | impl Duration { [INFO] [stderr] | ------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 56 | pub fn as_secs(&self) -> u64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | pub fn as_mins(&self) -> u64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 66 | pub fn to_std(&self) -> std::time::Duration { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `as_slice` is never used [INFO] [stderr] --> src/singboxconfig/types/string_or_array.rs:86:12 [INFO] [stderr] | [INFO] [stderr] 36 | impl StringOrArray { [INFO] [stderr] | ------------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 86 | pub fn as_slice(&self) -> Vec<&str> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `set_flow` is never used [INFO] [stderr] --> src/singboxconfig/types/user.rs:141:12 [INFO] [stderr] | [INFO] [stderr] 121 | impl VlessUser { [INFO] [stderr] | -------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 141 | pub fn set_flow(mut self, flow: VlessFlow) -> Self { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `ezsingbox` (bin "ezsingbox" test) generated 70 warnings (run `cargo fix --bin "ezsingbox" -p ezsingbox --tests` to apply 16 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ezsingbox-80f50fcac6e333ba) [INFO] [stdout] test autoconfig::autoByDefault::tests::test_auto_vless_reality ... ok [INFO] [stdout] test autoconfig::autoByDefault::tests::test_generated_user ... ok [INFO] [stdout] test autoconfig::autoanytls::tests::test_builder_default ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 212 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "156ad83515d78ed268c52df7fcb8792b8ef85d8c211bb783f2c7fdeaedfd5ce0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "156ad83515d78ed268c52df7fcb8792b8ef85d8c211bb783f2c7fdeaedfd5ce0", kill_on_drop: false }` [INFO] [stdout] 156ad83515d78ed268c52df7fcb8792b8ef85d8c211bb783f2c7fdeaedfd5ce0