[INFO] cloning repository https://github.com/at-888/ds210-final-project
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/at-888/ds210-final-project" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fat-888%2Fds210-final-project", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fat-888%2Fds210-final-project'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] af07f40bccbcd457f26ea0d39ced122b651a4ddf
[INFO] testing at-888/ds210-final-project against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fat-888%2Fds210-final-project" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/at-888/ds210-final-project
[INFO] finished tweaking git repo https://github.com/at-888/ds210-final-project
[INFO] tweaked toml for git repo https://github.com/at-888/ds210-final-project written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/at-888/ds210-final-project on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/at-888/ds210-final-project 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 01ff5bb2c983ee795939649edd7008ca98936ac040c43c9dab578ff174aa9034
[INFO] running `Command { std: "docker" "start" "-a" "01ff5bb2c983ee795939649edd7008ca98936ac040c43c9dab578ff174aa9034", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "01ff5bb2c983ee795939649edd7008ca98936ac040c43c9dab578ff174aa9034", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "01ff5bb2c983ee795939649edd7008ca98936ac040c43c9dab578ff174aa9034", kill_on_drop: false }`
[INFO] [stdout] 01ff5bb2c983ee795939649edd7008ca98936ac040c43c9dab578ff174aa9034
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 49e4e5690ebc63fa620b9a50bc29552f4c23eae9dd7e8eb29c6dad5e548221f2
[INFO] running `Command { std: "docker" "start" "-a" "49e4e5690ebc63fa620b9a50bc29552f4c23eae9dd7e8eb29c6dad5e548221f2", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling ndarray v0.16.1
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.1
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling final_project v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/main.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ndarray::{Array, Array2};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `csv::ReaderBuilder`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use csv::ReaderBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `csv::ReaderBuilder`
[INFO] [stdout]  --> src/csv_functions.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use csv::ReaderBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/spam_functions.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ndarray::{Array, Array2};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `csv::ReaderBuilder`
[INFO] [stdout]  --> src/spam_functions.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use csv::ReaderBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/spam_functions.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/spam_functions.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             ;
[INFO] [stdout]    |             ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stdout]   --> src/csv_functions.rs:51:72
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let out_arr: Array2<crate::ColumnVal> = Array::from_vec(giant_vec).into_shape((counter, 4)).expect("Failed to reshape!");
[INFO] [stdout]    |                                                                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stdout]    --> src/csv_functions.rs:106:72
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let out_arr: Array2<crate::ColumnVal> = Array::from_vec(giant_vec).into_shape((counter, 4)).expect("Failed to reshape!");
[INFO] [stdout]     |                                                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]   --> src/csv_functions.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let headers = rdr.headers();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]   --> src/csv_functions.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let headers = rdr.headers();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unique_users`
[INFO] [stdout]   --> src/spam_functions.rs:17:55
[INFO] [stdout]    |
[INFO] [stdout] 17 | ...<crate::ColumnVal>, unique_users: &Vec<String>) -> (u32, Vec<String>) { // returns number of spam users and a vector of spam users
[INFO] [stdout]    |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `some_bool`
[INFO] [stdout]   --> src/spam_functions.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |             crate::ColumnVal::Two(some_bool) => format!("Dummy name"), // should not execute
[INFO] [stdout]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spammers`
[INFO] [stdout]   --> src/main.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let (num_spam_users, spammers) = spam_functions::find_spam(&my_arr, &users); // spammers is a vector of unique spammers
[INFO] [stdout]    |                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spammers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `given_content_as_CV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:143:13
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let given_content_as_CV = in_df[[i, 1]].clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `given_content_as_cv`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `given_user_as_CV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let given_user_as_CV = in_df[[i, 0]].clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `given_user_as_cv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_CSV_using_reader` should have a snake case name
[INFO] [stdout]   --> src/csv_functions.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn read_CSV_using_reader(path: &str) -> Array2<crate::ColumnVal> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `read_csv_using_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.60s
[INFO] running `Command { std: "docker" "inspect" "49e4e5690ebc63fa620b9a50bc29552f4c23eae9dd7e8eb29c6dad5e548221f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "49e4e5690ebc63fa620b9a50bc29552f4c23eae9dd7e8eb29c6dad5e548221f2", kill_on_drop: false }`
[INFO] [stdout] 49e4e5690ebc63fa620b9a50bc29552f4c23eae9dd7e8eb29c6dad5e548221f2
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 949939ace6363a143d9f38669297306890fe480f611a205794c30119803fa6a8
[INFO] running `Command { std: "docker" "start" "-a" "949939ace6363a143d9f38669297306890fe480f611a205794c30119803fa6a8", kill_on_drop: false }`
[INFO] [stderr]    Compiling final_project v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `csv::ReaderBuilder`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use csv::ReaderBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `csv::ReaderBuilder`
[INFO] [stdout]  --> src/csv_functions.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use csv::ReaderBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/spam_functions.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ndarray::{Array, Array2};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `csv::ReaderBuilder`
[INFO] [stdout]  --> src/spam_functions.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use csv::ReaderBuilder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/spam_functions.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/spam_functions.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             ;
[INFO] [stdout]    |             ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stdout]   --> src/csv_functions.rs:51:72
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let out_arr: Array2<crate::ColumnVal> = Array::from_vec(giant_vec).into_shape((counter, 4)).expect("Failed to reshape!");
[INFO] [stdout]    |                                                                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stdout]    --> src/csv_functions.rs:106:72
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let out_arr: Array2<crate::ColumnVal> = Array::from_vec(giant_vec).into_shape((counter, 4)).expect("Failed to reshape!");
[INFO] [stdout]     |                                                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stdout]    --> src/main.rs:402:64
[INFO] [stdout]     |
[INFO] [stdout] 402 |     let my_arr: Array2<ColumnVal> = Array::from_vec(giant_vec).into_shape((8,4)).expect("Unable to reshape");
[INFO] [stdout]     |                                                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]   --> src/csv_functions.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let headers = rdr.headers();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `headers`
[INFO] [stdout]   --> src/csv_functions.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let headers = rdr.headers();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unique_users`
[INFO] [stdout]   --> src/spam_functions.rs:17:55
[INFO] [stdout]    |
[INFO] [stdout] 17 | ...<crate::ColumnVal>, unique_users: &Vec<String>) -> (u32, Vec<String>) { // returns number of spam users and a vector of spam users
[INFO] [stdout]    |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `some_bool`
[INFO] [stdout]   --> src/spam_functions.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |             crate::ColumnVal::Two(some_bool) => format!("Dummy name"), // should not execute
[INFO] [stdout]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spammers`
[INFO] [stdout]   --> src/main.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let (num_spam_users, spammers) = spam_functions::find_spam(&my_arr, &users); // spammers is a vector of unique spammers
[INFO] [stdout]    |                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spammers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `users`
[INFO] [stdout]    --> src/main.rs:311:18
[INFO] [stdout]     |
[INFO] [stdout] 311 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `users`
[INFO] [stdout]    --> src/main.rs:322:18
[INFO] [stdout]     |
[INFO] [stdout] 322 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `my_map`
[INFO] [stdout]    --> src/main.rs:333:10
[INFO] [stdout]     |
[INFO] [stdout] 333 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stdout]     |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `users`
[INFO] [stdout]    --> src/main.rs:333:18
[INFO] [stdout]     |
[INFO] [stdout] 333 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `my_map`
[INFO] [stdout]    --> src/main.rs:403:10
[INFO] [stdout]     |
[INFO] [stdout] 403 |     let (my_map, users) = map_users_to_words(&my_arr); // my_map maps a user to a hashset of words they used. users is a vector of ...
[INFO] [stdout]     |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `given_content_as_CV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:143:13
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let given_content_as_CV = in_df[[i, 1]].clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `given_content_as_cv`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `given_user_as_CV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let given_user_as_CV = in_df[[i, 0]].clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `given_user_as_cv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_CSV_using_reader` should have a snake case name
[INFO] [stdout]   --> src/csv_functions.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn read_CSV_using_reader(path: &str) -> Array2<crate::ColumnVal> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `read_csv_using_reader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.93s
[INFO] running `Command { std: "docker" "inspect" "949939ace6363a143d9f38669297306890fe480f611a205794c30119803fa6a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "949939ace6363a143d9f38669297306890fe480f611a205794c30119803fa6a8", kill_on_drop: false }`
[INFO] [stdout] 949939ace6363a143d9f38669297306890fe480f611a205794c30119803fa6a8
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9c62685a77b75424b6cad33c9a1d64e8aeb89cd49fb336c4e950cfc13d6fdfd6
[INFO] running `Command { std: "docker" "start" "-a" "9c62685a77b75424b6cad33c9a1d64e8aeb89cd49fb336c4e950cfc13d6fdfd6", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `csv::ReaderBuilder`
[INFO] [stderr]  --> src/main.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use csv::ReaderBuilder;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `csv::ReaderBuilder`
[INFO] [stderr]  --> src/csv_functions.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use csv::ReaderBuilder;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Array`
[INFO] [stderr]  --> src/spam_functions.rs:1:15
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ndarray::{Array, Array2};
[INFO] [stderr]   |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `csv::ReaderBuilder`
[INFO] [stderr]  --> src/spam_functions.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use csv::ReaderBuilder;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::VecDeque`
[INFO] [stderr]  --> src/spam_functions.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::collections::VecDeque;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> src/spam_functions.rs:59:13
[INFO] [stderr]    |
[INFO] [stderr] 59 |             ;
[INFO] [stderr]    |             ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stderr]   --> src/csv_functions.rs:51:72
[INFO] [stderr]    |
[INFO] [stderr] 51 |     let out_arr: Array2<crate::ColumnVal> = Array::from_vec(giant_vec).into_shape((counter, 4)).expect("Failed to reshape!");
[INFO] [stderr]    |                                                                        ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stderr]    --> src/csv_functions.rs:106:72
[INFO] [stderr]     |
[INFO] [stderr] 106 |     let out_arr: Array2<crate::ColumnVal> = Array::from_vec(giant_vec).into_shape((counter, 4)).expect("Failed to reshape!");
[INFO] [stderr]     |                                                                        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `ndarray::impl_methods::<impl ndarray::ArrayBase<S, D>>::into_shape`: Use `.into_shape_with_order()` or `.to_shape()`
[INFO] [stderr]    --> src/main.rs:402:64
[INFO] [stderr]     |
[INFO] [stderr] 402 |     let my_arr: Array2<ColumnVal> = Array::from_vec(giant_vec).into_shape((8,4)).expect("Unable to reshape");
[INFO] [stderr]     |                                                                ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `headers`
[INFO] [stderr]   --> src/csv_functions.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let headers = rdr.headers();
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `headers`
[INFO] [stderr]   --> src/csv_functions.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |     let headers = rdr.headers();
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_headers`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `unique_users`
[INFO] [stderr]   --> src/spam_functions.rs:17:55
[INFO] [stderr]    |
[INFO] [stderr] 17 | ...<crate::ColumnVal>, unique_users: &Vec<String>) -> (u32, Vec<String>) { // returns number of spam users and a vector of spam users
[INFO] [stderr]    |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_users`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `some_bool`
[INFO] [stderr]   --> src/spam_functions.rs:31:35
[INFO] [stderr]    |
[INFO] [stderr] 31 |             crate::ColumnVal::Two(some_bool) => format!("Dummy name"), // should not execute
[INFO] [stderr]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_bool`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `spammers`
[INFO] [stderr]   --> src/main.rs:33:26
[INFO] [stderr]    |
[INFO] [stderr] 33 |     let (num_spam_users, spammers) = spam_functions::find_spam(&my_arr, &users); // spammers is a vector of unique spammers
[INFO] [stderr]    |                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spammers`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `users`
[INFO] [stderr]    --> src/main.rs:311:18
[INFO] [stderr]     |
[INFO] [stderr] 311 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stderr]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_users`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `users`
[INFO] [stderr]    --> src/main.rs:322:18
[INFO] [stderr]     |
[INFO] [stderr] 322 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stderr]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_users`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `my_map`
[INFO] [stderr]    --> src/main.rs:333:10
[INFO] [stderr]     |
[INFO] [stderr] 333 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stderr]     |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_map`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `users`
[INFO] [stderr]    --> src/main.rs:333:18
[INFO] [stderr]     |
[INFO] [stderr] 333 |     let (my_map, users) = map_users_to_words(&df); // my_map maps a user to a hashset of words they used. users is a vector of uniq...
[INFO] [stderr]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_users`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `my_map`
[INFO] [stderr]    --> src/main.rs:403:10
[INFO] [stderr]     |
[INFO] [stderr] 403 |     let (my_map, users) = map_users_to_words(&my_arr); // my_map maps a user to a hashset of words they used. users is a vector of ...
[INFO] [stderr]     |          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_map`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `given_content_as_CV` should have a snake case name
[INFO] [stderr]    --> src/main.rs:143:13
[INFO] [stderr]     |
[INFO] [stderr] 143 |         let given_content_as_CV = in_df[[i, 1]].clone();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `given_content_as_cv`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `given_user_as_CV` should have a snake case name
[INFO] [stderr]    --> src/main.rs:144:13
[INFO] [stderr]     |
[INFO] [stderr] 144 |         let given_user_as_CV = in_df[[i, 0]].clone();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `given_user_as_cv`
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_CSV_using_reader` should have a snake case name
[INFO] [stderr]   --> src/csv_functions.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub fn read_CSV_using_reader(path: &str) -> Array2<crate::ColumnVal> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `read_csv_using_reader`
[INFO] [stderr] 
[INFO] [stderr] warning: `final_project` (bin "final_project" test) generated 22 warnings (run `cargo fix --bin "final_project" -p final_project --tests` to apply 15 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/final_project-2f146653f9043f51)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test test_spam_finding ... ok
[INFO] [stdout] test test_spam_arr_making ... ok
[INFO] [stdout] test test_similarity1 ... ok
[INFO] [stdout] test test_similarity2 ... ok
[INFO] [stdout] test test_graph_creation ... ok
[INFO] [stdout] test test_num_graphs has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "9c62685a77b75424b6cad33c9a1d64e8aeb89cd49fb336c4e950cfc13d6fdfd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9c62685a77b75424b6cad33c9a1d64e8aeb89cd49fb336c4e950cfc13d6fdfd6", kill_on_drop: false }`
[INFO] [stdout] 9c62685a77b75424b6cad33c9a1d64e8aeb89cd49fb336c4e950cfc13d6fdfd6
