[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] 4a791b62fdd18add4a222899a8d0a2c15643ac2d [INFO] checking hahatianx/lumo against master#cced03bfd61a304243a34504618ecec86c17063f for pr-157082 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhahatianx%2Flumo" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-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-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/hahatianx/lumo on toolchain cced03bfd61a304243a34504618ecec86c17063f [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "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" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tokio-test v0.4.4 [INFO] [stderr] Downloaded indexmap v2.12.0 [INFO] [stderr] Downloaded proc-macro-error-attr v1.0.4 [INFO] [stderr] Downloaded serial_test_derive v3.2.0 [INFO] [stderr] Downloaded anstyle-query v1.1.4 [INFO] [stderr] Downloaded bech32 v0.9.1 [INFO] [stderr] Downloaded anstyle-wincon v3.0.10 [INFO] [stderr] Downloaded i18n-embed-fl v0.9.4 [INFO] [stderr] Downloaded i18n-config v0.4.8 [INFO] [stderr] Downloaded fluent v0.16.1 [INFO] [stderr] Downloaded age-core v0.11.0 [INFO] [stderr] Downloaded self_cell v0.10.3 [INFO] [stderr] Downloaded serial_test v3.2.0 [INFO] [stderr] Downloaded pnet_sys v0.34.0 [INFO] [stderr] Downloaded pnet_base v0.34.0 [INFO] [stderr] Downloaded rust-embed-utils v8.9.0 [INFO] [stderr] Downloaded rust-embed-impl v8.9.0 [INFO] [stderr] Downloaded i18n-embed-impl v0.8.4 [INFO] [stderr] Downloaded fluent-langneg v0.13.1 [INFO] [stderr] Downloaded secrecy v0.10.3 [INFO] [stderr] Downloaded io_tee v0.1.1 [INFO] [stderr] Downloaded pnet_datalink v0.34.0 [INFO] [stderr] Downloaded i18n-embed v0.15.4 [INFO] [stderr] Downloaded structopt-derive v0.4.18 [INFO] [stderr] Downloaded sdd v3.0.10 [INFO] [stderr] Downloaded proc-macro-error v1.0.4 [INFO] [stderr] Downloaded chacha20 v0.9.1 [INFO] [stderr] Downloaded fluent-syntax v0.11.1 [INFO] [stderr] Downloaded poly1305 v0.8.0 [INFO] [stderr] Downloaded chacha20 v0.10.0-rc.2 [INFO] [stderr] Downloaded kqueue v1.1.1 [INFO] [stderr] Downloaded fluent-bundle v0.15.3 [INFO] [stderr] Downloaded self_cell v1.2.1 [INFO] [stderr] Downloaded basic-toml v0.1.10 [INFO] [stderr] Downloaded clap v4.5.51 [INFO] [stderr] Downloaded structopt v0.3.26 [INFO] [stderr] Downloaded x25519-dalek v2.0.1 [INFO] [stderr] Downloaded arc-swap v1.7.1 [INFO] [stderr] Downloaded chacha20poly1305 v0.10.1 [INFO] [stderr] Downloaded rand v0.10.0-rc.0 [INFO] [stderr] Downloaded mio v1.1.0 [INFO] [stderr] Downloaded winnow v0.7.13 [INFO] [stderr] Downloaded scc v2.4.0 [INFO] [stderr] Downloaded clap_builder v4.5.51 [INFO] [stderr] Downloaded syn v2.0.107 [INFO] [stderr] Downloaded rust-embed v8.9.0 [INFO] [stderr] Downloaded age v0.11.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae [INFO] running `Command { std: "docker" "start" "a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Checking cfg-if v1.0.4 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Compiling syn v2.0.107 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking lexical-util v1.0.7 [INFO] [stderr] Checking block-padding v0.3.3 [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] Checking futures-channel v0.3.31 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling type-map v0.5.1 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Compiling self_cell v1.2.1 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling self_cell v0.10.3 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking mio v1.1.0 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking anstyle v1.0.13 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking opaque-debug v0.3.1 [INFO] [stderr] Checking anstyle-query v1.1.4 [INFO] [stderr] Checking lexical-parse-integer v1.0.6 [INFO] [stderr] Checking lexical-write-integer v1.0.6 [INFO] [stderr] Checking is_terminal_polyfill v1.70.2 [INFO] [stderr] Checking poly1305 v0.8.0 [INFO] [stderr] Checking rust-embed-utils v8.9.0 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling generic-array v0.14.9 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking lexical-parse-float v1.0.6 [INFO] [stderr] Compiling arc-swap v1.7.1 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Checking regex-syntax v0.8.8 [INFO] [stderr] Checking clap_lex v0.7.6 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking lexical-write-float v1.0.6 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking hkdf v0.12.4 [INFO] [stderr] Checking clap_builder v4.5.51 [INFO] [stderr] Checking pbkdf2 v0.12.2 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Checking bitflags v2.10.0 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Checking winnow v0.7.13 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Compiling virtue v0.0.18 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Checking io_tee v0.1.1 [INFO] [stderr] Checking no-std-net v0.6.0 [INFO] [stderr] Checking lexical-core v1.0.6 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Checking pnet_base v0.34.0 [INFO] [stderr] Checking inotify v0.11.0 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Checking chacha20 v0.10.0-rc.2 [INFO] [stderr] Checking pnet_sys v0.34.0 [INFO] [stderr] Checking serde_spanned v1.0.3 [INFO] [stderr] Checking toml_datetime v0.7.3 [INFO] [stderr] Checking unty v0.0.4 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Checking toml_writer v1.0.4 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking ciborium-io v0.2.2 [INFO] [stderr] Compiling bincode_derive v2.0.1 [INFO] [stderr] Checking rand v0.10.0-rc.0 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking uuid v1.20.0 [INFO] [stderr] Checking fs2 v0.4.3 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking sdd v3.0.10 [INFO] [stderr] Checking xxhash-rust v0.8.15 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking rayon v1.11.0 [INFO] [stderr] Checking oorandom v11.1.5 [INFO] [stderr] Checking scc v2.4.0 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking unicode-ident v1.0.19 [INFO] [stderr] Checking proc-macro2 v1.0.101 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking toml_parser v1.0.4 [INFO] [stderr] Compiling server v0.1.0 (/opt/rustwide/workdir/server) [INFO] [stderr] Checking quote v1.0.41 [INFO] [stderr] Checking toml v0.9.8 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Checking regex v1.12.2 [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 curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling tokio-macros v2.6.0 [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 clap_derive v4.5.49 [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] Checking async-stream v0.3.6 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Checking zeroize v1.8.2 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking secrecy v0.10.3 [INFO] [stderr] Compiling rust-embed v8.9.0 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Checking unic-langid-impl v0.9.6 [INFO] [stderr] Checking chacha20 v0.9.1 [INFO] [stderr] Checking salsa20 v0.10.2 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking cbc v0.1.2 [INFO] [stderr] Checking scrypt v0.11.0 [INFO] [stderr] Checking unic-langid v0.9.6 [INFO] [stderr] Checking intl_pluralrules v7.0.2 [INFO] [stderr] Checking fluent-langneg v0.13.1 [INFO] [stderr] Checking intl-memoizer v0.5.3 [INFO] [stderr] Checking chacha20poly1305 v0.10.1 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking fluent-syntax v0.11.1 [INFO] [stderr] Checking x25519-dalek v2.0.1 [INFO] [stderr] Checking clap v4.5.51 [INFO] [stderr] Checking fluent-bundle v0.15.3 [INFO] [stderr] Checking fluent v0.16.1 [INFO] [stderr] Compiling basic-toml v0.1.10 [INFO] [stderr] Compiling toml v0.5.11 [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 pnet_datalink v0.34.0 [INFO] [stderr] Checking notify v8.2.0 [INFO] [stderr] Checking api_model v0.1.0 (/opt/rustwide/workdir/api_model) [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Compiling i18n-config v0.4.8 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking cookie-factory v0.3.3 [INFO] [stderr] Checking serial_test v3.2.0 [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] [stderr] Checking ciborium v0.2.2 [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 rand v0.8.5 [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> client/src/action/list_tasks.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | _ => 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:72:13 [INFO] [stdout] | [INFO] [stdout] 66 | JobStatus::Running => xterm_color::bold("Running"), [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] 67 | JobStatus::Completed => xterm_color::bold_green("Completed"), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 68 | JobStatus::Failed => xterm_color::bold_red("Failed"), [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] 69 | JobStatus::TimedOut => xterm_color::bold_yellow("Timed out"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 72 | _ => 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:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | _ => 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:72:13 [INFO] [stdout] | [INFO] [stdout] 66 | JobStatus::Running => xterm_color::bold("Running"), [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] 67 | JobStatus::Completed => xterm_color::bold_green("Completed"), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 68 | JobStatus::Failed => xterm_color::bold_red("Failed"), [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] 69 | JobStatus::TimedOut => xterm_color::bold_yellow("Timed out"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 72 | _ => 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: associated constant `N` is never used [INFO] [stdout] --> client/src/format/table.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait Schema { [INFO] [stdout] | ------ associated constant in this trait [INFO] [stdout] 16 | const N: usize; [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] [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: 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: associated constant `N` is never used [INFO] [stdout] --> client/src/format/table.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait Schema { [INFO] [stdout] | ------ associated constant in this trait [INFO] [stdout] 16 | const N: usize; [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 i18n-embed-impl v0.8.4 [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stderr] Checking age-core v0.11.0 [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 age v0.11.1 [INFO] [stderr] Checking tokio-test v0.4.4 [INFO] [stdout] warning: unused import: `ENV_VAR` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [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::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::path::PathBuf` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_pull_initiate.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> server/src/fs/file.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Index` [INFO] [stdout] --> server/src/fs/fs_index.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | use std::ops::Index; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/fs/fs_index.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> server/src/fs/task_management/file_download_tasks.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActualFilePath` and `VfsEncryption` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::fs::{ActualFilePath, TempFilePath, VFS, VfsEncryption, VfsLock, VirtualPath}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:31 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::fs::fs_lock` [INFO] [stdout] --> server/src/utilities/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::fs::fs_lock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LOGGER` [INFO] [stdout] --> server/src/utilities/crypto.rs:3:34 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptions` and `self` [INFO] [stdout] --> server/src/utilities/crypto.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use std::fs::{self, OpenOptions}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Read`, `Seek`, and `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | use std::io::{BufReader, BufWriter, Read, Seek, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ ^^^^ ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ENV_VAR` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [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::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::path::PathBuf` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_pull_initiate.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::path::PathBuf; [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: unused import: `PathBuf` [INFO] [stdout] --> server/src/fs/file.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/fs/util.rs:221:9 [INFO] [stdout] | [INFO] [stdout] 221 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Index` [INFO] [stdout] --> server/src/fs/fs_index.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | use std::ops::Index; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/fs/fs_index.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> server/src/fs/task_management/file_download_tasks.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActualFilePath` and `VfsEncryption` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::fs::{ActualFilePath, TempFilePath, VFS, VfsEncryption, VfsLock, VirtualPath}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:31 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utilities::temp_dir::TmpDirGuard` [INFO] [stdout] --> server/src/fs/vfs/actual_file.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | use crate::utilities::temp_dir::TmpDirGuard; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> server/src/fs/vfs/actual_file.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::fs::fs_lock` [INFO] [stdout] --> server/src/utilities/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::fs::fs_lock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LOGGER` [INFO] [stdout] --> server/src/utilities/crypto.rs:3:34 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptions` and `self` [INFO] [stdout] --> server/src/utilities/crypto.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use std::fs::{self, OpenOptions}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Read`, `Seek`, and `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | use std::io::{BufReader, BufWriter, Read, Seek, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ ^^^^ ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | 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:21:45 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [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] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | 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:59:34 [INFO] [stdout] | [INFO] [stdout] 59 | 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: `vfs` [INFO] [stdout] --> server/src/fs/fs_index.rs:1121:9 [INFO] [stdout] | [INFO] [stdout] 1121 | vfs: &VirtualFileSystem, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_vfs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1067:14 [INFO] [stdout] | [INFO] [stdout] 1067 | 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 variable: `arc_vfs` [INFO] [stdout] --> server/src/fs/fs_listener.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let arc_vfs = Arc::clone(&vfs); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arc_vfs` [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:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 20 | 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:47:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 46 | nonce: Nonce, [INFO] [stdout] 47 | 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:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 12 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | pub file_size: u64, [INFO] [stdout] 14 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileMalformed` is never constructed [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum FileSyncError { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 13 | FileMalformed, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FileSyncError` 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 `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:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | 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:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | 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:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | 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:28:5 [INFO] [stdout] | [INFO] [stdout] 23 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 28 | FileChecksumMismatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `contains_key` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:279:8 [INFO] [stdout] | [INFO] [stdout] 271 | impl FileIndexInner { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 279 | fn contains_key(&self, path: &VirtualPath) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `list_paths` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:416:25 [INFO] [stdout] | [INFO] [stdout] 365 | impl FileIndex { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 416 | 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:645:14 [INFO] [stdout] | [INFO] [stdout] 472 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 645 | async fn activate_checked(&self, path: &VirtualPath, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 677 | async fn deactivate_checked(&self, path: &VirtualPath, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 709 | 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:748:14 [INFO] [stdout] | [INFO] [stdout] 747 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 748 | async fn remove(&self, p: &VirtualPath) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 757 | async fn activate(&self, p: &VirtualPath) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 766 | async fn deactivate(&self, p: &VirtualPath) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 775 | async fn mark_stale(&self, p: &VirtualPath) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 784 | async fn set_last_writer(&self, p: &VirtualPath, 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:255:5 [INFO] [stdout] | [INFO] [stdout] 252 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 255 | 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: methods `write` and `read` are never used [INFO] [stdout] --> server/src/fs/vfs_interface.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 14 | pub(crate) trait Vfs { [INFO] [stdout] | --- methods in this trait [INFO] [stdout] 15 | async fn write(&self, path: &R, data: &[u8]) -> Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 16 | async fn read(&self, path: &R) -> Result>; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `meta_dir` is never read [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct VirtualFileSystem { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 27 | working_dir: PathBuf, [INFO] [stdout] 28 | meta_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_working_dir` is never used [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:77:19 [INFO] [stdout] | [INFO] [stdout] 32 | impl VirtualFileSystem { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 77 | pub(crate) fn get_working_dir(&self) -> &Path { [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 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: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> server/src/fs/vfs_interface.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | async fn open_lumo(&self, path: &VirtualPath) -> Result; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] = note: `#[warn(async_fn_in_trait)]` on by default [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 30 - async fn open_lumo(&self, path: &VirtualPath) -> Result; [INFO] [stdout] 30 + fn open_lumo(&self, path: &VirtualPath) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> server/src/fs/vfs_interface.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | async fn f_to_encryption( [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 34 ~ fn f_to_encryption( [INFO] [stdout] 35 | &self, [INFO] [stdout] ... [INFO] [stdout] 38 | passphrase: &str, [INFO] [stdout] 39 ~ ) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> server/src/fs/vfs_interface.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | async fn f_from_encryption( [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 40 ~ fn f_from_encryption( [INFO] [stdout] 41 | &self, [INFO] [stdout] ... [INFO] [stdout] 44 | passphrase: &str, [INFO] [stdout] 45 ~ ) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BatchSize` [INFO] [stdout] --> server/benches/crypto_bench.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use criterion::{BatchSize, Criterion, black_box, criterion_group, criterion_main}; [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: `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] [INFO] [stdout] warning: function `format_sz` is never used [INFO] [stdout] --> server/benches/crypto_bench.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn format_sz(sz: usize) -> 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: unused import: `ENV_VAR` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [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::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::path::PathBuf` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_pull_initiate.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> server/src/fs/file.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Index` [INFO] [stdout] --> server/src/fs/fs_index.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | use std::ops::Index; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/fs/fs_index.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fs_lock::RwLock` [INFO] [stdout] --> server/src/fs/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use fs_lock::RwLock; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> server/src/fs/task_management/file_download_tasks.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActualFilePath` and `VfsEncryption` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::fs::{ActualFilePath, TempFilePath, VFS, VfsEncryption, VfsLock, VirtualPath}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:31 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LumoVfs` [INFO] [stdout] --> server/src/fs/mod.rs:15:25 [INFO] [stdout] | [INFO] [stdout] 15 | pub use vfs_interface::{LumoVfs, VfsEncryption, VfsLock}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::fs::fs_lock` [INFO] [stdout] --> server/src/utilities/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::fs::fs_lock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LOGGER` [INFO] [stdout] --> server/src/utilities/crypto.rs:3:34 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptions` and `self` [INFO] [stdout] --> server/src/utilities/crypto.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use std::fs::{self, OpenOptions}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Read`, `Seek`, and `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | use std::io::{BufReader, BufWriter, Read, Seek, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ ^^^^ ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [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: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/fs_lock.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | 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:21:45 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [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] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ENV_VAR` [INFO] [stdout] --> server/src/core/protocol/file_send.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [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::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::path::PathBuf` [INFO] [stdout] --> server/src/core/tasks/jobs/job_fs_pull_initiate.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::path::PathBuf; [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: unused import: `PathBuf` [INFO] [stdout] --> server/src/fs/file.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/fs/util.rs:221:9 [INFO] [stdout] | [INFO] [stdout] 221 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Index` [INFO] [stdout] --> server/src/fs/fs_index.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | use std::ops::Index; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> server/src/fs/fs_index.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fs_lock::RwLock` [INFO] [stdout] --> server/src/fs/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use fs_lock::RwLock; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> server/src/fs/task_management/file_download_tasks.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActualFilePath` and `VfsEncryption` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::fs::{ActualFilePath, TempFilePath, VFS, VfsEncryption, VfsLock, VirtualPath}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncSeekExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:31 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utilities::temp_dir::TmpDirGuard` [INFO] [stdout] --> server/src/fs/vfs/actual_file.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | use crate::utilities::temp_dir::TmpDirGuard; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> server/src/fs/vfs/actual_file.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LumoVfs` [INFO] [stdout] --> server/src/fs/mod.rs:15:25 [INFO] [stdout] | [INFO] [stdout] 15 | pub use vfs_interface::{LumoVfs, VfsEncryption, VfsLock}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::fs::fs_lock` [INFO] [stdout] --> server/src/utilities/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::fs::fs_lock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LOGGER` [INFO] [stdout] --> server/src/utilities/crypto.rs:3:34 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::global_var::{ENV_VAR, LOGGER}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptions` and `self` [INFO] [stdout] --> server/src/utilities/crypto.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use std::fs::{self, OpenOptions}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Read`, `Seek`, and `Write` [INFO] [stdout] --> server/src/utilities/crypto.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | use std::io::{BufReader, BufWriter, Read, Seek, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ ^^^^ ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> server/src/utilities/crypto.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | 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:59:34 [INFO] [stdout] | [INFO] [stdout] 59 | 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: `vfs` [INFO] [stdout] --> server/src/fs/fs_index.rs:1121:9 [INFO] [stdout] | [INFO] [stdout] 1121 | vfs: &VirtualFileSystem, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_vfs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1067:14 [INFO] [stdout] | [INFO] [stdout] 1067 | 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: unused variable: `arc_vfs` [INFO] [stdout] --> server/src/fs/fs_listener.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let arc_vfs = Arc::clone(&vfs); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arc_vfs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lf` [INFO] [stdout] --> server/src/fs/fs_index.rs:1381:13 [INFO] [stdout] | [INFO] [stdout] 1381 | let lf = LumoFile::new(&vfs, &vp).await.unwrap(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_lf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/fs/fs_lock.rs:453:13 [INFO] [stdout] | [INFO] [stdout] 453 | 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:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 20 | 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:47:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 46 | nonce: Nonce, [INFO] [stdout] 47 | 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:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 12 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | pub file_size: u64, [INFO] [stdout] 14 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileMalformed` is never constructed [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum FileSyncError { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 13 | FileMalformed, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FileSyncError` 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 `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:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | 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:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | 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:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | 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:28:5 [INFO] [stdout] | [INFO] [stdout] 23 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 28 | FileChecksumMismatch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `contains_key` is never used [INFO] [stdout] --> server/src/fs/fs_index.rs:279:8 [INFO] [stdout] | [INFO] [stdout] 271 | impl FileIndexInner { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 279 | fn contains_key(&self, path: &VirtualPath) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_lock` is never read [INFO] [stdout] --> server/src/fs/fs_lock.rs:255:5 [INFO] [stdout] | [INFO] [stdout] 252 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 255 | 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 `meta_dir` is never read [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct VirtualFileSystem { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 27 | working_dir: PathBuf, [INFO] [stdout] 28 | meta_dir: PathBuf, [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 `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: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> server/src/fs/vfs_interface.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | async fn open_lumo(&self, path: &VirtualPath) -> Result; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] = note: `#[warn(async_fn_in_trait)]` on by default [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 30 - async fn open_lumo(&self, path: &VirtualPath) -> Result; [INFO] [stdout] 30 + fn open_lumo(&self, path: &VirtualPath) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> server/src/fs/vfs_interface.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | async fn f_to_encryption( [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 34 ~ fn f_to_encryption( [INFO] [stdout] 35 | &self, [INFO] [stdout] ... [INFO] [stdout] 38 | passphrase: &str, [INFO] [stdout] 39 ~ ) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified [INFO] [stdout] --> server/src/fs/vfs_interface.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | async fn f_from_encryption( [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future` [INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change [INFO] [stdout] | [INFO] [stdout] 40 ~ fn f_from_encryption( [INFO] [stdout] 41 | &self, [INFO] [stdout] ... [INFO] [stdout] 44 | passphrase: &str, [INFO] [stdout] 45 ~ ) -> impl std::future::Future> + Send; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | 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:21:45 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [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] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | 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:59:34 [INFO] [stdout] | [INFO] [stdout] 59 | 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: `vfs` [INFO] [stdout] --> server/src/fs/fs_index.rs:1121:9 [INFO] [stdout] | [INFO] [stdout] 1121 | vfs: &VirtualFileSystem, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_vfs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1067:14 [INFO] [stdout] | [INFO] [stdout] 1067 | 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 variable: `arc_vfs` [INFO] [stdout] --> server/src/fs/fs_listener.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let arc_vfs = Arc::clone(&vfs); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arc_vfs` [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 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 import: `AsyncWriteExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:45 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/file.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> server/src/fs/fs_lock.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncReadExt` [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::io::{AsyncReadExt, AsyncSeekExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^^^^ [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_temp_downloads_dir`, `get_private_key_location`, and `get_public_key_location` are never used [INFO] [stdout] --> server/src/config/env_var.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl EnvVar { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_temp_downloads_dir(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [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: field `nonce` is never read [INFO] [stdout] --> server/src/core/protocol/file_recv.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 20 | 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:47:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 46 | nonce: Nonce, [INFO] [stdout] 47 | 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:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 12 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | pub file_size: u64, [INFO] [stdout] 14 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileMalformed` is never constructed [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum FileSyncError { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 13 | FileMalformed, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FileSyncError` 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 `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:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | 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:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | 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:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | 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:28:5 [INFO] [stdout] | [INFO] [stdout] 23 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 28 | 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: methods `same_file` and `path` are never used [INFO] [stdout] --> server/src/fs/file.rs:144:18 [INFO] [stdout] | [INFO] [stdout] 94 | impl LumoFile { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 144 | pub async fn same_file(&self, other: &Self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn path(&self) -> &ActualFilePath { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all` is never used [INFO] [stdout] --> server/src/fs/util.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 56 | impl DirPermissions { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 57 | /// Convenience: all permissions are granted. [INFO] [stdout] 58 | pub const fn all() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `secure_join` is never used [INFO] [stdout] --> server/src/fs/util.rs:190:8 [INFO] [stdout] | [INFO] [stdout] 190 | pub fn secure_join>(base: P, rel: &str) -> Result { [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:216:12 [INFO] [stdout] | [INFO] [stdout] 155 | impl FileEntry { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn set_active(&mut self, from_ver: u64, active: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn set_stale(&mut self, from_ver: u64, stale: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn set_last_writer(&mut self, from_ver: u64, writer: impl Into) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | 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:279:8 [INFO] [stdout] | [INFO] [stdout] 271 | impl FileIndexInner { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 279 | fn contains_key(&self, path: &VirtualPath) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | 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:373:18 [INFO] [stdout] | [INFO] [stdout] 365 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 373 | pub async fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 380 | pub async fn with_entry( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 416 | pub(crate) async fn list_paths(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | pub(crate) async fn candidates_by_size(&self, size: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 437 | pub(crate) async fn candidates_by_size_mtime( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 452 | pub async fn candidates_for(&self, file: &LumoFile) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 460 | 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:645:14 [INFO] [stdout] | [INFO] [stdout] 472 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 645 | async fn activate_checked(&self, path: &VirtualPath, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 677 | async fn deactivate_checked(&self, path: &VirtualPath, from_ver: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 709 | 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:748:14 [INFO] [stdout] | [INFO] [stdout] 747 | impl FileIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 748 | async fn remove(&self, p: &VirtualPath) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 757 | async fn activate(&self, p: &VirtualPath) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 766 | async fn deactivate(&self, p: &VirtualPath) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 775 | async fn mark_stale(&self, p: &VirtualPath) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 784 | async fn set_last_writer(&self, p: &VirtualPath, 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:255:5 [INFO] [stdout] | [INFO] [stdout] 252 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 255 | 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:23:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PendingFileDownloadTask { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `created_at` is never read [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct PendingPull { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `basename` and `dirname` are never used [INFO] [stdout] --> server/src/fs/vfs/virtual_file.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl VirtualFilePath { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn basename(&self) -> &str { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn dirname(&self) -> &str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `write` and `read` are never used [INFO] [stdout] --> server/src/fs/vfs_interface.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 14 | pub(crate) trait Vfs { [INFO] [stdout] | --- methods in this trait [INFO] [stdout] 15 | async fn write(&self, path: &R, data: &[u8]) -> Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 16 | async fn read(&self, path: &R) -> Result>; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `VfsEncryption` is never used [INFO] [stdout] --> server/src/fs/vfs_interface.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub trait VfsEncryption { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `TempFile` is never used [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub type TempFile = TempFilePath; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `meta_dir` is never read [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct VirtualFileSystem { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 27 | working_dir: PathBuf, [INFO] [stdout] 28 | meta_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_working_dir` is never used [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:77:19 [INFO] [stdout] | [INFO] [stdout] 32 | impl VirtualFileSystem { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 77 | pub(crate) fn get_working_dir(&self) -> &Path { [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 `identity_from_password` is never used [INFO] [stdout] --> server/src/utilities/crypto.rs:119:15 [INFO] [stdout] | [INFO] [stdout] 119 | pub(crate) fn identity_from_password(password: &str, salt: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TmpDirGuard` is never constructed [INFO] [stdout] --> server/src/utilities/temp_dir.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct TmpDirGuard(pub PathBuf); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> server/src/utilities/temp_dir.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl TmpDirGuard { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 24 | pub fn new(name: &str) -> Self { [INFO] [stdout] | ^^^ [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] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> server/src/core/tasks/handlers/message_pull_response_handler.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | 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:59:34 [INFO] [stdout] | [INFO] [stdout] 59 | 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: `vfs` [INFO] [stdout] --> server/src/fs/fs_index.rs:1121:9 [INFO] [stdout] | [INFO] [stdout] 1121 | vfs: &VirtualFileSystem, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_vfs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> server/src/fs/fs_index.rs:1067:14 [INFO] [stdout] | [INFO] [stdout] 1067 | 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: unused variable: `arc_vfs` [INFO] [stdout] --> server/src/fs/fs_listener.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let arc_vfs = Arc::clone(&vfs); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arc_vfs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lf` [INFO] [stdout] --> server/src/fs/fs_index.rs:1381:13 [INFO] [stdout] | [INFO] [stdout] 1381 | let lf = LumoFile::new(&vfs, &vp).await.unwrap(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_lf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> server/src/fs/fs_lock.rs:453:13 [INFO] [stdout] | [INFO] [stdout] 453 | 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_temp_downloads_dir`, `get_private_key_location`, and `get_public_key_location` are never used [INFO] [stdout] --> server/src/config/env_var.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl EnvVar { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_temp_downloads_dir(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [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:20:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct FileRecvSummary { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 20 | 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:47:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct FileRecvTracker { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 46 | nonce: Nonce, [INFO] [stdout] 47 | 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:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct FileSendSummary { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 12 | pub nonce: Nonce, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | pub file_size: u64, [INFO] [stdout] 14 | pub checksum: Checksum, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FileMalformed` is never constructed [INFO] [stdout] --> server/src/core/protocol/file_sync.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum FileSyncError { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 13 | FileMalformed, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FileSyncError` 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 `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:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | 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:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | 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:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | 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:28:5 [INFO] [stdout] | [INFO] [stdout] 23 | enum DownloadFileError { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 28 | 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: methods `same_file` and `path` are never used [INFO] [stdout] --> server/src/fs/file.rs:144:18 [INFO] [stdout] | [INFO] [stdout] 94 | impl LumoFile { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 144 | pub async fn same_file(&self, other: &Self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn path(&self) -> &ActualFilePath { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all` is never used [INFO] [stdout] --> server/src/fs/util.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 56 | impl DirPermissions { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 57 | /// Convenience: all permissions are granted. [INFO] [stdout] 58 | pub const fn all() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `secure_join` is never used [INFO] [stdout] --> server/src/fs/util.rs:190:8 [INFO] [stdout] | [INFO] [stdout] 190 | pub fn secure_join>(base: P, rel: &str) -> Result { [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:224:12 [INFO] [stdout] | [INFO] [stdout] 155 | impl FileEntry { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn set_stale(&mut self, from_ver: u64, stale: bool) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | 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:279:8 [INFO] [stdout] | [INFO] [stdout] 271 | impl FileIndexInner { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 279 | fn contains_key(&self, path: &VirtualPath) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | 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:460:18 [INFO] [stdout] | [INFO] [stdout] 365 | impl FileIndex { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 460 | 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:255:5 [INFO] [stdout] | [INFO] [stdout] 252 | pub struct ReadGuard { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 255 | 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:23:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PendingFileDownloadTask { [INFO] [stdout] | ----------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `created_at` is never read [INFO] [stdout] --> server/src/fs/task_management/file_request_tasks.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct PendingPull { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub created_at: chrono::DateTime, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `TempFile` is never used [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub type TempFile = TempFilePath; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `meta_dir` is never read [INFO] [stdout] --> server/src/fs/virtual_file_system.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct VirtualFileSystem { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 27 | working_dir: PathBuf, [INFO] [stdout] 28 | meta_dir: PathBuf, [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: 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 21s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae", kill_on_drop: false }` [INFO] [stdout] a1611d4bc40a7a8a49166ad47f0d0511322b7972d1cb643785fe4bbbc9194eae