[INFO] cloning repository https://github.com/evgeni-nabokov/codewars-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/evgeni-nabokov/codewars-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fevgeni-nabokov%2Fcodewars-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fevgeni-nabokov%2Fcodewars-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 39732a50a7ad5f30dac91070cc319d2a76d5764e [INFO] checking evgeni-nabokov/codewars-rust against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fevgeni-nabokov%2Fcodewars-rust" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/evgeni-nabokov/codewars-rust on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/evgeni-nabokov/codewars-rust [INFO] finished tweaking git repo https://github.com/evgeni-nabokov/codewars-rust [INFO] tweaked toml for git repo https://github.com/evgeni-nabokov/codewars-rust written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/evgeni-nabokov/codewars-rust 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1e4718716e59272f3f297e1bb72cbf5f4a9b704740395304787088badca7036f [INFO] running `Command { std: "docker" "start" "-a" "1e4718716e59272f3f297e1bb72cbf5f4a9b704740395304787088badca7036f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1e4718716e59272f3f297e1bb72cbf5f4a9b704740395304787088badca7036f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1e4718716e59272f3f297e1bb72cbf5f4a9b704740395304787088badca7036f", kill_on_drop: false }` [INFO] [stdout] 1e4718716e59272f3f297e1bb72cbf5f4a9b704740395304787088badca7036f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6f56eed82ce7bc92ad9154fe8b79052ffa0e1b0bea22ea654f9decc77bdbc16f [INFO] running `Command { std: "docker" "start" "-a" "6f56eed82ce7bc92ad9154fe8b79052ffa0e1b0bea22ea654f9decc77bdbc16f", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Checking regex-syntax v0.6.12 [INFO] [stderr] Checking maplit v1.0.2 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Checking aho-corasick v0.7.6 [INFO] [stderr] Checking regex v1.3.1 [INFO] [stderr] Checking codewars v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Parenthesis::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use self::Parenthesis::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Operator::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use self::Operator::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_4/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_6/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_6/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/kyu_6/mod.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Match` [INFO] [stdout] --> src/kyu_6/mod.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Regex, Match}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_7/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::*` [INFO] [stdout] --> src/kyu_7/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::Ordering::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_7/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/kyu_7/mod.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_7/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Parenthesis::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use self::Parenthesis::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Operator::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use self::Operator::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_4/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_5/tests.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | (actual.abs() <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 98 - (actual.abs() <= merr) [INFO] [stdout] 98 + actual.abs() <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_5/tests.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | ((actual - expected).abs() / expected <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 100 - ((actual - expected).abs() / expected <= merr) [INFO] [stdout] 100 + (actual - expected).abs() / expected <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_6/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_6/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/kyu_6/mod.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Match` [INFO] [stdout] --> src/kyu_6/mod.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Regex, Match}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_6/tests.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | (actual.abs() <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 87 - (actual.abs() <= merr) [INFO] [stdout] 87 + actual.abs() <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_6/tests.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | ((actual - expected).abs() / expected <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 89 - ((actual - expected).abs() / expected <= merr) [INFO] [stdout] 89 + (actual - expected).abs() / expected <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_7/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::*` [INFO] [stdout] --> src/kyu_7/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::Ordering::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_7/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/kyu_7/mod.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_7/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/kyu_8/mod.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | arr.iter().fold(0, |mut acc, &n| acc + if n > 0 { n } else { 0 }) [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: function `is_prime` is never used [INFO] [stdout] --> src/common/mod.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn is_prime(n: &u64) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mod_pow` is never used [INFO] [stdout] --> src/common/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn mod_pow(base: u64, exp: u64, modulus: u64) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRIME_NUMBERS` is never used [INFO] [stdout] --> src/common/mod.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const PRIME_NUMBERS: [u64; 3330] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_DIGITS` is never used [INFO] [stdout] --> src/common/mod.rs:289:11 [INFO] [stdout] | [INFO] [stdout] 289 | pub const LAST_DIGITS: [[u8; 4]; 10] = [ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc` is never used [INFO] [stdout] --> src/kyu_2/mod.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn calc(expression: &str) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn calc(expression: &str) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TryParse` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | trait TryParse: Sized { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Token` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:22:6 [INFO] [stdout] | [INFO] [stdout] 22 | enum Token { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_number`, `is_operator`, `is_parenthesis`, `is_unary_minus`, `is_opening_parenthesis`, and `is_closing_parenthesis` are never used [INFO] [stdout] --> src/kyu_2/calculator.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Token { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 30 | pub fn is_number(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn is_operator(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_parenthesis(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn is_unary_minus(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn is_opening_parenthesis(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn is_closing_parenthesis(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Number` is never constructed [INFO] [stdout] --> src/kyu_2/calculator.rs:74:8 [INFO] [stdout] | [INFO] [stdout] 74 | struct Number(f64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `apply_unary_minus` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl Number { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 77 | pub fn apply_unary_minus(&self) -> Number { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operator` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:92:6 [INFO] [stdout] | [INFO] [stdout] 92 | enum Operator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_sub`, `precedence`, and `apply` are never used [INFO] [stdout] --> src/kyu_2/calculator.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 99 | impl Operator { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 100 | pub fn is_sub(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn precedence(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn apply(&self, num_1: Number, num_2: Number) -> Number { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Parenthesis` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:139:6 [INFO] [stdout] | [INFO] [stdout] 139 | enum Parenthesis { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_opening` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 144 | impl Parenthesis { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 145 | pub fn is_opening(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate_postfix_expression` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:163:4 [INFO] [stdout] | [INFO] [stdout] 163 | fn evaluate_postfix_expression(tokens: Vec) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_to_postfix_notation` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:192:4 [INFO] [stdout] | [INFO] [stdout] 192 | fn convert_to_postfix_notation(tokens: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_into_tokens` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:229:4 [INFO] [stdout] | [INFO] [stdout] 229 | fn split_into_tokens(expression: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_number` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:271:4 [INFO] [stdout] | [INFO] [stdout] 271 | fn parse_number(digits: &[char]) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `last_digit2` is never used [INFO] [stdout] --> src/kyu_3/mod.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn last_digit2(list: &[u64]) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_to_reduce_list` is never used [INFO] [stdout] --> src/kyu_3/mod.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn try_to_reduce_list(list: &[u64]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spiralize` is never used [INFO] [stdout] --> src/kyu_3/mod.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn spiralize(size: usize) -> Vec> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `range_extraction` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn range_extraction(a: &[i32]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `acc_to_string` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn acc_to_string(acc: &[i32]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dbl_linear` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn dbl_linear(n: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `n_linear` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn n_linear(m: &[u32], n: usize) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `strings_mix` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:96:4 [INFO] [stdout] | [INFO] [stdout] 96 | fn strings_mix(s1: &str, s2: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_and_filter_chars` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn count_and_filter_chars(s: &str) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `int_part` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:150:4 [INFO] [stdout] | [INFO] [stdout] 150 | fn int_part(n: u32) -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PartitionIter` is never constructed [INFO] [stdout] --> src/kyu_4/mod.rs:166:8 [INFO] [stdout] | [INFO] [stdout] 166 | struct PartitionIter { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 175 | impl PartitionIter { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 176 | pub fn new(n: u32) -> PartitionIter { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Cons` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:229:6 [INFO] [stdout] | [INFO] [stdout] 229 | enum Cons { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:235:12 [INFO] [stdout] | [INFO] [stdout] 234 | impl Cons { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 235 | pub fn new(head: T, tail: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_vec` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 240 | impl Cons { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] 241 | pub fn to_vec(&self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_iter`, `filter`, and `map` are never used [INFO] [stdout] --> src/kyu_4/mod.rs:254:12 [INFO] [stdout] | [INFO] [stdout] 253 | impl Cons { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 254 | pub fn from_iter(it: I) -> Self [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn filter(&self, fun: F) -> Self [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn map(&self, fun: F) -> Cons [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recover_secret` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:288:4 [INFO] [stdout] | [INFO] [stdout] 288 | fn recover_secret(mut triplets: Vec<[char; 3]>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_does_follow_another` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:308:4 [INFO] [stdout] | [INFO] [stdout] 308 | fn char_does_follow_another(ch: &char, triplets: &[[char; 3]]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remove_char_from_beginning` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:318:4 [INFO] [stdout] | [INFO] [stdout] 318 | fn remove_char_from_beginning(ch: &char, triplets: &mut [[char; 3]]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MorseDecoder` is never constructed [INFO] [stdout] --> src/kyu_4/mod.rs:330:12 [INFO] [stdout] | [INFO] [stdout] 330 | pub struct MorseDecoder { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `decode_morse`, `decode_bits`, and `calc_sampling_rate` are never used [INFO] [stdout] --> src/kyu_4/mod.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 334 | impl MorseDecoder { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 335 | pub fn new() -> MorseDecoder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn decode_morse(&self, encoded: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 361 | pub fn decode_bits(&self, encoded: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | fn calc_sampling_rate(encoded: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_bigger_number` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:433:4 [INFO] [stdout] | [INFO] [stdout] 433 | fn next_bigger_number(n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn sum_pairs(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_naive` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn sum_pairs_naive(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn sum_pairs_slow(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `prime_gap` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn prime_gap(g: i32, m: u64, n: u64) -> Option<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `product_fib` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:74:4 [INFO] [stdout] | [INFO] [stdout] 74 | fn product_fib(prod: u64) -> (u64, u64, bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_prime_factors` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn get_prime_factors(n: &u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_primes` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn get_primes(start: u64, end: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_kprimes` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn get_kprimes(k: usize, start: u64, end: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `puzzle` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn puzzle(s: u64) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `last_digit` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:168:4 [INFO] [stdout] | [INFO] [stdout] 168 | fn last_digit(str1: &str, str2: &str) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `buddy_numbers` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:189:4 [INFO] [stdout] | [INFO] [stdout] 189 | fn buddy_numbers(start: u64, limit: u64) -> Option<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_sum_of_factors` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:208:4 [INFO] [stdout] | [INFO] [stdout] 208 | fn get_sum_of_factors(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_sum_of_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:232:4 [INFO] [stdout] | [INFO] [stdout] 232 | fn get_sum_of_factors_slow(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:242:4 [INFO] [stdout] | [INFO] [stdout] 242 | fn get_factors_slow(n: &u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_x_of_pseries` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:254:4 [INFO] [stdout] | [INFO] [stdout] 254 | fn find_x_of_pseries(m: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_of_series` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:259:4 [INFO] [stdout] | [INFO] [stdout] 259 | fn sum_of_series(n: i32) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `phone_directory` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:272:4 [INFO] [stdout] | [INFO] [stdout] 272 | fn phone_directory(dir: &str, num: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `consec_kprimes` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:325:4 [INFO] [stdout] | [INFO] [stdout] 325 | fn consec_kprimes(k: usize, arr: Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `factorial_decomp` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:344:4 [INFO] [stdout] | [INFO] [stdout] 344 | fn factorial_decomp(n: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `prime_factors` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:375:4 [INFO] [stdout] | [INFO] [stdout] 375 | fn prime_factors(n: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rgb` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:406:4 [INFO] [stdout] | [INFO] [stdout] 406 | fn rgb(r: i32, g: i32, b: i32) -> String { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_to_byte` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:413:4 [INFO] [stdout] | [INFO] [stdout] 413 | fn convert_to_byte(c: i32) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perimeter` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:418:4 [INFO] [stdout] | [INFO] [stdout] 418 | fn perimeter(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `john` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:432:4 [INFO] [stdout] | [INFO] [stdout] 432 | fn john(n: u32) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ann` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:436:4 [INFO] [stdout] | [INFO] [stdout] 436 | fn ann(n: u32) -> Vec { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_john` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:440:4 [INFO] [stdout] | [INFO] [stdout] 440 | fn sum_john(n: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_ann` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:444:4 [INFO] [stdout] | [INFO] [stdout] 444 | fn sum_ann(n: u32) -> u32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `john_ann` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:448:4 [INFO] [stdout] | [INFO] [stdout] 448 | fn john_ann(n: &u32) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_fracts` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:459:4 [INFO] [stdout] | [INFO] [stdout] 459 | fn convert_fracts(mut list: Vec<(u64, u64)>) -> Vec<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_prime_factors_with_power` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:489:4 [INFO] [stdout] | [INFO] [stdout] 489 | fn get_prime_factors_with_power(n: &u64) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `order_weight` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:512:4 [INFO] [stdout] | [INFO] [stdout] 512 | fn order_weight(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vector` is never constructed [INFO] [stdout] --> src/kyu_5/mod.rs:525:8 [INFO] [stdout] | [INFO] [stdout] 525 | struct Vector { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/kyu_5/mod.rs:532:11 [INFO] [stdout] | [INFO] [stdout] 531 | impl Vector { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 532 | const EPS: f64 = 0.001; [INFO] [stdout] | ^^^ [INFO] [stdout] 533 | [INFO] [stdout] 534 | pub fn get_i() -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 538 | pub fn get_j() -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 542 | pub fn get_k() -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 546 | pub fn new(i: f64, j: f64, k: f64) -> Vector { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 550 | pub fn get_magnitude(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 554 | pub fn add(&self, another: Vector) -> Vector { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 558 | pub fn multiply_by_scalar(&self, multiplier: f64) -> Vector { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 562 | pub fn dot(&self, another: Vector) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 566 | pub fn cross(&self, another: Vector) -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 574 | pub fn is_parallel_to(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 597 | pub fn is_perpendicular_to(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 604 | pub fn normalize(&self) -> Vector { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | pub fn is_normalized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 613 | fn is_equal(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 617 | fn is_zero(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dec2_fact_string` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:623:8 [INFO] [stdout] | [INFO] [stdout] 623 | pub fn dec2_fact_string(mut n: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fact_string_2dec` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:638:4 [INFO] [stdout] | [INFO] [stdout] 638 | fn fact_string_2dec(s: String) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProgramInfo` is never constructed [INFO] [stdout] --> src/kyu_5/mod.rs:651:8 [INFO] [stdout] | [INFO] [stdout] 651 | struct ProgramInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `match_and_substitute` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:675:4 [INFO] [stdout] | [INFO] [stdout] 675 | fn match_and_substitute(s: &str, prog: &str, ver: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:701:6 [INFO] [stdout] | [INFO] [stdout] 701 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dir_reduction` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:705:4 [INFO] [stdout] | [INFO] [stdout] 705 | fn dir_reduction(arr: &[Direction]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `duplicate_encode` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn duplicate_encode(word: &str)->String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `meeting` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn meeting(s: &str) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `longest_consec` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn longest_consec(strarr: Vec<&str>, k: usize) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `comp` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn comp(a: Vec, b: Vec) -> bool { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `backwards_prime` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn backwards_prime(start: u64, stop: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `reverse` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn reverse(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `travel` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:109:4 [INFO] [stdout] | [INFO] [stdout] 109 | fn travel(text: &str, zip_code: &str) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Address` is never constructed [INFO] [stdout] --> src/kyu_6/mod.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | struct Address<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `good_vs_evil` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:137:4 [INFO] [stdout] | [INFO] [stdout] 137 | fn good_vs_evil(good: &str, evil: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc_worth_sum` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:150:4 [INFO] [stdout] | [INFO] [stdout] 150 | fn calc_worth_sum(races_worth: &[u32], army: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fp_approx` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:160:4 [INFO] [stdout] | [INFO] [stdout] 160 | fn fp_approx(x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deadfish_parse` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:166:4 [INFO] [stdout] | [INFO] [stdout] 166 | fn deadfish_parse(code: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `array_diff` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:182:4 [INFO] [stdout] | [INFO] [stdout] 182 | fn array_diff(a: Vec, b: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_multiple` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn max_multiple(divisor: u32, bound: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `row_weights` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn row_weights(array: Vec) -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_value` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn min_value(mut digits: Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `passengers_in_bus` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:37:4 [INFO] [stdout] | [INFO] [stdout] 37 | fn passengers_in_bus(bus_stops:&[(i32, i32)]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_middle` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn get_middle(s: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `multiply` is never used [INFO] [stdout] --> src/kyu_8/mod.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn multiply(a:i32, b:i32) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `expressions_matter` is never used [INFO] [stdout] --> src/kyu_8/mod.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn expressions_matter(a: u64, b: u64, c: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `positive_sum` is never used [INFO] [stdout] --> src/kyu_8/mod.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn positive_sum(arr: &[i32]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/kyu_2/calculator.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 276 - panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] 276 + panic!("Failed to parse number: '{}'", num_str); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 116 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/kyu_4/tests.rs:244:13 [INFO] [stdout] | [INFO] [stdout] 244 | let mut decoded_bits = decoder.decode_bits(case[0]); [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/kyu_8/mod.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | arr.iter().fold(0, |mut acc, &n| acc + if n > 0 { n } else { 0 }) [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_opening` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 144 | impl Parenthesis { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 145 | pub fn is_opening(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_naive` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn sum_pairs_naive(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn sum_pairs_slow(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_sum_of_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:232:4 [INFO] [stdout] | [INFO] [stdout] 232 | fn get_sum_of_factors_slow(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:242:4 [INFO] [stdout] | [INFO] [stdout] 242 | fn get_factors_slow(n: &u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_equal` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:613:8 [INFO] [stdout] | [INFO] [stdout] 531 | impl Vector { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 613 | fn is_equal(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/kyu_2/calculator.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 276 - panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] 276 + panic!("Failed to parse number: '{}'", num_str); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 25 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.62s [INFO] running `Command { std: "docker" "inspect" "6f56eed82ce7bc92ad9154fe8b79052ffa0e1b0bea22ea654f9decc77bdbc16f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6f56eed82ce7bc92ad9154fe8b79052ffa0e1b0bea22ea654f9decc77bdbc16f", kill_on_drop: false }` [INFO] [stdout] 6f56eed82ce7bc92ad9154fe8b79052ffa0e1b0bea22ea654f9decc77bdbc16f [INFO] checking evgeni-nabokov/codewars-rust against try#f9935d29d867449445ee008640ccca1bf1ae0889+rustflags=-Dtail_expr_drop_order for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fevgeni-nabokov%2Fcodewars-rust" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/evgeni-nabokov/codewars-rust on toolchain f9935d29d867449445ee008640ccca1bf1ae0889 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/evgeni-nabokov/codewars-rust [INFO] finished tweaking git repo https://github.com/evgeni-nabokov/codewars-rust [INFO] tweaked toml for git repo https://github.com/evgeni-nabokov/codewars-rust written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/evgeni-nabokov/codewars-rust 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" "+f9935d29d867449445ee008640ccca1bf1ae0889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3cefbd91e0f1d064b27cb848bcefe852d0a3ef76394672abe57ccf08ada2f057 [INFO] running `Command { std: "docker" "start" "-a" "3cefbd91e0f1d064b27cb848bcefe852d0a3ef76394672abe57ccf08ada2f057", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3cefbd91e0f1d064b27cb848bcefe852d0a3ef76394672abe57ccf08ada2f057", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3cefbd91e0f1d064b27cb848bcefe852d0a3ef76394672abe57ccf08ada2f057", kill_on_drop: false }` [INFO] [stdout] 3cefbd91e0f1d064b27cb848bcefe852d0a3ef76394672abe57ccf08ada2f057 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 36d6d70522dca1aa290ae0056dbc98ed3e8064a31cd47e743495326d2593326e [INFO] running `Command { std: "docker" "start" "-a" "36d6d70522dca1aa290ae0056dbc98ed3e8064a31cd47e743495326d2593326e", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Checking regex-syntax v0.6.12 [INFO] [stderr] Checking maplit v1.0.2 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Checking aho-corasick v0.7.6 [INFO] [stderr] Checking regex v1.3.1 [INFO] [stderr] Checking codewars v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Parenthesis::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use self::Parenthesis::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Operator::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use self::Operator::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_4/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_6/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_6/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/kyu_6/mod.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Match` [INFO] [stdout] --> src/kyu_6/mod.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Regex, Match}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_7/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::*` [INFO] [stdout] --> src/kyu_7/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::Ordering::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_7/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/kyu_7/mod.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_7/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Parenthesis::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use self::Parenthesis::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::Operator::*` [INFO] [stdout] --> src/kyu_2/calculator.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use self::Operator::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_4/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_5/tests.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | (actual.abs() <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 98 - (actual.abs() <= merr) [INFO] [stdout] 98 + actual.abs() <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_5/tests.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | ((actual - expected).abs() / expected <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 100 - ((actual - expected).abs() / expected <= merr) [INFO] [stdout] 100 + (actual - expected).abs() / expected <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_6/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_6/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/kyu_6/mod.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Match` [INFO] [stdout] --> src/kyu_6/mod.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::{Regex, Match}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_6/tests.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | (actual.abs() <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 87 - (actual.abs() <= merr) [INFO] [stdout] 87 + actual.abs() <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/kyu_6/tests.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | ((actual - expected).abs() / expected <= merr) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 89 - ((actual - expected).abs() / expected <= merr) [INFO] [stdout] 89 + (actual - expected).abs() / expected <= merr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp` [INFO] [stdout] --> src/kyu_7/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cmp; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering::*` [INFO] [stdout] --> src/kyu_7/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cmp::Ordering::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/kyu_7/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> src/kyu_7/mod.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::common::*` [INFO] [stdout] --> src/kyu_7/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::common::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/kyu_8/mod.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | arr.iter().fold(0, |mut acc, &n| acc + if n > 0 { n } else { 0 }) [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: function `is_prime` is never used [INFO] [stdout] --> src/common/mod.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn is_prime(n: &u64) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mod_pow` is never used [INFO] [stdout] --> src/common/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn mod_pow(base: u64, exp: u64, modulus: u64) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRIME_NUMBERS` is never used [INFO] [stdout] --> src/common/mod.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const PRIME_NUMBERS: [u64; 3330] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_DIGITS` is never used [INFO] [stdout] --> src/common/mod.rs:289:11 [INFO] [stdout] | [INFO] [stdout] 289 | pub const LAST_DIGITS: [[u8; 4]; 10] = [ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc` is never used [INFO] [stdout] --> src/kyu_2/mod.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn calc(expression: &str) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn calc(expression: &str) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TryParse` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | trait TryParse: Sized { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Token` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:22:6 [INFO] [stdout] | [INFO] [stdout] 22 | enum Token { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_number`, `is_operator`, `is_parenthesis`, `is_unary_minus`, `is_opening_parenthesis`, and `is_closing_parenthesis` are never used [INFO] [stdout] --> src/kyu_2/calculator.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Token { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 30 | pub fn is_number(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn is_operator(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn is_parenthesis(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn is_unary_minus(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn is_opening_parenthesis(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn is_closing_parenthesis(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Number` is never constructed [INFO] [stdout] --> src/kyu_2/calculator.rs:74:8 [INFO] [stdout] | [INFO] [stdout] 74 | struct Number(f64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `apply_unary_minus` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl Number { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 77 | pub fn apply_unary_minus(&self) -> Number { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operator` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:92:6 [INFO] [stdout] | [INFO] [stdout] 92 | enum Operator { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_sub`, `precedence`, and `apply` are never used [INFO] [stdout] --> src/kyu_2/calculator.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 99 | impl Operator { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 100 | pub fn is_sub(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn precedence(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn apply(&self, num_1: Number, num_2: Number) -> Number { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Parenthesis` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:139:6 [INFO] [stdout] | [INFO] [stdout] 139 | enum Parenthesis { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_opening` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 144 | impl Parenthesis { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 145 | pub fn is_opening(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate_postfix_expression` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:163:4 [INFO] [stdout] | [INFO] [stdout] 163 | fn evaluate_postfix_expression(tokens: Vec) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_to_postfix_notation` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:192:4 [INFO] [stdout] | [INFO] [stdout] 192 | fn convert_to_postfix_notation(tokens: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_into_tokens` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:229:4 [INFO] [stdout] | [INFO] [stdout] 229 | fn split_into_tokens(expression: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_number` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:271:4 [INFO] [stdout] | [INFO] [stdout] 271 | fn parse_number(digits: &[char]) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `last_digit2` is never used [INFO] [stdout] --> src/kyu_3/mod.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn last_digit2(list: &[u64]) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_to_reduce_list` is never used [INFO] [stdout] --> src/kyu_3/mod.rs:50:4 [INFO] [stdout] | [INFO] [stdout] 50 | fn try_to_reduce_list(list: &[u64]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spiralize` is never used [INFO] [stdout] --> src/kyu_3/mod.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn spiralize(size: usize) -> Vec> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `range_extraction` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn range_extraction(a: &[i32]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `acc_to_string` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn acc_to_string(acc: &[i32]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dbl_linear` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn dbl_linear(n: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `n_linear` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn n_linear(m: &[u32], n: usize) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `strings_mix` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:96:4 [INFO] [stdout] | [INFO] [stdout] 96 | fn strings_mix(s1: &str, s2: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_and_filter_chars` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:138:4 [INFO] [stdout] | [INFO] [stdout] 138 | fn count_and_filter_chars(s: &str) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `int_part` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:150:4 [INFO] [stdout] | [INFO] [stdout] 150 | fn int_part(n: u32) -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PartitionIter` is never constructed [INFO] [stdout] --> src/kyu_4/mod.rs:166:8 [INFO] [stdout] | [INFO] [stdout] 166 | struct PartitionIter { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 175 | impl PartitionIter { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 176 | pub fn new(n: u32) -> PartitionIter { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Cons` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:229:6 [INFO] [stdout] | [INFO] [stdout] 229 | enum Cons { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:235:12 [INFO] [stdout] | [INFO] [stdout] 234 | impl Cons { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 235 | pub fn new(head: T, tail: Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_vec` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 240 | impl Cons { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] 241 | pub fn to_vec(&self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_iter`, `filter`, and `map` are never used [INFO] [stdout] --> src/kyu_4/mod.rs:254:12 [INFO] [stdout] | [INFO] [stdout] 253 | impl Cons { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 254 | pub fn from_iter(it: I) -> Self [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn filter(&self, fun: F) -> Self [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn map(&self, fun: F) -> Cons [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recover_secret` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:288:4 [INFO] [stdout] | [INFO] [stdout] 288 | fn recover_secret(mut triplets: Vec<[char; 3]>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_does_follow_another` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:308:4 [INFO] [stdout] | [INFO] [stdout] 308 | fn char_does_follow_another(ch: &char, triplets: &[[char; 3]]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remove_char_from_beginning` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:318:4 [INFO] [stdout] | [INFO] [stdout] 318 | fn remove_char_from_beginning(ch: &char, triplets: &mut [[char; 3]]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MorseDecoder` is never constructed [INFO] [stdout] --> src/kyu_4/mod.rs:330:12 [INFO] [stdout] | [INFO] [stdout] 330 | pub struct MorseDecoder { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `decode_morse`, `decode_bits`, and `calc_sampling_rate` are never used [INFO] [stdout] --> src/kyu_4/mod.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 334 | impl MorseDecoder { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 335 | pub fn new() -> MorseDecoder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn decode_morse(&self, encoded: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 361 | pub fn decode_bits(&self, encoded: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | fn calc_sampling_rate(encoded: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_bigger_number` is never used [INFO] [stdout] --> src/kyu_4/mod.rs:433:4 [INFO] [stdout] | [INFO] [stdout] 433 | fn next_bigger_number(n: i64) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn sum_pairs(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_naive` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn sum_pairs_naive(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn sum_pairs_slow(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `prime_gap` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn prime_gap(g: i32, m: u64, n: u64) -> Option<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `product_fib` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:74:4 [INFO] [stdout] | [INFO] [stdout] 74 | fn product_fib(prod: u64) -> (u64, u64, bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_prime_factors` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn get_prime_factors(n: &u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_primes` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn get_primes(start: u64, end: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_kprimes` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn get_kprimes(k: usize, start: u64, end: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `puzzle` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn puzzle(s: u64) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `last_digit` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:168:4 [INFO] [stdout] | [INFO] [stdout] 168 | fn last_digit(str1: &str, str2: &str) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `buddy_numbers` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:189:4 [INFO] [stdout] | [INFO] [stdout] 189 | fn buddy_numbers(start: u64, limit: u64) -> Option<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_sum_of_factors` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:208:4 [INFO] [stdout] | [INFO] [stdout] 208 | fn get_sum_of_factors(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_sum_of_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:232:4 [INFO] [stdout] | [INFO] [stdout] 232 | fn get_sum_of_factors_slow(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:242:4 [INFO] [stdout] | [INFO] [stdout] 242 | fn get_factors_slow(n: &u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_x_of_pseries` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:254:4 [INFO] [stdout] | [INFO] [stdout] 254 | fn find_x_of_pseries(m: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_of_series` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:259:4 [INFO] [stdout] | [INFO] [stdout] 259 | fn sum_of_series(n: i32) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `phone_directory` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:272:4 [INFO] [stdout] | [INFO] [stdout] 272 | fn phone_directory(dir: &str, num: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `consec_kprimes` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:325:4 [INFO] [stdout] | [INFO] [stdout] 325 | fn consec_kprimes(k: usize, arr: Vec) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `factorial_decomp` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:344:4 [INFO] [stdout] | [INFO] [stdout] 344 | fn factorial_decomp(n: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `prime_factors` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:375:4 [INFO] [stdout] | [INFO] [stdout] 375 | fn prime_factors(n: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rgb` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:406:4 [INFO] [stdout] | [INFO] [stdout] 406 | fn rgb(r: i32, g: i32, b: i32) -> String { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_to_byte` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:413:4 [INFO] [stdout] | [INFO] [stdout] 413 | fn convert_to_byte(c: i32) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perimeter` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:418:4 [INFO] [stdout] | [INFO] [stdout] 418 | fn perimeter(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `john` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:432:4 [INFO] [stdout] | [INFO] [stdout] 432 | fn john(n: u32) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ann` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:436:4 [INFO] [stdout] | [INFO] [stdout] 436 | fn ann(n: u32) -> Vec { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_john` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:440:4 [INFO] [stdout] | [INFO] [stdout] 440 | fn sum_john(n: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_ann` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:444:4 [INFO] [stdout] | [INFO] [stdout] 444 | fn sum_ann(n: u32) -> u32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `john_ann` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:448:4 [INFO] [stdout] | [INFO] [stdout] 448 | fn john_ann(n: &u32) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_fracts` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:459:4 [INFO] [stdout] | [INFO] [stdout] 459 | fn convert_fracts(mut list: Vec<(u64, u64)>) -> Vec<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_prime_factors_with_power` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:489:4 [INFO] [stdout] | [INFO] [stdout] 489 | fn get_prime_factors_with_power(n: &u64) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `order_weight` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:512:4 [INFO] [stdout] | [INFO] [stdout] 512 | fn order_weight(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vector` is never constructed [INFO] [stdout] --> src/kyu_5/mod.rs:525:8 [INFO] [stdout] | [INFO] [stdout] 525 | struct Vector { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/kyu_5/mod.rs:532:11 [INFO] [stdout] | [INFO] [stdout] 531 | impl Vector { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 532 | const EPS: f64 = 0.001; [INFO] [stdout] | ^^^ [INFO] [stdout] 533 | [INFO] [stdout] 534 | pub fn get_i() -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 538 | pub fn get_j() -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 542 | pub fn get_k() -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 546 | pub fn new(i: f64, j: f64, k: f64) -> Vector { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 550 | pub fn get_magnitude(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 554 | pub fn add(&self, another: Vector) -> Vector { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 558 | pub fn multiply_by_scalar(&self, multiplier: f64) -> Vector { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 562 | pub fn dot(&self, another: Vector) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 566 | pub fn cross(&self, another: Vector) -> Vector { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 574 | pub fn is_parallel_to(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 597 | pub fn is_perpendicular_to(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 604 | pub fn normalize(&self) -> Vector { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | pub fn is_normalized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 613 | fn is_equal(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 617 | fn is_zero(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dec2_fact_string` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:623:8 [INFO] [stdout] | [INFO] [stdout] 623 | pub fn dec2_fact_string(mut n: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fact_string_2dec` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:638:4 [INFO] [stdout] | [INFO] [stdout] 638 | fn fact_string_2dec(s: String) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProgramInfo` is never constructed [INFO] [stdout] --> src/kyu_5/mod.rs:651:8 [INFO] [stdout] | [INFO] [stdout] 651 | struct ProgramInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `match_and_substitute` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:675:4 [INFO] [stdout] | [INFO] [stdout] 675 | fn match_and_substitute(s: &str, prog: &str, ver: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:701:6 [INFO] [stdout] | [INFO] [stdout] 701 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dir_reduction` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:705:4 [INFO] [stdout] | [INFO] [stdout] 705 | fn dir_reduction(arr: &[Direction]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `duplicate_encode` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn duplicate_encode(word: &str)->String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `meeting` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn meeting(s: &str) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `longest_consec` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn longest_consec(strarr: Vec<&str>, k: usize) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `comp` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn comp(a: Vec, b: Vec) -> bool { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `backwards_prime` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:85:4 [INFO] [stdout] | [INFO] [stdout] 85 | fn backwards_prime(start: u64, stop: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `reverse` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn reverse(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `travel` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:109:4 [INFO] [stdout] | [INFO] [stdout] 109 | fn travel(text: &str, zip_code: &str) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Address` is never constructed [INFO] [stdout] --> src/kyu_6/mod.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | struct Address<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `good_vs_evil` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:137:4 [INFO] [stdout] | [INFO] [stdout] 137 | fn good_vs_evil(good: &str, evil: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calc_worth_sum` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:150:4 [INFO] [stdout] | [INFO] [stdout] 150 | fn calc_worth_sum(races_worth: &[u32], army: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fp_approx` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:160:4 [INFO] [stdout] | [INFO] [stdout] 160 | fn fp_approx(x: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deadfish_parse` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:166:4 [INFO] [stdout] | [INFO] [stdout] 166 | fn deadfish_parse(code: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `array_diff` is never used [INFO] [stdout] --> src/kyu_6/mod.rs:182:4 [INFO] [stdout] | [INFO] [stdout] 182 | fn array_diff(a: Vec, b: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_multiple` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn max_multiple(divisor: u32, bound: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `row_weights` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn row_weights(array: Vec) -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_value` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn min_value(mut digits: Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `passengers_in_bus` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:37:4 [INFO] [stdout] | [INFO] [stdout] 37 | fn passengers_in_bus(bus_stops:&[(i32, i32)]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_middle` is never used [INFO] [stdout] --> src/kyu_7/mod.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn get_middle(s: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `multiply` is never used [INFO] [stdout] --> src/kyu_8/mod.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn multiply(a:i32, b:i32) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `expressions_matter` is never used [INFO] [stdout] --> src/kyu_8/mod.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn expressions_matter(a: u64, b: u64, c: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `positive_sum` is never used [INFO] [stdout] --> src/kyu_8/mod.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn positive_sum(arr: &[i32]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/kyu_2/calculator.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 276 - panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] 276 + panic!("Failed to parse number: '{}'", num_str); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/kyu_4/mod.rs:236:26 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn new(head: T, tail: Self) -> Self { [INFO] [stdout] | ------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 236 | Cons::Cons(head, Box::new(tail)) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/kyu_4/mod.rs:258:15 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn from_iter(it: I) -> Self [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 257 | let mut it = it.into_iter(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 258 | match it.next() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/kyu_6/mod.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 182 | fn array_diff(a: Vec, b: Vec) -> Vec { [INFO] [stdout] | --------- --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 183 | a.into_iter().filter(|item| !b.contains(item)).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors; 116 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `codewars` (bin "codewars") due to 4 previous errors; 116 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/kyu_4/tests.rs:244:13 [INFO] [stdout] | [INFO] [stdout] 244 | let mut decoded_bits = decoder.decode_bits(case[0]); [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/kyu_8/mod.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | arr.iter().fold(0, |mut acc, &n| acc + if n > 0 { n } else { 0 }) [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_opening` is never used [INFO] [stdout] --> src/kyu_2/calculator.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 144 | impl Parenthesis { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 145 | pub fn is_opening(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_naive` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn sum_pairs_naive(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum_pairs_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | fn sum_pairs_slow(numbers: &[i8], s: i8) -> Option<(i8, i8)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_sum_of_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:232:4 [INFO] [stdout] | [INFO] [stdout] 232 | fn get_sum_of_factors_slow(n: &u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_factors_slow` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:242:4 [INFO] [stdout] | [INFO] [stdout] 242 | fn get_factors_slow(n: &u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_equal` is never used [INFO] [stdout] --> src/kyu_5/mod.rs:613:8 [INFO] [stdout] | [INFO] [stdout] 531 | impl Vector { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 613 | fn is_equal(&self, another: Vector) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/kyu_2/calculator.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 276 | panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 276 - panic!(format!("Failed to parse number: '{}'", num_str)); [INFO] [stdout] 276 + panic!("Failed to parse number: '{}'", num_str); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/kyu_4/mod.rs:236:26 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn new(head: T, tail: Self) -> Self { [INFO] [stdout] | ------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 236 | Cons::Cons(head, Box::new(tail)) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/kyu_4/mod.rs:258:15 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn from_iter(it: I) -> Self [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 257 | let mut it = it.into_iter(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 258 | match it.next() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/kyu_6/mod.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 182 | fn array_diff(a: Vec, b: Vec) -> Vec { [INFO] [stdout] | --------- --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 183 | a.into_iter().filter(|item| !b.contains(item)).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors; 25 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `codewars` (bin "codewars" test) due to 4 previous errors; 25 warnings emitted [INFO] running `Command { std: "docker" "inspect" "36d6d70522dca1aa290ae0056dbc98ed3e8064a31cd47e743495326d2593326e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "36d6d70522dca1aa290ae0056dbc98ed3e8064a31cd47e743495326d2593326e", kill_on_drop: false }` [INFO] [stdout] 36d6d70522dca1aa290ae0056dbc98ed3e8064a31cd47e743495326d2593326e