[INFO] cloning repository https://github.com/0xhappyboy/scoutnet [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/0xhappyboy/scoutnet" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xhappyboy%2Fscoutnet", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xhappyboy%2Fscoutnet'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d12ac8ccb46a81c54722f753fce64f39e1409b10 [INFO] building 0xhappyboy/scoutnet against master#c7f6aa2869acdbf014d094c6e427e554e160b6db for pr-146237-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xhappyboy%2Fscoutnet" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/0xhappyboy/scoutnet [INFO] finished tweaking git repo https://github.com/0xhappyboy/scoutnet [INFO] tweaked toml for git repo https://github.com/0xhappyboy/scoutnet written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/0xhappyboy/scoutnet on toolchain c7f6aa2869acdbf014d094c6e427e554e160b6db [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/0xhappyboy/scoutnet 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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded strum v0.26.3 [INFO] [stderr] Downloaded unicode-truncate v1.1.0 [INFO] [stderr] Downloaded strum_macros v0.26.4 [INFO] [stderr] Downloaded quote v1.0.36 [INFO] [stderr] Downloaded tui-tree-widget v0.21.0 [INFO] [stderr] Downloaded num_cpus v1.16.0 [INFO] [stderr] Downloaded stability v0.2.1 [INFO] [stderr] Downloaded futures-task v0.3.30 [INFO] [stderr] Downloaded ipnetwork v0.20.0 [INFO] [stderr] Downloaded adler v1.0.2 [INFO] [stderr] Downloaded glob v0.3.1 [INFO] [stderr] Downloaded cassowary v0.3.0 [INFO] [stderr] Downloaded indoc v2.0.5 [INFO] [stderr] Downloaded tokio-macros v2.3.0 [INFO] [stderr] Downloaded rustc_version v0.4.0 [INFO] [stderr] Downloaded futures-sink v0.3.30 [INFO] [stderr] Downloaded futures-executor v0.3.30 [INFO] [stderr] Downloaded castaway v0.2.3 [INFO] [stderr] Downloaded pnet_base v0.35.0 [INFO] [stderr] Downloaded pnet_sys v0.35.0 [INFO] [stderr] Downloaded futures-macro v0.3.30 [INFO] [stderr] Downloaded version_check v0.9.4 [INFO] [stderr] Downloaded relative-path v1.9.3 [INFO] [stderr] Downloaded crossterm_winapi v0.9.1 [INFO] [stderr] Downloaded pnet_macros_support v0.35.0 [INFO] [stderr] Downloaded proc-macro-crate v3.1.0 [INFO] [stderr] Downloaded lru v0.12.3 [INFO] [stderr] Downloaded futures-core v0.3.30 [INFO] [stderr] Downloaded toml_datetime v0.6.6 [INFO] [stderr] Downloaded static_assertions v1.1.0 [INFO] [stderr] Downloaded signal-hook-mio v0.2.3 [INFO] [stderr] Downloaded futures-channel v0.3.30 [INFO] [stderr] Downloaded pnet_transport v0.35.0 [INFO] [stderr] Downloaded futures-io v0.3.30 [INFO] [stderr] Downloaded pin-project-lite v0.2.14 [INFO] [stderr] Downloaded pnet_macros v0.35.0 [INFO] [stderr] Downloaded pnet_datalink v0.35.0 [INFO] [stderr] Downloaded addr2line v0.22.0 [INFO] [stderr] Downloaded tui-scrollview v0.3.7 [INFO] [stderr] Downloaded no-std-net v0.6.0 [INFO] [stderr] Downloaded pnet_packet v0.35.0 [INFO] [stderr] Downloaded pnet v0.35.0 [INFO] [stderr] Downloaded miniz_oxide v0.7.4 [INFO] [stderr] Downloaded serde_derive v1.0.204 [INFO] [stderr] Downloaded futures v0.3.30 [INFO] [stderr] Downloaded signal-hook v0.3.17 [INFO] [stderr] Downloaded bytes v1.6.0 [INFO] [stderr] Downloaded rstest v0.21.0 [INFO] [stderr] Downloaded indexmap v2.2.6 [INFO] [stderr] Downloaded cc v1.1.3 [INFO] [stderr] Downloaded backtrace v0.3.73 [INFO] [stderr] Downloaded serde v1.0.204 [INFO] [stderr] Downloaded mio v0.8.11 [INFO] [stderr] Downloaded itertools v0.13.0 [INFO] [stderr] Downloaded rstest_macros v0.21.0 [INFO] [stderr] Downloaded toml_edit v0.21.1 [INFO] [stderr] Downloaded compact_str v0.7.1 [INFO] [stderr] Downloaded crossterm v0.27.0 [INFO] [stderr] Downloaded futures-util v0.3.30 [INFO] [stderr] Downloaded tui-textarea v0.5.0 [INFO] [stderr] Downloaded syn v2.0.70 [INFO] [stderr] Downloaded allocator-api2 v0.2.18 [INFO] [stderr] Downloaded regex v1.10.5 [INFO] [stderr] Downloaded redox_syscall v0.5.2 [INFO] [stderr] Downloaded futures-timer v3.0.3 [INFO] [stderr] Downloaded gimli v0.29.0 [INFO] [stderr] Downloaded object v0.36.1 [INFO] [stderr] Downloaded regex-syntax v0.8.4 [INFO] [stderr] Downloaded unicode-width v0.1.13 [INFO] [stderr] Downloaded ratatui v0.27.0 [INFO] [stderr] Downloaded regex-automata v0.4.7 [INFO] [stderr] Downloaded tokio v1.38.0 [INFO] [stderr] Downloaded libc v0.2.155 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cc3856487a3a47884ac1b3b6d93f4be15c36711d160ea5244d8b71af3acf10b9 [INFO] running `Command { std: "docker" "start" "-a" "cc3856487a3a47884ac1b3b6d93f4be15c36711d160ea5244d8b71af3acf10b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cc3856487a3a47884ac1b3b6d93f4be15c36711d160ea5244d8b71af3acf10b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc3856487a3a47884ac1b3b6d93f4be15c36711d160ea5244d8b71af3acf10b9", kill_on_drop: false }` [INFO] [stdout] cc3856487a3a47884ac1b3b6d93f4be15c36711d160ea5244d8b71af3acf10b9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 08c6985bf403afd08257b1831dcc77ae7a5388eeb7574710a1b1dc68d66b7772 [INFO] running `Command { std: "docker" "start" "-a" "08c6985bf403afd08257b1831dcc77ae7a5388eeb7574710a1b1dc68d66b7772", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling regex-syntax v0.8.4 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling syn v2.0.70 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling no-std-net v0.6.0 [INFO] [stderr] Compiling futures-sink v0.3.30 [INFO] [stderr] Compiling allocator-api2 v0.2.18 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling pin-project-lite v0.2.14 [INFO] [stderr] Compiling futures-core v0.3.30 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling pnet_base v0.35.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.3 [INFO] [stderr] Compiling castaway v0.2.3 [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling regex-automata v0.4.7 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling serde v1.0.204 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Compiling unicode-width v0.1.13 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Compiling itoa v1.0.11 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling toml_datetime v0.6.6 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling compact_str v0.7.1 [INFO] [stderr] Compiling lru v0.12.3 [INFO] [stderr] Compiling crossterm v0.27.0 [INFO] [stderr] Compiling rstest_macros v0.21.0 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling pnet_macros_support v0.35.0 [INFO] [stderr] Compiling pnet_sys v0.35.0 [INFO] [stderr] Compiling relative-path v1.9.3 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Compiling pnet v0.35.0 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling socket2 v0.5.7 [INFO] [stderr] Compiling indoc v2.0.5 [INFO] [stderr] Compiling regex v1.10.5 [INFO] [stderr] Compiling toml_edit v0.21.1 [INFO] [stderr] Compiling bytes v1.6.0 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling stability v0.2.1 [INFO] [stderr] Compiling pnet_macros v0.35.0 [INFO] [stderr] Compiling tokio-macros v2.3.0 [INFO] [stderr] Compiling tokio v1.38.0 [INFO] [stderr] Compiling pnet_packet v0.35.0 [INFO] [stderr] Compiling proc-macro-crate v3.1.0 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling ipnetwork v0.20.0 [INFO] [stderr] Compiling pnet_datalink v0.35.0 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling ratatui v0.27.0 [INFO] [stderr] Compiling tui-tree-widget v0.21.0 [INFO] [stderr] Compiling tui-textarea v0.5.0 [INFO] [stderr] Compiling futures-executor v0.3.30 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling rstest v0.21.0 [INFO] [stderr] Compiling tui-scrollview v0.3.7 [INFO] [stderr] Compiling pnet_transport v0.35.0 [INFO] [stderr] Compiling scoutnet v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Stdout`, `collections::HashMap`, `thread`, and `time::Duration` [INFO] [stdout] --> src/app/app.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 3 | io::{self, Stdout}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 4 | thread, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 5 | time::Duration, [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::data::monitordata::real_time_net_pack_table_data` [INFO] [stdout] --> src/app/app.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::data::monitordata::real_time_net_pack_table_data; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `task::monitortask::get_real_time_net_pack` [INFO] [stdout] --> src/app/app.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | task::monitortask::get_real_time_net_pack, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::net::device` [INFO] [stdout] --> src/app/config.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::net::device; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:26:20 [INFO] [stdout] | [INFO] [stdout] 26 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 26 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] 26 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:28:27 [INFO] [stdout] | [INFO] [stdout] 28 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 28 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] 28 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:71:20 [INFO] [stdout] | [INFO] [stdout] 71 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 71 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] 71 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:73:27 [INFO] [stdout] | [INFO] [stdout] 73 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 73 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] 73 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:115:20 [INFO] [stdout] | [INFO] [stdout] 115 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 115 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] 115 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:117:27 [INFO] [stdout] | [INFO] [stdout] 117 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 117 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] 117 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 129 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] 129 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:131:27 [INFO] [stdout] | [INFO] [stdout] 131 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 131 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] 131 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_1` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | Area_1, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_2` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | Area_2, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_3` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | Area_3, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_4` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | Area_4, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/app/ui/welcome.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashMap` [INFO] [stdout] --> src/data/monitordata.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, sync::Mutex}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/net/pack.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::device` [INFO] [stdout] --> src/net/pack.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use super::device; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `thread` and `time::Duration` [INFO] [stdout] --> src/task/monitortask.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{thread, time::Duration}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `data::appdata::exit` [INFO] [stdout] --> src/task/monitortask.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{data::appdata::exit, net::pack::NetPack}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `device_name_list` [INFO] [stdout] --> src/app/app.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let device_name_list = Device::get_device_name_list(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_name_list` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network_device_list_state` [INFO] [stdout] --> src/app/ui/http.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network_device_list_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/app/ui/http.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app/ui/http.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [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] --> src/app/ui/http.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/app/ui/monitor.rs:209:10 [INFO] [stdout] | [INFO] [stdout] 209 | for (i, v) in real_time_net_pack_table_data [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 209 | for (_i, v) in real_time_net_pack_table_data [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `DEVICE_TABLE_ITEM_HEIGHT` [INFO] [stdout] | [INFO] [stdout] 209 - for (i, v) in real_time_net_pack_table_data [INFO] [stdout] 209 + for (app::ui::monitor::DEVICE_TABLE_ITEM_HEIGHT, v) in real_time_net_pack_table_data [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/app/ui/monitor.rs:317:10 [INFO] [stdout] | [INFO] [stdout] 317 | for (i, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 317 | for (_i, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `DEVICE_TABLE_ITEM_HEIGHT` [INFO] [stdout] | [INFO] [stdout] 317 - for (i, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] 317 + for (app::ui::monitor::DEVICE_TABLE_ITEM_HEIGHT, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network_device_list_state` [INFO] [stdout] --> src/app/ui/safe.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network_device_list_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/app/ui/safe.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app/ui/safe.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [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] --> src/app/ui/safe.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/net/device.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | for (index, v) in device_list.iter().enumerate() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 13 | for (_index, v) in device_list.iter().enumerate() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `DEVICE_TABLE_ITEM_HEIGHT` [INFO] [stdout] | [INFO] [stdout] 13 - for (index, v) in device_list.iter().enumerate() { [INFO] [stdout] 13 + for (app::ui::monitor::DEVICE_TABLE_ITEM_HEIGHT, v) in device_list.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `InputMode` is more private than the item `App::input_mode` [INFO] [stdout] --> src/app/app.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub input_mode: InputMode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ field `App::input_mode` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `InputMode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/app/app.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | enum InputMode { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Editing` is never constructed [INFO] [stdout] --> src/app/app.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 33 | enum InputMode { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 34 | Normal, [INFO] [stdout] 35 | Editing, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InputMode` 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 `input_mode` is never read [INFO] [stdout] --> src/app/app.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 40 | // app [INFO] [stdout] 41 | pub input_mode: InputMode, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `App` 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 `pack_protocol_type` is never read [INFO] [stdout] --> src/net/pack.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct NetPack { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | pub pack_protocol_type: ProtocolType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NetPack` 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: function `get_real_time_net_pack` is never used [INFO] [stdout] --> src/task/monitortask.rs:5:14 [INFO] [stdout] | [INFO] [stdout] 5 | pub async fn get_real_time_net_pack() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused implementer of `Future` that must be used [INFO] [stdout] --> src/task/monitortask.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | NetPack::listen("en0".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: futures do nothing unless you `.await` or poll them [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 18s [INFO] running `Command { std: "docker" "inspect" "08c6985bf403afd08257b1831dcc77ae7a5388eeb7574710a1b1dc68d66b7772", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "08c6985bf403afd08257b1831dcc77ae7a5388eeb7574710a1b1dc68d66b7772", kill_on_drop: false }` [INFO] [stdout] 08c6985bf403afd08257b1831dcc77ae7a5388eeb7574710a1b1dc68d66b7772 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d39ee8dd0b16426703a920b07fc1d42f817adf1931cc4d94f4f807faa04032ca [INFO] running `Command { std: "docker" "start" "-a" "d39ee8dd0b16426703a920b07fc1d42f817adf1931cc4d94f4f807faa04032ca", kill_on_drop: false }` [INFO] [stderr] Compiling scoutnet v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Stdout`, `collections::HashMap`, `thread`, and `time::Duration` [INFO] [stdout] --> src/app/app.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 3 | io::{self, Stdout}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 4 | thread, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 5 | time::Duration, [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::data::monitordata::real_time_net_pack_table_data` [INFO] [stdout] --> src/app/app.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::data::monitordata::real_time_net_pack_table_data; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `task::monitortask::get_real_time_net_pack` [INFO] [stdout] --> src/app/app.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | task::monitortask::get_real_time_net_pack, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::net::device` [INFO] [stdout] --> src/app/config.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::net::device; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:26:20 [INFO] [stdout] | [INFO] [stdout] 26 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 26 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] 26 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:28:27 [INFO] [stdout] | [INFO] [stdout] 28 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 28 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] 28 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:71:20 [INFO] [stdout] | [INFO] [stdout] 71 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 71 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] 71 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:73:27 [INFO] [stdout] | [INFO] [stdout] 73 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 73 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] 73 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:115:20 [INFO] [stdout] | [INFO] [stdout] 115 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 115 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_2) { [INFO] [stdout] 115 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:117:27 [INFO] [stdout] | [INFO] [stdout] 117 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 117 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_4) { [INFO] [stdout] 117 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 129 - if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_1) { [INFO] [stdout] 129 + if *selecting_area.lock().unwrap() == MonitorPageArea::Area_1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/app/events/monitorevent.rs:131:27 [INFO] [stdout] | [INFO] [stdout] 131 | } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 131 - } else if (*selecting_area.lock().unwrap() == MonitorPageArea::Area_3) { [INFO] [stdout] 131 + } else if *selecting_area.lock().unwrap() == MonitorPageArea::Area_3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_1` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | Area_1, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_2` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | Area_2, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_3` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | Area_3, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Area_4` should have an upper camel case name [INFO] [stdout] --> src/app/ui/config.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | Area_4, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `Area4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/app/ui/welcome.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashMap` [INFO] [stdout] --> src/data/monitordata.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, sync::Mutex}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/net/pack.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::device` [INFO] [stdout] --> src/net/pack.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use super::device; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `thread` and `time::Duration` [INFO] [stdout] --> src/task/monitortask.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{thread, time::Duration}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `data::appdata::exit` [INFO] [stdout] --> src/task/monitortask.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{data::appdata::exit, net::pack::NetPack}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `device_name_list` [INFO] [stdout] --> src/app/app.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let device_name_list = Device::get_device_name_list(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_name_list` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network_device_list_state` [INFO] [stdout] --> src/app/ui/http.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network_device_list_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/app/ui/http.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app/ui/http.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [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] --> src/app/ui/http.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/app/ui/monitor.rs:209:10 [INFO] [stdout] | [INFO] [stdout] 209 | for (i, v) in real_time_net_pack_table_data [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 209 | for (_i, v) in real_time_net_pack_table_data [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `DEVICE_TABLE_ITEM_HEIGHT` [INFO] [stdout] | [INFO] [stdout] 209 - for (i, v) in real_time_net_pack_table_data [INFO] [stdout] 209 + for (app::ui::monitor::DEVICE_TABLE_ITEM_HEIGHT, v) in real_time_net_pack_table_data [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/app/ui/monitor.rs:317:10 [INFO] [stdout] | [INFO] [stdout] 317 | for (i, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 317 | for (_i, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `DEVICE_TABLE_ITEM_HEIGHT` [INFO] [stdout] | [INFO] [stdout] 317 - for (i, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] 317 + for (app::ui::monitor::DEVICE_TABLE_ITEM_HEIGHT, v) in device_table_data.lock().unwrap().iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network_device_list_state` [INFO] [stdout] --> src/app/ui/safe.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network_device_list_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/app/ui/safe.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app/ui/safe.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut network_device_list_state = ListState::default(); [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] --> src/app/ui/safe.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mut state = ListState::default(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/net/device.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | for (index, v) in device_list.iter().enumerate() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 13 | for (_index, v) in device_list.iter().enumerate() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `DEVICE_TABLE_ITEM_HEIGHT` [INFO] [stdout] | [INFO] [stdout] 13 - for (index, v) in device_list.iter().enumerate() { [INFO] [stdout] 13 + for (app::ui::monitor::DEVICE_TABLE_ITEM_HEIGHT, v) in device_list.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `InputMode` is more private than the item `App::input_mode` [INFO] [stdout] --> src/app/app.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub input_mode: InputMode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ field `App::input_mode` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `InputMode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/app/app.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | enum InputMode { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Editing` is never constructed [INFO] [stdout] --> src/app/app.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 33 | enum InputMode { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 34 | Normal, [INFO] [stdout] 35 | Editing, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InputMode` 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 `input_mode` is never read [INFO] [stdout] --> src/app/app.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 40 | // app [INFO] [stdout] 41 | pub input_mode: InputMode, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `App` 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 `pack_protocol_type` is never read [INFO] [stdout] --> src/net/pack.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct NetPack { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | pub pack_protocol_type: ProtocolType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NetPack` 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: function `get_real_time_net_pack` is never used [INFO] [stdout] --> src/task/monitortask.rs:5:14 [INFO] [stdout] | [INFO] [stdout] 5 | pub async fn get_real_time_net_pack() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused implementer of `Future` that must be used [INFO] [stdout] --> src/task/monitortask.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | NetPack::listen("en0".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: futures do nothing unless you `.await` or poll them [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.73s [INFO] running `Command { std: "docker" "inspect" "d39ee8dd0b16426703a920b07fc1d42f817adf1931cc4d94f4f807faa04032ca", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d39ee8dd0b16426703a920b07fc1d42f817adf1931cc4d94f4f807faa04032ca", kill_on_drop: false }` [INFO] [stdout] d39ee8dd0b16426703a920b07fc1d42f817adf1931cc4d94f4f807faa04032ca