[INFO] cloning repository https://github.com/Silveryo/hotel-review-datamining
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Silveryo/hotel-review-datamining" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSilveryo%2Fhotel-review-datamining", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSilveryo%2Fhotel-review-datamining'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 04ca9627b4eebf50db0697fbea2ed1c2b14cce8a
[INFO] checking Silveryo/hotel-review-datamining against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSilveryo%2Fhotel-review-datamining" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Silveryo/hotel-review-datamining
[INFO] finished tweaking git repo https://github.com/Silveryo/hotel-review-datamining
[INFO] tweaked toml for git repo https://github.com/Silveryo/hotel-review-datamining written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Silveryo/hotel-review-datamining on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Silveryo/hotel-review-datamining 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.53
[INFO] [stderr]   Downloaded serde_derive v1.0.158
[INFO] [stderr]   Downloaded serde v1.0.158
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.7
[INFO] [stderr]   Downloaded syn v2.0.10
[INFO] [stderr]   Downloaded libc v0.2.140
[INFO] [stderr]   Downloaded csv v1.2.1
[INFO] [stderr]   Downloaded rust-stemmers v1.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b21e08eb60ea56ca16b077f596040c38ea8191900c569eeade189acab4ab3c57
[INFO] running `Command { std: "docker" "start" "-a" "b21e08eb60ea56ca16b077f596040c38ea8191900c569eeade189acab4ab3c57", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b21e08eb60ea56ca16b077f596040c38ea8191900c569eeade189acab4ab3c57", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b21e08eb60ea56ca16b077f596040c38ea8191900c569eeade189acab4ab3c57", kill_on_drop: false }`
[INFO] [stdout] b21e08eb60ea56ca16b077f596040c38ea8191900c569eeade189acab4ab3c57
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3c1106b13b0197fc101a26c4c5a9199658753a254fd085bab46d637c3db0d18e
[INFO] running `Command { std: "docker" "start" "-a" "3c1106b13b0197fc101a26c4c5a9199658753a254fd085bab46d637c3db0d18e", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling proc-macro2 v1.0.53
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.14
[INFO] [stderr]    Compiling libc v0.2.140
[INFO] [stderr]    Compiling serde_derive v1.0.158
[INFO] [stderr]    Compiling serde v1.0.158
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.8
[INFO] [stderr]     Checking either v1.8.1
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.7
[INFO] [stderr]    Compiling syn v2.0.10
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]     Checking rayon-core v1.11.0
[INFO] [stderr]     Checking crossbeam v0.8.2
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]     Checking rust-stemmers v1.2.0
[INFO] [stderr]     Checking csv v1.2.1
[INFO] [stderr]     Checking app v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]  --> tf_idf.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{self, Write};
[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 imports: `Arc` and `Mutex`
[INFO] [stdout]  --> tf_idf.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Write` and `self`
[INFO] [stdout]  --> tf_idf.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{self, Write};
[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 imports: `Arc` and `Mutex`
[INFO] [stdout]  --> tf_idf.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> main.rs:69:23
[INFO] [stdout]    |
[INFO] [stdout] 69 |     crossbeam::scope(|s| {
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_rows`
[INFO] [stdout]   --> main.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let num_rows = 5;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> main.rs:69:23
[INFO] [stdout]    |
[INFO] [stdout] 69 |     crossbeam::scope(|s| {
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_rows`
[INFO] [stdout]   --> main.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let num_rows = 5;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_tfidf` is never used
[INFO] [stdout]   --> main.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn get_tfidf() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bag_of_words` is never used
[INFO] [stdout]    --> main.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn get_bag_of_words() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bag_of_words` is never used
[INFO] [stdout]    --> main.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn bag_of_words(num_rows: usize) -> (Vec<String>, Vec<Vec<u32>>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_dictionary_to_review_vectors` is never used
[INFO] [stdout]    --> main.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn map_dictionary_to_review_vectors(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `filter_top_n_words` is never used
[INFO] [stdout]    --> main.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 202 | fn filter_top_n_words(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_dictionary` is never used
[INFO] [stdout]    --> main.rs:226:4
[INFO] [stdout]     |
[INFO] [stdout] 226 | fn load_dictionary(file_path: &str) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_csv` is never used
[INFO] [stdout]    --> main.rs:242:4
[INFO] [stdout]     |
[INFO] [stdout] 242 | fn load_csv(file_path: &str) -> Result<Vec<PreprocessedReview>, Box<dyn Error>> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_punctuation` is never used
[INFO] [stdout]   --> preprocess.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn remove_punctuation(text: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_lowercase` is never used
[INFO] [stdout]   --> preprocess.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn to_lowercase(text: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tokenize` is never used
[INFO] [stdout]   --> preprocess.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn tokenize(text: &str) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_stopwords` is never used
[INFO] [stdout]   --> preprocess.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn remove_stopwords(tokens: &[String], stopwords: &HashSet<String>) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `stem` is never used
[INFO] [stdout]   --> preprocess.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn stem(tokens: &[String]) -> Vec<String> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `preprocess` is never used
[INFO] [stdout]   --> preprocess.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn preprocess() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Review` is never constructed
[INFO] [stdout]  --> structs.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Review {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PreprocessedReview` is never constructed
[INFO] [stdout]   --> structs.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct PreprocessedReview {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_term_frequency` is never used
[INFO] [stdout]  --> tf_idf.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn calculate_term_frequency(review_vector: &Vec<u32>) -> Vec<f64> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_inverse_document_frequency` is never used
[INFO] [stdout]   --> tf_idf.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn calculate_inverse_document_frequency(review_vectors: &Vec<Vec<u32>>) -> Vec<f64> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_tfidf` is never used
[INFO] [stdout]   --> tf_idf.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn calculate_tfidf(review_vectors: &Vec<Vec<u32>>) -> Vec<Vec<f64>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_tfidf` is never used
[INFO] [stdout]   --> main.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn get_tfidf() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bag_of_words` is never used
[INFO] [stdout]    --> main.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn get_bag_of_words() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bag_of_words` is never used
[INFO] [stdout]    --> main.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn bag_of_words(num_rows: usize) -> (Vec<String>, Vec<Vec<u32>>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_dictionary_to_review_vectors` is never used
[INFO] [stdout]    --> main.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn map_dictionary_to_review_vectors(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `filter_top_n_words` is never used
[INFO] [stdout]    --> main.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 202 | fn filter_top_n_words(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_dictionary` is never used
[INFO] [stdout]    --> main.rs:226:4
[INFO] [stdout]     |
[INFO] [stdout] 226 | fn load_dictionary(file_path: &str) -> Result<Vec<String>, Box<dyn Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_csv` is never used
[INFO] [stdout]    --> main.rs:242:4
[INFO] [stdout]     |
[INFO] [stdout] 242 | fn load_csv(file_path: &str) -> Result<Vec<PreprocessedReview>, Box<dyn Error>> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_punctuation` is never used
[INFO] [stdout]   --> preprocess.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn remove_punctuation(text: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_lowercase` is never used
[INFO] [stdout]   --> preprocess.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn to_lowercase(text: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tokenize` is never used
[INFO] [stdout]   --> preprocess.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn tokenize(text: &str) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_stopwords` is never used
[INFO] [stdout]   --> preprocess.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn remove_stopwords(tokens: &[String], stopwords: &HashSet<String>) -> Vec<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `stem` is never used
[INFO] [stdout]   --> preprocess.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn stem(tokens: &[String]) -> Vec<String> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `preprocess` is never used
[INFO] [stdout]   --> preprocess.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn preprocess() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Review` is never constructed
[INFO] [stdout]  --> structs.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Review {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PreprocessedReview` is never constructed
[INFO] [stdout]   --> structs.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct PreprocessedReview {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_term_frequency` is never used
[INFO] [stdout]  --> tf_idf.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn calculate_term_frequency(review_vector: &Vec<u32>) -> Vec<f64> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_inverse_document_frequency` is never used
[INFO] [stdout]   --> tf_idf.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn calculate_inverse_document_frequency(review_vectors: &Vec<Vec<u32>>) -> Vec<f64> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_tfidf` is never used
[INFO] [stdout]   --> tf_idf.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn calculate_tfidf(review_vectors: &Vec<Vec<u32>>) -> Vec<Vec<f64>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.08s
[INFO] running `Command { std: "docker" "inspect" "3c1106b13b0197fc101a26c4c5a9199658753a254fd085bab46d637c3db0d18e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3c1106b13b0197fc101a26c4c5a9199658753a254fd085bab46d637c3db0d18e", kill_on_drop: false }`
[INFO] [stdout] 3c1106b13b0197fc101a26c4c5a9199658753a254fd085bab46d637c3db0d18e
