[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] a9f0ef003bdc6b583c7237a6e55e507cbe0d5af2
[INFO] checking Sociosarbis/rust-boilerplate against nightly-2024-02-05 for check-cfg
[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 nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "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" "+nightly-2024-02-05" "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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2f25163b7a324910d40c73c3292ca6be64d16f097caefe75d8f199cb831f2ff6
[INFO] running `Command { std: "docker" "start" "-a" "2f25163b7a324910d40c73c3292ca6be64d16f097caefe75d8f199cb831f2ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2f25163b7a324910d40c73c3292ca6be64d16f097caefe75d8f199cb831f2ff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f25163b7a324910d40c73c3292ca6be64d16f097caefe75d8f199cb831f2ff6", kill_on_drop: false }`
[INFO] [stdout] 2f25163b7a324910d40c73c3292ca6be64d16f097caefe75d8f199cb831f2ff6
[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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b5425874ea225b381586dd64176b8292c989987cf16a2a2ac4840d9bd39e3f59
[INFO] running `Command { std: "docker" "start" "-a" "b5425874ea225b381586dd64176b8292c989987cf16a2a2ac4840d9bd39e3f59", 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]    Compiling unicode-xid v0.2.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.10
[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] [stderr]    Compiling quote v1.0.9
[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_2 v0.1.0 (/opt/rustwide/workdir/part_2)
[INFO] [stderr]     Checking part_3 v0.1.0 (/opt/rustwide/workdir/part_3)
[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<Rc<RefCell<TreeNode>>> = 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: field `arr` is never read
[INFO] [stdout]  --> part_2/src/median_finder.rs:7:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct MedianFinder {
[INFO] [stdout]   |        ------------ field in this struct
[INFO] [stdout] 7 |   arr: Vec<i32>
[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<i32>) -> 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<Vec<i32>> {
[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<char>, 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<i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn reset(&mut self) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn shuffle(&mut self) -> Vec<i32> {
[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: fields `count`, `key`, `next`, and `prev` are never read
[INFO] [stdout]  --> part_2/src/all_one.rs:5:3
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Node {
[INFO] [stdout]   |        ---- fields in this struct
[INFO] [stdout] 5 |   count: i32,
[INFO] [stdout]   |   ^^^^^
[INFO] [stdout] 6 |   key: String,
[INFO] [stdout]   |   ^^^
[INFO] [stdout] 7 |   next: Option<Rc<RefCell<Node>>>,
[INFO] [stdout]   |   ^^^^
[INFO] [stdout] 8 |   prev: Option<Rc<RefCell<Node>>>
[INFO] [stdout]   |   ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[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<i64>) -> 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<f64> {
[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<Option<Rc<RefCell<TreeNode>>>> = 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<Vec<i32>>) -> 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::<impl 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<Vec<i32>> {
[INFO] [stdout]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `find_solution::<impl 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<i32>) -> 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: 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: 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: 4 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: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4.28s
[INFO] running `Command { std: "docker" "inspect" "b5425874ea225b381586dd64176b8292c989987cf16a2a2ac4840d9bd39e3f59", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b5425874ea225b381586dd64176b8292c989987cf16a2a2ac4840d9bd39e3f59", kill_on_drop: false }`
[INFO] [stdout] b5425874ea225b381586dd64176b8292c989987cf16a2a2ac4840d9bd39e3f59
