[INFO] cloning repository https://github.com/Sociosarbis/rust-boilerplate [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Sociosarbis/rust-boilerplate" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSociosarbis%2Frust-boilerplate", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSociosarbis%2Frust-boilerplate'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6d55756cddd3432556f193936dca959cfa0aec82 [INFO] checking Sociosarbis/rust-boilerplate/6d55756cddd3432556f193936dca959cfa0aec82 against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSociosarbis%2Frust-boilerplate" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Sociosarbis/rust-boilerplate on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Sociosarbis/rust-boilerplate [INFO] finished tweaking git repo https://github.com/Sociosarbis/rust-boilerplate [INFO] tweaked toml for git repo https://github.com/Sociosarbis/rust-boilerplate written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Sociosarbis/rust-boilerplate 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f44f27b39fcbdebcf47efc7169f763f8a9b9035f3a4fcf15f5ce942bef3e11ab [INFO] running `Command { std: "docker" "start" "-a" "f44f27b39fcbdebcf47efc7169f763f8a9b9035f3a4fcf15f5ce942bef3e11ab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f44f27b39fcbdebcf47efc7169f763f8a9b9035f3a4fcf15f5ce942bef3e11ab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f44f27b39fcbdebcf47efc7169f763f8a9b9035f3a4fcf15f5ce942bef3e11ab", kill_on_drop: false }` [INFO] [stdout] f44f27b39fcbdebcf47efc7169f763f8a9b9035f3a4fcf15f5ce942bef3e11ab [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 87801f65dbeddc20f9cd562dd29cb004ed4d84cc8a776cc93818afbbc2e4f21f [INFO] running `Command { std: "docker" "start" "-a" "87801f65dbeddc20f9cd562dd29cb004ed4d84cc8a776cc93818afbbc2e4f21f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.101 [INFO] [stderr] Compiling anyhow v1.0.69 [INFO] [stderr] Compiling proc-macro2 v1.0.28 [INFO] [stderr] Checking ppv-lite86 v0.2.10 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.75 [INFO] [stderr] Checking solution v0.1.0 (/opt/rustwide/workdir/solution) [INFO] [stderr] Checking utils v0.1.0 (/opt/rustwide/workdir/utils) [INFO] [stdout] warning: unused imports: `Ordering` and `pin::Pin` [INFO] [stdout] --> utils/src/lib.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | io::{Bytes, Cursor, Read}, iter::Peekable, pin::Pin, sync::atomic::{AtomicU8, Ordering} [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ListNode` is never constructed [INFO] [stdout] --> utils/src/lib.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | struct ListNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `merge` is never used [INFO] [stdout] --> utils/src/lib.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn merge( [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InnerBusy` is never constructed [INFO] [stdout] --> utils/src/lib.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | struct InnerBusy { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Time` is never used [INFO] [stdout] --> utils/src/type_erase.rs:123:7 [INFO] [stdout] | [INFO] [stdout] 123 | trait Time { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Logger` is never used [INFO] [stdout] --> utils/src/type_erase.rs:129:7 [INFO] [stdout] | [INFO] [stdout] 129 | trait Logger: Time { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DynamicLogger` is never constructed [INFO] [stdout] --> utils/src/type_erase.rs:135:19 [INFO] [stdout] | [INFO] [stdout] 135 | trait Logger => DynamicLogger { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `type_erase` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `log`, `error`, `type_name`, `downcast_ref`, and `downcast` are never used [INFO] [stdout] --> utils/src/type_erase.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 36 | impl $erased_t { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 37 | $v fn new(v: std::sync::Arc) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | $v fn type_name(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | $v fn downcast_ref(&self) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | $v fn downcast(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | / type_erase!( [INFO] [stdout] 135 | | trait Logger => DynamicLogger { [INFO] [stdout] 136 | | fn log(&self, msg: String); [INFO] [stdout] | | ^^^ [INFO] [stdout] 137 | | fn error(&self, msg: String, trace: Option, context: String); [INFO] [stdout] | | ^^^^^ [INFO] [stdout] ... | [INFO] [stdout] 142 | | } [INFO] [stdout] 143 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `type_erase` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CustomLogger` is never constructed [INFO] [stdout] --> utils/src/type_erase.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | struct CustomLogger {} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `NonDispatchable` is never used [INFO] [stdout] --> utils/src/type_erase.rs:172:7 [INFO] [stdout] | [INFO] [stdout] 172 | trait NonDispatchable { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Dispatchable` is never used [INFO] [stdout] --> utils/src/type_erase.rs:181:7 [INFO] [stdout] | [INFO] [stdout] 181 | trait Dispatchable { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `A` is never constructed [INFO] [stdout] --> utils/src/type_erase.rs:187:8 [INFO] [stdout] | [INFO] [stdout] 187 | struct A {} [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ordering` and `pin::Pin` [INFO] [stdout] --> utils/src/lib.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | io::{Bytes, Cursor, Read}, iter::Peekable, pin::Pin, sync::atomic::{AtomicU8, Ordering} [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ListNode` is never constructed [INFO] [stdout] --> utils/src/lib.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | struct ListNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `merge` is never used [INFO] [stdout] --> utils/src/lib.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn merge( [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InnerBusy` is never constructed [INFO] [stdout] --> utils/src/lib.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | struct InnerBusy { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Time` is never used [INFO] [stdout] --> utils/src/type_erase.rs:123:7 [INFO] [stdout] | [INFO] [stdout] 123 | trait Time { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Logger` is never used [INFO] [stdout] --> utils/src/type_erase.rs:129:7 [INFO] [stdout] | [INFO] [stdout] 129 | trait Logger: Time { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DynamicLogger` is never constructed [INFO] [stdout] --> utils/src/type_erase.rs:135:19 [INFO] [stdout] | [INFO] [stdout] 135 | trait Logger => DynamicLogger { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `type_erase` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `log`, `error`, `type_name`, `downcast_ref`, and `downcast` are never used [INFO] [stdout] --> utils/src/type_erase.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 36 | impl $erased_t { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 37 | $v fn new(v: std::sync::Arc) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | $v fn type_name(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | $v fn downcast_ref(&self) -> Option<&T> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | $v fn downcast(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | / type_erase!( [INFO] [stdout] 135 | | trait Logger => DynamicLogger { [INFO] [stdout] 136 | | fn log(&self, msg: String); [INFO] [stdout] | | ^^^ [INFO] [stdout] 137 | | fn error(&self, msg: String, trace: Option, context: String); [INFO] [stdout] | | ^^^^^ [INFO] [stdout] ... | [INFO] [stdout] 142 | | } [INFO] [stdout] 143 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `type_erase` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CustomLogger` is never constructed [INFO] [stdout] --> utils/src/type_erase.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | struct CustomLogger {} [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `NonDispatchable` is never used [INFO] [stdout] --> utils/src/type_erase.rs:172:7 [INFO] [stdout] | [INFO] [stdout] 172 | trait NonDispatchable { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Dispatchable` is never used [INFO] [stdout] --> utils/src/type_erase.rs:181:7 [INFO] [stdout] | [INFO] [stdout] 181 | trait Dispatchable { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `A` is never constructed [INFO] [stdout] --> utils/src/type_erase.rs:187:8 [INFO] [stdout] | [INFO] [stdout] 187 | struct A {} [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stdout] warning: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking getrandom v0.2.3 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.4 [INFO] [stderr] Checking part_3 v0.1.0 (/opt/rustwide/workdir/part_3) [INFO] [stderr] Checking part_2 v0.1.0 (/opt/rustwide/workdir/part_2) [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> part_2/src/bank.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem::swap` [INFO] [stdout] --> part_3/src/flip_cups.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::mem::swap; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> part_2/src/find_min_steps.rs:55:19 [INFO] [stdout] | [INFO] [stdout] 55 | for j in 0..temp_count { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> part_2/src/cal_points.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | let mut ret = 0; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> part_2/src/cal_points.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | let mut ret = 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] --> part_2/src/deserialize.rs:9:24 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn deserialize(mut s: String) -> NestedInteger { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> part_2/src/construct_maximum_binary_tree.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let node: Option>> = None; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> part_2/src/construct_maximum_binary_tree.rs:38:21 [INFO] [stdout] | [INFO] [stdout] 38 | let mut leftBranch = numToNode[stack[index] as usize].clone(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MedianFinder` is never constructed [INFO] [stdout] --> part_2/src/median_finder.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct MedianFinder { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_num`, and `find_median` are never used [INFO] [stdout] --> part_2/src/median_finder.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl MedianFinder { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn add_num(&mut self, num: i32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn find_median(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MedianFinderBest` is never constructed [INFO] [stdout] --> part_2/src/median_finder.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | struct MedianFinderBest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_num`, and `find_median` are never used [INFO] [stdout] --> part_2/src/median_finder.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 53 | impl MedianFinderBest { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn add_num(&mut self, num: i32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | fn find_median(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolutionPickIndex` is never constructed [INFO] [stdout] --> part_2/src/pick_index.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct SolutionPickIndex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `pick_index` are never used [INFO] [stdout] --> part_2/src/pick_index.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 11 | impl SolutionPickIndex { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 12 | [INFO] [stdout] 13 | fn new(w: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn pick_index(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> part_2/src/get_kth_from_end.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 10 | impl ListNode { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 11 | #[inline] [INFO] [stdout] 12 | fn new(val: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> part_2/src/split_list_to_parts.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 10 | impl ListNode { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 11 | #[inline] [INFO] [stdout] 12 | fn new(val: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SummaryRanges` is never constructed [INFO] [stdout] --> part_2/src/summary_ranges.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct SummaryRanges { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_num`, and `get_intervals` are never used [INFO] [stdout] --> part_2/src/summary_ranges.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 6 | impl SummaryRanges { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 7 | [INFO] [stdout] 8 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | fn add_num(&mut self, val: i32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn get_intervals(&self) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Entry` is never constructed [INFO] [stdout] --> part_2/src/word_dictionary.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Entry { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WordDictionary` is never constructed [INFO] [stdout] --> part_2/src/word_dictionary.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct WordDictionary (Entry); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_word`, `search`, and `search_dfs` are never used [INFO] [stdout] --> part_2/src/word_dictionary.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 14 | impl WordDictionary { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 15 | [INFO] [stdout] 16 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn add_word(&mut self, word: String) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn search(&self, word: String) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn search_dfs(&self, entry: &Entry, chars: &Vec, index: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Solution` is never constructed [INFO] [stdout] --> part_2/src/shuffle.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Solution { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `reset`, and `shuffle` are never used [INFO] [stdout] --> part_2/src/shuffle.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl Solution { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 16 | [INFO] [stdout] 17 | fn new(nums: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | fn reset(&mut self) -> Vec { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn shuffle(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StockPrice` is never constructed [INFO] [stdout] --> part_2/src/stock_price.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct StockPrice { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `update`, `current`, `maximum`, and `minimum` are never used [INFO] [stdout] --> part_2/src/stock_price.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl StockPrice { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 19 | [INFO] [stdout] 20 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn update(&mut self, timestamp: i32, price: i32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn current(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn maximum(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn minimum(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Node` is never constructed [INFO] [stdout] --> part_2/src/all_one.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Node { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AllOne` is never constructed [INFO] [stdout] --> part_2/src/all_one.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct AllOne { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `inc`, `dec`, `get_max_key`, and `get_min_key` are never used [INFO] [stdout] --> part_2/src/all_one.rs:24:6 [INFO] [stdout] | [INFO] [stdout] 22 | impl AllOne { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 23 | [INFO] [stdout] 24 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn inc(&mut self, key: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn dec(&mut self, key: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | fn get_max_key(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | fn get_min_key(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Bank` is never constructed [INFO] [stdout] --> part_2/src/bank.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Bank { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `is_valid_account`, `transfer`, `deposit`, and `withdraw` are never used [INFO] [stdout] --> part_2/src/bank.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl Bank { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 13 | [INFO] [stdout] 14 | fn new(balance: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | fn is_valid_account(&self, account: i32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn transfer(&mut self, account1: i32, account2: i32, money: i64) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn deposit(&mut self, account: i32, money: i64) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | fn withdraw(&mut self, account: i32, money: i64) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Solution` is never constructed [INFO] [stdout] --> part_2/src/rand_point.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct Solution { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `rand_point` are never used [INFO] [stdout] --> part_2/src/rand_point.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 17 | impl Solution { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 18 | fn new(radius: f64, x_center: f64, y_center: f64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn rand_point(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> part_2/src/min_jumps.rs:37:24 [INFO] [stdout] | [INFO] [stdout] 37 | for indices in map.get(&arr[index]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 37 | while let Some(indices) = map.get(&arr[index]) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 37 | if let Some(indices) = map.get(&arr[index]) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `numToNode` should have a snake case name [INFO] [stdout] --> part_2/src/construct_maximum_binary_tree.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | let mut numToNode: Vec>>> = vec![None; 1001]; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `num_to_node` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `leftBranch` should have a snake case name [INFO] [stdout] --> part_2/src/construct_maximum_binary_tree.rs:38:25 [INFO] [stdout] | [INFO] [stdout] 38 | let mut leftBranch = numToNode[stack[index] as usize].clone(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `left_branch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `subRoot` should have a snake case name [INFO] [stdout] --> part_2/src/construct_maximum_binary_tree.rs:46:25 [INFO] [stdout] | [INFO] [stdout] 46 | let mut subRoot = TreeNode::new(num); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `sub_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 35 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> part_3/src/hardest_worker.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn hardest_worker(n: i32, logs: Vec>) -> i32 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_neg_ones` [INFO] [stdout] --> part_3/src/k_items_with_maximum_sum.rs:4:66 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn k_items_with_maximum_sum(num_ones: i32, num_zeros: i32, num_neg_ones: i32, k: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_neg_ones` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `CustomFunction` is more private than the item `find_solution::::find_solution` [INFO] [stdout] --> part_3/src/find_solution.rs:8:3 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn find_solution(customfunction: &dyn CustomFunction, z: i32) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `find_solution::::find_solution` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but trait `CustomFunction` is only usable at visibility `pub(self)` [INFO] [stdout] --> part_3/src/find_solution.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | trait CustomFunction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AuthenticationManager` is never constructed [INFO] [stdout] --> part_3/src/autentication_manager.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct AuthenticationManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `generate`, `renew`, and `count_unexpired_tokens` are never used [INFO] [stdout] --> part_3/src/autentication_manager.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl AuthenticationManager { [INFO] [stdout] | -------------------------- associated items in this implementation [INFO] [stdout] 14 | fn new(timeToLive: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn generate(&mut self, token_id: String, mut current_time: i32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn renew(&mut self, token_id: String, current_time: i32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn count_unexpired_tokens(&self, current_time: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> part_3/src/next_larger_nodes.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 9 | impl ListNode { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 10 | #[inline] [INFO] [stdout] 11 | fn new(val: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DinnerPlates` is never constructed [INFO] [stdout] --> part_3/src/dinner_plates.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct DinnerPlates { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `push`, `pop`, and `pop_at_stack` are never used [INFO] [stdout] --> part_3/src/dinner_plates.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl DinnerPlates { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 17 | fn new(capacity: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn push(&mut self, val: i32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn pop(&mut self) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn pop_at_stack(&mut self, index: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LockingTree` is never constructed [INFO] [stdout] --> part_3/src/locking_tree.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct LockingTree { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `lock`, `unlock`, and `upgrade` are never used [INFO] [stdout] --> part_3/src/locking_tree.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 11 | impl LockingTree { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 12 | fn new(parent: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn lock(&mut self, num: i32, user: i32) -> bool { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn unlock(&mut self, num: i32, user: i32) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn upgrade(&mut self, num: i32, user: i32) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LRUCache` is never constructed [INFO] [stdout] --> part_3/src/lru_cache.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct LRUCache { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get`, and `put` are never used [INFO] [stdout] --> part_3/src/lru_cache.rs:18:6 [INFO] [stdout] | [INFO] [stdout] 17 | impl LRUCache { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 18 | fn new(capacity: i32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn get(&mut self, key: i32) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn put(&mut self, key: i32, value: i32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FrontMiddleBackQueue` is never constructed [INFO] [stdout] --> part_3/src/front_middle_back_queue.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct FrontMiddleBackQueue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> part_3/src/front_middle_back_queue.rs:10:6 [INFO] [stdout] | [INFO] [stdout] 9 | impl FrontMiddleBackQueue { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 10 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | fn push_front(&mut self, val: i32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | fn push_middle(&mut self, val: i32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn push_back(&mut self, val: i32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn pop_front(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | fn pop_middle(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn pop_back(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SmallestInfiniteSet` is never constructed [INFO] [stdout] --> part_3/src/smallest_infinite_set.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct SmallestInfiniteSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `pop_smallest`, and `add_back` are never used [INFO] [stdout] --> part_3/src/smallest_infinite_set.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 12 | impl SmallestInfiniteSet { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 13 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | fn pop_smallest(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn add_back(&mut self, num: i32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `timeToLive` should have a snake case name [INFO] [stdout] --> part_3/src/autentication_manager.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | fn new(timeToLive: i32) -> Self { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `time_to_live` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling macros v0.1.0 (/opt/rustwide/workdir/macros) [INFO] [stdout] warning: field `length` is never read [INFO] [stdout] --> macros/src/lib.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct ArgLen { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 13 | length: Literal [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking rust-boilerplate v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `part_2::*` [INFO] [stdout] --> src/lib.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub use part_2::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tests` [INFO] [stdout] --> src/find_max_average.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | #[cfg(tests)] [INFO] [stdout] | ^^^^^ help: there is a config with a similar name: `test` [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tests)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tests)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `part_2::*` [INFO] [stdout] --> src/lib.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub use part_2::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tests` [INFO] [stdout] --> src/find_max_average.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | #[cfg(tests)] [INFO] [stdout] | ^^^^^ help: there is a config with a similar name: `test` [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tests)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tests)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/reverse_between.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 27 | while let Some(mut node) = cur { [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: struct `TimeMap` is never constructed [INFO] [stdout] --> src/time_map.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct TimeMap { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set`, and `get` are never used [INFO] [stdout] --> src/time_map.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 14 | impl TimeMap { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn set(&mut self, key: String, value: String, timestamp: i32) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | fn get(&self, key: String, timestamp: i32) -> String { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/reverse_between.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 27 | while let Some(mut node) = cur { [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: struct `TimeMap` is never constructed [INFO] [stdout] --> src/time_map.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | struct TimeMap { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set`, and `get` are never used [INFO] [stdout] --> src/time_map.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 14 | impl TimeMap { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn set(&mut self, key: String, value: String, timestamp: i32) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | fn get(&self, key: String, timestamp: i32) -> String { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.27s [INFO] running `Command { std: "docker" "inspect" "87801f65dbeddc20f9cd562dd29cb004ed4d84cc8a776cc93818afbbc2e4f21f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "87801f65dbeddc20f9cd562dd29cb004ed4d84cc8a776cc93818afbbc2e4f21f", kill_on_drop: false }` [INFO] [stdout] 87801f65dbeddc20f9cd562dd29cb004ed4d84cc8a776cc93818afbbc2e4f21f