[INFO] cloning repository https://github.com/The-RetroFunk-Project/cli [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/The-RetroFunk-Project/cli" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FThe-RetroFunk-Project%2Fcli", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FThe-RetroFunk-Project%2Fcli'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b7b5fc569d808c840c5b51732331e91c8aeac372 [INFO] checking The-RetroFunk-Project/cli against master#2d3a85b4f8ba7e2554f4d4fee126bc2ac6ee2af4 for pr-84385 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FThe-RetroFunk-Project%2Fcli" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/The-RetroFunk-Project/cli on toolchain 2d3a85b4f8ba7e2554f4d4fee126bc2ac6ee2af4 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+2d3a85b4f8ba7e2554f4d4fee126bc2ac6ee2af4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/The-RetroFunk-Project/cli [INFO] finished tweaking git repo https://github.com/The-RetroFunk-Project/cli [INFO] tweaked toml for git repo https://github.com/The-RetroFunk-Project/cli written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/The-RetroFunk-Project/cli already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+2d3a85b4f8ba7e2554f4d4fee126bc2ac6ee2af4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded security-framework v2.6.0 [INFO] [stderr] Downloaded raster v0.2.0 [INFO] [stderr] Downloaded security-framework-sys v2.6.0 [INFO] [stderr] Downloaded image v0.10.4 [INFO] [stderr] Downloaded png v0.5.2 [INFO] [stderr] Downloaded sysinfo v0.23.0 [INFO] [stderr] Downloaded inflate v0.1.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d1cd00eb6e6ea2a7969240779edeaeff35b24be85036c63b883ba933028a15f" "/opt/rustwide/cargo-home/bin/cargo" "+2d3a85b4f8ba7e2554f4d4fee126bc2ac6ee2af4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5870e23ecb229f786b59375e0bb6dbc11171167d97545c8901ec4c32a9f6b8f3 [INFO] running `Command { std: "docker" "start" "-a" "5870e23ecb229f786b59375e0bb6dbc11171167d97545c8901ec4c32a9f6b8f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5870e23ecb229f786b59375e0bb6dbc11171167d97545c8901ec4c32a9f6b8f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5870e23ecb229f786b59375e0bb6dbc11171167d97545c8901ec4c32a9f6b8f3", kill_on_drop: false }` [INFO] [stdout] 5870e23ecb229f786b59375e0bb6dbc11171167d97545c8901ec4c32a9f6b8f3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d1cd00eb6e6ea2a7969240779edeaeff35b24be85036c63b883ba933028a15f" "/opt/rustwide/cargo-home/bin/cargo" "+2d3a85b4f8ba7e2554f4d4fee126bc2ac6ee2af4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a80ecee040934886b643ed6230533ee76d133f0dac07d236d5b180196e3e4602 [INFO] running `Command { std: "docker" "start" "-a" "a80ecee040934886b643ed6230533ee76d133f0dac07d236d5b180196e3e4602", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling libc v0.2.116 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.36 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.86 [INFO] [stderr] Compiling cc v1.0.72 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Compiling pkg-config v0.3.24 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Checking once_cell v1.9.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.6 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling parking_lot_core v0.8.5 [INFO] [stderr] Checking pin-project-lite v0.2.8 [INFO] [stderr] Checking bytes v1.1.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.6 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Compiling futures-core v0.3.19 [INFO] [stderr] Checking smallvec v1.8.0 [INFO] [stderr] Checking lock_api v0.4.6 [INFO] [stderr] Compiling rayon-core v1.9.1 [INFO] [stderr] Checking itoa v1.0.1 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling futures-task v0.3.19 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Compiling openssl v0.10.38 [INFO] [stderr] Checking crossbeam-channel v0.5.2 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Compiling futures-util v0.3.19 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling indexmap v1.8.0 [INFO] [stderr] Compiling rayon v1.5.1 [INFO] [stderr] Checking num_cpus v1.13.1 [INFO] [stderr] Checking mio v0.7.14 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Compiling miniz_oxide v0.4.4 [INFO] [stderr] Compiling num-iter v0.1.42 [INFO] [stderr] Checking http v0.2.6 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Checking tracing-core v0.1.21 [INFO] [stderr] Compiling native-tls v0.2.8 [INFO] [stderr] Compiling httparse v1.5.1 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Checking slab v0.4.5 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking tinyvec_macros v0.1.0 [INFO] [stderr] Checking matches v0.1.9 [INFO] [stderr] Compiling crc32fast v1.3.1 [INFO] [stderr] Compiling quote v1.0.15 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling futures-channel v0.3.19 [INFO] [stderr] Checking futures-sink v0.3.19 [INFO] [stderr] Checking either v1.6.1 [INFO] [stderr] Checking tinyvec v1.5.1 [INFO] [stderr] Checking tracing v0.1.29 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking crossbeam-deque v0.8.1 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking percent-encoding v2.1.0 [INFO] [stderr] Compiling openssl-sys v0.9.72 [INFO] [stderr] Compiling bzip2-sys v0.1.11+1.0.8 [INFO] [stderr] Compiling miniz-sys v0.1.12 [INFO] [stderr] Checking rustc-serialize v0.3.24 [INFO] [stderr] Checking try-lock v0.2.3 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking openssl-probe v0.1.5 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Checking form_urlencoded v1.0.1 [INFO] [stderr] Checking num-traits v0.1.43 [INFO] [stderr] Checking socket2 v0.4.4 [INFO] [stderr] Checking itoa v0.4.8 [INFO] [stderr] Checking httpdate v1.0.2 [INFO] [stderr] Checking tower-service v0.3.1 [INFO] [stderr] Checking ryu v1.0.9 [INFO] [stderr] Checking unicode-normalization v0.1.19 [INFO] [stderr] Compiling encoding_rs v0.8.30 [INFO] [stderr] Checking regex-syntax v0.6.25 [INFO] [stderr] Checking unicode-bidi v0.3.7 [INFO] [stderr] Checking flate2 v1.0.22 [INFO] [stderr] Checking enum_primitive v0.1.1 [INFO] [stderr] Checking flate2 v0.2.20 [INFO] [stderr] Checking time v0.1.44 [INFO] [stderr] Checking terminal_size v0.1.17 [INFO] [stderr] Compiling sysinfo v0.23.0 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Checking inflate v0.1.1 [INFO] [stderr] Checking glob v0.2.11 [INFO] [stderr] Checking byteorder v0.5.3 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Compiling serde_json v1.0.78 [INFO] [stderr] Checking unicode-width v0.1.9 [INFO] [stderr] Compiling heck v0.4.0 [INFO] [stderr] Checking http-body v0.4.4 [INFO] [stderr] Checking bitflags v0.7.0 [INFO] [stderr] Checking lzw v0.10.0 [INFO] [stderr] Checking os_str_bytes v6.0.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking bzip2 v0.4.3 [INFO] [stderr] Checking dirs-sys v0.3.6 [INFO] [stderr] Checking gif v0.9.2 [INFO] [stderr] Checking ipnet v2.3.1 [INFO] [stderr] Checking num-bigint v0.1.44 [INFO] [stderr] Checking strsim v0.10.0 [INFO] [stderr] Checking base64 v0.13.0 [INFO] [stderr] Checking number_prefix v0.3.0 [INFO] [stderr] Checking textwrap v0.14.2 [INFO] [stderr] Checking regex v1.5.4 [INFO] [stderr] Checking termcolor v1.1.2 [INFO] [stderr] Checking mime v0.3.16 [INFO] [stderr] Checking dirs v4.0.0 [INFO] [stderr] Checking xml-rs v0.8.4 [INFO] [stderr] Checking idna v0.2.3 [INFO] [stderr] Checking png v0.5.2 [INFO] [stderr] Checking num-rational v0.1.42 [INFO] [stderr] Checking url v2.2.2 [INFO] [stderr] Checking console v0.15.0 [INFO] [stderr] Checking jpeg-decoder v0.1.22 [INFO] [stderr] Checking indicatif v0.15.0 [INFO] [stderr] Checking image v0.10.4 [INFO] [stderr] Checking raster v0.2.0 [INFO] [stderr] Compiling tokio-macros v1.7.0 [INFO] [stderr] Compiling futures-macro v0.3.19 [INFO] [stderr] Compiling thiserror-impl v1.0.30 [INFO] [stderr] Compiling clap_derive v3.0.12 [INFO] [stderr] Checking tokio v1.16.1 [INFO] [stderr] Checking thiserror v1.0.30 [INFO] [stderr] Checking zip v0.5.13 [INFO] [stderr] Checking zip-extensions v0.6.1 [INFO] [stderr] Checking clap v3.0.13 [INFO] [stderr] Checking tokio-util v0.6.9 [INFO] [stderr] Checking tokio-native-tls v0.3.0 [INFO] [stderr] Checking h2 v0.3.11 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking hyper v0.14.16 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.9 [INFO] [stderr] Checking rfproject v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::path` [INFO] [stdout] --> src/install.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::path; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/install.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `zip_extensions::read::*` [INFO] [stdout] --> src/install.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use zip_extensions::read::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::*` [INFO] [stdout] --> src/config.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use serde_json::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dirs::*` [INFO] [stdout] --> src/binaries.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use dirs::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path` [INFO] [stdout] --> src/install.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::path; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/install.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `zip_extensions::read::*` [INFO] [stdout] --> src/install.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use zip_extensions::read::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::*` [INFO] [stdout] --> src/config.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use serde_json::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dirs::*` [INFO] [stdout] --> src/binaries.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use dirs::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/install.rs:61:2 [INFO] [stdout] | [INFO] [stdout] 47 | / match GetGeometryDash() [INFO] [stdout] 48 | | { [INFO] [stdout] 49 | | Ok(result_path) => [INFO] [stdout] 50 | | { [INFO] [stdout] ... | [INFO] [stdout] 57 | | }, [INFO] [stdout] 58 | | } [INFO] [stdout] | |_________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] ... [INFO] [stdout] 61 | return false; [INFO] [stdout] | ^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/install.rs:61:2 [INFO] [stdout] | [INFO] [stdout] 47 | / match GetGeometryDash() [INFO] [stdout] 48 | | { [INFO] [stdout] 49 | | Ok(result_path) => [INFO] [stdout] 50 | | { [INFO] [stdout] ... | [INFO] [stdout] 57 | | }, [INFO] [stdout] 58 | | } [INFO] [stdout] | |_________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] ... [INFO] [stdout] 61 | return false; [INFO] [stdout] | ^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/resources.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut depth = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `initCommand` is never read [INFO] [stdout] --> src/main.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | let mut initCommand = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/main.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | let output = Command::new(initCommand).args(rest).spawn().expect("Oops"); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/install.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut gamePath = PathBuf::from(gdProcess.exe()).parent().unwrap().to_path_buf(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut saveFile = saveDirectory.join("rfproject_config.json"); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let mut configFile : Configuration = serde_json::from_str(configString.as_str()).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut depth = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:52:29 [INFO] [stdout] | [INFO] [stdout] 52 | let mut p_tex = PlistTexture { name : "".to_string(), texture_rect: Vec::new() }; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let mut r_image = raster::open(format!("{}/Resources/GJ_GameSheet.png", config::get_installation_path()).as_str()).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | let mut value_split : Vec<&str> = you.split(',').collect(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/resources.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut depth = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `initCommand` is never read [INFO] [stdout] --> src/main.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | let mut initCommand = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/main.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | let output = Command::new(initCommand).args(rest).spawn().expect("Oops"); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/install.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut gamePath = PathBuf::from(gdProcess.exe()).parent().unwrap().to_path_buf(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:146:25 [INFO] [stdout] | [INFO] [stdout] 146 | let mut client = reqwest::Client::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:167:17 [INFO] [stdout] | [INFO] [stdout] 167 | let mut client = reqwest::Client::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `indent` is never used [INFO] [stdout] --> src/resources.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn indent(size: usize) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `initCommand` should have a snake case name [INFO] [stdout] --> src/main.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | let mut initCommand = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `init_command` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut saveFile = saveDirectory.join("rfproject_config.json"); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let mut configFile : Configuration = serde_json::from_str(configString.as_str()).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/config.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut depth = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:52:29 [INFO] [stdout] | [INFO] [stdout] 52 | let mut p_tex = PlistTexture { name : "".to_string(), texture_rect: Vec::new() }; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let mut r_image = raster::open(format!("{}/Resources/GJ_GameSheet.png", config::get_installation_path()).as_str()).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resources.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | let mut value_split : Vec<&str> = you.split(',').collect(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:146:25 [INFO] [stdout] | [INFO] [stdout] 146 | let mut client = reqwest::Client::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:167:17 [INFO] [stdout] | [INFO] [stdout] 167 | let mut client = reqwest::Client::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `indent` is never used [INFO] [stdout] --> src/resources.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn indent(size: usize) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `initCommand` should have a snake case name [INFO] [stdout] --> src/main.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | let mut initCommand = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `init_command` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | download_file(&client, url, &path).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | download_file(&client, url, &path).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `GetGeometryDash` should have a snake case name [INFO] [stdout] --> src/install.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn GetGeometryDash() -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_geometry_dash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `geometryDash` should have a snake case name [INFO] [stdout] --> src/install.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | let mut geometryDash; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `geometry_dash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gdProcess` should have a snake case name [INFO] [stdout] --> src/install.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let gdProcess = match geometryDash.next() { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `gd_process` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gamePath` should have a snake case name [INFO] [stdout] --> src/install.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut gamePath = PathBuf::from(gdProcess.exe()).parent().unwrap().to_path_buf(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `game_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `GeometryDashExists` should have a snake case name [INFO] [stdout] --> src/install.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn GeometryDashExists() -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `geometry_dash_exists` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/install.rs:66:2 [INFO] [stdout] | [INFO] [stdout] 66 | / zip_extensions::read::zip_extract( [INFO] [stdout] 67 | | &PathBuf::from(format!("{}/TRFP.zip", config::get_installation_path()).as_str()), [INFO] [stdout] 68 | | &PathBuf::from(config::get_installation_path().as_str()), [INFO] [stdout] 69 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `InstallationPath` should have a snake case name [INFO] [stdout] --> src/config.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub InstallationPath: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `installation_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `CurrentVersion` should have a snake case name [INFO] [stdout] --> src/config.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub CurrentVersion: Option [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_version` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | download_file(&client, url, &path).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `exePath` should have a snake case name [INFO] [stdout] --> src/config.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let exePath = std::env::current_exe().unwrap(); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `exe_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | download_file(&client, url, &path).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `saveDirectory` should have a snake case name [INFO] [stdout] --> src/config.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let saveDirectory = exePath.parent().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `save_directory` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `GetGeometryDash` should have a snake case name [INFO] [stdout] --> src/install.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn GetGeometryDash() -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_geometry_dash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `saveFile` should have a snake case name [INFO] [stdout] --> src/config.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | let mut saveFile = saveDirectory.join("rfproject_config.json"); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `save_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `geometryDash` should have a snake case name [INFO] [stdout] --> src/install.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | let mut geometryDash; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `geometry_dash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configPath` should have a snake case name [INFO] [stdout] --> src/config.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let configPath = get_config_path(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gdProcess` should have a snake case name [INFO] [stdout] --> src/install.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let gdProcess = match geometryDash.next() { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `gd_process` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configString` should have a snake case name [INFO] [stdout] --> src/config.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let configString = fs::read_to_string(&configPath).expect("Oops"); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `config_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gamePath` should have a snake case name [INFO] [stdout] --> src/install.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut gamePath = PathBuf::from(gdProcess.exe()).parent().unwrap().to_path_buf(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `game_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | let mut configFile : Configuration = serde_json::from_str(configString.as_str()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `GeometryDashExists` should have a snake case name [INFO] [stdout] --> src/install.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn GeometryDashExists() -> bool [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `geometry_dash_exists` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `newConfigData` should have a snake case name [INFO] [stdout] --> src/config.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | let newConfigData = serde_json::to_string(&configFile).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `new_config_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/install.rs:66:2 [INFO] [stdout] | [INFO] [stdout] 66 | / zip_extensions::read::zip_extract( [INFO] [stdout] 67 | | &PathBuf::from(format!("{}/TRFP.zip", config::get_installation_path()).as_str()), [INFO] [stdout] 68 | | &PathBuf::from(config::get_installation_path().as_str()), [INFO] [stdout] 69 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `InstallationPath` should have a snake case name [INFO] [stdout] --> src/config.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub InstallationPath: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `installation_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `CurrentVersion` should have a snake case name [INFO] [stdout] --> src/config.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub CurrentVersion: Option [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_version` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/binaries.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | { fs::create_dir(format!("{}/Game", config::get_installation_path()).as_str()); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/binaries.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | { fs::create_dir(format!("{}/Game/Binaries", config::get_installation_path()).as_str()); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `exePath` should have a snake case name [INFO] [stdout] --> src/config.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let exePath = std::env::current_exe().unwrap(); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `exe_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `saveDirectory` should have a snake case name [INFO] [stdout] --> src/config.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | let saveDirectory = exePath.parent().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `save_directory` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `saveFile` should have a snake case name [INFO] [stdout] --> src/config.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | let mut saveFile = saveDirectory.join("rfproject_config.json"); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `save_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configPath` should have a snake case name [INFO] [stdout] --> src/config.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let configPath = get_config_path(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configString` should have a snake case name [INFO] [stdout] --> src/config.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let configString = fs::read_to_string(&configPath).expect("Oops"); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `config_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | let mut configFile : Configuration = serde_json::from_str(configString.as_str()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `newConfigData` should have a snake case name [INFO] [stdout] --> src/config.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | let newConfigData = serde_json::to_string(&configFile).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `new_config_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `configFile` should have a snake case name [INFO] [stdout] --> src/config.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | let mut configFile = get_config_from_json(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `config_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/binaries.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | { fs::create_dir(format!("{}/Game", config::get_installation_path()).as_str()); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/binaries.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | { fs::create_dir(format!("{}/Game/Binaries", config::get_installation_path()).as_str()); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 44 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 44 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 25.91s [INFO] running `Command { std: "docker" "inspect" "a80ecee040934886b643ed6230533ee76d133f0dac07d236d5b180196e3e4602", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a80ecee040934886b643ed6230533ee76d133f0dac07d236d5b180196e3e4602", kill_on_drop: false }` [INFO] [stdout] a80ecee040934886b643ed6230533ee76d133f0dac07d236d5b180196e3e4602