[INFO] cloning repository https://github.com/hahatianx/lumo [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hahatianx/lumo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhahatianx%2Flumo", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhahatianx%2Flumo'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7fab3e4b91ec62b92c2d87897c3e4ebb046c6d4c [INFO] checking hahatianx/lumo against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-150727 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhahatianx%2Flumo" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/hahatianx/lumo [INFO] finished tweaking git repo https://github.com/hahatianx/lumo [INFO] tweaked toml for git repo https://github.com/hahatianx/lumo written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/hahatianx/lumo on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/hahatianx/lumo 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bincode_derive v2.0.1 [INFO] [stderr] Downloaded pnet_sys v0.34.0 [INFO] [stderr] Downloaded fluent v0.16.1 [INFO] [stderr] Downloaded i18n-embed-fl v0.9.4 [INFO] [stderr] Downloaded io_tee v0.1.1 [INFO] [stderr] Downloaded age-core v0.11.0 [INFO] [stderr] Downloaded self_cell v0.10.3 [INFO] [stderr] Downloaded pnet_datalink v0.34.0 [INFO] [stderr] Downloaded lexical-core v1.0.6 [INFO] [stderr] Downloaded sdd v3.0.10 [INFO] [stderr] Downloaded virtue v0.0.18 [INFO] [stderr] Downloaded i18n-embed v0.15.4 [INFO] [stderr] Downloaded fluent-syntax v0.11.1 [INFO] [stderr] Downloaded fluent-bundle v0.15.3 [INFO] [stderr] Downloaded lexical-parse-integer v1.0.6 [INFO] [stderr] Downloaded lexical-write-integer v1.0.6 [INFO] [stderr] Downloaded cc v1.2.41 [INFO] [stderr] Downloaded chacha20poly1305 v0.10.1 [INFO] [stderr] Downloaded lexical-util v1.0.7 [INFO] [stderr] Downloaded lexical-write-float v1.0.6 [INFO] [stderr] Downloaded scc v2.4.0 [INFO] [stderr] Downloaded lexical-parse-float v1.0.6 [INFO] [stderr] Downloaded age v0.11.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5b87b21b4bc54b3b695cdd40367d9bec5805816c3f70ca3ba9e82670f2ee2627 [INFO] running `Command { std: "docker" "start" "-a" "5b87b21b4bc54b3b695cdd40367d9bec5805816c3f70ca3ba9e82670f2ee2627", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5b87b21b4bc54b3b695cdd40367d9bec5805816c3f70ca3ba9e82670f2ee2627", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b87b21b4bc54b3b695cdd40367d9bec5805816c3f70ca3ba9e82670f2ee2627", kill_on_drop: false }` [INFO] [stdout] 5b87b21b4bc54b3b695cdd40367d9bec5805816c3f70ca3ba9e82670f2ee2627 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f68a711bf06b3ad18fbcf0b16e4aa009edbde2736863510691a79696de8b25d9 [INFO] running `Command { std: "docker" "start" "-a" "f68a711bf06b3ad18fbcf0b16e4aa009edbde2736863510691a79696de8b25d9", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Compiling unicode-ident v1.0.19 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling generic-array v0.14.9 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking lexical-util v1.0.7 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking log v0.4.28 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling type-map v0.5.1 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling self_cell v1.2.1 [INFO] [stderr] Compiling self_cell v0.10.3 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling arc-swap v1.7.1 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking clap_builder v4.5.51 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking block-padding v0.3.3 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking io_tee v0.1.1 [INFO] [stderr] Checking lexical-parse-integer v1.0.6 [INFO] [stderr] Compiling syn v2.0.107 [INFO] [stderr] Checking lexical-write-integer v1.0.6 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking poly1305 v0.8.0 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Compiling proc-macro-error-attr2 v2.0.0 [INFO] [stderr] Checking lexical-parse-float v1.0.6 [INFO] [stderr] Checking rust-embed-utils v8.9.0 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking pbkdf2 v0.12.2 [INFO] [stderr] Checking hkdf v0.12.4 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Checking ansi_term v0.12.1 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Checking lexical-write-float v1.0.6 [INFO] [stderr] Checking winnow v0.7.13 [INFO] [stderr] Checking no-std-net v0.6.0 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Compiling virtue v0.0.18 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking mio v1.1.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Checking lexical-core v1.0.6 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Checking getrandom v0.3.4 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking socket2 v0.6.1 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking inotify v0.11.0 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Compiling bincode_derive v2.0.1 [INFO] [stderr] Checking pnet_sys v0.34.0 [INFO] [stderr] Checking pnet_base v0.34.0 [INFO] [stderr] Checking toml_datetime v0.7.3 [INFO] [stderr] Checking serde_spanned v1.0.3 [INFO] [stderr] Checking unty v0.0.4 [INFO] [stderr] Checking toml_writer v1.0.4 [INFO] [stderr] Checking chacha20 v0.10.0-rc.2 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking rand v0.10.0-rc.0 [INFO] [stderr] Checking fs2 v0.4.3 [INFO] [stderr] Checking sdd v3.0.10 [INFO] [stderr] Checking xxhash-rust v0.8.15 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Compiling server v0.1.0 (/opt/rustwide/workdir/server) [INFO] [stderr] Checking is-terminal v0.4.17 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking oorandom v11.1.5 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking scc v2.4.0 [INFO] [stderr] Checking rayon v1.11.0 [INFO] [stderr] Checking toml_parser v1.0.4 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Checking toml v0.9.8 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Checking structopt v0.3.26 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling zerocopy-derive v0.8.27 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling rust-embed-impl v8.9.0 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling cli_handler v0.1.0 (/opt/rustwide/workdir/cli_handler) [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling serial_test_derive v3.2.0 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Checking zeroize v1.8.2 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking async-stream v0.3.6 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Checking unic-langid-impl v0.9.6 [INFO] [stderr] Compiling rust-embed v8.9.0 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking secrecy v0.10.3 [INFO] [stderr] Checking unic-langid v0.9.6 [INFO] [stderr] Checking chacha20 v0.9.1 [INFO] [stderr] Checking salsa20 v0.10.2 [INFO] [stderr] Checking cbc v0.1.2 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Checking intl-memoizer v0.5.3 [INFO] [stderr] Checking intl_pluralrules v7.0.2 [INFO] [stderr] Checking fluent-langneg v0.13.1 [INFO] [stderr] Checking scrypt v0.11.0 [INFO] [stderr] Checking clap v4.5.51 [INFO] [stderr] Checking chacha20poly1305 v0.10.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling fluent-syntax v0.11.1 [INFO] [stderr] Checking fluent-bundle v0.15.3 [INFO] [stderr] Checking fluent v0.16.1 [INFO] [stderr] Checking x25519-dalek v2.0.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking notify-types v2.0.0 [INFO] [stderr] Checking ipnetwork v0.20.0 [INFO] [stderr] Checking bincode v2.0.1 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking cookie-factory v0.3.3 [INFO] [stderr] Checking serial_test v3.2.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking pnet_datalink v0.34.0 [INFO] [stderr] Checking api_model v0.1.0 (/opt/rustwide/workdir/api_model) [INFO] [stderr] Compiling basic-toml v0.1.10 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stdout] warning: associated functions `to_utf8` and `parse_from_str` are never used [INFO] [stdout] --> api_model/src/protocol/token.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 21 | impl Token { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 22 | #[inline] [INFO] [stdout] 23 | fn to_utf8(bytes: &[u8]) -> Result<&str> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn parse_from_str(s: &str, what: &str) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking client v0.1.0 (/opt/rustwide/workdir/client) [INFO] [stdout] warning: associated functions `to_utf8` and `parse_from_str` are never used [INFO] [stdout] --> api_model/src/protocol/token.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 21 | impl Token { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 22 | #[inline] [INFO] [stdout] 23 | fn to_utf8(bytes: &[u8]) -> Result<&str> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn parse_from_str(s: &str, what: &str) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking notify v8.2.0 [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/action/list_tasks.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | _ => xterm_color::red("Unknown"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> client/src/action/list_tasks.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 65 | JobStatus::Running => String::from("Running"), [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] 66 | JobStatus::Completed => xterm_color::bold_green("Completed"), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 67 | JobStatus::Failed => xterm_color::bold_red("Failed"), [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] 68 | JobStatus::TimedOut => xterm_color::bold_yellow("Timed out"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 71 | _ => xterm_color::red("Unknown"), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/error/mod.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> client/src/error/mod.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 18 | ClientError::ConnectionBindError(msg, _) => write!(f, "Connection bind error: {}", msg), [INFO] [stdout] | ---------------------------------------- matches some of the same values [INFO] [stdout] 19 | ClientError::ConnectionTimeoutError(msg, _) => { [INFO] [stdout] | ------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 22 | ClientError::ConnectionReceiverError(msg, _) => { [INFO] [stdout] | -------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 25 | ClientError::ResponseParseError(msg, _) => write!(f, "Response parse error: {}", msg), [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 28 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/error/mod.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> client/src/error/mod.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 36 | ClientError::ConnectionBindError(msg, trace) => { [INFO] [stdout] | -------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 39 | ClientError::ConnectionTimeoutError(msg, trace) => { [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 42 | ClientError::ConnectionReceiverError(msg, trace) => { [INFO] [stdout] | ------------------------------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 45 | ClientError::ResponseParseError(msg, trace) => { [INFO] [stdout] | ------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 52 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/action/list_tasks.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | _ => xterm_color::red("Unknown"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> client/src/action/list_tasks.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 65 | JobStatus::Running => String::from("Running"), [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] 66 | JobStatus::Completed => xterm_color::bold_green("Completed"), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 67 | JobStatus::Failed => xterm_color::bold_red("Failed"), [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] 68 | JobStatus::TimedOut => xterm_color::bold_yellow("Timed out"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 71 | _ => xterm_color::red("Unknown"), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ConnectionTimeoutError` and `InternalError` are never constructed [INFO] [stdout] --> client/src/error/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum ClientError { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | ConnectionTimeoutError(String, String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | InternalError(String, String), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `idx` is never read [INFO] [stdout] --> client/src/format/table.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TableColumn { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 5 | pub(crate) idx: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> client/src/format/table.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl TableColumn { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 10 | pub fn new(idx: usize, name: &'static str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `green` is never used [INFO] [stdout] --> client/src/format/xterm_color.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn green(text: &str) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `yellow` is never used [INFO] [stdout] --> client/src/format/xterm_color.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn yellow(text: &str) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blue` is never used [INFO] [stdout] --> client/src/format/xterm_color.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn blue(text: &str) -> String { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/error/mod.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> client/src/error/mod.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 18 | ClientError::ConnectionBindError(msg, _) => write!(f, "Connection bind error: {}", msg), [INFO] [stdout] | ---------------------------------------- matches some of the same values [INFO] [stdout] 19 | ClientError::ConnectionTimeoutError(msg, _) => { [INFO] [stdout] | ------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 22 | ClientError::ConnectionReceiverError(msg, _) => { [INFO] [stdout] | -------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 25 | ClientError::ResponseParseError(msg, _) => write!(f, "Response parse error: {}", msg), [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 28 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/error/mod.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> client/src/error/mod.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 36 | ClientError::ConnectionBindError(msg, trace) => { [INFO] [stdout] | -------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 39 | ClientError::ConnectionTimeoutError(msg, trace) => { [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 42 | ClientError::ConnectionReceiverError(msg, trace) => { [INFO] [stdout] | ------------------------------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 45 | ClientError::ResponseParseError(msg, trace) => { [INFO] [stdout] | ------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 52 | _ => write!(f, "Unknown error"), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking age-core v0.11.0 [INFO] [stdout] warning: variants `ConnectionTimeoutError` and `InternalError` are never constructed [INFO] [stdout] --> client/src/error/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum ClientError { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | ConnectionTimeoutError(String, String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | InternalError(String, String), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `idx` is never read [INFO] [stdout] --> client/src/format/table.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TableColumn { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 5 | pub(crate) idx: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> client/src/format/table.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl TableColumn { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 10 | pub fn new(idx: usize, name: &'static str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `green` is never used [INFO] [stdout] --> client/src/format/xterm_color.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn green(text: &str) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `yellow` is never used [INFO] [stdout] --> client/src/format/xterm_color.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn yellow(text: &str) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `blue` is never used [INFO] [stdout] --> client/src/format/xterm_color.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn blue(text: &str) -> String { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling find-crate v0.6.3 [INFO] [stderr] Compiling i18n-config v0.4.8 [INFO] [stderr] Compiling i18n-embed-impl v0.8.4 [INFO] [stderr] Compiling i18n-embed v0.15.4 [INFO] [stderr] Compiling i18n-embed-fl v0.9.4 [INFO] [stderr] Checking tokio-stream v0.1.17 [INFO] [stderr] Checking tokio-test v0.4.4 [INFO] [stderr] Checking age v0.11.1 [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::err::Result` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::err::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utilities::crypto::f_to_encryption` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utilities::crypto::f_to_encryption; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::error::Elapsed` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::time::error::Elapsed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_index_dump.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> server/src/err/mod.rs:63:28 [INFO] [stdout] | [INFO] [stdout] 63 | .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 63 - .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] 63 + .map(|e| e as &dyn std::error::Error ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/file.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UNIX_EPOCH` [INFO] [stdout] --> server/src/fs/file.rs:8:29 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/fs_lock.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lumo_error_with_source` [INFO] [stdout] --> server/src/fs/fs_lock.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{lumo_error, lumo_error_with_source}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Seek` [INFO] [stdout] --> server/src/fs/fs_lock.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::Seek; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:31 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `age::secrecy::SecretString` [INFO] [stdout] --> server/src/utilities/crypto.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use age::secrecy::SecretString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SeekFrom` and `Seek` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:43 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::err::Result` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::err::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utilities::crypto::f_to_encryption` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utilities::crypto::f_to_encryption; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::error::Elapsed` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::time::error::Elapsed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_index_dump.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::SocketAddr` [INFO] [stdout] --> server/src/core/tasks/task_queue.rs:135:9 [INFO] [stdout] | [INFO] [stdout] 135 | use std::net::SocketAddr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> server/src/err/mod.rs:63:28 [INFO] [stdout] | [INFO] [stdout] 63 | .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 63 - .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] 63 + .map(|e| e as &dyn std::error::Error ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/file.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UNIX_EPOCH` [INFO] [stdout] --> server/src/fs/file.rs:8:29 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/fs/util.rs:238:9 [INFO] [stdout] | [INFO] [stdout] 238 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/fs_lock.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lumo_error_with_source` [INFO] [stdout] --> server/src/fs/fs_lock.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{lumo_error, lumo_error_with_source}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Seek` [INFO] [stdout] --> server/src/fs/fs_lock.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::Seek; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:31 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `age::secrecy::SecretString` [INFO] [stdout] --> server/src/utilities/crypto.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use age::secrecy::SecretString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SeekFrom` and `Seek` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:43 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:37 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncWriteExt` [INFO] [stdout] --> server/src/fs/fs_lock.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::AsyncWriteExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncWriteExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:45 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 42 | let base = PathBuf::from(ENV_VAR.get().unwrap().get_temp_downloads_dir()); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_base` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> server/src/interface/handlers/local_pull_file.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | Err(e) => LocalPullFileResult::Reject(PullFileError::InternalError), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f_size` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_time` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:26 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `read_guard` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:44 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_guard` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:52:34 [INFO] [stdout] | [INFO] [stdout] 52 | PullDecision::Accept(c, n) => n, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | PullDecision::Reject(c, r) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1057:14 [INFO] [stdout] | [INFO] [stdout] 1057 | for (path, arc) in guard.map.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `active_peers` [INFO] [stdout] --> server/src/core/tasks/jobs/job_heartbeat.rs:21:21 [INFO] [stdout] | [INFO] [stdout] 21 | let active_peers = PEER_TABLE [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_peers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> server/src/utilities/logger.rs:219:9 [INFO] [stdout] | [INFO] [stdout] 215 | / return LOGGER_CELL [INFO] [stdout] 216 | | .get() [INFO] [stdout] 217 | | .expect("LOGGER_CELL should be set by test fallback"); [INFO] [stdout] | |_____________________________________________________________________- any code following this expression is unreachable [INFO] [stdout] 218 | } [INFO] [stdout] 219 | LOGGER_CELL.get().expect("LOGGER_CELL should be set") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:37 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncWriteExt` [INFO] [stdout] --> server/src/fs/fs_lock.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::AsyncWriteExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncWriteExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:45 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 42 | let base = PathBuf::from(ENV_VAR.get().unwrap().get_temp_downloads_dir()); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_base` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> server/src/interface/handlers/local_pull_file.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | Err(e) => LocalPullFileResult::Reject(PullFileError::InternalError), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f_size` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_time` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:26 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `read_guard` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:44 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_guard` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> server/src/utilities/logger.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | level, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `level: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> server/src/utilities/logger.rs:174:21 [INFO] [stdout] | [INFO] [stdout] 174 | msg, [INFO] [stdout] | ^^^ help: try ignoring the field: `msg: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_millis` [INFO] [stdout] --> server/src/utilities/logger.rs:175:21 [INFO] [stdout] | [INFO] [stdout] 175 | ts_millis, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `ts_millis: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Int`, `Uint`, and `Bool` are never constructed [INFO] [stdout] --> server/src/config/config.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 82 | enum ConfigInputValue { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 83 | String(String), [INFO] [stdout] 84 | Int(i32), [INFO] [stdout] | ^^^ [INFO] [stdout] 85 | Uint(u32), [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | Bool(bool), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_sync_port` is never read [INFO] [stdout] --> server/src/config/env_var.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | struct ConnectionConfig { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | file_sync_port: u16, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConnectionConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `nonce` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 21 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `expected_checksum` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 47 | nonce: Nonce, [INFO] [stdout] 48 | expected_checksum: Expected, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nonce` and `checksum` are never read [INFO] [stdout] --> server/src/core/protocol/file_send.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 16 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub file_size: u64, [INFO] [stdout] 18 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `maybe_checksum` is never used [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FileSyncAck { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn maybe_checksum(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Challenge` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:18:6 [INFO] [stdout] | [INFO] [stdout] 18 | type Challenge = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Nonce` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | type Nonce = u64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Checksum` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | type Checksum = u64; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileChecksumMismatch` is never constructed [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 27 | FileChecksumMismatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `contains_key` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:283:8 [INFO] [stdout] | [INFO] [stdout] 275 | impl FileIndexInner { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 283 | fn contains_key>(&self, path: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `list_paths` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:417:25 [INFO] [stdout] | [INFO] [stdout] 367 | impl FileIndex { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 417 | pub(crate) async fn list_paths(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `activate_checked`, `deactivate_checked`, and `set_last_writer_checked` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:647:14 [INFO] [stdout] | [INFO] [stdout] 468 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 647 | async fn activate_checked>(&self, path: P, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 679 | async fn deactivate_checked>(&self, path: P, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | async fn set_last_writer_checked>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove`, `activate`, `deactivate`, `mark_stale`, and `set_last_writer` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:750:14 [INFO] [stdout] | [INFO] [stdout] 749 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 750 | async fn remove>(&self, p: P) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 759 | async fn activate>(&self, p: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 768 | async fn deactivate>(&self, p: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 777 | async fn mark_stale>(&self, p: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 786 | async fn set_last_writer>(&self, p: P, writer: impl Into) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_lock` is never read [INFO] [stdout] --> server/src/fs/fs_lock.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 266 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 269 | file_lock: Arc, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReadGuard` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `local_addr` is never used [INFO] [stdout] --> server/src/network/udp_listener.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl UdpListener { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn local_addr(&self) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `bind_on` and `local_addr` are never used [INFO] [stdout] --> server/src/network/tcp_listener.rs:45:18 [INFO] [stdout] | [INFO] [stdout] 35 | impl TcpListener { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn bind_on(addr: SocketAddr) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn local_addr(&self) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `connect_timeout` is never read [INFO] [stdout] --> server/src/network/tcp_sender.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct TcpConn { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | connect_timeout: Duration, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TcpConn` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_path_disc_meta` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn check_path_disc_meta>(p: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:52:34 [INFO] [stdout] | [INFO] [stdout] 52 | PullDecision::Accept(c, n) => n, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | PullDecision::Reject(c, r) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1057:14 [INFO] [stdout] | [INFO] [stdout] 1057 | for (path, arc) in guard.map.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `active_peers` [INFO] [stdout] --> server/src/core/tasks/jobs/job_heartbeat.rs:21:21 [INFO] [stdout] | [INFO] [stdout] 21 | let active_peers = PEER_TABLE [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_peers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LOGGER_CELL` [INFO] [stdout] --> server/benches/crypto_bench.rs:3:35 [INFO] [stdout] | [INFO] [stdout] 3 | use server::global_var::{ENV_VAR, LOGGER_CELL}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `f_from_encryption` [INFO] [stdout] --> server/benches/crypto_bench.rs:83:37 [INFO] [stdout] | [INFO] [stdout] 83 | use server::utilities::crypto::{f_from_encryption, f_to_encryption}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BAR` is never used [INFO] [stdout] --> server/benches/crypto_bench.rs:91:11 [INFO] [stdout] | [INFO] [stdout] 91 | const BAR: usize = 1024 * 1024 + 1; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/core/topology/peer_table.rs:378:13 [INFO] [stdout] | [INFO] [stdout] 378 | let mut p1 = Peer::new( [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/core/topology/peer_table.rs:401:13 [INFO] [stdout] | [INFO] [stdout] 401 | let mut p2 = Peer::new( [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/core/topology/peer_table.rs:429:17 [INFO] [stdout] | [INFO] [stdout] 429 | let mut p = Peer::new( [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::err::Result` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::err::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utilities::crypto::f_to_encryption` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utilities::crypto::f_to_encryption; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::error::Elapsed` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::time::error::Elapsed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_index_dump.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> server/src/err/mod.rs:63:28 [INFO] [stdout] | [INFO] [stdout] 63 | .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 63 - .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] 63 + .map(|e| e as &dyn std::error::Error ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/file.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UNIX_EPOCH` [INFO] [stdout] --> server/src/fs/file.rs:8:29 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/fs_lock.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lumo_error_with_source` [INFO] [stdout] --> server/src/fs/fs_lock.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{lumo_error, lumo_error_with_source}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Seek` [INFO] [stdout] --> server/src/fs/fs_lock.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::Seek; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:31 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `age::secrecy::SecretString` [INFO] [stdout] --> server/src/utilities/crypto.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use age::secrecy::SecretString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SeekFrom` and `Seek` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:43 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/fs/fs_index.rs:1334:17 [INFO] [stdout] | [INFO] [stdout] 1334 | let mut index = FileIndex::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size0` [INFO] [stdout] --> server/src/fs/fs_index.rs:1353:13 [INFO] [stdout] | [INFO] [stdout] 1353 | let size0 = lf.size; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_size0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mtime0` [INFO] [stdout] --> server/src/fs/fs_index.rs:1354:13 [INFO] [stdout] | [INFO] [stdout] 1354 | let mtime0 = lf.mtime; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mtime0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size1` [INFO] [stdout] --> server/src/fs/fs_index.rs:1371:13 [INFO] [stdout] | [INFO] [stdout] 1371 | let size1 = lf2.size; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_size1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mtime1` [INFO] [stdout] --> server/src/fs/fs_index.rs:1372:13 [INFO] [stdout] | [INFO] [stdout] 1372 | let mtime1 = lf2.mtime; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mtime1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::err::Result` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::err::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utilities::crypto::f_to_encryption` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utilities::crypto::f_to_encryption; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::error::Elapsed` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::time::error::Elapsed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_index_dump.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::SocketAddr` [INFO] [stdout] --> server/src/core/tasks/task_queue.rs:135:9 [INFO] [stdout] | [INFO] [stdout] 135 | use std::net::SocketAddr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> server/src/err/mod.rs:63:28 [INFO] [stdout] | [INFO] [stdout] 63 | .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 63 - .map(|e| e as &(dyn std::error::Error)) [INFO] [stdout] 63 + .map(|e| e as &dyn std::error::Error ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/file.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UNIX_EPOCH` [INFO] [stdout] --> server/src/fs/file.rs:8:29 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/fs/util.rs:238:9 [INFO] [stdout] | [INFO] [stdout] 238 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::global_var::LOGGER` [INFO] [stdout] --> server/src/fs/fs_lock.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::LOGGER; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lumo_error_with_source` [INFO] [stdout] --> server/src/fs/fs_lock.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{lumo_error, lumo_error_with_source}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Seek` [INFO] [stdout] --> server/src/fs/fs_lock.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::Seek; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:31 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `age::secrecy::SecretString` [INFO] [stdout] --> server/src/utilities/crypto.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use age::secrecy::SecretString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SeekFrom` and `Seek` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:43 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/fs/fs_lock.rs:446:13 [INFO] [stdout] | [INFO] [stdout] 446 | let mut handle = tokio::spawn({ [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> server/src/utilities/logger.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | level, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `level: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> server/src/utilities/logger.rs:174:21 [INFO] [stdout] | [INFO] [stdout] 174 | msg, [INFO] [stdout] | ^^^ help: try ignoring the field: `msg: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_millis` [INFO] [stdout] --> server/src/utilities/logger.rs:175:21 [INFO] [stdout] | [INFO] [stdout] 175 | ts_millis, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `ts_millis: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_sync_port` is never read [INFO] [stdout] --> server/src/config/env_var.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | struct ConnectionConfig { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | file_sync_port: u16, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConnectionConfig` has a derived impl for the trait `Debug`, but this is 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: field `nonce` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 21 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `expected_checksum` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 47 | nonce: Nonce, [INFO] [stdout] 48 | expected_checksum: Expected, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nonce` and `checksum` are never read [INFO] [stdout] --> server/src/core/protocol/file_send.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 16 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub file_size: u64, [INFO] [stdout] 18 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `maybe_checksum` is never used [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FileSyncAck { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn maybe_checksum(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Challenge` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:18:6 [INFO] [stdout] | [INFO] [stdout] 18 | type Challenge = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Nonce` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | type Nonce = u64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Checksum` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | type Checksum = u64; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileChecksumMismatch` is never constructed [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 27 | FileChecksumMismatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_env_var` is never used [INFO] [stdout] --> server/src/fs/file.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 262 | fn create_env_var() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `contains_key` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:283:8 [INFO] [stdout] | [INFO] [stdout] 275 | impl FileIndexInner { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 283 | fn contains_key>(&self, path: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_lock` is never read [INFO] [stdout] --> server/src/fs/fs_lock.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 266 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 269 | file_lock: Arc, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReadGuard` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `connect_timeout` is never read [INFO] [stdout] --> server/src/network/tcp_sender.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct TcpConn { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | connect_timeout: Duration, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TcpConn` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_path_disc_meta` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn check_path_disc_meta>(p: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `path` is never used [INFO] [stdout] --> server/src/utilities/logger.rs:258:12 [INFO] [stdout] | [INFO] [stdout] 254 | impl TempFileGuard { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 258 | fn path(&self) -> &Path { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:37 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncWriteExt` [INFO] [stdout] --> server/src/fs/fs_lock.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::AsyncWriteExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncWriteExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:45 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 42 | let base = PathBuf::from(ENV_VAR.get().unwrap().get_temp_downloads_dir()); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_base` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> server/src/interface/handlers/local_pull_file.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | Err(e) => LocalPullFileResult::Reject(PullFileError::InternalError), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f_size` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_time` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:26 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `read_guard` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:44 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_guard` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:52:34 [INFO] [stdout] | [INFO] [stdout] 52 | PullDecision::Accept(c, n) => n, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | PullDecision::Reject(c, r) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1057:14 [INFO] [stdout] | [INFO] [stdout] 1057 | for (path, arc) in guard.map.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `active_peers` [INFO] [stdout] --> server/src/core/tasks/jobs/job_heartbeat.rs:21:21 [INFO] [stdout] | [INFO] [stdout] 21 | let active_peers = PEER_TABLE [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_peers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> server/src/utilities/logger.rs:219:9 [INFO] [stdout] | [INFO] [stdout] 215 | / return LOGGER_CELL [INFO] [stdout] 216 | | .get() [INFO] [stdout] 217 | | .expect("LOGGER_CELL should be set by test fallback"); [INFO] [stdout] | |_____________________________________________________________________- any code following this expression is unreachable [INFO] [stdout] 218 | } [INFO] [stdout] 219 | LOGGER_CELL.get().expect("LOGGER_CELL should be set") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:59 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:37 [INFO] [stdout] | [INFO] [stdout] 15 | use std::io::{BufReader, BufWriter, Read, Seek, SeekFrom, Write}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncWriteExt` [INFO] [stdout] --> server/src/fs/fs_lock.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::AsyncWriteExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncWriteExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:22:45 [INFO] [stdout] | [INFO] [stdout] 22 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:42:13 [INFO] [stdout] | [INFO] [stdout] 42 | let base = PathBuf::from(ENV_VAR.get().unwrap().get_temp_downloads_dir()); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_base` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> server/src/utilities/logger.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | level, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `level: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> server/src/utilities/logger.rs:174:21 [INFO] [stdout] | [INFO] [stdout] 174 | msg, [INFO] [stdout] | ^^^ help: try ignoring the field: `msg: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_millis` [INFO] [stdout] --> server/src/utilities/logger.rs:175:21 [INFO] [stdout] | [INFO] [stdout] 175 | ts_millis, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `ts_millis: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> server/src/interface/handlers/local_pull_file.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | Err(e) => LocalPullFileResult::Reject(PullFileError::InternalError), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Int`, `Uint`, and `Bool` are never constructed [INFO] [stdout] --> server/src/config/config.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 82 | enum ConfigInputValue { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 83 | String(String), [INFO] [stdout] 84 | Int(i32), [INFO] [stdout] | ^^^ [INFO] [stdout] 85 | Uint(u32), [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | Bool(bool), [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 `private_key_location` and `public_key_location` are never read [INFO] [stdout] --> server/src/config/env_var.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct KeySpec { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 13 | private_key_location: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 14 | public_key_location: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `KeySpec` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `key_spec` is never read [INFO] [stdout] --> server/src/config/env_var.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 18 | struct Identity { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | key_spec: KeySpec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Identity` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_sync_port` is never read [INFO] [stdout] --> server/src/config/env_var.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | struct ConnectionConfig { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | file_sync_port: u16, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConnectionConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `working_dir` is never read [INFO] [stdout] --> server/src/config/env_var.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct AppConfig { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 35 | working_dir: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_peer_expires_after_in_sec` and `get_working_dir` are never used [INFO] [stdout] --> server/src/config/env_var.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 47 | impl AppConfig { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn update_peer_expires_after_in_sec(&mut self, new_value: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn get_working_dir(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_private_key_location` and `get_public_key_location` are never used [INFO] [stdout] --> server/src/config/env_var.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl EnvVar { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_private_key_location(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn get_public_key_location(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_working_dir`, and `update_peer_expires_after_in_sec` are never used [INFO] [stdout] --> server/src/config/app_config.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl SharedConfig { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(_env_var: &EnvVar) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub async fn get_working_dir(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub async fn update_peer_expires_after_in_sec(&self, new_value: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f_size` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m_time` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:26 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `nonce` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 21 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `read_guard` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:119:44 [INFO] [stdout] | [INFO] [stdout] 119 | let (f_size, m_time, checksum, read_guard) = [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_read_guard` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `expected_checksum` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 47 | nonce: Nonce, [INFO] [stdout] 48 | expected_checksum: Expected, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nonce` and `checksum` are never read [INFO] [stdout] --> server/src/core/protocol/file_send.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 16 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub file_size: u64, [INFO] [stdout] 18 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `maybe_checksum` is never used [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FileSyncAck { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn maybe_checksum(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shutdown_jobs` is never used [INFO] [stdout] --> server/src/core/tasks/mod.rs:98:14 [INFO] [stdout] | [INFO] [stdout] 98 | pub async fn shutdown_jobs() -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Challenge` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:18:6 [INFO] [stdout] | [INFO] [stdout] 18 | type Challenge = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Nonce` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | type Nonce = u64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Checksum` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | type Checksum = u64; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileChecksumMismatch` is never constructed [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 27 | FileChecksumMismatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Shutdown` is never constructed [INFO] [stdout] --> server/src/core/tasks/job_summary.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum JobStatus { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 17 | Shutdown, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JobStatus` 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: field `shutdown_tx` is never read [INFO] [stdout] --> server/src/core/tasks/job_summary.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct JobSummary { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 86 | pub shutdown_tx: Option>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_status`, `update_status_msg`, and `shutdown` are never used [INFO] [stdout] --> server/src/core/tasks/job_summary.rs:142:18 [INFO] [stdout] | [INFO] [stdout] 104 | impl JobSummary { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub async fn update_status(&mut self, new_status: JobStatus) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub async fn update_status_msg(&mut self, status_msg: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub async fn shutdown(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JobCallbackError` is never constructed [INFO] [stdout] --> server/src/core/tasks/jobs/job_genre/claimable_job.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 168 | pub enum ClaimableJobTakeoverError { [INFO] [stdout] | ------------------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 171 | JobCallbackError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ClaimableJobTakeoverError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove_peer`, `promote_peer`, `refresh_peer`, and `disable_peer` are never used [INFO] [stdout] --> server/src/core/topology/peer_table.rs:121:18 [INFO] [stdout] | [INFO] [stdout] 114 | impl PeerTable { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 121 | pub async fn remove_peer(&self, peer: Peer) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub async fn promote_peer(&self, identifier: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub async fn refresh_peer(&self, identifier: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub async fn disable_peer(&self, identifier: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `same_file` is never used [INFO] [stdout] --> server/src/fs/file.rs:137:18 [INFO] [stdout] | [INFO] [stdout] 101 | impl LumoFile { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | pub async fn same_file(&self, other: &Self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all` is never used [INFO] [stdout] --> server/src/fs/util.rs:35:18 [INFO] [stdout] | [INFO] [stdout] 33 | impl DirPermissions { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 34 | /// Convenience: all permissions are granted. [INFO] [stdout] 35 | pub const fn all() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_active`, `set_stale`, `set_last_writer`, and `needs_rescan` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:220:12 [INFO] [stdout] | [INFO] [stdout] 161 | impl FileEntry { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn set_active(&mut self, from_ver: u64, active: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn set_stale(&mut self, from_ver: u64, stale: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | pub fn set_last_writer(&mut self, from_ver: u64, writer: impl Into) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn needs_rescan(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `contains_key` and `debug` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:283:8 [INFO] [stdout] | [INFO] [stdout] 275 | impl FileIndexInner { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 283 | fn contains_key>(&self, path: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub async fn debug(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:375:18 [INFO] [stdout] | [INFO] [stdout] 367 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 375 | pub async fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | pub async fn with_entry(&self, path: P, f: impl FnOnce(&FileEntry) -> T) -> Option [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 417 | pub(crate) async fn list_paths(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 423 | pub(crate) async fn candidates_by_size(&self, size: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 433 | pub(crate) async fn candidates_by_size_mtime( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 448 | pub async fn candidates_for(&self, file: &LumoFile) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub async fn debug(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `activate_checked`, `deactivate_checked`, and `set_last_writer_checked` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:647:14 [INFO] [stdout] | [INFO] [stdout] 468 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 647 | async fn activate_checked>(&self, path: P, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 679 | async fn deactivate_checked>(&self, path: P, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | async fn set_last_writer_checked>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove`, `activate`, `deactivate`, `mark_stale`, and `set_last_writer` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:750:14 [INFO] [stdout] | [INFO] [stdout] 749 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 750 | async fn remove>(&self, p: P) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 759 | async fn activate>(&self, p: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 768 | async fn deactivate>(&self, p: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 777 | async fn mark_stale>(&self, p: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 786 | async fn set_last_writer>(&self, p: P, writer: impl Into) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_lock` is never read [INFO] [stdout] --> server/src/fs/fs_lock.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 266 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 269 | file_lock: Arc, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReadGuard` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `created_at` is never read [INFO] [stdout] --> server/src/fs/task_management/file_download_tasks.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct PendingFileDownloadTask { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `checksum` and `created_at` are never read [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct PendingPull { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 35 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `local_addr` is never used [INFO] [stdout] --> server/src/network/udp_listener.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl UdpListener { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn local_addr(&self) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `spawn_per_request` is never used [INFO] [stdout] --> server/src/network/udp_sender.rs:121:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl NetworkSender { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 121 | pub fn spawn_per_request( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `send_once` is never used [INFO] [stdout] --> server/src/network/udp_sender.rs:242:10 [INFO] [stdout] | [INFO] [stdout] 242 | async fn send_once( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `bind_on` and `local_addr` are never used [INFO] [stdout] --> server/src/network/tcp_listener.rs:45:18 [INFO] [stdout] | [INFO] [stdout] 35 | impl TcpListener { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn bind_on(addr: SocketAddr) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn local_addr(&self) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `connect_timeout` is never read [INFO] [stdout] --> server/src/network/tcp_sender.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct TcpConn { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | connect_timeout: Duration, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TcpConn` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `local_addr` and `shutdown` are never used [INFO] [stdout] --> server/src/network/tcp_sender.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl TcpConn { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn local_addr(&self) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub async fn shutdown(mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_path_disc_meta` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn check_path_disc_meta>(p: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `async_fs_rename` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:84:14 [INFO] [stdout] | [INFO] [stdout] 84 | pub async fn async_fs_rename>(from_path: P, to_path: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `async_fs_copy` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:119:14 [INFO] [stdout] | [INFO] [stdout] 119 | pub async fn async_fs_copy>(from_path: P, to_path: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fs_copy` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn fs_copy>(from_path: P, to_path: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:52:34 [INFO] [stdout] | [INFO] [stdout] 52 | PullDecision::Accept(c, n) => n, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | PullDecision::Reject(c, r) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1057:14 [INFO] [stdout] | [INFO] [stdout] 1057 | for (path, arc) in guard.map.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `active_peers` [INFO] [stdout] --> server/src/core/tasks/jobs/job_heartbeat.rs:21:21 [INFO] [stdout] | [INFO] [stdout] 21 | let active_peers = PEER_TABLE [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_peers` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/core/topology/peer_table.rs:378:13 [INFO] [stdout] | [INFO] [stdout] 378 | let mut p1 = Peer::new( [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/core/topology/peer_table.rs:401:13 [INFO] [stdout] | [INFO] [stdout] 401 | let mut p2 = Peer::new( [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/core/topology/peer_table.rs:429:17 [INFO] [stdout] | [INFO] [stdout] 429 | let mut p = Peer::new( [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/fs/fs_index.rs:1334:17 [INFO] [stdout] | [INFO] [stdout] 1334 | let mut index = FileIndex::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size0` [INFO] [stdout] --> server/src/fs/fs_index.rs:1353:13 [INFO] [stdout] | [INFO] [stdout] 1353 | let size0 = lf.size; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_size0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mtime0` [INFO] [stdout] --> server/src/fs/fs_index.rs:1354:13 [INFO] [stdout] | [INFO] [stdout] 1354 | let mtime0 = lf.mtime; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mtime0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size1` [INFO] [stdout] --> server/src/fs/fs_index.rs:1371:13 [INFO] [stdout] | [INFO] [stdout] 1371 | let size1 = lf2.size; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_size1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mtime1` [INFO] [stdout] --> server/src/fs/fs_index.rs:1372:13 [INFO] [stdout] | [INFO] [stdout] 1372 | let mtime1 = lf2.mtime; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mtime1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/fs/fs_lock.rs:446:13 [INFO] [stdout] | [INFO] [stdout] 446 | let mut handle = tokio::spawn({ [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> server/src/utilities/logger.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | level, [INFO] [stdout] | ^^^^^ help: try ignoring the field: `level: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> server/src/utilities/logger.rs:174:21 [INFO] [stdout] | [INFO] [stdout] 174 | msg, [INFO] [stdout] | ^^^ help: try ignoring the field: `msg: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_millis` [INFO] [stdout] --> server/src/utilities/logger.rs:175:21 [INFO] [stdout] | [INFO] [stdout] 175 | ts_millis, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `ts_millis: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_sync_port` is never read [INFO] [stdout] --> server/src/config/env_var.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | struct ConnectionConfig { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | file_sync_port: u16, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConnectionConfig` has a derived impl for the trait `Debug`, but this is 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: methods `get_private_key_location` and `get_public_key_location` are never used [INFO] [stdout] --> server/src/config/env_var.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl EnvVar { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_private_key_location(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn get_public_key_location(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> server/src/config/app_config.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl SharedConfig { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 13 | pub fn new(_env_var: &EnvVar) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `nonce` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 21 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `expected_checksum` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 47 | nonce: Nonce, [INFO] [stdout] 48 | expected_checksum: Expected, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nonce` and `checksum` are never read [INFO] [stdout] --> server/src/core/protocol/file_send.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 16 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 17 | pub file_size: u64, [INFO] [stdout] 18 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `maybe_checksum` is never used [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FileSyncAck { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn maybe_checksum(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shutdown_jobs` is never used [INFO] [stdout] --> server/src/core/tasks/mod.rs:98:14 [INFO] [stdout] | [INFO] [stdout] 98 | pub async fn shutdown_jobs() -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Challenge` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:18:6 [INFO] [stdout] | [INFO] [stdout] 18 | type Challenge = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Nonce` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | type Nonce = u64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Checksum` is never used [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | type Checksum = u64; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileChecksumMismatch` is never constructed [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 27 | FileChecksumMismatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_status` and `update_status_msg` are never used [INFO] [stdout] --> server/src/core/tasks/job_summary.rs:142:18 [INFO] [stdout] | [INFO] [stdout] 104 | impl JobSummary { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub async fn update_status(&mut self, new_status: JobStatus) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub async fn update_status_msg(&mut self, status_msg: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `JobCallbackError` is never constructed [INFO] [stdout] --> server/src/core/tasks/jobs/job_genre/claimable_job.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 168 | pub enum ClaimableJobTakeoverError { [INFO] [stdout] | ------------------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 171 | JobCallbackError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ClaimableJobTakeoverError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove_peer`, `promote_peer`, `refresh_peer`, and `disable_peer` are never used [INFO] [stdout] --> server/src/core/topology/peer_table.rs:121:18 [INFO] [stdout] | [INFO] [stdout] 114 | impl PeerTable { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 121 | pub async fn remove_peer(&self, peer: Peer) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub async fn promote_peer(&self, identifier: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub async fn refresh_peer(&self, identifier: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub async fn disable_peer(&self, identifier: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `same_file` is never used [INFO] [stdout] --> server/src/fs/file.rs:137:18 [INFO] [stdout] | [INFO] [stdout] 101 | impl LumoFile { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | pub async fn same_file(&self, other: &Self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_env_var` is never used [INFO] [stdout] --> server/src/fs/file.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 262 | fn create_env_var() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all` is never used [INFO] [stdout] --> server/src/fs/util.rs:35:18 [INFO] [stdout] | [INFO] [stdout] 33 | impl DirPermissions { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 34 | /// Convenience: all permissions are granted. [INFO] [stdout] 35 | pub const fn all() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_stale` and `needs_rescan` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:228:12 [INFO] [stdout] | [INFO] [stdout] 161 | impl FileEntry { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn set_stale(&mut self, from_ver: u64, stale: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn needs_rescan(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `contains_key` and `debug` are never used [INFO] [stdout] --> server/src/fs/fs_index.rs:283:8 [INFO] [stdout] | [INFO] [stdout] 275 | impl FileIndexInner { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 283 | fn contains_key>(&self, path: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub async fn debug(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `debug` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:456:18 [INFO] [stdout] | [INFO] [stdout] 367 | impl FileIndex { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 456 | pub async fn debug(&self) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_lock` is never read [INFO] [stdout] --> server/src/fs/fs_lock.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 266 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 269 | file_lock: Arc, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReadGuard` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `created_at` is never read [INFO] [stdout] --> server/src/fs/task_management/file_download_tasks.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct PendingFileDownloadTask { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `checksum` and `created_at` are never read [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct PendingPull { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 35 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `connect_timeout` is never read [INFO] [stdout] --> server/src/network/tcp_sender.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct TcpConn { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | connect_timeout: Duration, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TcpConn` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `local_addr` is never used [INFO] [stdout] --> server/src/network/tcp_sender.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl TcpConn { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn local_addr(&self) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_path_disc_meta` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn check_path_disc_meta>(p: P) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `async_fs_rename` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:84:14 [INFO] [stdout] | [INFO] [stdout] 84 | pub async fn async_fs_rename>(from_path: P, to_path: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `async_fs_copy` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:119:14 [INFO] [stdout] | [INFO] [stdout] 119 | pub async fn async_fs_copy>(from_path: P, to_path: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fs_copy` is never used [INFO] [stdout] --> server/src/utilities/disk_op.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn fs_copy>(from_path: P, to_path: P) -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `path` is never used [INFO] [stdout] --> server/src/utilities/logger.rs:258:12 [INFO] [stdout] | [INFO] [stdout] 254 | impl TempFileGuard { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 258 | fn path(&self) -> &Path { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 09s [INFO] running `Command { std: "docker" "inspect" "f68a711bf06b3ad18fbcf0b16e4aa009edbde2736863510691a79696de8b25d9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f68a711bf06b3ad18fbcf0b16e4aa009edbde2736863510691a79696de8b25d9", kill_on_drop: false }` [INFO] [stdout] f68a711bf06b3ad18fbcf0b16e4aa009edbde2736863510691a79696de8b25d9