[INFO] cloning repository https://github.com/dvaerum/switch-configurator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dvaerum/switch-configurator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdvaerum%2Fswitch-configurator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdvaerum%2Fswitch-configurator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c2efaef8c9b8445f116672cf52abce491d3543a6
[INFO] checking dvaerum/switch-configurator against 760e1de835e253bf28bbcbfee38b5e8ed9ffe074 for pr-133502-26
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdvaerum%2Fswitch-configurator" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/dvaerum/switch-configurator
[INFO] finished tweaking git repo https://github.com/dvaerum/switch-configurator
[INFO] tweaked toml for git repo https://github.com/dvaerum/switch-configurator written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dvaerum/switch-configurator on toolchain 760e1de835e253bf28bbcbfee38b5e8ed9ffe074
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dvaerum/switch-configurator 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" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-3-tc2/source/switch-configurator/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08
[INFO] running `Command { std: "docker" "start" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08", 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" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08" "/opt/rustwide/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08", 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" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08" "/opt/rustwide/cargo-home/bin/cargo" "+760e1de835e253bf28bbcbfee38b5e8ed9ffe074" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/switch-configurator/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking base64ct v1.8.0
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]     Checking num-traits v0.2.19
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking block-padding v0.3.3
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling pest v2.8.3
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]     Checking indexmap v2.11.4
[INFO] [stderr]    Compiling pest_meta v2.8.3
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking salsa20 v0.10.2
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking cbc v0.1.2
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking scrypt v0.11.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking ssh-encoding v0.2.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking pkcs5 v0.7.1
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking blowfish v0.9.1
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking bcrypt-pbkdf v0.10.0
[INFO] [stderr]     Checking ssh-cipher v0.2.0
[INFO] [stderr]     Checking password-hash v0.4.2
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking pkcs1 v0.7.5
[INFO] [stderr]     Checking num-bigint-dig v0.8.4
[INFO] [stderr]     Checking dlv-list v0.5.2
[INFO] [stderr]     Checking winnow v0.7.13
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking anstyle-query v1.1.4
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking rsa v0.9.8
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]     Checking p521 v0.13.3
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking ordered-multimap v0.7.3
[INFO] [stderr]     Checking unicode-normalization v0.1.24
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking russh-cryptovec v0.7.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling pest_generator v2.8.3
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking md5 v0.7.0
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]     Checking clap_builder v4.5.49
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking yaml-rust2 v0.8.1
[INFO] [stderr]     Checking inotify v0.9.6
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking flate2 v1.1.4
[INFO] [stderr]     Checking rust-ini v0.20.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking des v0.8.1
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking filetime v0.2.26
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking thiserror v2.0.17
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking unescaper v0.1.6
[INFO] [stderr]    Compiling pest_derive v2.8.3
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]    Compiling validator_derive v0.18.2
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking hex-literal v0.4.1
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking ssh-key v0.6.7
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking humantime v2.3.0
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking serialport v4.7.3
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking mio-serial v5.0.6
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking clap v4.5.49
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking humantime-serde v1.1.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking validator v0.18.1
[INFO] [stderr]     Checking notify v6.1.1
[INFO] [stderr]     Checking config v0.14.1
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]    Compiling mockall_derive v0.13.1
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking predicates-core v1.0.9
[INFO] [stderr]     Checking rustix v1.1.2
[INFO] [stderr]     Checking tokio-util v0.7.17
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tokio-serial v5.4.5
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]     Checking predicates-tree v1.0.12
[INFO] [stderr]     Checking predicates v3.1.3
[INFO] [stderr]     Checking russh-keys v0.45.0
[INFO] [stderr]     Checking hyper-util v0.1.17
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stderr]     Checking fragile v2.0.1
[INFO] [stderr]     Checking downcast v0.11.0
[INFO] [stderr]     Checking humansize v2.1.3
[INFO] [stderr]     Checking askama_escape v0.10.3
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking russh v0.45.0
[INFO] [stderr]    Compiling askama_parser v0.2.1
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]    Compiling basic-toml v0.1.10
[INFO] [stderr]     Checking mockall v0.13.1
[INFO] [stderr]    Compiling askama_derive v0.12.5
[INFO] [stderr]     Checking askama v0.12.1
[INFO] [stderr]     Checking askama_axum v0.4.0
[INFO] [stderr]     Checking switch-configurator v0.4.8 (/opt/rustwide/workdir/switch-configurator)
[INFO] [stdout] warning: unused import: `AppConfig`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::config::{AppConfig, ConfigStore};
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `delete`, `patch`, and `put`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 |     routing::{delete, get, patch, post, put},
[INFO] [stdout]   |               ^^^^^^       ^^^^^        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Query`
[INFO] [stdout]  --> switch-configurator/src/api/handlers.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     extract::{Path, Query, State},
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:459:37
[INFO] [stdout]     |
[INFO] [stdout] 459 |     use std::collections::{HashMap, BTreeMap};
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]    --> switch-configurator/src/config.rs:460:25
[INFO] [stdout]     |
[INFO] [stdout] 460 |     use tracing::{info, warn};
[INFO] [stdout]     |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     use std::collections::BTreeMap;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AppConfig`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::config::{AppConfig, ConfigStore};
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `delete`, `patch`, and `put`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 |     routing::{delete, get, patch, post, put},
[INFO] [stdout]   |               ^^^^^^       ^^^^^        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Query`
[INFO] [stdout]  --> switch-configurator/src/api/handlers.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     extract::{Path, Query, State},
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> switch-configurator/src/api/tests.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::RwLock`
[INFO] [stdout]   --> switch-configurator/src/api/tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::sync::RwLock;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PortMode`, `SpeedDuplex`, `SwitchState`, and `VlanIpConfig`
[INFO] [stdout]     --> switch-configurator/src/api/tests.rs:2128:29
[INFO] [stdout]      |
[INFO] [stdout] 2128 |         use crate::models::{SwitchState, PortMode, VlanIpConfig, SpeedDuplex};
[INFO] [stdout]      |                             ^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:459:37
[INFO] [stdout]     |
[INFO] [stdout] 459 |     use std::collections::{HashMap, BTreeMap};
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]    --> switch-configurator/src/config.rs:460:25
[INFO] [stdout]     |
[INFO] [stdout] 460 |     use tracing::{info, warn};
[INFO] [stdout]     |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     use std::collections::BTreeMap;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConnectionType`, `Credentials`, `Port`, `SwitchModel`, and `Vendor`
[INFO] [stdout]     --> switch-configurator/src/config.rs:1522:29
[INFO] [stdout]      |
[INFO] [stdout] 1522 |         use crate::models::{Port, PortMode, SwitchConfig, SwitchModel, Vendor, ConnectionType, Credentials};
[INFO] [stdout]      |                             ^^^^                          ^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Port`
[INFO] [stdout]     --> switch-configurator/src/config.rs:1567:29
[INFO] [stdout]      |
[INFO] [stdout] 1567 |         use crate::models::{Port, PortMode, SwitchConfig};
[INFO] [stdout]      |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MirrorDirection` and `PortMirror`
[INFO] [stdout]     --> switch-configurator/src/config.rs:1620:29
[INFO] [stdout]      |
[INFO] [stdout] 1620 |         use crate::models::{PortMirror, MirrorDirection, SwitchConfig};
[INFO] [stdout]      |                             ^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]    --> switch-configurator/src/diff/mod.rs:641:77
[INFO] [stdout]     |
[INFO] [stdout] 641 |         SnmpCommunity, SnmpTrapReceiver, TrapType, SnmpAccess, SwitchModel, Vendor, VlanIpConfig,
[INFO] [stdout]     |                                                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SwitchModel`
[INFO] [stdout]  --> switch-configurator/src/ssh/jump_host_tests.rs:7:78
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use crate::models::{ConnectionType, Credentials, JumpHost, SwitchConfig, SwitchModel};
[INFO] [stdout]   |                                                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:2370:63
[INFO] [stdout]      |
[INFO] [stdout] 2370 |         SpeedDuplex, TrapType, SnmpTrapReceiver, SwitchModel, Vendor, VlanIpConfig,
[INFO] [stdout]      |                                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:1399:71
[INFO] [stdout]      |
[INFO] [stdout] 1399 |         use crate::models::{ConnectionType, Credentials, SwitchModel, Vendor};
[INFO] [stdout]      |                                                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2185:13
[INFO] [stdout]      |
[INFO] [stdout] 2185 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2220:13
[INFO] [stdout]      |
[INFO] [stdout] 2220 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2252:13
[INFO] [stdout]      |
[INFO] [stdout] 2252 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2276:13
[INFO] [stdout]      |
[INFO] [stdout] 2276 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]  --> switch-configurator/src/vendors/tests.rs:5:38
[INFO] [stdout]   |
[INFO] [stdout] 5 |     SwitchState, Vlan, VlanIpConfig, Vendor,
[INFO] [stdout]   |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[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]    --> switch-configurator/src/ssh/jump_host.rs:225:25
[INFO] [stdout]     |
[INFO] [stdout] 225 |                     let mut session_guard = session.lock().await;
[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]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[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]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[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: unreachable pattern
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1178 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1188 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making 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]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1203 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1208 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1213 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 508 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 513 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 527 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 532 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 537 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:225:25
[INFO] [stdout]     |
[INFO] [stdout] 225 |                     let mut session_guard = session.lock().await;
[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]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[INFO] [stdout]     |                           ----^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1178 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1188 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making 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]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1203 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1208 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1213 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 508 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 513 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 527 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 532 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 537 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> switch-configurator/src/api/handlers.rs:456:10
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Path(id): Path<String>,
[INFO] [stdout]     |          ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf_ssh`
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf_ssh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_link_change` is assigned to, but never used
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:334:13
[INFO] [stdout]     |
[INFO] [stdout] 334 |         let mut has_link_change = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_link_change` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_link_change` is never read
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     has_link_change = true;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:558:13
[INFO] [stdout]     |
[INFO] [stdout] 558 |         let mut has_mirror = false;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `desired_config`
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1095:9
[INFO] [stdout]      |
[INFO] [stdout] 1095 |         desired_config: Option<&crate::models::SnmpConfig>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_desired_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_vlan_references_strict` is never used
[INFO] [stdout]     --> switch-configurator/src/config.rs:1042:4
[INFO] [stdout]      |
[INFO] [stdout] 1042 | fn validate_vlan_references_strict(switch: &mut SwitchConfig) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ports_equivalent` is never used
[INFO] [stdout]    --> switch-configurator/src/diff/mod.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn ports_equivalent(current: &Port, desired: &Port) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_free_port` is never used
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:303:8
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl JumpHostSession {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 303 |     fn find_free_port() -> Result<u16> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `port_id` and `has_mirror` are never read
[INFO] [stdout]   --> switch-configurator/src/vendors/aruba.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct PortVlanInfo {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 19 |     port_id: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     has_mirror: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PortVlanInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `port_supports_poe` is never used
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:371:8
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl ArubaSwitch {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 371 |     fn port_supports_poe(&self, port_id: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking switch-configurator-ui v0.1.0 (/opt/rustwide/workdir/switch-configurator-ui)
[INFO] [stdout] warning: unused import: `ConfigSourceType`
[INFO] [stdout]  --> switch-configurator/tests/multi_config_tests.rs:2:46
[INFO] [stdout]   |
[INFO] [stdout] 2 | use switch_configurator::config::{AppConfig, ConfigSourceType};
[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: `Html`
[INFO] [stdout]  --> switch-configurator-ui/src/routes/edit.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use axum::response::{Html, IntoResponse, Redirect};
[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: `Html`
[INFO] [stdout]  --> switch-configurator-ui/src/routes/edit.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use axum::response::{Html, IntoResponse, Redirect};
[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: `AppConfig`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::config::{AppConfig, ConfigStore};
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `delete`, `patch`, and `put`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 |     routing::{delete, get, patch, post, put},
[INFO] [stdout]   |               ^^^^^^       ^^^^^        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Query`
[INFO] [stdout]  --> switch-configurator/src/api/handlers.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     extract::{Path, Query, State},
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_router`
[INFO] [stdout]  --> switch-configurator/src/api/mod.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use server::{create_router, API_ENDPOINTS};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:459:37
[INFO] [stdout]     |
[INFO] [stdout] 459 |     use std::collections::{HashMap, BTreeMap};
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]    --> switch-configurator/src/config.rs:460:25
[INFO] [stdout]     |
[INFO] [stdout] 460 |     use tracing::{info, warn};
[INFO] [stdout]     |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     use std::collections::BTreeMap;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `full_path` is never read
[INFO] [stdout]   --> switch-configurator-ui/src/routes/dashboard.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct OverlayFileInfo {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 21 |     pub filename: String,
[INFO] [stdout] 22 |     pub full_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OverlayFileInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_port_mode` is never used
[INFO] [stdout]    --> switch-configurator-ui/src/routes/edit.rs:611:4
[INFO] [stdout]     |
[INFO] [stdout] 611 | fn parse_port_mode(s: &str) -> PortMode {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `switch_id` and `created_at` are never read
[INFO] [stdout]   --> switch-configurator-ui/src/state.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct SwitchDraft {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout]  8 |     pub switch_id: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub created_at: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SwitchDraft` 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 `full_path` is never read
[INFO] [stdout]   --> switch-configurator-ui/src/routes/dashboard.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct OverlayFileInfo {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 21 |     pub filename: String,
[INFO] [stdout] 22 |     pub full_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OverlayFileInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_port_mode` is never used
[INFO] [stdout]    --> switch-configurator-ui/src/routes/edit.rs:611:4
[INFO] [stdout]     |
[INFO] [stdout] 611 | fn parse_port_mode(s: &str) -> PortMode {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `created_at` is never read
[INFO] [stdout]   --> switch-configurator-ui/src/state.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct SwitchDraft {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub created_at: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SwitchDraft` 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: unused variable: `id`
[INFO] [stdout]    --> switch-configurator/src/api/handlers.rs:456:10
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Path(id): Path<String>,
[INFO] [stdout]     |          ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AppConfig`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::config::{AppConfig, ConfigStore};
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `delete`, `patch`, and `put`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 |     routing::{delete, get, patch, post, put},
[INFO] [stdout]   |               ^^^^^^       ^^^^^        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> switch-configurator/src/api/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Query`
[INFO] [stdout]  --> switch-configurator/src/api/handlers.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     extract::{Path, Query, State},
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> switch-configurator/src/api/tests.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::RwLock`
[INFO] [stdout]   --> switch-configurator/src/api/tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::sync::RwLock;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PortMode`, `SpeedDuplex`, `SwitchState`, and `VlanIpConfig`
[INFO] [stdout]     --> switch-configurator/src/api/tests.rs:2128:29
[INFO] [stdout]      |
[INFO] [stdout] 2128 |         use crate::models::{SwitchState, PortMode, VlanIpConfig, SpeedDuplex};
[INFO] [stdout]      |                             ^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:459:37
[INFO] [stdout]     |
[INFO] [stdout] 459 |     use std::collections::{HashMap, BTreeMap};
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]    --> switch-configurator/src/config.rs:460:25
[INFO] [stdout]     |
[INFO] [stdout] 460 |     use tracing::{info, warn};
[INFO] [stdout]     |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeMap`
[INFO] [stdout]    --> switch-configurator/src/config.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     use std::collections::BTreeMap;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConnectionType`, `Credentials`, `Port`, `SwitchModel`, and `Vendor`
[INFO] [stdout]     --> switch-configurator/src/config.rs:1522:29
[INFO] [stdout]      |
[INFO] [stdout] 1522 |         use crate::models::{Port, PortMode, SwitchConfig, SwitchModel, Vendor, ConnectionType, Credentials};
[INFO] [stdout]      |                             ^^^^                          ^^^^^^^^^^^  ^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Port`
[INFO] [stdout]     --> switch-configurator/src/config.rs:1567:29
[INFO] [stdout]      |
[INFO] [stdout] 1567 |         use crate::models::{Port, PortMode, SwitchConfig};
[INFO] [stdout]      |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MirrorDirection` and `PortMirror`
[INFO] [stdout]     --> switch-configurator/src/config.rs:1620:29
[INFO] [stdout]      |
[INFO] [stdout] 1620 |         use crate::models::{PortMirror, MirrorDirection, SwitchConfig};
[INFO] [stdout]      |                             ^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]    --> switch-configurator/src/diff/mod.rs:641:77
[INFO] [stdout]     |
[INFO] [stdout] 641 |         SnmpCommunity, SnmpTrapReceiver, TrapType, SnmpAccess, SwitchModel, Vendor, VlanIpConfig,
[INFO] [stdout]     |                                                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SwitchModel`
[INFO] [stdout]  --> switch-configurator/src/ssh/jump_host_tests.rs:7:78
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use crate::models::{ConnectionType, Credentials, JumpHost, SwitchConfig, SwitchModel};
[INFO] [stdout]   |                                                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:2370:63
[INFO] [stdout]      |
[INFO] [stdout] 2370 |         SpeedDuplex, TrapType, SnmpTrapReceiver, SwitchModel, Vendor, VlanIpConfig,
[INFO] [stdout]      |                                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:1399:71
[INFO] [stdout]      |
[INFO] [stdout] 1399 |         use crate::models::{ConnectionType, Credentials, SwitchModel, Vendor};
[INFO] [stdout]      |                                                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2185:13
[INFO] [stdout]      |
[INFO] [stdout] 2185 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2220:13
[INFO] [stdout]      |
[INFO] [stdout] 2220 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2252:13
[INFO] [stdout]      |
[INFO] [stdout] 2252 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::RuntimeConfig`
[INFO] [stdout]     --> switch-configurator/src/vendors/fortiswitch.rs:2276:13
[INFO] [stdout]      |
[INFO] [stdout] 2276 |         use crate::config::RuntimeConfig;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vendor`
[INFO] [stdout]  --> switch-configurator/src/vendors/tests.rs:5:38
[INFO] [stdout]   |
[INFO] [stdout] 5 |     SwitchState, Vlan, VlanIpConfig, Vendor,
[INFO] [stdout]   |                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[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: unused variable: `buf`
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf_ssh`
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf_ssh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:903:13
[INFO] [stdout]     |
[INFO] [stdout] 903 |         let elapsed = start.elapsed();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_link_change` is assigned to, but never used
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:334:13
[INFO] [stdout]     |
[INFO] [stdout] 334 |         let mut has_link_change = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_link_change` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_link_change` is never read
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     has_link_change = true;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:558:13
[INFO] [stdout]     |
[INFO] [stdout] 558 |         let mut has_mirror = false;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `desired_config`
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1095:9
[INFO] [stdout]      |
[INFO] [stdout] 1095 |         desired_config: Option<&crate::models::SnmpConfig>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_desired_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[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]    --> switch-configurator/src/ssh/jump_host.rs:225:25
[INFO] [stdout]     |
[INFO] [stdout] 225 |                     let mut session_guard = session.lock().await;
[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]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[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]     --> switch-configurator/src/vendors/aruba.rs:4311:13
[INFO] [stdout]      |
[INFO] [stdout] 4311 |         let mut switch = create_test_switch();
[INFO] [stdout]      |             ----^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1178 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1188 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making 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]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1203 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1208 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1213 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:225:25
[INFO] [stdout]     |
[INFO] [stdout] 225 |                     let mut session_guard = session.lock().await;
[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]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[INFO] [stdout]     |                           ----^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `switch-configurator` (lib test); 38 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/760e1de835e253bf28bbcbfee38b5e8ed9ffe074/bin/rustc --crate-name switch_configurator --edition=2021 switch-configurator/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=0018d2ae4e607b73 -C extra-filename=-2c434e8e1ff8dba2 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern anyhow=/opt/rustwide/target/debug/deps/libanyhow-5cf73cd768c5f646.rmeta --extern async_trait=/opt/rustwide/target/debug/deps/libasync_trait-4d47c8718692c4bb.so --extern axum=/opt/rustwide/target/debug/deps/libaxum-9733ffc9befd75af.rmeta --extern chrono=/opt/rustwide/target/debug/deps/libchrono-487275b579e3d3ed.rmeta --extern clap=/opt/rustwide/target/debug/deps/libclap-015d456c3e4d227d.rmeta --extern config=/opt/rustwide/target/debug/deps/libconfig-ea52a1e3310f2cda.rmeta --extern dirs=/opt/rustwide/target/debug/deps/libdirs-4f85d1bef5dd76d2.rmeta --extern futures_core=/opt/rustwide/target/debug/deps/libfutures_core-756e876442dee363.rmeta --extern http_body_util=/opt/rustwide/target/debug/deps/libhttp_body_util-b334190db241178a.rmeta --extern humantime_serde=/opt/rustwide/target/debug/deps/libhumantime_serde-841fc5c02cb72045.rmeta --extern hyper=/opt/rustwide/target/debug/deps/libhyper-e53d4f48f5434ffb.rmeta --extern hyper_util=/opt/rustwide/target/debug/deps/libhyper_util-fb9ec950ef3e507d.rmeta --extern libc=/opt/rustwide/target/debug/deps/liblibc-aafc9602a24f2372.rmeta --extern mockall=/opt/rustwide/target/debug/deps/libmockall-f627254fae7b26d1.rmeta --extern notify=/opt/rustwide/target/debug/deps/libnotify-741975e12074b57f.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-adf9f4fffb90e109.rmeta --extern russh=/opt/rustwide/target/debug/deps/librussh-d1c7d5e74a5692af.rmeta --extern russh_keys=/opt/rustwide/target/debug/deps/librussh_keys-09b575d3032838a9.rmeta --extern serde=/opt/rustwide/target/debug/deps/libserde-acde51906c69b1d9.rmeta --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-358af2c82d48e896.rmeta --extern serde_path_to_error=/opt/rustwide/target/debug/deps/libserde_path_to_error-6806ccf976e3f300.rmeta --extern serde_yaml=/opt/rustwide/target/debug/deps/libserde_yaml-1879b3e5e367d0d3.rmeta --extern tempfile=/opt/rustwide/target/debug/deps/libtempfile-14f891da92474515.rmeta --extern thiserror=/opt/rustwide/target/debug/deps/libthiserror-3b33765a04fd621b.rmeta --extern tokio=/opt/rustwide/target/debug/deps/libtokio-0dab0245dbd66a95.rmeta --extern tokio_serial=/opt/rustwide/target/debug/deps/libtokio_serial-07e34adb0076b2ec.rmeta --extern tokio_stream=/opt/rustwide/target/debug/deps/libtokio_stream-b0122f4f52f77e9f.rmeta --extern tokio_test=/opt/rustwide/target/debug/deps/libtokio_test-ee08d02d274971e3.rmeta --extern tower=/opt/rustwide/target/debug/deps/libtower-daa3781612d0802a.rmeta --extern tower_http=/opt/rustwide/target/debug/deps/libtower_http-558ff2e5573bd9b0.rmeta --extern tracing=/opt/rustwide/target/debug/deps/libtracing-7fb55cfd89ba0f81.rmeta --extern tracing_subscriber=/opt/rustwide/target/debug/deps/libtracing_subscriber-87712220c77dd413.rmeta --extern validator=/opt/rustwide/target/debug/deps/libvalidator-bea1190567e905cd.rmeta --cap-lints=forbid` (signal: 9, SIGKILL: kill)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 508 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 513 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 527 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 532 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 537 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1194:17
[INFO] [stdout]      |
[INFO] [stdout] 1178 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1183 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1188 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1194 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making 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]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1219:17
[INFO] [stdout]      |
[INFO] [stdout] 1203 |                 TrapType::MacNotify => {
[INFO] [stdout]      |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1208 |                 TrapType::LinkChange => {
[INFO] [stdout]      |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1213 |                 TrapType::All => {
[INFO] [stdout]      |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1219 |                 _ => {
[INFO] [stdout]      |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:518:17
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 508 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 513 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 518 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> switch-configurator/src/vendors/cisco.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 527 |                 TrapType::MacNotify => {
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 532 |                 TrapType::LinkChange => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 537 |                 TrapType::All => {
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 542 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> switch-configurator/src/api/handlers.rs:456:10
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Path(id): Path<String>,
[INFO] [stdout]     |          ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf_ssh`
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf_ssh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_link_change` is assigned to, but never used
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:334:13
[INFO] [stdout]     |
[INFO] [stdout] 334 |         let mut has_link_change = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_link_change` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_link_change` is never read
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     has_link_change = true;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:558:13
[INFO] [stdout]     |
[INFO] [stdout] 558 |         let mut has_mirror = false;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `desired_config`
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1095:9
[INFO] [stdout]      |
[INFO] [stdout] 1095 |         desired_config: Option<&crate::models::SnmpConfig>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_desired_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> switch-configurator/src/api/handlers.rs:456:10
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Path(id): Path<String>,
[INFO] [stdout]     |          ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Status`, `ConfigReload`, and `Warning` are never constructed
[INFO] [stdout]    --> switch-configurator/src/config.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub enum SseEvent {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 300 |     #[serde(rename = "status")]
[INFO] [stdout] 301 |     Status { switch_id: String, state: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 302 |     #[serde(rename = "config-reload")]
[INFO] [stdout] 303 |     ConfigReload { switches_affected: Vec<String> },
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 304 |     #[serde(rename = "warning")]
[INFO] [stdout] 305 |     Warning { switch_id: String, message: String },
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SseEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `LegacyConfigStore` is never used
[INFO] [stdout]    --> switch-configurator/src/config.rs:349:10
[INFO] [stdout]     |
[INFO] [stdout] 349 | pub type LegacyConfigStore = Arc<RwLock<AppConfig>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_store` is never used
[INFO] [stdout]    --> switch-configurator/src/config.rs:351:8
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub fn create_store(config: AppConfig) -> LegacyConfigStore {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_vlan_references_strict` is never used
[INFO] [stdout]     --> switch-configurator/src/config.rs:1042:4
[INFO] [stdout]      |
[INFO] [stdout] 1042 | fn validate_vlan_references_strict(switch: &mut SwitchConfig) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `format_detailed_message` is never used
[INFO] [stdout]   --> switch-configurator/src/config/errors.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl SwitchValidationError {
[INFO] [stdout]    | -------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn format_detailed_message(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ports_equivalent` is never used
[INFO] [stdout]    --> switch-configurator/src/diff/mod.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn ports_equivalent(current: &Port, desired: &Port) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_10g_uplinks`, `total_ports`, `all_port_capabilities`, `poe_capable_ports`, and `validate_port_speed` are never used
[INFO] [stdout]    --> switch-configurator/src/models.rs:85:12
[INFO] [stdout]     |
[INFO] [stdout]  29 | impl SwitchModel {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn has_10g_uplinks(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn total_ports(&self) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn all_port_capabilities(&self) -> Vec<PortCapabilities> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub fn poe_capable_ports(&self) -> Vec<u16> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn validate_port_speed(&self, port_id: &str, speed: SpeedDuplex) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `supports_speed` is never used
[INFO] [stdout]    --> switch-configurator/src/models.rs:512:12
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl PortCapabilities {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 512 |     pub fn supports_speed(&self, speed: SpeedDuplex) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `find_free_port` and `info` are never used
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:303:8
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl JumpHostSession {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 303 |     fn find_free_port() -> Result<u16> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     pub fn info(&self) -> &ResolvedJumpHost {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hop_count` is never used
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_chain.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl JumpHostChain {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn hop_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_pending_reload` is never used
[INFO] [stdout]    --> switch-configurator/src/status.rs:165:18
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl StatusTracker {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub async fn has_pending_reload(&self, switch_id: &str) -> bool {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `duration` is never read
[INFO] [stdout]    --> switch-configurator/src/validation/mod.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub struct TestFailure {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub duration: Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestFailure` 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 `create_vendor` is never used
[INFO] [stdout]   --> switch-configurator/src/vendors/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn create_vendor(config: &SwitchConfig) -> Result<Box<dyn SwitchVendor>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `port_id` and `has_mirror` are never read
[INFO] [stdout]   --> switch-configurator/src/vendors/aruba.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct PortVlanInfo {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 19 |     port_id: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     has_mirror: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PortVlanInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `port_supports_poe` is never used
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:371:8
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl ArubaSwitch {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 371 |     fn port_supports_poe(&self, port_id: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut buf = vec![0u8; 4096];
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf_ssh`
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:237:33
[INFO] [stdout]     |
[INFO] [stdout] 237 | ...                   let mut buf_ssh = vec![0u8; 8192];
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_buf_ssh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> switch-configurator/src/ssh/client.rs:903:13
[INFO] [stdout]     |
[INFO] [stdout] 903 |         let elapsed = start.elapsed();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `has_link_change` is assigned to, but never used
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:334:13
[INFO] [stdout]     |
[INFO] [stdout] 334 |         let mut has_link_change = false;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_has_link_change` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `has_link_change` is never read
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     has_link_change = true;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> switch-configurator/src/vendors/aruba.rs:558:13
[INFO] [stdout]     |
[INFO] [stdout] 558 |         let mut has_mirror = false;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `desired_config`
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:1095:9
[INFO] [stdout]      |
[INFO] [stdout] 1095 |         desired_config: Option<&crate::models::SnmpConfig>,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_desired_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> switch-configurator/src/vendors/aruba.rs:4311:13
[INFO] [stdout]      |
[INFO] [stdout] 4311 |         let mut switch = create_test_switch();
[INFO] [stdout]      |             ----^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ConfigReload` and `Warning` are never constructed
[INFO] [stdout]    --> switch-configurator/src/config.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub enum SseEvent {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 303 |     ConfigReload { switches_affected: Vec<String> },
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 304 |     #[serde(rename = "warning")]
[INFO] [stdout] 305 |     Warning { switch_id: String, message: String },
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SseEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `LegacyConfigStore` is never used
[INFO] [stdout]    --> switch-configurator/src/config.rs:349:10
[INFO] [stdout]     |
[INFO] [stdout] 349 | pub type LegacyConfigStore = Arc<RwLock<AppConfig>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_store` is never used
[INFO] [stdout]    --> switch-configurator/src/config.rs:351:8
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub fn create_store(config: AppConfig) -> LegacyConfigStore {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_vlan_references_strict` is never used
[INFO] [stdout]     --> switch-configurator/src/config.rs:1042:4
[INFO] [stdout]      |
[INFO] [stdout] 1042 | fn validate_vlan_references_strict(switch: &mut SwitchConfig) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_10g_uplinks` is never used
[INFO] [stdout]   --> switch-configurator/src/models.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl SwitchModel {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn has_10g_uplinks(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `find_free_port` and `info` are never used
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_host.rs:303:8
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl JumpHostSession {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 303 |     fn find_free_port() -> Result<u16> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     pub fn info(&self) -> &ResolvedJumpHost {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hop_count` is never used
[INFO] [stdout]    --> switch-configurator/src/ssh/jump_chain.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl JumpHostChain {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn hop_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_pending_reload` is never used
[INFO] [stdout]    --> switch-configurator/src/status.rs:165:18
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl StatusTracker {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub async fn has_pending_reload(&self, switch_id: &str) -> bool {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `duration` is never read
[INFO] [stdout]    --> switch-configurator/src/validation/mod.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub struct TestFailure {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub duration: Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestFailure` 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 `create_vendor` is never used
[INFO] [stdout]   --> switch-configurator/src/vendors/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn create_vendor(config: &SwitchConfig) -> Result<Box<dyn SwitchVendor>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `port_id` and `has_mirror` are never read
[INFO] [stdout]   --> switch-configurator/src/vendors/aruba.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct PortVlanInfo {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 19 |     port_id: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     has_mirror: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PortVlanInfo` 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 `create_test_switch_config` is never used
[INFO] [stdout]   --> switch-configurator/src/vendors/tests.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn create_test_switch_config() -> SwitchConfig {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08", kill_on_drop: false }`
[INFO] [stdout] d9d6f055c05ba6017046ca55f263cc969f3f6a5a6cec6a009411945270eecf08
