[INFO] cloning repository https://github.com/MrMisc/Outbreak_CIC-Model [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MrMisc/Outbreak_CIC-Model" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrMisc%2FOutbreak_CIC-Model", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrMisc%2FOutbreak_CIC-Model'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 62662322f9c85a5c7d06b90b3dc4a76145537dcf [INFO] checking MrMisc/Outbreak_CIC-Model against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrMisc%2FOutbreak_CIC-Model" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 84% (508/603) Updating files: 85% (513/603) Updating files: 86% (519/603) Updating files: 87% (525/603) Updating files: 88% (531/603) Updating files: 89% (537/603) Updating files: 90% (543/603) Updating files: 91% (549/603) Updating files: 92% (555/603) Updating files: 92% (559/603) Updating files: 93% (561/603) Updating files: 94% (567/603) Updating files: 95% (573/603) Updating files: 96% (579/603) Updating files: 97% (585/603) Updating files: 98% (591/603) Updating files: 99% (597/603) Updating files: 100% (603/603) Updating files: 100% (603/603), done. [INFO] validating manifest of git repo https://github.com/MrMisc/Outbreak_CIC-Model on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/MrMisc/Outbreak_CIC-Model [INFO] finished tweaking git repo https://github.com/MrMisc/Outbreak_CIC-Model [INFO] tweaked toml for git repo https://github.com/MrMisc/Outbreak_CIC-Model written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/MrMisc/Outbreak_CIC-Model 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5819d2c8cc749aa2ac585e4926a9bba7c91292db5f4481bafa309655e14796b5 [INFO] running `Command { std: "docker" "start" "-a" "5819d2c8cc749aa2ac585e4926a9bba7c91292db5f4481bafa309655e14796b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5819d2c8cc749aa2ac585e4926a9bba7c91292db5f4481bafa309655e14796b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5819d2c8cc749aa2ac585e4926a9bba7c91292db5f4481bafa309655e14796b5", kill_on_drop: false }` [INFO] [stdout] 5819d2c8cc749aa2ac585e4926a9bba7c91292db5f4481bafa309655e14796b5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2a002ec20dc122e15c16330ac3b6a05f7065aaba838d484fdfa44e7092d7a41e [INFO] running `Command { std: "docker" "start" "-a" "2a002ec20dc122e15c16330ac3b6a05f7065aaba838d484fdfa44e7092d7a41e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.69 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling memoffset v0.9.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling crossbeam-epoch v0.9.15 [INFO] [stderr] Checking bytemuck v1.14.0 [INFO] [stderr] Compiling paste v1.0.14 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking safe_arch v0.7.1 [INFO] [stderr] Compiling matrixmultiply v0.3.8 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling serde v1.0.189 [INFO] [stderr] Checking wide v0.7.13 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Compiling syn v2.0.38 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling rayon-core v1.12.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking crossbeam-deque v0.8.3 [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking rayon v1.8.0 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking num-complex v0.4.4 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Checking rand_distr v0.4.3 [INFO] [stderr] Checking simba v0.6.0 [INFO] [stderr] Compiling serde_derive v1.0.189 [INFO] [stderr] Compiling nalgebra-macros v0.1.0 [INFO] [stderr] Checking nalgebra v0.29.0 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking serde_json v1.0.107 [INFO] [stderr] Checking statrs v0.16.0 [INFO] [stderr] Checking Outbreak_CIC v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Standard` [INFO] [stdout] --> src/main.rs:4:41 [INFO] [stdout] | [INFO] [stdout] 4 | use rand::distributions::{Distribution, Standard}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `StudentsT`, `Triangular`, `Weibull` [INFO] [stdout] --> src/main.rs:6:45 [INFO] [stdout] | [INFO] [stdout] 6 | use statrs::distribution::{Normal, Poisson, StudentsT, Triangular, Weibull,Gamma}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `io`, `process` [INFO] [stdout] --> src/main.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | use std::{fs, io, process}; [INFO] [stdout] | ^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Zone_3D` should have an upper camel case name [INFO] [stdout] --> src/main.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Zone_3D{ [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `Zone3d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Segment_3D` should have an upper camel case name [INFO] [stdout] --> src/main.rs:126:12 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct Segment_3D{ [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `Segment3d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:344:56 [INFO] [stdout] | [INFO] [stdout] 344 | ... while start_index > 0 && radialise(((internal_index - start_index) as f64/(step_size as f64) * PI), (((internal_index - start_index... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 344 - while start_index > 0 && radialise(((internal_index - start_index) as f64/(step_size as f64) * PI), (((internal_index - start_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] 344 + while start_index > 0 && radialise((internal_index - start_index) as f64/(step_size as f64) * PI, (((internal_index - start_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:348:62 [INFO] [stdout] | [INFO] [stdout] 348 | ... while end_index < step_size && radialise(((end_index -internal_index) as f64/(step_size as f64) * PI), (((end_index -internal_index... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 348 - while end_index < step_size && radialise(((end_index -internal_index) as f64/(step_size as f64) * PI), (((end_index -internal_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] 348 + while end_index < step_size && radialise((end_index -internal_index) as f64/(step_size as f64) * PI, (((end_index -internal_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `host` should have an upper camel case name [INFO] [stdout] --> src/main.rs:454:12 [INFO] [stdout] | [INFO] [stdout] 454 | pub struct host{ [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `Host` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:1167:20 [INFO] [stdout] | [INFO] [stdout] 1167 | if (x.contaminated){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1167 - if (x.contaminated){ [INFO] [stdout] 1167 + if x.contaminated { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1188:57 [INFO] [stdout] | [INFO] [stdout] 1188 | ...ntact_rules:bool = (HOSTTOHOST_CONTACT_SPREAD || !HOSTTOHOST_CONTACT_SPREAD && !(inf.motile == 0 && x.motile ==0)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1188 - let hosttohost_contact_rules:bool = (HOSTTOHOST_CONTACT_SPREAD || !HOSTTOHOST_CONTACT_SPREAD && !(inf.motile == 0 && x.motile ==0)); [INFO] [stdout] 1188 + let hosttohost_contact_rules:bool = HOSTTOHOST_CONTACT_SPREAD || !HOSTTOHOST_CONTACT_SPREAD && !(inf.motile == 0 && x.motile ==0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1189:56 [INFO] [stdout] | [INFO] [stdout] 1189 | ...ntact_rules:bool = (HOSTTOEGG_CONTACT_SPREAD || (!HOSTTOEGG_CONTACT_SPREAD && !(inf.motile == 0 && x.motile == 1))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1189 - let hosttoegg_contact_rules:bool = (HOSTTOEGG_CONTACT_SPREAD || (!HOSTTOEGG_CONTACT_SPREAD && !(inf.motile == 0 && x.motile == 1))); [INFO] [stdout] 1189 + let hosttoegg_contact_rules:bool = HOSTTOEGG_CONTACT_SPREAD || (!HOSTTOEGG_CONTACT_SPREAD && !(inf.motile == 0 && x.motile == 1)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1190:59 [INFO] [stdout] | [INFO] [stdout] 1190 | ...act_rules:bool = (HOSTTOFAECES_CONTACT_SPREAD || !HOSTTOFAECES_CONTACT_SPREAD &&!(inf.motile == 0 && x.motile == 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1190 - let hosttofaeces_contact_rules:bool = (HOSTTOFAECES_CONTACT_SPREAD || !HOSTTOFAECES_CONTACT_SPREAD &&!(inf.motile == 0 && x.motile == 2)); [INFO] [stdout] 1190 + let hosttofaeces_contact_rules:bool = HOSTTOFAECES_CONTACT_SPREAD || !HOSTTOFAECES_CONTACT_SPREAD &&!(inf.motile == 0 && x.motile == 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1191:56 [INFO] [stdout] | [INFO] [stdout] 1191 | ...ontact_rules:bool = (EGGTOHOST_CONTACT_SPREAD || !EGGTOHOST_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 0)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1191 - let eggtohost_contact_rules:bool = (EGGTOHOST_CONTACT_SPREAD || !EGGTOHOST_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 0)); [INFO] [stdout] 1191 + let eggtohost_contact_rules:bool = EGGTOHOST_CONTACT_SPREAD || !EGGTOHOST_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1192:59 [INFO] [stdout] | [INFO] [stdout] 1192 | ...act_rules:bool = (FAECESTOHOST_CONTACT_SPREAD || !FAECESTOHOST_CONTACT_SPREAD &&!(inf.motile == 2 && x.motile == 0)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1192 - let faecestohost_contact_rules:bool = (FAECESTOHOST_CONTACT_SPREAD || !FAECESTOHOST_CONTACT_SPREAD &&!(inf.motile == 2 && x.motile == 0)); [INFO] [stdout] 1192 + let faecestohost_contact_rules:bool = FAECESTOHOST_CONTACT_SPREAD || !FAECESTOHOST_CONTACT_SPREAD &&!(inf.motile == 2 && x.motile == 0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1193:58 [INFO] [stdout] | [INFO] [stdout] 1193 | ...act_rules:bool = (EGGTOFAECES_CONTACT_SPREAD || !EGGTOFAECES_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1193 - let eggtofaeces_contact_rules:bool = (EGGTOFAECES_CONTACT_SPREAD || !EGGTOFAECES_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 2)); [INFO] [stdout] 1193 + let eggtofaeces_contact_rules:bool = EGGTOFAECES_CONTACT_SPREAD || !EGGTOFAECES_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1194:58 [INFO] [stdout] | [INFO] [stdout] 1194 | ...act_rules:bool = (FAECESTOEGG_CONTACT_SPREAD || !FAECESTOEGG_CONTACT_SPREAD && !(inf.motile == 2 && x.motile == 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1194 - let faecestoegg_contact_rules:bool = (FAECESTOEGG_CONTACT_SPREAD || !FAECESTOEGG_CONTACT_SPREAD && !(inf.motile == 2 && x.motile == 1)); [INFO] [stdout] 1194 + let faecestoegg_contact_rules:bool = FAECESTOEGG_CONTACT_SPREAD || !FAECESTOEGG_CONTACT_SPREAD && !(inf.motile == 2 && x.motile == 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Standard` [INFO] [stdout] --> src/main.rs:4:41 [INFO] [stdout] | [INFO] [stdout] 4 | use rand::distributions::{Distribution, Standard}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `StudentsT`, `Triangular`, `Weibull` [INFO] [stdout] --> src/main.rs:6:45 [INFO] [stdout] | [INFO] [stdout] 6 | use statrs::distribution::{Normal, Poisson, StudentsT, Triangular, Weibull,Gamma}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `io`, `process` [INFO] [stdout] --> src/main.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | use std::{fs, io, process}; [INFO] [stdout] | ^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Zone_3D` should have an upper camel case name [INFO] [stdout] --> src/main.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Zone_3D{ [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `Zone3d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Segment_3D` should have an upper camel case name [INFO] [stdout] --> src/main.rs:126:12 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct Segment_3D{ [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `Segment3d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:344:56 [INFO] [stdout] | [INFO] [stdout] 344 | ... while start_index > 0 && radialise(((internal_index - start_index) as f64/(step_size as f64) * PI), (((internal_index - start_index... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 344 - while start_index > 0 && radialise(((internal_index - start_index) as f64/(step_size as f64) * PI), (((internal_index - start_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] 344 + while start_index > 0 && radialise((internal_index - start_index) as f64/(step_size as f64) * PI, (((internal_index - start_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:348:62 [INFO] [stdout] | [INFO] [stdout] 348 | ... while end_index < step_size && radialise(((end_index -internal_index) as f64/(step_size as f64) * PI), (((end_index -internal_index... [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 348 - while end_index < step_size && radialise(((end_index -internal_index) as f64/(step_size as f64) * PI), (((end_index -internal_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] 348 + while end_index < step_size && radialise((end_index -internal_index) as f64/(step_size as f64) * PI, (((end_index -internal_index) as u64)*self.segments[0].range_x) as f64, MISHAP_RADIUS) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `host` should have an upper camel case name [INFO] [stdout] --> src/main.rs:454:12 [INFO] [stdout] | [INFO] [stdout] 454 | pub struct host{ [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case: `Host` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:1167:20 [INFO] [stdout] | [INFO] [stdout] 1167 | if (x.contaminated){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1167 - if (x.contaminated){ [INFO] [stdout] 1167 + if x.contaminated { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1188:57 [INFO] [stdout] | [INFO] [stdout] 1188 | ...ntact_rules:bool = (HOSTTOHOST_CONTACT_SPREAD || !HOSTTOHOST_CONTACT_SPREAD && !(inf.motile == 0 && x.motile ==0)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1188 - let hosttohost_contact_rules:bool = (HOSTTOHOST_CONTACT_SPREAD || !HOSTTOHOST_CONTACT_SPREAD && !(inf.motile == 0 && x.motile ==0)); [INFO] [stdout] 1188 + let hosttohost_contact_rules:bool = HOSTTOHOST_CONTACT_SPREAD || !HOSTTOHOST_CONTACT_SPREAD && !(inf.motile == 0 && x.motile ==0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1189:56 [INFO] [stdout] | [INFO] [stdout] 1189 | ...ntact_rules:bool = (HOSTTOEGG_CONTACT_SPREAD || (!HOSTTOEGG_CONTACT_SPREAD && !(inf.motile == 0 && x.motile == 1))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1189 - let hosttoegg_contact_rules:bool = (HOSTTOEGG_CONTACT_SPREAD || (!HOSTTOEGG_CONTACT_SPREAD && !(inf.motile == 0 && x.motile == 1))); [INFO] [stdout] 1189 + let hosttoegg_contact_rules:bool = HOSTTOEGG_CONTACT_SPREAD || (!HOSTTOEGG_CONTACT_SPREAD && !(inf.motile == 0 && x.motile == 1)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1190:59 [INFO] [stdout] | [INFO] [stdout] 1190 | ...act_rules:bool = (HOSTTOFAECES_CONTACT_SPREAD || !HOSTTOFAECES_CONTACT_SPREAD &&!(inf.motile == 0 && x.motile == 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1190 - let hosttofaeces_contact_rules:bool = (HOSTTOFAECES_CONTACT_SPREAD || !HOSTTOFAECES_CONTACT_SPREAD &&!(inf.motile == 0 && x.motile == 2)); [INFO] [stdout] 1190 + let hosttofaeces_contact_rules:bool = HOSTTOFAECES_CONTACT_SPREAD || !HOSTTOFAECES_CONTACT_SPREAD &&!(inf.motile == 0 && x.motile == 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1191:56 [INFO] [stdout] | [INFO] [stdout] 1191 | ...ontact_rules:bool = (EGGTOHOST_CONTACT_SPREAD || !EGGTOHOST_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 0)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1191 - let eggtohost_contact_rules:bool = (EGGTOHOST_CONTACT_SPREAD || !EGGTOHOST_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 0)); [INFO] [stdout] 1191 + let eggtohost_contact_rules:bool = EGGTOHOST_CONTACT_SPREAD || !EGGTOHOST_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1192:59 [INFO] [stdout] | [INFO] [stdout] 1192 | ...act_rules:bool = (FAECESTOHOST_CONTACT_SPREAD || !FAECESTOHOST_CONTACT_SPREAD &&!(inf.motile == 2 && x.motile == 0)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1192 - let faecestohost_contact_rules:bool = (FAECESTOHOST_CONTACT_SPREAD || !FAECESTOHOST_CONTACT_SPREAD &&!(inf.motile == 2 && x.motile == 0)); [INFO] [stdout] 1192 + let faecestohost_contact_rules:bool = FAECESTOHOST_CONTACT_SPREAD || !FAECESTOHOST_CONTACT_SPREAD &&!(inf.motile == 2 && x.motile == 0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1193:58 [INFO] [stdout] | [INFO] [stdout] 1193 | ...act_rules:bool = (EGGTOFAECES_CONTACT_SPREAD || !EGGTOFAECES_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 2)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1193 - let eggtofaeces_contact_rules:bool = (EGGTOFAECES_CONTACT_SPREAD || !EGGTOFAECES_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 2)); [INFO] [stdout] 1193 + let eggtofaeces_contact_rules:bool = EGGTOFAECES_CONTACT_SPREAD || !EGGTOFAECES_CONTACT_SPREAD && !(inf.motile == 1 && x.motile == 2); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1194:58 [INFO] [stdout] | [INFO] [stdout] 1194 | ...act_rules:bool = (FAECESTOEGG_CONTACT_SPREAD || !FAECESTOEGG_CONTACT_SPREAD && !(inf.motile == 2 && x.motile == 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1194 - let faecestoegg_contact_rules:bool = (FAECESTOEGG_CONTACT_SPREAD || !FAECESTOEGG_CONTACT_SPREAD && !(inf.motile == 2 && x.motile == 1)); [INFO] [stdout] 1194 + let faecestoegg_contact_rules:bool = FAECESTOEGG_CONTACT_SPREAD || !FAECESTOEGG_CONTACT_SPREAD && !(inf.motile == 2 && x.motile == 1); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::prelude::SliceRandom` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::prelude::SliceRandom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `thing` is never read [INFO] [stdout] --> src/main.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut thing: f64 = 0.0; [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 `thing` is never read [INFO] [stdout] --> src/main.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | let mut thing: f64 = 0.0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:140:56 [INFO] [stdout] | [INFO] [stdout] 140 | fn generate(&mut self,infected:bool,colonized:bool,mut n:u32,mut hosts:&mut Vec){ [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:140:66 [INFO] [stdout] | [INFO] [stdout] 140 | fn generate(&mut self,infected:bool,colonized:bool,mut n:u32,mut hosts:&mut Vec){ [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:192:44 [INFO] [stdout] | [INFO] [stdout] 192 | self.segments.iter_mut().for_each(|mut seg| { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vector_length` [INFO] [stdout] --> src/main.rs:250:13 [INFO] [stdout] | [INFO] [stdout] 250 | let vector_length:usize = vector.len(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vector_length` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `no_infected` [INFO] [stdout] --> src/main.rs:252:13 [INFO] [stdout] | [INFO] [stdout] 252 | let no_infected : usize = vector.iter().filter(|&x| { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_no_infected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `no_not_infected` [INFO] [stdout] --> src/main.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | let no_not_infected : usize = vector.iter().filter(|&x| { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_no_not_infected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_spacing` is never read [INFO] [stdout] --> src/main.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | let mut index_spacing:usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `angle_spacing` is never read [INFO] [stdout] --> src/main.rs:297:21 [INFO] [stdout] | [INFO] [stdout] 297 | let mut angle_spacing:usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `minima` [INFO] [stdout] --> src/main.rs:330:25 [INFO] [stdout] | [INFO] [stdout] 330 | let mut minima:usize = idx - idx%step_size; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_minima` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `maxima` is never read [INFO] [stdout] --> src/main.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | if maxima>vector.len(){maxima = vector.len();} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indices_to_infect` [INFO] [stdout] --> src/main.rs:370:17 [INFO] [stdout] | [INFO] [stdout] 370 | let mut indices_to_infect: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indices_to_infect` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `fail` is never read [INFO] [stdout] --> src/main.rs:381:21 [INFO] [stdout] | [INFO] [stdout] 381 | let mut fail:bool = true; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:314:58 [INFO] [stdout] | [INFO] [stdout] 314 | vector.iter_mut().enumerate().for_each(|(idx,mut host)| { [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:330:21 [INFO] [stdout] | [INFO] [stdout] 330 | let mut minima:usize = idx - idx%step_size; [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:366:13 [INFO] [stdout] | [INFO] [stdout] 366 | let mut chunk_iter = vector.chunks_exact_mut(step_size); [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:370:13 [INFO] [stdout] | [INFO] [stdout] 370 | let mut indices_to_infect: Vec = 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/main.rs:418:21 [INFO] [stdout] | [INFO] [stdout] 418 | let mut eviscerator:&mut Eviscerator = evs[j%step_size]; [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:619:37 [INFO] [stdout] | [INFO] [stdout] 619 | vector.iter_mut().for_each(|mut x| { [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:618:16 [INFO] [stdout] | [INFO] [stdout] 618 | fn recover(mut vector:&mut Vec){ [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:637:41 [INFO] [stdout] | [INFO] [stdout] 637 | vector.iter_mut().for_each(|mut h|{ [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:650:41 [INFO] [stdout] | [INFO] [stdout] 650 | vector.iter_mut().for_each(|mut h|{ [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:634:13 [INFO] [stdout] | [INFO] [stdout] 634 | fn feed(mut vector:&mut Vec, origin_x:u64,origin_y:u64,origin_z:u64, zone:usize,time:usize){ [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/main.rs:731:17 [INFO] [stdout] | [INFO] [stdout] 731 | let mut output:Vec = Vec::new(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std_y` [INFO] [stdout] --> src/main.rs:777:33 [INFO] [stdout] | [INFO] [stdout] 777 | ... let std_y:f64 = ((x.range_y as f64)/SPORADICITY) as f64; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_std_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:741:45 [INFO] [stdout] | [INFO] [stdout] 741 | vector.iter_mut().for_each(|mut x| { [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:730:18 [INFO] [stdout] | [INFO] [stdout] 730 | fn transport(mut vector:&mut Vec,space:&mut Vec, influx: bool){ //Also to change ;size if you change number of zones [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:731:13 [INFO] [stdout] | [INFO] [stdout] 731 | let mut output:Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `origin_z` [INFO] [stdout] --> src/main.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | let origin_z = self.origin_z.clone(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_origin_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:882:13 [INFO] [stdout] | [INFO] [stdout] 882 | ... let mut vecc_into: Vec = vector.clone().into_par_iter().filter(|x| x.motile==0 && x.zone>()... [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_x` is never read [INFO] [stdout] --> src/main.rs:954:21 [INFO] [stdout] | [INFO] [stdout] 954 | let mut new_x:f64 = self.x.clone() as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `new_z` is assigned to, but never used [INFO] [stdout] --> src/main.rs:956:21 [INFO] [stdout] | [INFO] [stdout] 956 | let mut new_z:f64 = self.z.clone() as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_new_z` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:975:21 [INFO] [stdout] | [INFO] [stdout] 975 | ... new_z = limits::min(limits::max(self.origin_z as f64,self.z+mult[2]*normal(MEAN_MOVE_Z,STD_MOVE_Z,MAX_MOVE_Z)),self.origin_z as f64... [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:977:21 [INFO] [stdout] | [INFO] [stdout] 977 | new_z = limits::min(self.z+PERCH_HEIGHT, self.origin_z as f64+self.range_z as f64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:980:21 [INFO] [stdout] | [INFO] [stdout] 980 | new_z = self.origin_z as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:998:21 [INFO] [stdout] | [INFO] [stdout] 998 | ... new_z = limits::min(limits::max(0.0,self.z+mult[2]*normal(MEAN_MOVE_Z,STD_MOVE_Z,MAX_MOVE_Z)),GRIDSIZE[self.zone as usize][2]); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:1000:21 [INFO] [stdout] | [INFO] [stdout] 1000 | new_z = limits::min(self.z+PERCH_HEIGHT, self.origin_z as f64+self.range_z as f64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:1003:21 [INFO] [stdout] | [INFO] [stdout] 1003 | new_z = self.origin_z as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:1095:26 [INFO] [stdout] | [INFO] [stdout] 1095 | .filter_map(|mut x| { [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:1166:26 [INFO] [stdout] | [INFO] [stdout] 1166 | .filter_map(|mut x| { [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:1249:64 [INFO] [stdout] | [INFO] [stdout] 1249 | let vec1:Vec = inventory.into_iter().filter_map(|mut x| { [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:1267:64 [INFO] [stdout] | [INFO] [stdout] 1267 | let vec1:Vec = inventory.into_iter().filter_map(|mut x| { [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:1290:64 [INFO] [stdout] | [INFO] [stdout] 1290 | let vec1:Vec = inventory.into_iter().filter_map(|mut x| { [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:1336:13 [INFO] [stdout] | [INFO] [stdout] 1336 | let mut inventory:Vec = inventory.clone().into_iter().filter(|x|{ [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:1375:44 [INFO] [stdout] | [INFO] [stdout] 1375 | zone.segments.iter_mut().for_each(|mut x| { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `collect` is never read [INFO] [stdout] --> src/main.rs:1491:17 [INFO] [stdout] | [INFO] [stdout] 1491 | let mut collect: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `collection_zone_no` [INFO] [stdout] --> src/main.rs:1584:13 [INFO] [stdout] | [INFO] [stdout] 1584 | let collection_zone_no:u8 = no_of_zones as u8+1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collection_zone_no` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:1528:47 [INFO] [stdout] | [INFO] [stdout] 1528 | eviscerators.iter_mut().for_each(|mut ev|{ [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:1482:9 [INFO] [stdout] | [INFO] [stdout] 1482 | let mut file = OpenOptions::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:1587:51 [INFO] [stdout] | [INFO] [stdout] 1587 | ... let [mut perc_cont,mut perc,mut perc2,mut total_hosts,mut total_hosts2,mut perc3,mut perc4,mut total_hosts4] = host::zone_report(&h... [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:1587:67 [INFO] [stdout] | [INFO] [stdout] 1587 | ... let [mut perc_cont,mut perc,mut perc2,mut total_hosts,mut total_hosts2,mut perc3,mut perc4,mut total_hosts4] = host::zone_report(&h... [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:1587:104 [INFO] [stdout] | [INFO] [stdout] 1587 | ... let [mut perc_cont,mut perc,mut perc2,mut total_hosts,mut total_hosts2,mut perc3,mut perc4,mut total_hosts4] = host::zone_report(&h... [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `eviscerate` is never read [INFO] [stdout] --> src/main.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Zone_3D{ [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 122 | eviscerate:bool [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Zone_3D` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `eviscerated` is never read [INFO] [stdout] --> src/main.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct Segment_3D{ [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 135 | eviscerated:bool [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Segment_3D` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate` is never used [INFO] [stdout] --> src/main.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 139 | impl Segment_3D{ [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 140 | fn generate(&mut self,infected:bool,colonized:bool,mut n:u32,mut hosts:&mut Vec){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `generate_full` and `modify` are never used [INFO] [stdout] --> src/main.rs:215:8 [INFO] [stdout] | [INFO] [stdout] 162 | impl Zone_3D{ [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 215 | fn generate_full(zone:usize,grid:[u64;3],step:[usize;3])->Zone_3D{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | fn modify(&mut self, start:[u64;3], end:[u64;3], range:[usize;3]){//range is synonymous with the stepsize in side STEP -> we are modi... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_TO_COLONIZE` is never used [INFO] [stdout] --> src/main.rs:496:7 [INFO] [stdout] | [INFO] [stdout] 496 | const TIME_TO_COLONIZE:[f64;2] = [5.0*24.0, 11.6*24.0]; //95% CI for generation time [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COLONIZE_TIME_MAX_OVERRIDE` is never used [INFO] [stdout] --> src/main.rs:497:7 [INFO] [stdout] | [INFO] [stdout] 497 | const COLONIZE_TIME_MAX_OVERRIDE:f64 = 26.0*24.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `infect`, `contaminate_multiple`, `collect`, `collect_and_replace`, and `report` are never used [INFO] [stdout] --> src/main.rs:688:8 [INFO] [stdout] | [INFO] [stdout] 617 | impl host{ [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 688 | fn infect(mut vector:Vec,loc_x:u64,loc_y:u64,loc_z:u64,zone:usize)->Vec{ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 714 | fn contaminate_multiple(mut vector:Vec,loc_x:u64,loc_y:u64,loc_z:u64,n:usize,zone:usize)->Vec{ //homogeneous application ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1247 | fn collect(inventory:Vec)->[Vec;2]{ //hosts and deposits potentially get collected [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1288 | fn collect_and_replace(inventory:Vec,zone:&mut Zone_3D)->[Vec;2]{ //same as collect but HOSTS GET REPLACED (with a Pois... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1317 | fn report(inventory:&Vec)->[f64;4]{ //simple function to quickly return the percentage of infected hosts [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ages` should have an upper case name [INFO] [stdout] --> src/main.rs:592:7 [INFO] [stdout] | [INFO] [stdout] 592 | const ages:[f64;2] = [0.01,0.9]; //Time hosts are expected spend in each region minimally [INFO] [stdout] | ^^^^ help: convert the identifier to upper case: `AGES` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `FinalZone` should have a snake case name [INFO] [stdout] --> src/main.rs:1534:17 [INFO] [stdout] | [INFO] [stdout] 1534 | let mut FinalZone:&mut Zone_3D = &mut zones[GRIDSIZE.len()-1]; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `final_zone` [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:1598:13 [INFO] [stdout] | [INFO] [stdout] 1598 | / wtr.write_record(&[ [INFO] [stdout] 1599 | | perc_cont.to_string(), [INFO] [stdout] 1600 | | total_hosts.to_string(), [INFO] [stdout] 1601 | | no_cont.to_string(), [INFO] [stdout] ... | [INFO] [stdout] 1613 | | format!("Zone {}", iter), [INFO] [stdout] 1614 | | ]); [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] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1598 | let _ = wtr.write_record(&[ [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 80 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::prelude::SliceRandom` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::prelude::SliceRandom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `thing` is never read [INFO] [stdout] --> src/main.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut thing: f64 = 0.0; [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 `thing` is never read [INFO] [stdout] --> src/main.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | let mut thing: f64 = 0.0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:140:56 [INFO] [stdout] | [INFO] [stdout] 140 | fn generate(&mut self,infected:bool,colonized:bool,mut n:u32,mut hosts:&mut Vec){ [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:140:66 [INFO] [stdout] | [INFO] [stdout] 140 | fn generate(&mut self,infected:bool,colonized:bool,mut n:u32,mut hosts:&mut Vec){ [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:192:44 [INFO] [stdout] | [INFO] [stdout] 192 | self.segments.iter_mut().for_each(|mut seg| { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vector_length` [INFO] [stdout] --> src/main.rs:250:13 [INFO] [stdout] | [INFO] [stdout] 250 | let vector_length:usize = vector.len(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vector_length` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `no_infected` [INFO] [stdout] --> src/main.rs:252:13 [INFO] [stdout] | [INFO] [stdout] 252 | let no_infected : usize = vector.iter().filter(|&x| { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_no_infected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `no_not_infected` [INFO] [stdout] --> src/main.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | let no_not_infected : usize = vector.iter().filter(|&x| { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_no_not_infected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_spacing` is never read [INFO] [stdout] --> src/main.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | let mut index_spacing:usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `angle_spacing` is never read [INFO] [stdout] --> src/main.rs:297:21 [INFO] [stdout] | [INFO] [stdout] 297 | let mut angle_spacing:usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `minima` [INFO] [stdout] --> src/main.rs:330:25 [INFO] [stdout] | [INFO] [stdout] 330 | let mut minima:usize = idx - idx%step_size; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_minima` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `maxima` is never read [INFO] [stdout] --> src/main.rs:333:40 [INFO] [stdout] | [INFO] [stdout] 333 | if maxima>vector.len(){maxima = vector.len();} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indices_to_infect` [INFO] [stdout] --> src/main.rs:370:17 [INFO] [stdout] | [INFO] [stdout] 370 | let mut indices_to_infect: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indices_to_infect` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `fail` is never read [INFO] [stdout] --> src/main.rs:381:21 [INFO] [stdout] | [INFO] [stdout] 381 | let mut fail:bool = true; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:314:58 [INFO] [stdout] | [INFO] [stdout] 314 | vector.iter_mut().enumerate().for_each(|(idx,mut host)| { [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:330:21 [INFO] [stdout] | [INFO] [stdout] 330 | let mut minima:usize = idx - idx%step_size; [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:366:13 [INFO] [stdout] | [INFO] [stdout] 366 | let mut chunk_iter = vector.chunks_exact_mut(step_size); [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:370:13 [INFO] [stdout] | [INFO] [stdout] 370 | let mut indices_to_infect: Vec = 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/main.rs:418:21 [INFO] [stdout] | [INFO] [stdout] 418 | let mut eviscerator:&mut Eviscerator = evs[j%step_size]; [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:619:37 [INFO] [stdout] | [INFO] [stdout] 619 | vector.iter_mut().for_each(|mut x| { [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:618:16 [INFO] [stdout] | [INFO] [stdout] 618 | fn recover(mut vector:&mut Vec){ [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:637:41 [INFO] [stdout] | [INFO] [stdout] 637 | vector.iter_mut().for_each(|mut h|{ [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:650:41 [INFO] [stdout] | [INFO] [stdout] 650 | vector.iter_mut().for_each(|mut h|{ [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:634:13 [INFO] [stdout] | [INFO] [stdout] 634 | fn feed(mut vector:&mut Vec, origin_x:u64,origin_y:u64,origin_z:u64, zone:usize,time:usize){ [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/main.rs:731:17 [INFO] [stdout] | [INFO] [stdout] 731 | let mut output:Vec = Vec::new(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std_y` [INFO] [stdout] --> src/main.rs:777:33 [INFO] [stdout] | [INFO] [stdout] 777 | ... let std_y:f64 = ((x.range_y as f64)/SPORADICITY) as f64; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_std_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:741:45 [INFO] [stdout] | [INFO] [stdout] 741 | vector.iter_mut().for_each(|mut x| { [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:730:18 [INFO] [stdout] | [INFO] [stdout] 730 | fn transport(mut vector:&mut Vec,space:&mut Vec, influx: bool){ //Also to change ;size if you change number of zones [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:731:13 [INFO] [stdout] | [INFO] [stdout] 731 | let mut output:Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `origin_z` [INFO] [stdout] --> src/main.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | let origin_z = self.origin_z.clone(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_origin_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:882:13 [INFO] [stdout] | [INFO] [stdout] 882 | ... let mut vecc_into: Vec = vector.clone().into_par_iter().filter(|x| x.motile==0 && x.zone>()... [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_x` is never read [INFO] [stdout] --> src/main.rs:954:21 [INFO] [stdout] | [INFO] [stdout] 954 | let mut new_x:f64 = self.x.clone() as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `new_z` is assigned to, but never used [INFO] [stdout] --> src/main.rs:956:21 [INFO] [stdout] | [INFO] [stdout] 956 | let mut new_z:f64 = self.z.clone() as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_new_z` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:975:21 [INFO] [stdout] | [INFO] [stdout] 975 | ... new_z = limits::min(limits::max(self.origin_z as f64,self.z+mult[2]*normal(MEAN_MOVE_Z,STD_MOVE_Z,MAX_MOVE_Z)),self.origin_z as f64... [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:977:21 [INFO] [stdout] | [INFO] [stdout] 977 | new_z = limits::min(self.z+PERCH_HEIGHT, self.origin_z as f64+self.range_z as f64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:980:21 [INFO] [stdout] | [INFO] [stdout] 980 | new_z = self.origin_z as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:998:21 [INFO] [stdout] | [INFO] [stdout] 998 | ... new_z = limits::min(limits::max(0.0,self.z+mult[2]*normal(MEAN_MOVE_Z,STD_MOVE_Z,MAX_MOVE_Z)),GRIDSIZE[self.zone as usize][2]); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:1000:21 [INFO] [stdout] | [INFO] [stdout] 1000 | new_z = limits::min(self.z+PERCH_HEIGHT, self.origin_z as f64+self.range_z as f64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_z` is never read [INFO] [stdout] --> src/main.rs:1003:21 [INFO] [stdout] | [INFO] [stdout] 1003 | new_z = self.origin_z as f64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:1095:26 [INFO] [stdout] | [INFO] [stdout] 1095 | .filter_map(|mut x| { [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:1166:26 [INFO] [stdout] | [INFO] [stdout] 1166 | .filter_map(|mut x| { [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:1249:64 [INFO] [stdout] | [INFO] [stdout] 1249 | let vec1:Vec = inventory.into_iter().filter_map(|mut x| { [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:1267:64 [INFO] [stdout] | [INFO] [stdout] 1267 | let vec1:Vec = inventory.into_iter().filter_map(|mut x| { [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:1290:64 [INFO] [stdout] | [INFO] [stdout] 1290 | let vec1:Vec = inventory.into_iter().filter_map(|mut x| { [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:1336:13 [INFO] [stdout] | [INFO] [stdout] 1336 | let mut inventory:Vec = inventory.clone().into_iter().filter(|x|{ [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:1375:44 [INFO] [stdout] | [INFO] [stdout] 1375 | zone.segments.iter_mut().for_each(|mut x| { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `collect` is never read [INFO] [stdout] --> src/main.rs:1491:17 [INFO] [stdout] | [INFO] [stdout] 1491 | let mut collect: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `collection_zone_no` [INFO] [stdout] --> src/main.rs:1584:13 [INFO] [stdout] | [INFO] [stdout] 1584 | let collection_zone_no:u8 = no_of_zones as u8+1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collection_zone_no` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:1528:47 [INFO] [stdout] | [INFO] [stdout] 1528 | eviscerators.iter_mut().for_each(|mut ev|{ [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:1482:9 [INFO] [stdout] | [INFO] [stdout] 1482 | let mut file = OpenOptions::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:1587:51 [INFO] [stdout] | [INFO] [stdout] 1587 | ... let [mut perc_cont,mut perc,mut perc2,mut total_hosts,mut total_hosts2,mut perc3,mut perc4,mut total_hosts4] = host::zone_report(&h... [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:1587:67 [INFO] [stdout] | [INFO] [stdout] 1587 | ... let [mut perc_cont,mut perc,mut perc2,mut total_hosts,mut total_hosts2,mut perc3,mut perc4,mut total_hosts4] = host::zone_report(&h... [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:1587:104 [INFO] [stdout] | [INFO] [stdout] 1587 | ... let [mut perc_cont,mut perc,mut perc2,mut total_hosts,mut total_hosts2,mut perc3,mut perc4,mut total_hosts4] = host::zone_report(&h... [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `eviscerate` is never read [INFO] [stdout] --> src/main.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Zone_3D{ [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 122 | eviscerate:bool [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Zone_3D` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `eviscerated` is never read [INFO] [stdout] --> src/main.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct Segment_3D{ [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 135 | eviscerated:bool [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Segment_3D` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate` is never used [INFO] [stdout] --> src/main.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 139 | impl Segment_3D{ [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 140 | fn generate(&mut self,infected:bool,colonized:bool,mut n:u32,mut hosts:&mut Vec){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `generate_full` and `modify` are never used [INFO] [stdout] --> src/main.rs:215:8 [INFO] [stdout] | [INFO] [stdout] 162 | impl Zone_3D{ [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 215 | fn generate_full(zone:usize,grid:[u64;3],step:[usize;3])->Zone_3D{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | fn modify(&mut self, start:[u64;3], end:[u64;3], range:[usize;3]){//range is synonymous with the stepsize in side STEP -> we are modi... [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_TO_COLONIZE` is never used [INFO] [stdout] --> src/main.rs:496:7 [INFO] [stdout] | [INFO] [stdout] 496 | const TIME_TO_COLONIZE:[f64;2] = [5.0*24.0, 11.6*24.0]; //95% CI for generation time [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COLONIZE_TIME_MAX_OVERRIDE` is never used [INFO] [stdout] --> src/main.rs:497:7 [INFO] [stdout] | [INFO] [stdout] 497 | const COLONIZE_TIME_MAX_OVERRIDE:f64 = 26.0*24.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `infect`, `contaminate_multiple`, `collect`, `collect_and_replace`, and `report` are never used [INFO] [stdout] --> src/main.rs:688:8 [INFO] [stdout] | [INFO] [stdout] 617 | impl host{ [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 688 | fn infect(mut vector:Vec,loc_x:u64,loc_y:u64,loc_z:u64,zone:usize)->Vec{ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 714 | fn contaminate_multiple(mut vector:Vec,loc_x:u64,loc_y:u64,loc_z:u64,n:usize,zone:usize)->Vec{ //homogeneous application ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1247 | fn collect(inventory:Vec)->[Vec;2]{ //hosts and deposits potentially get collected [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1288 | fn collect_and_replace(inventory:Vec,zone:&mut Zone_3D)->[Vec;2]{ //same as collect but HOSTS GET REPLACED (with a Pois... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1317 | fn report(inventory:&Vec)->[f64;4]{ //simple function to quickly return the percentage of infected hosts [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ages` should have an upper case name [INFO] [stdout] --> src/main.rs:592:7 [INFO] [stdout] | [INFO] [stdout] 592 | const ages:[f64;2] = [0.01,0.9]; //Time hosts are expected spend in each region minimally [INFO] [stdout] | ^^^^ help: convert the identifier to upper case: `AGES` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `FinalZone` should have a snake case name [INFO] [stdout] --> src/main.rs:1534:17 [INFO] [stdout] | [INFO] [stdout] 1534 | let mut FinalZone:&mut Zone_3D = &mut zones[GRIDSIZE.len()-1]; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `final_zone` [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:1598:13 [INFO] [stdout] | [INFO] [stdout] 1598 | / wtr.write_record(&[ [INFO] [stdout] 1599 | | perc_cont.to_string(), [INFO] [stdout] 1600 | | total_hosts.to_string(), [INFO] [stdout] 1601 | | no_cont.to_string(), [INFO] [stdout] ... | [INFO] [stdout] 1613 | | format!("Zone {}", iter), [INFO] [stdout] 1614 | | ]); [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] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1598 | let _ = wtr.write_record(&[ [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 80 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 47.71s [INFO] running `Command { std: "docker" "inspect" "2a002ec20dc122e15c16330ac3b6a05f7065aaba838d484fdfa44e7092d7a41e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2a002ec20dc122e15c16330ac3b6a05f7065aaba838d484fdfa44e7092d7a41e", kill_on_drop: false }` [INFO] [stdout] 2a002ec20dc122e15c16330ac3b6a05f7065aaba838d484fdfa44e7092d7a41e