[INFO] cloning repository https://github.com/hraqe-pro/alkahest
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hraqe-pro/alkahest" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhraqe-pro%2Falkahest", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhraqe-pro%2Falkahest'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 877e68bb4cb8ed43d1fa0999b4182deec3d8bc75
[INFO] checking hraqe-pro/alkahest against 6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa for pr-159356
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhraqe-pro%2Falkahest" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/hraqe-pro/alkahest
[INFO] finished tweaking git repo https://github.com/hraqe-pro/alkahest
[INFO] tweaked toml for git repo https://github.com/hraqe-pro/alkahest written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hraqe-pro/alkahest on toolchain 6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hraqe-pro/alkahest 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" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:c36f533e8924a726b63f9d01e781fa8c8c28c96d1d595403829afb31452ee0f5" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd
[INFO] running `Command { std: "docker" "start" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd", 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" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd" "/opt/rustwide/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd", 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" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd" "/opt/rustwide/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling pkg-config v0.3.29
[INFO] [stderr]    Compiling serde v1.0.196
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling winnow v0.5.35
[INFO] [stderr]    Compiling target-lexicon v0.12.13
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling smallvec v1.13.1
[INFO] [stderr]    Compiling version-compare v0.1.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling libc v0.2.152
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling anyhow v1.0.79
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]    Compiling gio v0.16.7
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]     Checking unic-common v0.9.0
[INFO] [stderr]     Checking unic-char-range v0.9.0
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]     Checking unic-ucd-version v0.9.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]     Checking unic-char-property v0.9.0
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]    Compiling indexmap v2.2.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]     Checking unic-ucd-bidi v0.9.0
[INFO] [stderr]    Compiling gtk v0.16.2
[INFO] [stderr]     Checking xi-unicode v0.3.0
[INFO] [stderr]     Checking unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]     Checking kurbo v0.9.5
[INFO] [stderr]     Checking type-map v0.4.0
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling cfg-expr v0.15.6
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking unic-bidi v0.9.0
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]     Checking self_cell v1.0.3
[INFO] [stderr]    Compiling druid-shell v0.8.3
[INFO] [stderr]     Checking time v0.3.31
[INFO] [stderr]     Checking self_cell v0.10.3
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking thread_local v1.1.7
[INFO] [stderr]     Checking keyboard-types v0.6.2
[INFO] [stderr]    Compiling field-offset v0.3.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking piet v0.6.2
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking mio v0.8.10
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking socket2 v0.5.5
[INFO] [stderr]     Checking ghost-cell v0.2.6
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling libz-sys v1.1.15
[INFO] [stderr]    Compiling openssl-sys v0.9.99
[INFO] [stderr]    Compiling libssh2-sys v0.3.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling serde_spanned v0.6.5
[INFO] [stderr]    Compiling toml_edit v0.21.0
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling enum_delegate_lib v0.2.0
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling toml v0.8.8
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling druid-derive v0.5.1
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling enum_delegate v0.2.0
[INFO] [stderr]    Compiling system-deps v6.2.0
[INFO] [stderr]    Compiling glib-macros v0.16.8
[INFO] [stderr]    Compiling gtk3-macros v0.16.3
[INFO] [stderr]     Checking tinystr v0.7.5
[INFO] [stderr]    Compiling glib-sys v0.16.3
[INFO] [stderr]    Compiling gobject-sys v0.16.3
[INFO] [stderr]    Compiling gio-sys v0.16.3
[INFO] [stderr]    Compiling cairo-sys-rs v0.16.3
[INFO] [stderr]    Compiling pango-sys v0.16.3
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling gdk-sys v0.16.0
[INFO] [stderr]    Compiling atk-sys v0.16.0
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.16.3
[INFO] [stderr]    Compiling gtk-sys v0.16.0
[INFO] [stderr]    Compiling pangocairo-sys v0.16.3
[INFO] [stderr]     Checking unic-langid-impl v0.9.4
[INFO] [stderr]     Checking tokio v1.35.1
[INFO] [stderr]     Checking unic-langid v0.9.4
[INFO] [stderr]     Checking fluent-langneg v0.13.0
[INFO] [stderr]     Checking intl-memoizer v0.5.1
[INFO] [stderr]     Checking intl_pluralrules v7.0.2
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking fluent-syntax v0.11.0
[INFO] [stderr]     Checking fluent-bundle v0.15.2
[INFO] [stderr]     Checking ssh2 v0.9.4
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking glib v0.16.9
[INFO] [stderr]     Checking cairo-rs v0.16.7
[INFO] [stderr]     Checking atk v0.16.0
[INFO] [stderr]     Checking pango v0.16.5
[INFO] [stderr]     Checking gdk-pixbuf v0.16.7
[INFO] [stderr]     Checking pangocairo v0.16.3
[INFO] [stderr]     Checking gdk v0.16.2
[INFO] [stderr]     Checking piet-cairo v0.6.2
[INFO] [stderr]     Checking piet-common v0.6.2
[INFO] [stderr]     Checking druid v0.8.3
[INFO] [stderr]     Checking alkahest v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `execute_command::ExecuteCommand` and `remote_action::RemoteErrorTrait`
[INFO] [stdout]  --> src/server/server_management/session_manager.rs:2:64
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::server::{credentials::Credentials, remote_actions::{execute_command::ExecuteCommand, remote_action::RemoteErrorTrait}};
[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: `BufRead`, `BufReader`, `Read`, `Write`, `error::Error`, `fs::File`, `path::Path`, `self`, and `vec`
[INFO] [stdout]  --> src/server/server_management/session_manager.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{error::Error, fs::File, vec, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |           ^^^^^^^^^^^^  ^^^^^^^^  ^^^       ^^^^  ^^^^^^^  ^^^^^^^^^  ^^^^  ^^^^^   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::misc::class::Class`
[INFO] [stdout]  --> src/server/server_management/session_manager.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::server::misc::class::Class;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/server/server_management/action_collection.rs:1:52
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::server::remote_actions::remote_action::{Action, ActionEnum};
[INFO] [stdout]   |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Error`, `fs::File`, `path::Path`, `self`, and `self`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::{self, Error}, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |                   ^^^^  ^^^^^   ^^^^^^^^       ^^^^  ^^^^^^^  ^^^^^^^^^                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::misc::class::Class`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::server::misc::class::Class;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::server_management::action_collection`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::server::server_management::action_collection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::remote_action::RemoteErrorTrait`
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::remote_action::RemoteErrorTrait;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |             if(self.sudo)
[INFO] [stdout]    |               ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -             if(self.sudo)
[INFO] [stdout] 39 +             if self.sudo
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/remote_action.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::server_management::action_collection::ActionCollection`
[INFO] [stdout]   --> src/server/remote_actions/remote_action.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::server::server_management::action_collection::ActionCollection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Read`, `error::Error`, `fs::File`, `path::Path`, and `self`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |           ^^^^^^^^^^^^  ^^^^^^^^       ^^^^  ^^^^^^^  ^^^^^^^^^  ^^^^          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SessionManagerTrait`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:2:113
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::server::{remote_actions::remote_action::Action, server_management::session_manager::{SessionManager, SessionManagerTrait}};
[INFO] [stdout]   |                                                                                                                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::server_management::action_collection`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::server::server_management::action_collection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `execute_command::ExecuteCommand` and `remote_action::RemoteErrorTrait`
[INFO] [stdout]  --> src/server/server_management/session_manager.rs:2:64
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::server::{credentials::Credentials, remote_actions::{execute_command::ExecuteCommand, remote_action::RemoteErrorTrait}};
[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: `BufRead`, `BufReader`, `Read`, `fs::File`, and `path::Path`
[INFO] [stdout]  --> src/server/remote_actions/upload_file.rs:1:29
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |                             ^^^^^^^^             ^^^^^^^  ^^^^^^^^^  ^^^^          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Read`, `Write`, `error::Error`, `fs::File`, `path::Path`, `self`, and `vec`
[INFO] [stdout]  --> src/server/server_management/session_manager.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{error::Error, fs::File, vec, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |           ^^^^^^^^^^^^  ^^^^^^^^  ^^^       ^^^^  ^^^^^^^  ^^^^^^^^^  ^^^^  ^^^^^   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/upload_file.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::misc::class::Class`
[INFO] [stdout]  --> src/server/server_management/session_manager.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::server::misc::class::Class;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/upload_folder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/server/server_management/action_collection.rs:1:52
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::server::remote_actions::remote_action::{Action, ActionEnum};
[INFO] [stdout]   |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ActionEnum`
[INFO] [stdout]  --> src/server/remote_actions/upload_folder.rs:5:60
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::server::remote_actions::remote_action::{Action, ActionEnum};
[INFO] [stdout]   |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Error`, `fs::File`, `path::Path`, `self`, and `self`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::{self, Error}, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |                   ^^^^  ^^^^^   ^^^^^^^^       ^^^^  ^^^^^^^  ^^^^^^^^^                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/upload_folder.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |         if(!start_path.exists())
[INFO] [stdout]    |           ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 20 -         if(!start_path.exists())
[INFO] [stdout] 20 +         if !start_path.exists()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/upload_folder.rs:28:15
[INFO] [stdout]    |
[INFO] [stdout] 28 |             if(sub_path.as_ref().unwrap().path().is_dir())
[INFO] [stdout]    |               ^                                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 28 -             if(sub_path.as_ref().unwrap().path().is_dir())
[INFO] [stdout] 28 +             if sub_path.as_ref().unwrap().path().is_dir()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::misc::class::Class`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::server::misc::class::Class;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/upload_folder.rs:89:11
[INFO] [stdout]    |
[INFO] [stdout] 89 |         if(self.delete_if_already_exists)
[INFO] [stdout]    |           ^                             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -         if(self.delete_if_already_exists)
[INFO] [stdout] 89 +         if self.delete_if_already_exists
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::server_management::action_collection`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::server::server_management::action_collection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::remote_action::RemoteErrorTrait`
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::remote_action::RemoteErrorTrait;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/server/remote_actions/install_package.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/install_package.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |             if(self.sudo)
[INFO] [stdout]    |               ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -             if(self.sudo)
[INFO] [stdout] 39 +             if self.sudo
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stdout]  --> src/server/remote_actions/download_file.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |                                              ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/remote_action.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/download_file.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::server_management::action_collection::ActionCollection`
[INFO] [stdout]   --> src/server/remote_actions/remote_action.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::server::server_management::action_collection::ActionCollection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/server/local_actions/local_command.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/local_actions/local_command.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExecuteCommandError`, `action_collection`, and `credentials`
[INFO] [stdout]   --> src/main.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | ...::{credentials, remote_actions::execute_command::{ExecuteCommandError, ExecuteCommand}, server_management::{session_manager::{SessionManagerTrait}, action_collection}};
[INFO] [stdout]    |       ^^^^^^^^^^^                                    ^^^^^^^^^^^^^^^^^^^                                                                               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]   --> src/main.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use tokio::net::TcpStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncWriteExt`
[INFO] [stdout]   --> src/main.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use tokio::io::AsyncWriteExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Write`, `env`, and `path::Path`
[INFO] [stdout]   --> src/main.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | use std::{env, error::Error, io::{Read, Write}, path::Path};
[INFO] [stdout]    |           ^^^                     ^^^^  ^^^^^   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::DerefMut`
[INFO] [stdout]   --> src/main.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use std::ops::DerefMut;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AppLauncher`, `Button`, `Env`, `Label`, `Widget`, and `WindowDesc`
[INFO] [stdout]   --> src/main.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | use druid::{Data, widget::{Label, Button}, Env, Widget, WindowDesc, AppLauncher};
[INFO] [stdout]    |                            ^^^^^  ^^^^^^   ^^^  ^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Flex`
[INFO] [stdout]   --> src/main.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 | use druid::widget::{Flex};
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]   --> src/main.rs:37:52
[INFO] [stdout]    |
[INFO] [stdout] 37 | use crate::server::remote_actions::remote_action::{Action, ActionEnum};
[INFO] [stdout]    |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command` and `exit`
[INFO] [stdout]   --> src/main.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 | use std::process::{Command, exit};
[INFO] [stdout]    |                    ^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::ErrorCode::Session`
[INFO] [stdout]   --> src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | use ssh2::ErrorCode::Session;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::remote_actions::upload_file::UploadFile`
[INFO] [stdout]   --> src/main.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 | use crate::server::remote_actions::upload_file::UploadFile;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Read`, `error::Error`, `fs::File`, `path::Path`, and `self`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |           ^^^^^^^^^^^^  ^^^^^^^^       ^^^^  ^^^^^^^  ^^^^^^^^^  ^^^^          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SessionManagerTrait`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:2:113
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::server::{remote_actions::remote_action::Action, server_management::session_manager::{SessionManager, SessionManagerTrait}};
[INFO] [stdout]   |                                                                                                                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::server_management::action_collection`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::server::server_management::action_collection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Read`, `fs::File`, and `path::Path`
[INFO] [stdout]  --> src/server/remote_actions/upload_file.rs:1:29
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |                             ^^^^^^^^             ^^^^^^^  ^^^^^^^^^  ^^^^          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/upload_file.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/upload_folder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ActionEnum`
[INFO] [stdout]  --> src/server/remote_actions/upload_folder.rs:5:60
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::server::remote_actions::remote_action::{Action, ActionEnum};
[INFO] [stdout]   |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/upload_folder.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |         if(!start_path.exists())
[INFO] [stdout]    |           ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 20 -         if(!start_path.exists())
[INFO] [stdout] 20 +         if !start_path.exists()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/upload_folder.rs:28:15
[INFO] [stdout]    |
[INFO] [stdout] 28 |             if(sub_path.as_ref().unwrap().path().is_dir())
[INFO] [stdout]    |               ^                                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 28 -             if(sub_path.as_ref().unwrap().path().is_dir())
[INFO] [stdout] 28 +             if sub_path.as_ref().unwrap().path().is_dir()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/server/remote_actions/upload_folder.rs:89:11
[INFO] [stdout]    |
[INFO] [stdout] 89 |         if(self.delete_if_already_exists)
[INFO] [stdout]    |           ^                             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -         if(self.delete_if_already_exists)
[INFO] [stdout] 89 +         if self.delete_if_already_exists
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/server/remote_actions/install_package.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/install_package.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stdout]  --> src/server/remote_actions/download_file.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |                                              ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/remote_actions/download_file.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/server/local_actions/local_command.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::Session`
[INFO] [stdout]  --> src/server/local_actions/local_command.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ssh2::Session;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExecuteCommandError`, `action_collection`, and `credentials`
[INFO] [stdout]   --> src/main.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 | ...::{credentials, remote_actions::execute_command::{ExecuteCommandError, ExecuteCommand}, server_management::{session_manager::{SessionManagerTrait}, action_collection}};
[INFO] [stdout]    |       ^^^^^^^^^^^                                    ^^^^^^^^^^^^^^^^^^^                                                                               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]   --> src/main.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use tokio::net::TcpStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncWriteExt`
[INFO] [stdout]   --> src/main.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use tokio::io::AsyncWriteExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Write`, `env`, and `path::Path`
[INFO] [stdout]   --> src/main.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | use std::{env, error::Error, io::{Read, Write}, path::Path};
[INFO] [stdout]    |           ^^^                     ^^^^  ^^^^^   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::DerefMut`
[INFO] [stdout]   --> src/main.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use std::ops::DerefMut;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AppLauncher`, `Button`, `Env`, `Label`, `Widget`, and `WindowDesc`
[INFO] [stdout]   --> src/main.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 | use druid::{Data, widget::{Label, Button}, Env, Widget, WindowDesc, AppLauncher};
[INFO] [stdout]    |                            ^^^^^  ^^^^^^   ^^^  ^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Flex`
[INFO] [stdout]   --> src/main.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 | use druid::widget::{Flex};
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]   --> src/main.rs:37:52
[INFO] [stdout]    |
[INFO] [stdout] 37 | use crate::server::remote_actions::remote_action::{Action, ActionEnum};
[INFO] [stdout]    |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command` and `exit`
[INFO] [stdout]   --> src/main.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 | use std::process::{Command, exit};
[INFO] [stdout]    |                    ^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh2::ErrorCode::Session`
[INFO] [stdout]   --> src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | use ssh2::ErrorCode::Session;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::server::remote_actions::upload_file::UploadFile`
[INFO] [stdout]   --> src/main.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 | use crate::server::remote_actions::upload_file::UploadFile;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:1:80
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::{self, Error}, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |                                                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `druid::piet::TextStorage`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use druid::piet::TextStorage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:1:72
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/server/remote_actions/upload_file.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/server/remote_actions/download_file.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Session`
[INFO] [stdout]   --> src/server/credentials.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Err(Session) => { return Err(ServerConnectionError::SessionObjectCreation) }
[INFO] [stdout]    |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Session`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tcp`
[INFO] [stdout]   --> src/server/credentials.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             Err(tcp) => { return Err(ServerConnectionError::TcpStreamCreation) }
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_tcp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:68:46
[INFO] [stdout]    |
[INFO] [stdout] 68 |             Err(ExecuteCommandError::IoError(e)) => {
[INFO] [stdout]    |                                              ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:71:48
[INFO] [stdout]    |
[INFO] [stdout] 71 |             Err(ExecuteCommandError::Ssh2Error(e)) => {
[INFO] [stdout]    |                                                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session`
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn execute(&self, session: &SessionManager) {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session`
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:78:23
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn execute(&self, session: &SessionManager) {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/upload_file.rs:52:43
[INFO] [stdout]    |
[INFO] [stdout] 52 |             Err(FileUploadError::FileOpen(e)) => {
[INFO] [stdout]    |                                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/upload_file.rs:55:42
[INFO] [stdout]    |
[INFO] [stdout] 55 |             Err(FileUploadError::SCPSend(e)) => {
[INFO] [stdout]    |                                          ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/remote_actions/upload_folder.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut source_copy = PathBuf::from(&self.source);
[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 import: `Write`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:1:80
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::{self, Error}, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |                                                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `druid::piet::TextStorage`
[INFO] [stdout]  --> src/server/remote_actions/execute_command.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use druid::piet::TextStorage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/server/remote_actions/manage_packages.rs:1:72
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path};
[INFO] [stdout]   |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/server/remote_actions/upload_file.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/server/remote_actions/download_file.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, fs::File, io::{self, BufRead, BufReader, Read, Write}, path::Path, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Session`
[INFO] [stdout]   --> src/server/credentials.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Err(Session) => { return Err(ServerConnectionError::SessionObjectCreation) }
[INFO] [stdout]    |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Session`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tcp`
[INFO] [stdout]   --> src/server/credentials.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             Err(tcp) => { return Err(ServerConnectionError::TcpStreamCreation) }
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_tcp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stat`
[INFO] [stdout]   --> src/server/remote_actions/download_file.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 |             let (mut remote_file, stat) = session.session.scp_recv(Path::new(&self.source))?;
[INFO] [stdout]    |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_stat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/download_file.rs:47:45
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Err(FileDownloadError::FileOpen(e)) => {
[INFO] [stdout]    |                                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/download_file.rs:50:47
[INFO] [stdout]    |
[INFO] [stdout] 50 |             Err(FileDownloadError::SCPReceive(e)) => {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session`
[INFO] [stdout]   --> src/server/local_actions/local_command.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn execute(&self, session: &SessionManager) {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestWidget` is never constructed
[INFO] [stdout]   --> src/main.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct TestWidget {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:68:46
[INFO] [stdout]    |
[INFO] [stdout] 68 |             Err(ExecuteCommandError::IoError(e)) => {
[INFO] [stdout]    |                                              ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/execute_command.rs:71:48
[INFO] [stdout]    |
[INFO] [stdout] 71 |             Err(ExecuteCommandError::Ssh2Error(e)) => {
[INFO] [stdout]    |                                                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_credentials` is never used
[INFO] [stdout]   --> src/server/server_management/session_manager.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait SessionManagerTrait {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] 15 |     fn new(credentials: Credentials, session: Session) -> SessionManager;
[INFO] [stdout] 16 |     fn get_credentials(&self) -> &Credentials;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `collection_name` is never read
[INFO] [stdout]  --> src/server/server_management/action_collection.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ActionCollection {
[INFO] [stdout]   |            ---------------- field in this struct
[INFO] [stdout] 8 |     pub actions: Vec<ActionEnum>,
[INFO] [stdout] 9 |     pub collection_name: String
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `RemoteErrorTrait` is never used
[INFO] [stdout]   --> src/server/remote_actions/remote_action.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub trait RemoteErrorTrait {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AddPackageError` is never used
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum AddPackageError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RemovePackageError` is never used
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum RemovePackageError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Class` is never used
[INFO] [stdout]  --> src/server/misc/class.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait Class {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UploadFolder` is never constructed
[INFO] [stdout]  --> src/server/local_actions/local_command.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct UploadFolder {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: crater fail !! problematic pattern detected !!
[INFO] [stdout]   --> src/server/credentials.rs:41:41
[INFO] [stdout]    |
[INFO] [stdout] 41 | ...                   Err(ssh2::Error { .. }) => { return Err(ServerConnectionError::Authentication) }
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type is defined in crate `ssh2`
[INFO] [stdout]    = note: `#[deny(rest_pattern_match_on_struct_with_all_private_fields)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: crater fail !! problematic pattern detected !!
[INFO] [stdout]   --> src/server/credentials.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 | ...                   Err(ssh2::Error { .. }) => { return Err(ServerConnectionError::Handshake) }
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type is defined in crate `ssh2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Session` should have a snake case name
[INFO] [stdout]   --> src/server/credentials.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Err(Session) => { return Err(ServerConnectionError::SessionObjectCreation) }
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `session`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session`
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn execute(&self, session: &SessionManager) {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session`
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:78:23
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn execute(&self, session: &SessionManager) {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/upload_file.rs:52:43
[INFO] [stdout]    |
[INFO] [stdout] 52 |             Err(FileUploadError::FileOpen(e)) => {
[INFO] [stdout]    |                                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/upload_file.rs:55:42
[INFO] [stdout]    |
[INFO] [stdout] 55 |             Err(FileUploadError::SCPSend(e)) => {
[INFO] [stdout]    |                                          ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/remote_actions/upload_folder.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut source_copy = PathBuf::from(&self.source);
[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] [stderr] error: could not compile `alkahest` (bin "alkahest" test) due to 2 previous errors; 68 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `stat`
[INFO] [stdout]   --> src/server/remote_actions/download_file.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 |             let (mut remote_file, stat) = session.session.scp_recv(Path::new(&self.source))?;
[INFO] [stdout]    |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_stat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/download_file.rs:47:45
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Err(FileDownloadError::FileOpen(e)) => {
[INFO] [stdout]    |                                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/server/remote_actions/download_file.rs:50:47
[INFO] [stdout]    |
[INFO] [stdout] 50 |             Err(FileDownloadError::SCPReceive(e)) => {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `session`
[INFO] [stdout]   --> src/server/local_actions/local_command.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn execute(&self, session: &SessionManager) {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestWidget` is never constructed
[INFO] [stdout]   --> src/main.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct TestWidget {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_credentials` is never used
[INFO] [stdout]   --> src/server/server_management/session_manager.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait SessionManagerTrait {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] 15 |     fn new(credentials: Credentials, session: Session) -> SessionManager;
[INFO] [stdout] 16 |     fn get_credentials(&self) -> &Credentials;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `collection_name` is never read
[INFO] [stdout]  --> src/server/server_management/action_collection.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ActionCollection {
[INFO] [stdout]   |            ---------------- field in this struct
[INFO] [stdout] 8 |     pub actions: Vec<ActionEnum>,
[INFO] [stdout] 9 |     pub collection_name: String
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `RemoteErrorTrait` is never used
[INFO] [stdout]   --> src/server/remote_actions/remote_action.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub trait RemoteErrorTrait {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AddPackageError` is never used
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum AddPackageError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RemovePackageError` is never used
[INFO] [stdout]   --> src/server/remote_actions/manage_packages.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum RemovePackageError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Class` is never used
[INFO] [stdout]  --> src/server/misc/class.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait Class {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UploadFolder` is never constructed
[INFO] [stdout]  --> src/server/local_actions/local_command.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct UploadFolder {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: crater fail !! problematic pattern detected !!
[INFO] [stdout]   --> src/server/credentials.rs:41:41
[INFO] [stdout]    |
[INFO] [stdout] 41 | ...                   Err(ssh2::Error { .. }) => { return Err(ServerConnectionError::Authentication) }
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type is defined in crate `ssh2`
[INFO] [stdout]    = note: `#[deny(rest_pattern_match_on_struct_with_all_private_fields)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: crater fail !! problematic pattern detected !!
[INFO] [stdout]   --> src/server/credentials.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 | ...                   Err(ssh2::Error { .. }) => { return Err(ServerConnectionError::Handshake) }
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type is defined in crate `ssh2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Session` should have a snake case name
[INFO] [stdout]   --> src/server/credentials.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Err(Session) => { return Err(ServerConnectionError::SessionObjectCreation) }
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `session`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `alkahest` (bin "alkahest") due to 2 previous errors; 68 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd", kill_on_drop: false }`
[INFO] [stdout] d4856e0b514c53ca9265a372cbda1c595ac36ec51866371b41466fc7c64541bd
