[INFO] cloning repository https://github.com/jaydenwhite-us/GDLauncher [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jaydenwhite-us/GDLauncher" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjaydenwhite-us%2FGDLauncher", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjaydenwhite-us%2FGDLauncher'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4e5cbd8f63242a4469e16336ddcf399147e8ddec [INFO] linting jaydenwhite-us/GDLauncher against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjaydenwhite-us%2FGDLauncher" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-4-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/jaydenwhite-us/GDLauncher [INFO] finished tweaking git repo https://github.com/jaydenwhite-us/GDLauncher [INFO] tweaked toml for git repo https://github.com/jaydenwhite-us/GDLauncher written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jaydenwhite-us/GDLauncher on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jaydenwhite-us/GDLauncher 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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] | [INFO] [stderr] = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] afafc4c4f848481330c0ed80adb94021fd6617b9849c9c316ec1b764da7bc089 [INFO] running `Command { std: "docker" "start" "-a" "afafc4c4f848481330c0ed80adb94021fd6617b9849c9c316ec1b764da7bc089", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "afafc4c4f848481330c0ed80adb94021fd6617b9849c9c316ec1b764da7bc089", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "afafc4c4f848481330c0ed80adb94021fd6617b9849c9c316ec1b764da7bc089", kill_on_drop: false }` [INFO] [stdout] afafc4c4f848481330c0ed80adb94021fd6617b9849c9c316ec1b764da7bc089 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ae4b563d6d8f0add11960453d814783c03eb207bde42c619b164d0506f9d3a16 [INFO] running `Command { std: "docker" "start" "-a" "ae4b563d6d8f0add11960453d814783c03eb207bde42c619b164d0506f9d3a16", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] | [INFO] [stderr] = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Checking namt_preventative_collapse v0.1.0 (/opt/rustwide/workdir/namt_preventative_collapse) [INFO] [stdout] warning: value assigned to `i` is never read [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:370:13 [INFO] [stdout] | [INFO] [stdout] 370 | i += 1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:24:31 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn collapse_check(vector: &mut Vec, period: usize) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 24 - pub fn collapse_check(vector: &mut Vec, period: usize) -> Result<(), String> { [INFO] [stdout] 24 + pub fn collapse_check(vector: &mut [u128], period: usize) -> Result<(), String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | for x in 0..period { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 29 - for x in 0..period { [INFO] [stdout] 29 + for (x, ) in vector.iter().enumerate().take(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | values.push((vector[x], x.try_into().unwrap())); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `c` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | for c in period..vector.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 33 - for c in period..vector.len() { [INFO] [stdout] 33 + for (c, ) in vector.iter().enumerate().skip(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 34 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 34 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:50:18 [INFO] [stdout] | [INFO] [stdout] 50 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 50 - for x in 0..values.len() { [INFO] [stdout] 50 + for in &mut values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u128` which implements the `Copy` trait [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:55:26 [INFO] [stdout] | [INFO] [stdout] 55 | values[x] = (target.clone(), period - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 58 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 58 - for x in 0..values.len() { [INFO] [stdout] 58 + for in &values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:69:28 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn pair_exists(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 69 - pub fn pair_exists(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] 69 + pub fn pair_exists(values: &[(u128, usize)], target: u128) -> Result<(), String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:106:17 [INFO] [stdout] | [INFO] [stdout] 106 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 106 - vector: &mut Vec, [INFO] [stdout] 106 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:111:22 [INFO] [stdout] | [INFO] [stdout] 111 | for x in 0..c { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 111 - for x in 0..c { [INFO] [stdout] 111 + for (x, ) in vector.iter().enumerate().take(c) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:112:41 [INFO] [stdout] | [INFO] [stdout] 112 | values.push((vector[x], x.try_into().unwrap())); //have to fix this clone. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 114 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 114 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:124:13 [INFO] [stdout] | [INFO] [stdout] 124 | / if result.is_err() { [INFO] [stdout] 125 | | return result; [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 134 - vector: &mut Vec, [INFO] [stdout] 134 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 144 - safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 144 + safe.sort_by_key(|(entry_a, _)| *(entry_a)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | / if result.is_err() { [INFO] [stdout] 154 | | return result; [INFO] [stdout] 155 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:158:22 [INFO] [stdout] | [INFO] [stdout] 158 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 158 - for x in 0..safe.len() { [INFO] [stdout] 158 + for in &mut safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:166:22 [INFO] [stdout] | [INFO] [stdout] 166 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 166 - for x in 0..safe.len() { [INFO] [stdout] 166 + for in &safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 176 - vector: &mut Vec, [INFO] [stdout] 176 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 186 - safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 186 + safe.sort_by_key(|(entry_a, _)| *(entry_a)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:195:13 [INFO] [stdout] | [INFO] [stdout] 195 | / if result.is_err() { [INFO] [stdout] 196 | | return result; [INFO] [stdout] 197 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:200:22 [INFO] [stdout] | [INFO] [stdout] 200 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 200 - for x in 0..safe.len() { [INFO] [stdout] 200 + for in &mut safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:208:22 [INFO] [stdout] | [INFO] [stdout] 208 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 208 - for x in 0..safe.len() { [INFO] [stdout] 208 + for in &safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:218:17 [INFO] [stdout] | [INFO] [stdout] 218 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 218 - vector: &mut Vec, [INFO] [stdout] 218 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:225:18 [INFO] [stdout] | [INFO] [stdout] 225 | for x in 0..period { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 225 - for x in 0..period { [INFO] [stdout] 225 + for (x, ) in vector.iter().enumerate().take(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:226:37 [INFO] [stdout] | [INFO] [stdout] 226 | values.push((vector[x], x.try_into().unwrap())); //have to fix this clone. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `c` is only used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:229:18 [INFO] [stdout] | [INFO] [stdout] 229 | for c in period..vector.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 229 - for c in period..vector.len() { [INFO] [stdout] 229 + for in vector.iter().skip(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:230:13 [INFO] [stdout] | [INFO] [stdout] 230 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 230 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 230 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | / if result.is_err() { [INFO] [stdout] 241 | | return result; [INFO] [stdout] 242 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:245:22 [INFO] [stdout] | [INFO] [stdout] 245 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 245 - for x in 0..values.len() { [INFO] [stdout] 245 + for in &mut values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u128` which implements the `Copy` trait [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:250:30 [INFO] [stdout] | [INFO] [stdout] 250 | values[x] = (target.clone(), period - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:253:22 [INFO] [stdout] | [INFO] [stdout] 253 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 253 - for x in 0..values.len() { [INFO] [stdout] 253 + for in &values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:264:17 [INFO] [stdout] | [INFO] [stdout] 264 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 264 - vector: &mut Vec, [INFO] [stdout] 264 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:271:18 [INFO] [stdout] | [INFO] [stdout] 271 | for x in 0..period { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 271 - for x in 0..period { [INFO] [stdout] 271 + for (x, ) in vector.iter().enumerate().take(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:272:37 [INFO] [stdout] | [INFO] [stdout] 272 | values.push((vector[x], x.try_into().unwrap())); //have to fix this clone. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `c` is only used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:275:18 [INFO] [stdout] | [INFO] [stdout] 275 | for c in period..vector.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 275 - for c in period..vector.len() { [INFO] [stdout] 275 + for in vector.iter().skip(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:276:13 [INFO] [stdout] | [INFO] [stdout] 276 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 276 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 276 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | / if result.is_err() { [INFO] [stdout] 287 | | return result; [INFO] [stdout] 288 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:291:22 [INFO] [stdout] | [INFO] [stdout] 291 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 291 - for x in 0..values.len() { [INFO] [stdout] 291 + for in &mut values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u128` which implements the `Copy` trait [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:296:30 [INFO] [stdout] | [INFO] [stdout] 296 | values[x] = (target.clone(), period - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:299:22 [INFO] [stdout] | [INFO] [stdout] 299 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 299 - for x in 0..values.len() { [INFO] [stdout] 299 + for in &values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | for (element, _) in values.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, (element, _)) in values.iter().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:377:17 [INFO] [stdout] | [INFO] [stdout] 377 | values: &Vec<(u128, usize)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 377 - values: &Vec<(u128, usize)>, [INFO] [stdout] 377 + values: &[(u128, usize)], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:398:38 [INFO] [stdout] | [INFO] [stdout] 398 | fn pair_exists_narrowing(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 398 - fn pair_exists_narrowing(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] 398 + fn pair_exists_narrowing(values: &[(u128, usize)], target: u128) -> Result<(), String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:402:9 [INFO] [stdout] | [INFO] [stdout] 402 | for (element, _) in values.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, (element, _)) in values.iter().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `i` is never read [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:370:13 [INFO] [stdout] | [INFO] [stdout] 370 | i += 1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:24:31 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn collapse_check(vector: &mut Vec, period: usize) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 24 - pub fn collapse_check(vector: &mut Vec, period: usize) -> Result<(), String> { [INFO] [stdout] 24 + pub fn collapse_check(vector: &mut [u128], period: usize) -> Result<(), String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:29:14 [INFO] [stdout] | [INFO] [stdout] 29 | for x in 0..period { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 29 - for x in 0..period { [INFO] [stdout] 29 + for (x, ) in vector.iter().enumerate().take(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | values.push((vector[x], x.try_into().unwrap())); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `c` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | for c in period..vector.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 33 - for c in period..vector.len() { [INFO] [stdout] 33 + for (c, ) in vector.iter().enumerate().skip(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 34 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 34 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:50:18 [INFO] [stdout] | [INFO] [stdout] 50 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 50 - for x in 0..values.len() { [INFO] [stdout] 50 + for in &mut values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u128` which implements the `Copy` trait [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:55:26 [INFO] [stdout] | [INFO] [stdout] 55 | values[x] = (target.clone(), period - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 58 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 58 - for x in 0..values.len() { [INFO] [stdout] 58 + for in &values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:69:28 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn pair_exists(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 69 - pub fn pair_exists(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] 69 + pub fn pair_exists(values: &[(u128, usize)], target: u128) -> Result<(), String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:106:17 [INFO] [stdout] | [INFO] [stdout] 106 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 106 - vector: &mut Vec, [INFO] [stdout] 106 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:111:22 [INFO] [stdout] | [INFO] [stdout] 111 | for x in 0..c { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 111 - for x in 0..c { [INFO] [stdout] 111 + for (x, ) in vector.iter().enumerate().take(c) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:112:41 [INFO] [stdout] | [INFO] [stdout] 112 | values.push((vector[x], x.try_into().unwrap())); //have to fix this clone. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 114 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 114 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:124:13 [INFO] [stdout] | [INFO] [stdout] 124 | / if result.is_err() { [INFO] [stdout] 125 | | return result; [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 134 - vector: &mut Vec, [INFO] [stdout] 134 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 144 - safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 144 + safe.sort_by_key(|(entry_a, _)| *(entry_a)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | / if result.is_err() { [INFO] [stdout] 154 | | return result; [INFO] [stdout] 155 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:158:22 [INFO] [stdout] | [INFO] [stdout] 158 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 158 - for x in 0..safe.len() { [INFO] [stdout] 158 + for in &mut safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:166:22 [INFO] [stdout] | [INFO] [stdout] 166 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 166 - for x in 0..safe.len() { [INFO] [stdout] 166 + for in &safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 176 - vector: &mut Vec, [INFO] [stdout] 176 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 186 - safe.sort_by(|(entry_a, _), (entry_b, _)| (entry_a).cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 186 + safe.sort_by_key(|(entry_a, _)| *(entry_a)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:195:13 [INFO] [stdout] | [INFO] [stdout] 195 | / if result.is_err() { [INFO] [stdout] 196 | | return result; [INFO] [stdout] 197 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:200:22 [INFO] [stdout] | [INFO] [stdout] 200 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 200 - for x in 0..safe.len() { [INFO] [stdout] 200 + for in &mut safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `safe` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:208:22 [INFO] [stdout] | [INFO] [stdout] 208 | for x in 0..safe.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 208 - for x in 0..safe.len() { [INFO] [stdout] 208 + for in &safe { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:218:17 [INFO] [stdout] | [INFO] [stdout] 218 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 218 - vector: &mut Vec, [INFO] [stdout] 218 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:225:18 [INFO] [stdout] | [INFO] [stdout] 225 | for x in 0..period { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 225 - for x in 0..period { [INFO] [stdout] 225 + for (x, ) in vector.iter().enumerate().take(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:226:37 [INFO] [stdout] | [INFO] [stdout] 226 | values.push((vector[x], x.try_into().unwrap())); //have to fix this clone. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `c` is only used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:229:18 [INFO] [stdout] | [INFO] [stdout] 229 | for c in period..vector.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 229 - for c in period..vector.len() { [INFO] [stdout] 229 + for in vector.iter().skip(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:230:13 [INFO] [stdout] | [INFO] [stdout] 230 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 230 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 230 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | / if result.is_err() { [INFO] [stdout] 241 | | return result; [INFO] [stdout] 242 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:245:22 [INFO] [stdout] | [INFO] [stdout] 245 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 245 - for x in 0..values.len() { [INFO] [stdout] 245 + for in &mut values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u128` which implements the `Copy` trait [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:250:30 [INFO] [stdout] | [INFO] [stdout] 250 | values[x] = (target.clone(), period - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:253:22 [INFO] [stdout] | [INFO] [stdout] 253 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 253 - for x in 0..values.len() { [INFO] [stdout] 253 + for in &values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&mut Vec` instead of `&mut [_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:264:17 [INFO] [stdout] | [INFO] [stdout] 264 | vector: &mut Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 264 - vector: &mut Vec, [INFO] [stdout] 264 + vector: &mut [u128], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:271:18 [INFO] [stdout] | [INFO] [stdout] 271 | for x in 0..period { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 271 - for x in 0..period { [INFO] [stdout] 271 + for (x, ) in vector.iter().enumerate().take(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `usize` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:272:37 [INFO] [stdout] | [INFO] [stdout] 272 | values.push((vector[x], x.try_into().unwrap())); //have to fix this clone. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing `.try_into()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `c` is only used to index `vector` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:275:18 [INFO] [stdout] | [INFO] [stdout] 275 | for c in period..vector.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 275 - for c in period..vector.len() { [INFO] [stdout] 275 + for in vector.iter().skip(period) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:276:13 [INFO] [stdout] | [INFO] [stdout] 276 | values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 276 - values.sort_by(|(entry_a, _), (entry_b, _)| entry_a.cmp(entry_b)); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] 276 + values.sort_by_key(|(entry_a, _)| *entry_a); //O(n*log(n)) first time. O(n) every time after. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | / if result.is_err() { [INFO] [stdout] 287 | | return result; [INFO] [stdout] 288 | | } [INFO] [stdout] | |_____________^ help: replace it with: `result.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:291:22 [INFO] [stdout] | [INFO] [stdout] 291 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 291 - for x in 0..values.len() { [INFO] [stdout] 291 + for in &mut values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u128` which implements the `Copy` trait [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:296:30 [INFO] [stdout] | [INFO] [stdout] 296 | values[x] = (target.clone(), period - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `x` is only used to index `values` [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:299:22 [INFO] [stdout] | [INFO] [stdout] 299 | for x in 0..values.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 299 - for x in 0..values.len() { [INFO] [stdout] 299 + for in &values { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | for (element, _) in values.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, (element, _)) in values.iter().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:377:17 [INFO] [stdout] | [INFO] [stdout] 377 | values: &Vec<(u128, usize)>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 377 - values: &Vec<(u128, usize)>, [INFO] [stdout] 377 + values: &[(u128, usize)], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:398:38 [INFO] [stdout] | [INFO] [stdout] 398 | fn pair_exists_narrowing(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 398 - fn pair_exists_narrowing(values: &Vec<(u128, usize)>, target: u128) -> Result<(), String> { [INFO] [stdout] 398 + fn pair_exists_narrowing(values: &[(u128, usize)], target: u128) -> Result<(), String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> namt_preventative_collapse/src/lib.rs:402:9 [INFO] [stdout] | [INFO] [stdout] 402 | for (element, _) in values.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, (element, _)) in values.iter().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking namt_warning_system_benchmarks v0.1.0 (/opt/rustwide/workdir/namt_warning_system_benchmarks) [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> namt_preventative_collapse/src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | / match collapse_check(&mut numbers, 100) { [INFO] [stdout] 8 | | Err(error) => eprintln!("{:?}", error), [INFO] [stdout] 9 | | _ => {} [INFO] [stdout] 10 | | } [INFO] [stdout] | |_____^ help: try: `if let Err(error) = collapse_check(&mut numbers, 100) { eprintln!("{:?}", error) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `test::Bencher` [INFO] [stdout] --> namt_warning_system_benchmarks/src/lib.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use test::Bencher; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup` is never used [INFO] [stdout] --> namt_warning_system_benchmarks/src/lib.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn setup() -> (Vec, usize) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> namt_preventative_collapse/src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | / match collapse_check(&mut numbers, 100) { [INFO] [stdout] 8 | | Err(error) => eprintln!("{:?}", error), [INFO] [stdout] 9 | | _ => {} [INFO] [stdout] 10 | | } [INFO] [stdout] | |_____^ help: try: `if let Err(error) = collapse_check(&mut numbers, 100) { eprintln!("{:?}", error) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 77 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 139 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> namt_preventative_collapse/tests/collapse.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | if !result.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.57s [INFO] running `Command { std: "docker" "inspect" "ae4b563d6d8f0add11960453d814783c03eb207bde42c619b164d0506f9d3a16", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae4b563d6d8f0add11960453d814783c03eb207bde42c619b164d0506f9d3a16", kill_on_drop: false }` [INFO] [stdout] ae4b563d6d8f0add11960453d814783c03eb207bde42c619b164d0506f9d3a16