[INFO] fetching crate SimpleBeatmapAnalyzer 0.9.2...
[INFO] checking SimpleBeatmapAnalyzer-0.9.2 against master#3139ff09e9d07f7700f8d15ed25a231e29c43627 for pr-121848-3
[INFO] extracting crate SimpleBeatmapAnalyzer 0.9.2 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate SimpleBeatmapAnalyzer 0.9.2 on toolchain 3139ff09e9d07f7700f8d15ed25a231e29c43627
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3139ff09e9d07f7700f8d15ed25a231e29c43627" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate SimpleBeatmapAnalyzer 0.9.2
[INFO] finished tweaking crates.io crate SimpleBeatmapAnalyzer 0.9.2
[INFO] tweaked toml for crates.io crate SimpleBeatmapAnalyzer 0.9.2 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate crates.io crate SimpleBeatmapAnalyzer 0.9.2 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" "+3139ff09e9d07f7700f8d15ed25a231e29c43627" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded toml v0.5.11
[INFO] [stderr]   Downloaded serde v1.0.188
[INFO] [stderr]   Downloaded winres v0.1.12
[INFO] [stderr]   Downloaded number_prefix v0.4.0
[INFO] [stderr]   Downloaded windows-targets v0.42.2
[INFO] [stderr]   Downloaded strum v0.25.0
[INFO] [stderr]   Downloaded instant v0.1.12
[INFO] [stderr]   Downloaded scopeguard v1.2.0
[INFO] [stderr]   Downloaded hermit-abi v0.3.2
[INFO] [stderr]   Downloaded crossbeam-queue v0.3.8
[INFO] [stderr]   Downloaded itoa v1.0.9
[INFO] [stderr]   Downloaded lazy_static v1.4.0
[INFO] [stderr]   Downloaded rustversion v1.0.14
[INFO] [stderr]   Downloaded console v0.15.7
[INFO] [stderr]   Downloaded csv-core v0.1.10
[INFO] [stderr]   Downloaded encode_unicode v0.3.6
[INFO] [stderr]   Downloaded indicatif v0.17.6
[INFO] [stderr]   Downloaded memchr v2.6.3
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.8
[INFO] [stderr]   Downloaded portable-atomic v1.4.3
[INFO] [stderr]   Downloaded typenum v1.16.0
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.16
[INFO] [stderr]   Downloaded rayon v1.7.0
[INFO] [stderr]   Downloaded rayon-core v1.11.0
[INFO] [stderr]   Downloaded syn v2.0.31
[INFO] [stderr]   Downloaded unicode-ident v1.0.11
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.15
[INFO] [stderr]   Downloaded proc-macro2 v1.0.66
[INFO] [stderr]   Downloaded serde_derive v1.0.188
[INFO] [stderr]   Downloaded ryu v1.0.15
[INFO] [stderr]   Downloaded jwalk v0.8.1
[INFO] [stderr]   Downloaded windows_aarch64_gnullvm v0.42.2
[INFO] [stderr]   Downloaded windows_x86_64_gnullvm v0.42.2
[INFO] [stderr]   Downloaded generic-array v0.14.7
[INFO] [stderr]   Downloaded quote v1.0.33
[INFO] [stderr]   Downloaded crossbeam v0.8.2
[INFO] [stderr]   Downloaded crypto-common v0.1.6
[INFO] [stderr]   Downloaded digest v0.10.7
[INFO] [stderr]   Downloaded either v1.9.0
[INFO] [stderr]   Downloaded block-buffer v0.10.4
[INFO] [stderr]   Downloaded md-5 v0.10.5
[INFO] [stderr]   Downloaded autocfg v1.1.0
[INFO] [stderr]   Downloaded memoffset v0.9.0
[INFO] [stderr]   Downloaded heck v0.4.1
[INFO] [stderr]   Downloaded windows_aarch64_msvc v0.42.2
[INFO] [stderr]   Downloaded strum_macros v0.25.2
[INFO] [stderr]   Downloaded windows_x86_64_msvc v0.42.2
[INFO] [stderr]   Downloaded libc v0.2.147
[INFO] [stderr]   Downloaded windows_i686_gnu v0.42.2
[INFO] [stderr]   Downloaded windows_i686_msvc v0.42.2
[INFO] [stderr]   Downloaded windows_x86_64_gnu v0.42.2
[INFO] [stderr]   Downloaded unicode-width v0.1.10
[INFO] [stderr]   Downloaded version_check v0.9.4
[INFO] [stderr]   Downloaded csv v1.2.2
[INFO] [stderr]   Downloaded crossbeam-deque v0.8.3
[INFO] [stderr]   Downloaded windows-sys v0.45.0
[INFO] [stderr]   Downloaded rosu-pp v0.9.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+3139ff09e9d07f7700f8d15ed25a231e29c43627" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d77496580bfeabb0187ebf3634e6abcdc0ead43a53cb7766868465f1656f5e61
[INFO] running `Command { std: "docker" "start" "-a" "d77496580bfeabb0187ebf3634e6abcdc0ead43a53cb7766868465f1656f5e61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d77496580bfeabb0187ebf3634e6abcdc0ead43a53cb7766868465f1656f5e61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d77496580bfeabb0187ebf3634e6abcdc0ead43a53cb7766868465f1656f5e61", kill_on_drop: false }`
[INFO] [stdout] d77496580bfeabb0187ebf3634e6abcdc0ead43a53cb7766868465f1656f5e61
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+3139ff09e9d07f7700f8d15ed25a231e29c43627" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bd6d28eacc7bd5fcae6d88978dbff7b20ca230c6635c4cae43571169de5c8656
[INFO] running `Command { std: "docker" "start" "-a" "bd6d28eacc7bd5fcae6d88978dbff7b20ca230c6635c4cae43571169de5c8656", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling serde v1.0.188
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.8
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling portable-atomic v1.4.3
[INFO] [stderr]     Checking crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]    Compiling syn v2.0.31
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking unicode-width v0.1.10
[INFO] [stderr]     Checking memchr v2.6.3
[INFO] [stderr]     Checking console v0.15.7
[INFO] [stderr]     Checking crossbeam v0.8.2
[INFO] [stderr]     Checking ryu v1.0.15
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking rosu-pp v0.9.5
[INFO] [stderr]     Checking strum v0.25.0
[INFO] [stderr]     Checking indicatif v0.17.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking md-5 v0.10.5
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling serde_derive v1.0.188
[INFO] [stderr]    Compiling strum_macros v0.25.2
[INFO] [stderr]     Checking jwalk v0.8.1
[INFO] [stderr]    Compiling winres v0.1.12
[INFO] [stderr]    Compiling SimpleBeatmapAnalyzer v0.9.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking csv v1.2.2
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/savedata_manager.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{PathBuf, Path};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::hash::Hash;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/main.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::path::{PathBuf, self};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NM_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     NM_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Nm99`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     DT_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Dt99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     HR_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Hr99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/savedata_manager.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{PathBuf, Path};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DT_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `DtStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     HR_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `HrStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::hash::Hash;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_BPM` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DT_BPM,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `DtBpm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/main.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::path::{PathBuf, self};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DT_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `DtAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     HR_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_CS` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     HR_CS,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrCs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `str::FromStr`
[INFO] [stdout]  --> src/options_config_manager.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io::{Write, BufWriter}, fs::{self, File}, str::FromStr};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::full_data_struct::FullDataEnum`
[INFO] [stdout]  --> src/options_config_manager.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::full_data_struct::FullDataEnum;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/options_config_manager.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NM_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     NM_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Nm99`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     DT_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Dt99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     HR_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Hr99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DT_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `DtStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     HR_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `HrStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_BPM` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DT_BPM,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `DtBpm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DT_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `DtAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     HR_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_CS` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     HR_CS,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrCs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `str::FromStr`
[INFO] [stdout]  --> src/options_config_manager.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io::{Write, BufWriter}, fs::{self, File}, str::FromStr};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::full_data_struct::FullDataEnum`
[INFO] [stdout]  --> src/options_config_manager.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::full_data_struct::FullDataEnum;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/options_config_manager.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b5` is assigned to, but never used
[INFO] [stdout]   --> src/osufile_reader.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut b5=false;
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_b5` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b5` is assigned to, but never used
[INFO] [stdout]   --> src/osufile_reader.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut b5=false;
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_b5` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b5` is never read
[INFO] [stdout]   --> src/osufile_reader.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 b5 = true;
[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: value assigned to `b5` is never read
[INFO] [stdout]   --> src/osufile_reader.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 b5 = true;
[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: `stream_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:78
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...[HitObject], cs: f32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stream_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:78
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...[HitObject], cs: f32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `jump_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:98
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_jump_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_path`
[INFO] [stdout]   --> src/savedata_manager.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     if let Ok(data_path) = write_main_data_csv(full_data,"data\\data.csv") {
[INFO] [stdout]    |               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `jump_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:98
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_jump_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_path`
[INFO] [stdout]   --> src/savedata_manager.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     if let Ok(data_path) = write_main_data_csv(full_data,"data\\data.csv") {
[INFO] [stdout]    |               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             _ => "".into(),
[INFO] [stdout]     |             ^ unreachable pattern
[INFO] [stdout]     |
[INFO] [stdout] note: these patterns collectively make the last one unreachable
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 90  | ...   FullDataEnum::Title => self.title.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 91  | ...   FullDataEnum::DifName => self.version.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 92  | ...   FullDataEnum::MapID => self.beatmap_id.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 93  | ...   FullDataEnum::Stars => format!("{:.2}", self.stars_nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 94  | ...   FullDataEnum::BPM => self.bpm.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 95  | ...   FullDataEnum::Bursts => format!("{:.2}", self.bursts),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 96  | ...   FullDataEnum::Streams => format!("{:.2}", self.streams),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 97  | ...   FullDataEnum::DeathStreams => format!("{:.2}", self.deathstreams),
[INFO] [stdout]     |       -------------------------- matches some of the same values
[INFO] [stdout] 98  | ...   FullDataEnum::ShortJumps => format!("{:.2}", self.short_jumps),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 99  | ...   FullDataEnum::MidJumps => format!("{:.2}", self.mid_jumps),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 100 | ...   FullDataEnum::Longjumps => format!("{:.2}", self.long_jumps),
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 101 | ...   FullDataEnum::Doubles => format!("{:.2}", self.doubles),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 102 | ...   FullDataEnum::Triples => format!("{:.2}", self.triples),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 103 | ...   FullDataEnum::SI => format!("{:.2}", self.si),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 104 | ...   FullDataEnum::JI => format!("{:.2}", self.ji),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 105 | ...   FullDataEnum::FCDBI => format!("{:.2}", self.fcdbi),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 106 | ...   FullDataEnum::PlayableLength => self.playable_length.to_string(),
[INFO] [stdout]     |       ---------------------------- matches some of the same values
[INFO] [stdout] 107 | ...   FullDataEnum::CS => self.cs.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 108 | ...   FullDataEnum::AR => self.ar.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 109 | ...   FullDataEnum::OD => self.od.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 110 | ...   FullDataEnum::HP => self.hp.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 111 | ...   FullDataEnum::NM_99 => format!("{:.2}", self.nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 112 | ...   FullDataEnum::DT_99 => format!("{:.2}", self.dt),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 113 | ...   FullDataEnum::HR_99 => format!("{:.2}", self.hr),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 114 | ...   FullDataEnum::DT_Stars => format!("{:.2}", self.stars_dt),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 115 | ...   FullDataEnum::HR_Stars => format!("{:.2}", self.stars_hr),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 116 | ...   FullDataEnum::DT_BPM =>((self.bpm as f32 * 1.5).ceil() as i32).to_string(),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 117 | ...   FullDataEnum::DT_AR => apply_dt_to_ar(self.ar).to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 118 | ...   FullDataEnum::HR_AR => format!("{:.2}", (self.ar * 1.4).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 119 | ...   FullDataEnum::HR_CS => format!("{:.2}", (self.cs * 1.3).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 120 | ...   FullDataEnum::Quads => format!("{:.2}", self.quads),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 121 | ...   FullDataEnum::MapSetID => self.beatmap_set_id.to_string(),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 122 | ...   //0.9.1
[INFO] [stdout] 123 | ...   FullDataEnum::LongestStream => self.longest_stream.to_string(),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 124 | ...   FullDataEnum::Streams100 => self.streams100.to_string(),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 125 | ...   FullDataEnum::AvgJumpsDistance => self.avg_jump_distance.to_string(),
[INFO] [stdout]     |       ------------------------------ matches some of the same values
[INFO] [stdout] 126 | ...   FullDataEnum::AvgJumpsSpeed => format!("{:.2}", self.avg_jump_speed),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 127 | ...   //0.9.2
[INFO] [stdout] 128 | ...   FullDataEnum::Creator => self.creator.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 129 | ...   FullDataEnum::OsuWebLink => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"https://osu.ppy.sh/b/{}\")", self.beatmap_id)} else {...
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 130 | ...   FullDataEnum::OsuDirect => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"osu://b/{}\")", self.beatmap_id)} else { "".into()},
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 131 | ...   FullDataEnum::MD5 => self.md5.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 132 | ...   
[INFO] [stdout] 133 | ...   _ => "".into(),
[INFO] [stdout]     |       ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             _ => "".into(),
[INFO] [stdout]     |             ^ unreachable pattern
[INFO] [stdout]     |
[INFO] [stdout] note: these patterns collectively make the last one unreachable
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 90  | ...   FullDataEnum::Title => self.title.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 91  | ...   FullDataEnum::DifName => self.version.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 92  | ...   FullDataEnum::MapID => self.beatmap_id.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 93  | ...   FullDataEnum::Stars => format!("{:.2}", self.stars_nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 94  | ...   FullDataEnum::BPM => self.bpm.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 95  | ...   FullDataEnum::Bursts => format!("{:.2}", self.bursts),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 96  | ...   FullDataEnum::Streams => format!("{:.2}", self.streams),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 97  | ...   FullDataEnum::DeathStreams => format!("{:.2}", self.deathstreams),
[INFO] [stdout]     |       -------------------------- matches some of the same values
[INFO] [stdout] 98  | ...   FullDataEnum::ShortJumps => format!("{:.2}", self.short_jumps),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 99  | ...   FullDataEnum::MidJumps => format!("{:.2}", self.mid_jumps),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 100 | ...   FullDataEnum::Longjumps => format!("{:.2}", self.long_jumps),
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 101 | ...   FullDataEnum::Doubles => format!("{:.2}", self.doubles),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 102 | ...   FullDataEnum::Triples => format!("{:.2}", self.triples),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 103 | ...   FullDataEnum::SI => format!("{:.2}", self.si),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 104 | ...   FullDataEnum::JI => format!("{:.2}", self.ji),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 105 | ...   FullDataEnum::FCDBI => format!("{:.2}", self.fcdbi),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 106 | ...   FullDataEnum::PlayableLength => self.playable_length.to_string(),
[INFO] [stdout]     |       ---------------------------- matches some of the same values
[INFO] [stdout] 107 | ...   FullDataEnum::CS => self.cs.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 108 | ...   FullDataEnum::AR => self.ar.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 109 | ...   FullDataEnum::OD => self.od.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 110 | ...   FullDataEnum::HP => self.hp.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 111 | ...   FullDataEnum::NM_99 => format!("{:.2}", self.nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 112 | ...   FullDataEnum::DT_99 => format!("{:.2}", self.dt),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 113 | ...   FullDataEnum::HR_99 => format!("{:.2}", self.hr),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 114 | ...   FullDataEnum::DT_Stars => format!("{:.2}", self.stars_dt),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 115 | ...   FullDataEnum::HR_Stars => format!("{:.2}", self.stars_hr),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 116 | ...   FullDataEnum::DT_BPM =>((self.bpm as f32 * 1.5).ceil() as i32).to_string(),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 117 | ...   FullDataEnum::DT_AR => apply_dt_to_ar(self.ar).to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 118 | ...   FullDataEnum::HR_AR => format!("{:.2}", (self.ar * 1.4).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 119 | ...   FullDataEnum::HR_CS => format!("{:.2}", (self.cs * 1.3).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 120 | ...   FullDataEnum::Quads => format!("{:.2}", self.quads),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 121 | ...   FullDataEnum::MapSetID => self.beatmap_set_id.to_string(),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 122 | ...   //0.9.1
[INFO] [stdout] 123 | ...   FullDataEnum::LongestStream => self.longest_stream.to_string(),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 124 | ...   FullDataEnum::Streams100 => self.streams100.to_string(),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 125 | ...   FullDataEnum::AvgJumpsDistance => self.avg_jump_distance.to_string(),
[INFO] [stdout]     |       ------------------------------ matches some of the same values
[INFO] [stdout] 126 | ...   FullDataEnum::AvgJumpsSpeed => format!("{:.2}", self.avg_jump_speed),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 127 | ...   //0.9.2
[INFO] [stdout] 128 | ...   FullDataEnum::Creator => self.creator.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 129 | ...   FullDataEnum::OsuWebLink => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"https://osu.ppy.sh/b/{}\")", self.beatmap_id)} else {...
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 130 | ...   FullDataEnum::OsuDirect => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"osu://b/{}\")", self.beatmap_id)} else { "".into()},
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 131 | ...   FullDataEnum::MD5 => self.md5.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 132 | ...   
[INFO] [stdout] 133 | ...   _ => "".into(),
[INFO] [stdout]     |       ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_dt_to_ar` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn apply_dt_to_ar(original_ar: f32) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_serde_to_csv` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn write_serde_to_csv(data: &[FullData]) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_dt_to_ar` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn apply_dt_to_ar(original_ar: f32) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_serde_to_csv` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn write_serde_to_csv(data: &[FullData]) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.75s
[INFO] running `Command { std: "docker" "inspect" "bd6d28eacc7bd5fcae6d88978dbff7b20ca230c6635c4cae43571169de5c8656", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bd6d28eacc7bd5fcae6d88978dbff7b20ca230c6635c4cae43571169de5c8656", kill_on_drop: false }`
[INFO] [stdout] bd6d28eacc7bd5fcae6d88978dbff7b20ca230c6635c4cae43571169de5c8656
[INFO] checking SimpleBeatmapAnalyzer-0.9.2 against try#a2cff3b7a9661c90ec0d581d3f3a69bb97c11138 for pr-121848-3
[INFO] extracting crate SimpleBeatmapAnalyzer 0.9.2 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate SimpleBeatmapAnalyzer 0.9.2 on toolchain a2cff3b7a9661c90ec0d581d3f3a69bb97c11138
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2cff3b7a9661c90ec0d581d3f3a69bb97c11138" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate SimpleBeatmapAnalyzer 0.9.2
[INFO] finished tweaking crates.io crate SimpleBeatmapAnalyzer 0.9.2
[INFO] tweaked toml for crates.io crate SimpleBeatmapAnalyzer 0.9.2 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate crates.io crate SimpleBeatmapAnalyzer 0.9.2 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" "+a2cff3b7a9661c90ec0d581d3f3a69bb97c11138" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+a2cff3b7a9661c90ec0d581d3f3a69bb97c11138" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3ccefaf3dbf4d4c0a14cf2e78b211058050048cccc263c835205704b7e5b333d
[INFO] running `Command { std: "docker" "start" "-a" "3ccefaf3dbf4d4c0a14cf2e78b211058050048cccc263c835205704b7e5b333d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3ccefaf3dbf4d4c0a14cf2e78b211058050048cccc263c835205704b7e5b333d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ccefaf3dbf4d4c0a14cf2e78b211058050048cccc263c835205704b7e5b333d", kill_on_drop: false }`
[INFO] [stdout] 3ccefaf3dbf4d4c0a14cf2e78b211058050048cccc263c835205704b7e5b333d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+a2cff3b7a9661c90ec0d581d3f3a69bb97c11138" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 044347cda44c560095bfc46e6ffa7b09f0b970016527c6fce23a797371fc6966
[INFO] running `Command { std: "docker" "start" "-a" "044347cda44c560095bfc46e6ffa7b09f0b970016527c6fce23a797371fc6966", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling serde v1.0.188
[INFO] [stderr]    Compiling crossbeam-queue v0.3.8
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling syn v2.0.31
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]    Compiling portable-atomic v1.4.3
[INFO] [stderr]     Checking unicode-width v0.1.10
[INFO] [stderr]     Checking memchr v2.6.3
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking console v0.15.7
[INFO] [stderr]     Checking crossbeam v0.8.2
[INFO] [stderr]     Checking ryu v1.0.15
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking rosu-pp v0.9.5
[INFO] [stderr]     Checking strum v0.25.0
[INFO] [stderr]     Checking indicatif v0.17.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking md-5 v0.10.5
[INFO] [stderr]    Compiling serde_derive v1.0.188
[INFO] [stderr]    Compiling strum_macros v0.25.2
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]     Checking jwalk v0.8.1
[INFO] [stderr]    Compiling winres v0.1.12
[INFO] [stderr]    Compiling SimpleBeatmapAnalyzer v0.9.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking csv v1.2.2
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/savedata_manager.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{PathBuf, Path};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::hash::Hash;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/main.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::path::{PathBuf, self};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NM_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     NM_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Nm99`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     DT_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Dt99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/savedata_manager.rs:10:26
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{PathBuf, Path};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     HR_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Hr99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DT_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `DtStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     HR_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `HrStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_BPM` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DT_BPM,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `DtBpm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::Hash`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::hash::Hash;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DT_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `DtAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/main.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::path::{PathBuf, self};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     HR_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_CS` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     HR_CS,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrCs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `str::FromStr`
[INFO] [stdout]  --> src/options_config_manager.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io::{Write, BufWriter}, fs::{self, File}, str::FromStr};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NM_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     NM_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Nm99`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     DT_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Dt99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::full_data_struct::FullDataEnum`
[INFO] [stdout]  --> src/options_config_manager.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::full_data_struct::FullDataEnum;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_99` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 186 |     HR_99,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `Hr99`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 |     DT_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `DtStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_Stars` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     HR_Stars,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `HrStars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/options_config_manager.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_BPM` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     DT_BPM,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `DtBpm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DT_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 |     DT_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `DtAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_AR` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     HR_AR,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrAr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HR_CS` should have an upper camel case name
[INFO] [stdout]    --> src/full_data_struct.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     HR_CS,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to upper camel case: `HrCs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `str::FromStr`
[INFO] [stdout]  --> src/options_config_manager.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io::{Write, BufWriter}, fs::{self, File}, str::FromStr};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::full_data_struct::FullDataEnum`
[INFO] [stdout]  --> src/options_config_manager.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::full_data_struct::FullDataEnum;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/options_config_manager.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b5` is assigned to, but never used
[INFO] [stdout]   --> src/osufile_reader.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut b5=false;
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_b5` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b5` is never read
[INFO] [stdout]   --> src/osufile_reader.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 b5 = true;
[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: `stream_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:78
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...[HitObject], cs: f32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `jump_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:98
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_jump_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `b5` is assigned to, but never used
[INFO] [stdout]   --> src/osufile_reader.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut b5=false;
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_b5` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b5` is never read
[INFO] [stdout]   --> src/osufile_reader.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 b5 = true;
[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: `stream_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:78
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...[HitObject], cs: f32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `jump_spacing`
[INFO] [stdout]  --> src/beatmap_stat_processor.rs:5:98
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...32,stream_spacing: f32,jump_spacing: f32) -> Result<SongParams, Box<dyn Error>> {
[INFO] [stdout]   |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_jump_spacing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_path`
[INFO] [stdout]   --> src/savedata_manager.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     if let Ok(data_path) = write_main_data_csv(full_data,"data\\data.csv") {
[INFO] [stdout]    |               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_path`
[INFO] [stdout]   --> src/savedata_manager.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     if let Ok(data_path) = write_main_data_csv(full_data,"data\\data.csv") {
[INFO] [stdout]    |               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             _ => "".into(),
[INFO] [stdout]     |             ^ unreachable pattern
[INFO] [stdout]     |
[INFO] [stdout] note: these patterns collectively make the last one unreachable
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 90  | ...   FullDataEnum::Title => self.title.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 91  | ...   FullDataEnum::DifName => self.version.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 92  | ...   FullDataEnum::MapID => self.beatmap_id.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 93  | ...   FullDataEnum::Stars => format!("{:.2}", self.stars_nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 94  | ...   FullDataEnum::BPM => self.bpm.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 95  | ...   FullDataEnum::Bursts => format!("{:.2}", self.bursts),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 96  | ...   FullDataEnum::Streams => format!("{:.2}", self.streams),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 97  | ...   FullDataEnum::DeathStreams => format!("{:.2}", self.deathstreams),
[INFO] [stdout]     |       -------------------------- matches some of the same values
[INFO] [stdout] 98  | ...   FullDataEnum::ShortJumps => format!("{:.2}", self.short_jumps),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 99  | ...   FullDataEnum::MidJumps => format!("{:.2}", self.mid_jumps),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 100 | ...   FullDataEnum::Longjumps => format!("{:.2}", self.long_jumps),
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 101 | ...   FullDataEnum::Doubles => format!("{:.2}", self.doubles),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 102 | ...   FullDataEnum::Triples => format!("{:.2}", self.triples),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 103 | ...   FullDataEnum::SI => format!("{:.2}", self.si),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 104 | ...   FullDataEnum::JI => format!("{:.2}", self.ji),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 105 | ...   FullDataEnum::FCDBI => format!("{:.2}", self.fcdbi),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 106 | ...   FullDataEnum::PlayableLength => self.playable_length.to_string(),
[INFO] [stdout]     |       ---------------------------- matches some of the same values
[INFO] [stdout] 107 | ...   FullDataEnum::CS => self.cs.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 108 | ...   FullDataEnum::AR => self.ar.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 109 | ...   FullDataEnum::OD => self.od.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 110 | ...   FullDataEnum::HP => self.hp.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 111 | ...   FullDataEnum::NM_99 => format!("{:.2}", self.nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 112 | ...   FullDataEnum::DT_99 => format!("{:.2}", self.dt),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 113 | ...   FullDataEnum::HR_99 => format!("{:.2}", self.hr),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 114 | ...   FullDataEnum::DT_Stars => format!("{:.2}", self.stars_dt),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 115 | ...   FullDataEnum::HR_Stars => format!("{:.2}", self.stars_hr),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 116 | ...   FullDataEnum::DT_BPM =>((self.bpm as f32 * 1.5).ceil() as i32).to_string(),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 117 | ...   FullDataEnum::DT_AR => apply_dt_to_ar(self.ar).to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 118 | ...   FullDataEnum::HR_AR => format!("{:.2}", (self.ar * 1.4).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 119 | ...   FullDataEnum::HR_CS => format!("{:.2}", (self.cs * 1.3).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 120 | ...   FullDataEnum::Quads => format!("{:.2}", self.quads),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 121 | ...   FullDataEnum::MapSetID => self.beatmap_set_id.to_string(),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 122 | ...   //0.9.1
[INFO] [stdout] 123 | ...   FullDataEnum::LongestStream => self.longest_stream.to_string(),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 124 | ...   FullDataEnum::Streams100 => self.streams100.to_string(),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 125 | ...   FullDataEnum::AvgJumpsDistance => self.avg_jump_distance.to_string(),
[INFO] [stdout]     |       ------------------------------ matches some of the same values
[INFO] [stdout] 126 | ...   FullDataEnum::AvgJumpsSpeed => format!("{:.2}", self.avg_jump_speed),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 127 | ...   //0.9.2
[INFO] [stdout] 128 | ...   FullDataEnum::Creator => self.creator.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 129 | ...   FullDataEnum::OsuWebLink => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"https://osu.ppy.sh/b/{}\")", self.beatmap_id)} else {...
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 130 | ...   FullDataEnum::OsuDirect => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"osu://b/{}\")", self.beatmap_id)} else { "".into()},
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 131 | ...   FullDataEnum::MD5 => self.md5.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 132 | ...   
[INFO] [stdout] 133 | ...   _ => "".into(),
[INFO] [stdout]     |       ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             _ => "".into(),
[INFO] [stdout]     |             ^ unreachable pattern
[INFO] [stdout]     |
[INFO] [stdout] note: these patterns collectively make the last one unreachable
[INFO] [stdout]    --> src/full_data_struct.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 90  | ...   FullDataEnum::Title => self.title.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 91  | ...   FullDataEnum::DifName => self.version.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 92  | ...   FullDataEnum::MapID => self.beatmap_id.to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 93  | ...   FullDataEnum::Stars => format!("{:.2}", self.stars_nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 94  | ...   FullDataEnum::BPM => self.bpm.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 95  | ...   FullDataEnum::Bursts => format!("{:.2}", self.bursts),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 96  | ...   FullDataEnum::Streams => format!("{:.2}", self.streams),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 97  | ...   FullDataEnum::DeathStreams => format!("{:.2}", self.deathstreams),
[INFO] [stdout]     |       -------------------------- matches some of the same values
[INFO] [stdout] 98  | ...   FullDataEnum::ShortJumps => format!("{:.2}", self.short_jumps),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 99  | ...   FullDataEnum::MidJumps => format!("{:.2}", self.mid_jumps),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 100 | ...   FullDataEnum::Longjumps => format!("{:.2}", self.long_jumps),
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 101 | ...   FullDataEnum::Doubles => format!("{:.2}", self.doubles),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 102 | ...   FullDataEnum::Triples => format!("{:.2}", self.triples),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 103 | ...   FullDataEnum::SI => format!("{:.2}", self.si),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 104 | ...   FullDataEnum::JI => format!("{:.2}", self.ji),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 105 | ...   FullDataEnum::FCDBI => format!("{:.2}", self.fcdbi),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 106 | ...   FullDataEnum::PlayableLength => self.playable_length.to_string(),
[INFO] [stdout]     |       ---------------------------- matches some of the same values
[INFO] [stdout] 107 | ...   FullDataEnum::CS => self.cs.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 108 | ...   FullDataEnum::AR => self.ar.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 109 | ...   FullDataEnum::OD => self.od.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 110 | ...   FullDataEnum::HP => self.hp.to_string(),
[INFO] [stdout]     |       ---------------- matches some of the same values
[INFO] [stdout] 111 | ...   FullDataEnum::NM_99 => format!("{:.2}", self.nm),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 112 | ...   FullDataEnum::DT_99 => format!("{:.2}", self.dt),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 113 | ...   FullDataEnum::HR_99 => format!("{:.2}", self.hr),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 114 | ...   FullDataEnum::DT_Stars => format!("{:.2}", self.stars_dt),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 115 | ...   FullDataEnum::HR_Stars => format!("{:.2}", self.stars_hr),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 116 | ...   FullDataEnum::DT_BPM =>((self.bpm as f32 * 1.5).ceil() as i32).to_string(),
[INFO] [stdout]     |       -------------------- matches some of the same values
[INFO] [stdout] 117 | ...   FullDataEnum::DT_AR => apply_dt_to_ar(self.ar).to_string(),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 118 | ...   FullDataEnum::HR_AR => format!("{:.2}", (self.ar * 1.4).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 119 | ...   FullDataEnum::HR_CS => format!("{:.2}", (self.cs * 1.3).min(10.0)),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 120 | ...   FullDataEnum::Quads => format!("{:.2}", self.quads),
[INFO] [stdout]     |       ------------------- matches some of the same values
[INFO] [stdout] 121 | ...   FullDataEnum::MapSetID => self.beatmap_set_id.to_string(),
[INFO] [stdout]     |       ---------------------- matches some of the same values
[INFO] [stdout] 122 | ...   //0.9.1
[INFO] [stdout] 123 | ...   FullDataEnum::LongestStream => self.longest_stream.to_string(),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 124 | ...   FullDataEnum::Streams100 => self.streams100.to_string(),
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 125 | ...   FullDataEnum::AvgJumpsDistance => self.avg_jump_distance.to_string(),
[INFO] [stdout]     |       ------------------------------ matches some of the same values
[INFO] [stdout] 126 | ...   FullDataEnum::AvgJumpsSpeed => format!("{:.2}", self.avg_jump_speed),
[INFO] [stdout]     |       --------------------------- matches some of the same values
[INFO] [stdout] 127 | ...   //0.9.2
[INFO] [stdout] 128 | ...   FullDataEnum::Creator => self.creator.to_string(),
[INFO] [stdout]     |       --------------------- matches some of the same values
[INFO] [stdout] 129 | ...   FullDataEnum::OsuWebLink => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"https://osu.ppy.sh/b/{}\")", self.beatmap_id)} else {...
[INFO] [stdout]     |       ------------------------ matches some of the same values
[INFO] [stdout] 130 | ...   FullDataEnum::OsuDirect => if self.beatmap_id.len()>1 {format!("=HYPERLINK(\"osu://b/{}\")", self.beatmap_id)} else { "".into()},
[INFO] [stdout]     |       ----------------------- matches some of the same values
[INFO] [stdout] 131 | ...   FullDataEnum::MD5 => self.md5.to_string(),
[INFO] [stdout]     |       ----------------- matches some of the same values
[INFO] [stdout] 132 | ...   
[INFO] [stdout] 133 | ...   _ => "".into(),
[INFO] [stdout]     |       ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_dt_to_ar` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn apply_dt_to_ar(original_ar: f32) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_dt_to_ar` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn apply_dt_to_ar(original_ar: f32) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_serde_to_csv` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn write_serde_to_csv(data: &[FullData]) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_serde_to_csv` is never used
[INFO] [stdout]   --> src/savedata_manager.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn write_serde_to_csv(data: &[FullData]) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.86s
[INFO] running `Command { std: "docker" "inspect" "044347cda44c560095bfc46e6ffa7b09f0b970016527c6fce23a797371fc6966", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "044347cda44c560095bfc46e6ffa7b09f0b970016527c6fce23a797371fc6966", kill_on_drop: false }`
[INFO] [stdout] 044347cda44c560095bfc46e6ffa7b09f0b970016527c6fce23a797371fc6966
