[INFO] cloning repository https://github.com/zhanif3/701
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zhanif3/701" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhanif3%2F701", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhanif3%2F701'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 04144afb7cf245596996350a6d5f8fa6eed1b886
[INFO] testing zhanif3/701 against beta-2020-10-09 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhanif3%2F701" "/workspace/builds/worker-4/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'...
[INFO] [stderr] done.
[INFO] [stderr] Checking out files:  28% (11/38)   
Checking out files:  31% (12/38)   
Checking out files:  34% (13/38)   
Checking out files:  36% (14/38)   
Checking out files:  39% (15/38)   
Checking out files:  42% (16/38)   
Checking out files:  44% (17/38)   
Checking out files:  47% (18/38)   
Checking out files:  50% (19/38)   
Checking out files:  52% (20/38)   
Checking out files:  55% (21/38)   
Checking out files:  57% (22/38)   
Checking out files:  60% (23/38)   
Checking out files:  63% (24/38)   
Checking out files:  65% (25/38)   
Checking out files:  68% (26/38)   
Checking out files:  71% (27/38)   
Checking out files:  73% (28/38)   
Checking out files:  76% (29/38)   
Checking out files:  78% (30/38)   
Checking out files:  81% (31/38)   
Checking out files:  84% (32/38)   
Checking out files:  86% (33/38)   
Checking out files:  89% (34/38)   
Checking out files:  92% (35/38)   
Checking out files:  94% (36/38)   
Checking out files:  97% (37/38)   
Checking out files: 100% (38/38)   
Checking out files: 100% (38/38), done.
[INFO] validating manifest of git repo https://github.com/zhanif3/701 on toolchain beta-2020-10-09
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/zhanif3/701
[INFO] finished tweaking git repo https://github.com/zhanif3/701
[INFO] tweaked toml for git repo https://github.com/zhanif3/701 written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] crate git repo https://github.com/zhanif3/701 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bytecount v0.3.2
[INFO] [stderr]   Downloaded feature-probe v0.1.1
[INFO] [stderr]   Downloaded bio-types v0.5.1
[INFO] [stderr]   Downloaded crossbeam-utils v0.2.2
[INFO] [stderr]   Downloaded bincode v1.1.3
[INFO] [stderr]   Downloaded bit-set v0.5.1
[INFO] [stderr]   Downloaded bv v0.10.0
[INFO] [stderr]   Downloaded ordered-float v1.0.2
[INFO] [stderr]   Downloaded itertools-num v0.1.3
[INFO] [stderr]   Downloaded itertools v0.7.11
[INFO] [stderr]   Downloaded multimap v0.4.0
[INFO] [stderr]   Downloaded ndarray v0.12.1
[INFO] [stderr]   Downloaded matrixmultiply v0.1.15
[INFO] [stderr]   Downloaded statrs v0.9.0
[INFO] [stderr]   Downloaded custom_derive v0.1.7
[INFO] [stderr]   Downloaded rawpointer v0.1.0
[INFO] [stderr]   Downloaded tinytemplate v1.0.1
[INFO] [stderr]   Downloaded crossbeam-deque v0.2.0
[INFO] [stderr]   Downloaded either v1.5.2
[INFO] [stderr]   Downloaded criterion-plot v0.3.1
[INFO] [stderr]   Downloaded bio v0.25.0
[INFO] [stderr]   Downloaded rand_xoshiro v0.1.0
[INFO] [stderr]   Downloaded arrayvec v0.4.10
[INFO] [stderr]   Downloaded num-complex v0.2.1
[INFO] [stderr]   Downloaded criterion v0.2.11
[INFO] [stderr]   Downloaded itertools v0.8.0
[INFO] [stderr]   Downloaded proc-macro2 v0.4.28
[INFO] [stderr]   Downloaded newtype_derive v0.1.6
[INFO] [stderr]   Downloaded crossbeam-epoch v0.3.1
[INFO] [stderr]   Downloaded bit-vec v0.5.1
[INFO] [stderr]   Downloaded num_cpus v1.10.0
[INFO] [stderr]   Downloaded rayon-core v1.4.1
[INFO] [stderr]   Downloaded rayon v1.0.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 285595e29b8c748f72d232f246efb22c12247ed2bed62f0ae5a665f43346b3b9
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "285595e29b8c748f72d232f246efb22c12247ed2bed62f0ae5a665f43346b3b9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "285595e29b8c748f72d232f246efb22c12247ed2bed62f0ae5a665f43346b3b9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "285595e29b8c748f72d232f246efb22c12247ed2bed62f0ae5a665f43346b3b9", kill_on_drop: false }`
[INFO] [stdout] 285595e29b8c748f72d232f246efb22c12247ed2bed62f0ae5a665f43346b3b9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eed0533e5fb5afdbc1732838182085e46ad24a72db1290177790f83762c90bbb
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "eed0533e5fb5afdbc1732838182085e46ad24a72db1290177790f83762c90bbb", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.53
[INFO] [stderr]    Compiling proc-macro2 v0.4.28
[INFO] [stderr]    Compiling syn v0.15.33
[INFO] [stderr]    Compiling serde v1.0.90
[INFO] [stderr]    Compiling memchr v2.2.0
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]    Compiling either v1.5.2
[INFO] [stderr]    Compiling bio v0.25.0
[INFO] [stderr]    Compiling bytecount v0.3.2
[INFO] [stderr]    Compiling bincode v1.1.3
[INFO] [stderr]    Compiling itertools-num v0.1.3
[INFO] [stderr]    Compiling itertools v0.7.11
[INFO] [stderr]    Compiling bv v0.10.0
[INFO] [stderr]    Compiling quote v0.6.12
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling num_cpus v1.10.0
[INFO] [stderr]    Compiling rayon-core v1.4.1
[INFO] [stderr]    Compiling ndarray v0.12.1
[INFO] [stderr]    Compiling aho-corasick v0.7.3
[INFO] [stderr]    Compiling csv-core v0.1.5
[INFO] [stderr]    Compiling rayon v1.0.3
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling statrs v0.9.0
[INFO] [stderr]    Compiling regex v1.1.6
[INFO] [stderr]    Compiling serde_derive v1.0.90
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling multimap v0.4.0
[INFO] [stderr]    Compiling bio-types v0.5.1
[INFO] [stderr]    Compiling csv v1.0.7
[INFO] [stderr]    Compiling bwt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::types::Suffix`
[INFO] [stdout]  --> src/common/search.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::Suffix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::suffix_array`
[INFO] [stdout]  --> src/common/search.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::suffix_array;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/common/search.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let offset_char = ((first_rows.first().unwrap().1).0);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IntoParallelRefIterator`
[INFO] [stdout]  --> src/common/suffix_array.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rayon::iter::IntoParallelRefIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Result`
[INFO] [stdout]   --> src/common/suffix_array.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{BufRead, BufReader, Result};
[INFO] [stdout]    |               ^^^^^^^  ^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/common/suffix_array.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/common/suffix_array.rs:45:20
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut s: Vec<(Suffix)> = (0 .. t.len()).map(|x: usize| {
[INFO] [stdout]    |                    ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]   --> src/common/search.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut start: usize;
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/common/search.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let mut end: usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/common/search.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Some(x) => (),
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/common/search.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |                     Some(c) => (),
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]   --> src/common/suffix_array.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |         Ok(elapsed) => {
[INFO] [stdout]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/common/suffix_array.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]   --> src/common/suffix_array.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Ok(elapsed) => {
[INFO] [stdout]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/common/suffix_array.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/common/suffix_array.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     for i in 0 .. index.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]  --> src/common/search.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Counts` should have a snake case name
[INFO] [stdout]   --> src/common/search.rs:43:70
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn search(query: &str, zipped: &Vec<(&Nucleotide, &Nucleotide)>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stdout]    |                                                                      ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Counts` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:103:68
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn get_pos_from_vec(rows: &Vec<&(&(char, usize), &(char, usize))>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stdout]     |                                                                    ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `L` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub L: Vec<Nucleotide>,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `F` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub F: Vec<Nucleotide>, // Character,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Index` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub Index: HashMap<Nucleotide, Nucleotide>,
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FCounts` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub FCounts: HashMap<u8, usize>,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fcounts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let F: Vec<Nucleotide> = sa.iter().enumerate().map(|suffix| {
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     let L: Vec<Nucleotide> = sa.iter().map(|suffix| {
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Index` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let Index: HashMap<Nucleotide, Nucleotide> = (0 .. t.len()).into_par_iter().map(|i| {
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/bin/main.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]   --> src/bin/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::Read;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]   --> src/bin/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::iter::repeat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/bin/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/main.rs:20:44
[INFO] [stdout]    |
[INFO] [stdout] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/bin/main.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/search_client.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/search_client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/bin/search_client.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/bin/search_client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/bin/search_client.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]  --> src/bin/search_client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::iter::repeat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/search_client.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/search_client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]   --> src/bin/search_client.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::str;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/search_client.rs:16:44
[INFO] [stdout]    |
[INFO] [stdout] 16 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/search_client.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let mut lf_buffer = fs::read("lf.bincode")?;
[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: unused variable: `original_string`
[INFO] [stdout]   --> src/bin/main.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let original_string = common::suffix_array::reverse_bwt(&lf.Index);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_string`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]    --> src/bin/main.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     let g = bincode::serialize_into(&mut lf_buffer, &lf);
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `suffix_strings`
[INFO] [stdout]    --> src/bin/main.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     let suffix_strings: Vec<&str> = (positions.1).iter().map(|x| {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_suffix_strings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/all_in_one.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/all_in_one.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]   --> src/bin/all_in_one.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::Read;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> src/bin/all_in_one.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> src/bin/all_in_one.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]   --> src/bin/all_in_one.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::iter::repeat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/bin/all_in_one.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/all_in_one.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/main.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let T = file_contents.as_str();
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]   --> src/bin/all_in_one.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::str;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/all_in_one.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/all_in_one.rs:20:44
[INFO] [stdout]    |
[INFO] [stdout] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/bin/all_in_one.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/all_in_one.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/bwt_rosalind.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/bwt_rosalind.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::iter::repeat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator`, `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `SystemTime`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/all_in_one.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_string`
[INFO] [stdout]   --> src/bin/all_in_one.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let original_string = common::suffix_array::reverse_bwt(&lf.Index);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/all_in_one.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/all_in_one.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let T = file_contents.as_str();
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bin/main.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     lf_buffer.flush();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IndexedParallelIterator`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use rayon::iter::IndexedParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::ParallelIterator`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rayon::iter::ParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     for i in 0 .. index.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_char`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let final_char = stripped.chars().last().expect("Something went wrong when getting the last character. Does the file have contents?");
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_char`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let mut stripped = contents.replace('\n', "");
[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: unused import: `std::io`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::iter::repeat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::str;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::borrow::Borrow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:70:19
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn generate_l(T: &str) -> Vec<Nuc> {
[INFO] [stdout]    |                   ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let L: Vec<Nucleotide> = T.as_bytes().iter().map(|c| {
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:80:19
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn generate_f(T: &str) -> Vec<Nuc> {
[INFO] [stdout]    |                   ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut F: Vec<Nucleotide> = T.as_bytes().iter().map(|c| {
[INFO] [stdout]    |             ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let T = file_contents.as_str();
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let L = generate_l(&T);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let F = generate_f(&T);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Index` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let Index: HashMap<Nucleotide, Nucleotide> = (0..T.len()).map(|i| {
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let T = file_contents.as_str();
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 17s
[INFO] running `Command { std: "docker" "inspect" "eed0533e5fb5afdbc1732838182085e46ad24a72db1290177790f83762c90bbb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eed0533e5fb5afdbc1732838182085e46ad24a72db1290177790f83762c90bbb", kill_on_drop: false }`
[INFO] [stdout] eed0533e5fb5afdbc1732838182085e46ad24a72db1290177790f83762c90bbb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 8aa3023be58ed4c0066e93fff4cad6f3cf875a9d6700cec7d2e8c2f0dfe6ac5f
[INFO] running `Command { std: "docker" "start" "-a" "8aa3023be58ed4c0066e93fff4cad6f3cf875a9d6700cec7d2e8c2f0dfe6ac5f", kill_on_drop: false }`
[INFO] [stderr]    Compiling cast v0.2.2
[INFO] [stderr]    Compiling itertools v0.8.0
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_xoshiro v0.1.0
[INFO] [stderr]    Compiling serde_json v1.0.39
[INFO] [stdout] warning: unused import: `crate::types::Suffix`
[INFO] [stdout]  --> src/common/search.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::Suffix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::suffix_array`
[INFO] [stdout]  --> src/common/search.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::suffix_array;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/common/search.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let offset_char = ((first_rows.first().unwrap().1).0);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IntoParallelRefIterator`
[INFO] [stdout]  --> src/common/suffix_array.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rayon::iter::IntoParallelRefIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Result`
[INFO] [stdout]   --> src/common/suffix_array.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{BufRead, BufReader, Result};
[INFO] [stdout]    |               ^^^^^^^  ^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/common/suffix_array.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/common/suffix_array.rs:45:20
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut s: Vec<(Suffix)> = (0 .. t.len()).map(|x: usize| {
[INFO] [stdout]    |                    ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]   --> src/common/search.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut start: usize;
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/common/search.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let mut end: usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/common/search.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Some(x) => (),
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/common/search.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |                     Some(c) => (),
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]   --> src/common/suffix_array.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |         Ok(elapsed) => {
[INFO] [stdout]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/common/suffix_array.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]   --> src/common/suffix_array.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Ok(elapsed) => {
[INFO] [stdout]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/common/suffix_array.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/common/suffix_array.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     for i in 0 .. index.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]  --> src/common/search.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Counts` should have a snake case name
[INFO] [stdout]   --> src/common/search.rs:43:70
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn search(query: &str, zipped: &Vec<(&Nucleotide, &Nucleotide)>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stdout]    |                                                                      ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Counts` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:103:68
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn get_pos_from_vec(rows: &Vec<&(&(char, usize), &(char, usize))>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stdout]     |                                                                    ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `L` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub L: Vec<Nucleotide>,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `F` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub F: Vec<Nucleotide>, // Character,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Index` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub Index: HashMap<Nucleotide, Nucleotide>,
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FCounts` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub FCounts: HashMap<u8, usize>,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fcounts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let F: Vec<Nucleotide> = sa.iter().enumerate().map(|suffix| {
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     let L: Vec<Nucleotide> = sa.iter().map(|suffix| {
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Index` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let Index: HashMap<Nucleotide, Nucleotide> = (0 .. t.len()).into_par_iter().map(|i| {
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion-plot v0.3.1
[INFO] [stderr]    Compiling tinytemplate v1.0.1
[INFO] [stderr]    Compiling criterion v0.2.11
[INFO] [stderr]    Compiling bwt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/all_in_one.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/all_in_one.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]   --> src/bin/all_in_one.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::Read;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> src/bin/all_in_one.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> src/bin/all_in_one.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]   --> src/bin/all_in_one.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::iter::repeat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/bin/all_in_one.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/all_in_one.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]   --> src/bin/all_in_one.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::str;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/all_in_one.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/all_in_one.rs:20:44
[INFO] [stdout]    |
[INFO] [stdout] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/bin/all_in_one.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/bwt_rosalind.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/bwt_rosalind.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::iter::repeat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/all_in_one.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/all_in_one.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_string`
[INFO] [stdout]   --> src/bin/all_in_one.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let original_string = common::suffix_array::reverse_bwt(&lf.Index);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/all_in_one.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/bin/main.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]   --> src/bin/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::Read;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]   --> src/bin/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::iter::repeat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/bin/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/main.rs:20:44
[INFO] [stdout]    |
[INFO] [stdout] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/bin/main.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator`, `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `SystemTime`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/all_in_one.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let T = file_contents.as_str();
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Suffix`
[INFO] [stdout]  --> src/common/search.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::Suffix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::suffix_array`
[INFO] [stdout]  --> src/common/search.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::suffix_array;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IndexedParallelIterator`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use rayon::iter::IndexedParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/common/search.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let offset_char = ((first_rows.first().unwrap().1).0);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::ParallelIterator`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rayon::iter::ParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IntoParallelRefIterator`
[INFO] [stdout]  --> src/common/suffix_array.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rayon::iter::IntoParallelRefIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead`, `BufReader`, `Result`
[INFO] [stdout]   --> src/common/suffix_array.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{BufRead, BufReader, Result};
[INFO] [stdout]    |               ^^^^^^^  ^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::iter::repeat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     for i in 0 .. index.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::str;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::mem;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::borrow::Borrow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> src/common/suffix_array.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/common/suffix_array.rs:45:20
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut s: Vec<(Suffix)> = (0 .. t.len()).map(|x: usize| {
[INFO] [stdout]    |                    ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `final_char`
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let final_char = stripped.chars().last().expect("Something went wrong when getting the last character. Does the file have contents?");
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_char`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/bin/search_client.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/bin/search_client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/bin/search_client.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/bin/search_client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> src/bin/search_client.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::repeat`
[INFO] [stdout]  --> src/bin/search_client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::iter::repeat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bin/search_client.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]   --> src/bin/search_client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashSet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str`
[INFO] [stdout]   --> src/bin/search_client.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::str;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stdout]   --> src/bin/search_client.rs:16:44
[INFO] [stdout]    |
[INFO] [stdout] 16 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let mut stripped = contents.replace('\n', "");
[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 `T` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:70:19
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn generate_l(T: &str) -> Vec<Nuc> {
[INFO] [stdout]    |                   ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let L: Vec<Nucleotide> = T.as_bytes().iter().map(|c| {
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:80:19
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn generate_f(T: &str) -> Vec<Nuc> {
[INFO] [stdout]    |                   ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]   --> src/bin/bwt_rosalind.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut F: Vec<Nucleotide> = T.as_bytes().iter().map(|c| {
[INFO] [stdout]    |             ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let T = file_contents.as_str();
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let L = generate_l(&T);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let F = generate_f(&T);
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Index` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |     let Index: HashMap<Nucleotide, Nucleotide> = (0..T.len()).map(|i| {
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ROSALIND_TEST_TRUE` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn ROSALIND_TEST_TRUE() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `rosalind_test_true`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:126:13
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let T = "TTCCTAACG$A";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let L = generate_l(&T);
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let F = generate_f(&T);
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Index` should have a snake case name
[INFO] [stdout]    --> src/bin/bwt_rosalind.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let Index: HashMap<Nucleotide, Nucleotide> = (0..T.len()).map(|i| {
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/search_client.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let mut lf_buffer = fs::read("lf.bincode")?;
[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: unused variable: `original_string`
[INFO] [stdout]   --> src/bin/main.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let original_string = common::suffix_array::reverse_bwt(&lf.Index);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_string`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]    --> src/bin/main.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     let g = bincode::serialize_into(&mut lf_buffer, &lf);
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `suffix_strings`
[INFO] [stdout]    --> src/bin/main.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     let suffix_strings: Vec<&str> = (positions.1).iter().map(|x| {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_suffix_strings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/main.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let T = file_contents.as_str();
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]  --> src/bin/comparative_benchmark.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]   --> src/bin/comparative_benchmark.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let T = file_contents.as_str();
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bin/main.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     lf_buffer.flush();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]   --> src/common/search.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut start: usize;
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/common/search.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let mut end: usize;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/common/search.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Some(x) => (),
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/common/search.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |                     Some(c) => (),
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]   --> src/common/suffix_array.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |         Ok(elapsed) => {
[INFO] [stdout]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/common/suffix_array.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]   --> src/common/suffix_array.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Ok(elapsed) => {
[INFO] [stdout]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/common/suffix_array.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         Err(e) => {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/common/suffix_array.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     for i in 0 .. index.len() {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed`
[INFO] [stdout]    --> src/common/suffix_array.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 |         Ok(elapsed) => {
[INFO] [stdout]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/common/suffix_array.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `test_search_capabilities_partial`
[INFO] [stdout]    --> src/common/search.rs:189:8
[INFO] [stdout]     |
[INFO] [stdout] 189 |     fn test_search_capabilities_partial() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]  --> src/common/search.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Counts` should have a snake case name
[INFO] [stdout]   --> src/common/search.rs:43:70
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn search(query: &str, zipped: &Vec<(&Nucleotide, &Nucleotide)>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stdout]    |                                                                      ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Counts` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:103:68
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn get_pos_from_vec(rows: &Vec<&(&(char, usize), &(char, usize))>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stdout]     |                                                                    ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/search.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `L` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub L: Vec<Nucleotide>,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `F` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub F: Vec<Nucleotide>, // Character,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Index` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub Index: HashMap<Nucleotide, Nucleotide>,
[INFO] [stdout]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `FCounts` should have a snake case name
[INFO] [stdout]   --> src/common/suffix_array.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub FCounts: HashMap<u8, usize>,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fcounts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `F` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let F: Vec<Nucleotide> = sa.iter().enumerate().map(|suffix| {
[INFO] [stdout]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     let L: Vec<Nucleotide> = sa.iter().map(|suffix| {
[INFO] [stdout]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Index` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let Index: HashMap<Nucleotide, Nucleotide> = (0 .. t.len()).into_par_iter().map(|i| {
[INFO] [stdout]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:200:13
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let T = "ABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/common/suffix_array.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let T = "ABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABA$";
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 41 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 35.72s
[INFO] running `Command { std: "docker" "inspect" "8aa3023be58ed4c0066e93fff4cad6f3cf875a9d6700cec7d2e8c2f0dfe6ac5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8aa3023be58ed4c0066e93fff4cad6f3cf875a9d6700cec7d2e8c2f0dfe6ac5f", kill_on_drop: false }`
[INFO] [stdout] 8aa3023be58ed4c0066e93fff4cad6f3cf875a9d6700cec7d2e8c2f0dfe6ac5f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 161e8e0e5bdf38df85b3b69e6add40f0a56161ec80e7bc440fa67ad0c485713d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "161e8e0e5bdf38df85b3b69e6add40f0a56161ec80e7bc440fa67ad0c485713d", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::types::Suffix`
[INFO] [stderr]  --> src/common/search.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::types::Suffix;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::suffix_array`
[INFO] [stderr]  --> src/common/search.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::suffix_array;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/common/search.rs:36:31
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let offset_char = ((first_rows.first().unwrap().1).0);
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::iter::IntoParallelRefIterator`
[INFO] [stderr]  --> src/common/suffix_array.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use rayon::iter::IntoParallelRefIterator;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BufRead`, `BufReader`, `Result`
[INFO] [stderr]   --> src/common/suffix_array.rs:12:15
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::io::{BufRead, BufReader, Result};
[INFO] [stderr]    |               ^^^^^^^  ^^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]   --> src/common/suffix_array.rs:14:17
[INFO] [stderr]    |
[INFO] [stderr] 14 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/common/suffix_array.rs:45:20
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let mut s: Vec<(Suffix)> = (0 .. t.len()).map(|x: usize| {
[INFO] [stderr]    |                    ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start`
[INFO] [stderr]   --> src/common/search.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let mut start: usize;
[INFO] [stderr]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `end`
[INFO] [stderr]   --> src/common/search.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |     let mut end: usize;
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/common/search.rs:58:18
[INFO] [stderr]    |
[INFO] [stderr] 58 |             Some(x) => (),
[INFO] [stderr]    |                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `c`
[INFO] [stderr]   --> src/common/search.rs:64:26
[INFO] [stderr]    |
[INFO] [stderr] 64 |                     Some(c) => (),
[INFO] [stderr]    |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]   --> src/common/suffix_array.rs:49:12
[INFO] [stderr]    |
[INFO] [stderr] 49 |         Ok(elapsed) => {
[INFO] [stderr]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/common/suffix_array.rs:53:13
[INFO] [stderr]    |
[INFO] [stderr] 53 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]   --> src/common/suffix_array.rs:63:12
[INFO] [stderr]    |
[INFO] [stderr] 63 |         Ok(elapsed) => {
[INFO] [stderr]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/common/suffix_array.rs:67:13
[INFO] [stderr]    |
[INFO] [stderr] 67 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/common/suffix_array.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |     for i in 0 .. index.len() {
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]    --> src/common/suffix_array.rs:130:12
[INFO] [stderr]     |
[INFO] [stderr] 130 |         Ok(elapsed) => {
[INFO] [stderr]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/common/suffix_array.rs:134:13
[INFO] [stderr]     |
[INFO] [stderr] 134 |         Err(e) => {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]    --> src/common/suffix_array.rs:154:12
[INFO] [stderr]     |
[INFO] [stderr] 154 |         Ok(elapsed) => {
[INFO] [stderr]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/common/suffix_array.rs:158:13
[INFO] [stderr]     |
[INFO] [stderr] 158 |         Err(e) => {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]    --> src/common/suffix_array.rs:169:12
[INFO] [stderr]     |
[INFO] [stderr] 169 |         Ok(elapsed) => {
[INFO] [stderr]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/common/suffix_array.rs:173:13
[INFO] [stderr]     |
[INFO] [stderr] 173 |         Err(e) => {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused attribute
[INFO] [stderr]  --> src/common/search.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Counts` should have a snake case name
[INFO] [stderr]   --> src/common/search.rs:43:70
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn search(query: &str, zipped: &Vec<(&Nucleotide, &Nucleotide)>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stderr]    |                                                                      ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Counts` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:103:68
[INFO] [stderr]     |
[INFO] [stderr] 103 | fn get_pos_from_vec(rows: &Vec<&(&(char, usize), &(char, usize))>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stderr]     |                                                                    ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `L` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub L: Vec<Nucleotide>,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `F` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub F: Vec<Nucleotide>, // Character,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Index` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub Index: HashMap<Nucleotide, Nucleotide>,
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FCounts` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub FCounts: HashMap<u8, usize>,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fcounts`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `F` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:121:9
[INFO] [stderr]     |
[INFO] [stderr] 121 |     let F: Vec<Nucleotide> = sa.iter().enumerate().map(|suffix| {
[INFO] [stderr]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `L` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:141:9
[INFO] [stderr]     |
[INFO] [stderr] 141 |     let L: Vec<Nucleotide> = sa.iter().map(|suffix| {
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Index` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:165:9
[INFO] [stderr]     |
[INFO] [stderr] 165 |     let Index: HashMap<Nucleotide, Nucleotide> = (0 .. t.len()).into_par_iter().map(|i| {
[INFO] [stderr]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stderr] 
[INFO] [stderr] warning: 32 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/bin/main.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stderr]  --> src/bin/main.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::{Serialize, Deserialize};
[INFO] [stderr]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/bin/main.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Read`
[INFO] [stderr]   --> src/bin/main.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::io::Read;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::repeat`
[INFO] [stderr]   --> src/bin/main.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::iter::repeat;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/bin/main.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> src/bin/main.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem`
[INFO] [stderr]   --> src/bin/main.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::mem;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stderr]   --> src/bin/main.rs:20:44
[INFO] [stderr]    |
[INFO] [stderr] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]   --> src/bin/main.rs:23:17
[INFO] [stderr]    |
[INFO] [stderr] 23 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `original_string`
[INFO] [stderr]   --> src/bin/main.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |     let original_string = common::suffix_array::reverse_bwt(&lf.Index);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_string`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `g`
[INFO] [stderr]    --> src/bin/main.rs:108:9
[INFO] [stderr]     |
[INFO] [stderr] 108 |     let g = bincode::serialize_into(&mut lf_buffer, &lf);
[INFO] [stderr]     |         ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `suffix_strings`
[INFO] [stderr]    --> src/bin/main.rs:131:9
[INFO] [stderr]     |
[INFO] [stderr] 131 |     let suffix_strings: Vec<&str> = (positions.1).iter().map(|x| {
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_suffix_strings`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]   --> src/bin/main.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 |     let T = file_contents.as_str();
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/bin/main.rs:109:5
[INFO] [stderr]     |
[INFO] [stderr] 109 |     lf_buffer.flush();
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: 15 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Read`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::io::Read;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs::File`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::fs::File;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::prelude::*`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::io::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::repeat`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::iter::repeat;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::collections::HashSet;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str`
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::str;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem`
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::mem;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::borrow::Borrow`
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use std::borrow::Borrow;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:15:17
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 57 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:74:13
[INFO] [stderr]    |
[INFO] [stderr] 74 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused attribute
[INFO] [stderr]  --> src/bin/comparative_benchmark.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]   --> src/bin/comparative_benchmark.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let T = file_contents.as_str();
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 15 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/bin/all_in_one.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/bin/all_in_one.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/bin/search_client.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Read`
[INFO] [stderr]   --> src/bin/all_in_one.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::io::Read;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/bin/search_client.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs::File`
[INFO] [stderr]   --> src/bin/all_in_one.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use std::fs::File;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::Read`
[INFO] [stderr]  --> src/bin/search_client.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::io::Read;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::prelude::*`
[INFO] [stderr]   --> src/bin/all_in_one.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::io::prelude::*;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs::File`
[INFO] [stderr]  --> src/bin/search_client.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::fs::File;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::prelude::*`
[INFO] [stderr]  --> src/bin/search_client.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::io::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::repeat`
[INFO] [stderr]   --> src/bin/all_in_one.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::iter::repeat;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::repeat`
[INFO] [stderr]  --> src/bin/search_client.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::iter::repeat;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/bin/all_in_one.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/bin/search_client.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> src/bin/search_client.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str`
[INFO] [stderr]   --> src/bin/search_client.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use std::str;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stderr]   --> src/bin/search_client.rs:16:44
[INFO] [stderr]    |
[INFO] [stderr] 16 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::types::Suffix`
[INFO] [stderr]  --> src/common/search.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::types::Suffix;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::suffix_array`
[INFO] [stderr]  --> src/common/search.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::suffix_array;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/search_client.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 24 |     let mut lf_buffer = fs::read("lf.bincode")?;
[INFO] [stderr]    |         ----^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 11 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/common/search.rs:36:31
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let offset_char = ((first_rows.first().unwrap().1).0);
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::iter::IntoParallelRefIterator`
[INFO] [stderr]  --> src/common/suffix_array.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use rayon::iter::IntoParallelRefIterator;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BufRead`, `BufReader`, `Result`
[INFO] [stderr]   --> src/common/suffix_array.rs:12:15
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::io::{BufRead, BufReader, Result};
[INFO] [stderr]    |               ^^^^^^^  ^^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]   --> src/common/suffix_array.rs:14:17
[INFO] [stderr]    |
[INFO] [stderr] 14 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/bin/bwt_rosalind.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io`
[INFO] [stderr]  --> src/bin/bwt_rosalind.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::io;
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/common/suffix_array.rs:45:20
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let mut s: Vec<(Suffix)> = (0 .. t.len()).map(|x: usize| {
[INFO] [stderr]    |                    ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::io::prelude::*`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::io::prelude::*;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start`
[INFO] [stderr]   --> src/common/search.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let mut start: usize;
[INFO] [stderr]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::repeat`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::iter::repeat;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `end`
[INFO] [stderr]   --> src/common/search.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |     let mut end: usize;
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/common/search.rs:58:18
[INFO] [stderr]    |
[INFO] [stderr] 58 |             Some(x) => (),
[INFO] [stderr]    |                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::mem;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `c`
[INFO] [stderr]   --> src/common/search.rs:64:26
[INFO] [stderr]    |
[INFO] [stderr] 64 |                     Some(c) => (),
[INFO] [stderr]    |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]   --> src/common/suffix_array.rs:49:12
[INFO] [stderr]    |
[INFO] [stderr] 49 |         Ok(elapsed) => {
[INFO] [stderr]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `IntoParallelRefIterator`, `IntoParallelRefMutIterator`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:20:19
[INFO] [stderr]    |
[INFO] [stderr] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/common/suffix_array.rs:53:13
[INFO] [stderr]    |
[INFO] [stderr] 53 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Duration`, `SystemTime`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:23:17
[INFO] [stderr]    |
[INFO] [stderr] 23 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                 ^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]   --> src/common/suffix_array.rs:63:12
[INFO] [stderr]    |
[INFO] [stderr] 63 |         Ok(elapsed) => {
[INFO] [stderr]    |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::iter::IndexedParallelIterator`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use rayon::iter::IndexedParallelIterator;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/common/suffix_array.rs:67:13
[INFO] [stderr]    |
[INFO] [stderr] 67 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::iter::ParallelIterator`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 | use rayon::iter::ParallelIterator;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/common/suffix_array.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |     for i in 0 .. index.len() {
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]    --> src/common/suffix_array.rs:130:12
[INFO] [stderr]     |
[INFO] [stderr] 130 |         Ok(elapsed) => {
[INFO] [stderr]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/common/suffix_array.rs:134:13
[INFO] [stderr]     |
[INFO] [stderr] 134 |         Err(e) => {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]    --> src/common/suffix_array.rs:154:12
[INFO] [stderr]     |
[INFO] [stderr] 154 |         Ok(elapsed) => {
[INFO] [stderr]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/common/suffix_array.rs:158:13
[INFO] [stderr]     |
[INFO] [stderr] 158 |         Err(e) => {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elapsed`
[INFO] [stderr]    --> src/common/suffix_array.rs:169:12
[INFO] [stderr]     |
[INFO] [stderr] 169 |         Ok(elapsed) => {
[INFO] [stderr]     |            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/common/suffix_array.rs:173:13
[INFO] [stderr]     |
[INFO] [stderr] 173 |         Err(e) => {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `test_search_capabilities_partial`
[INFO] [stderr]    --> src/common/search.rs:189:8
[INFO] [stderr]     |
[INFO] [stderr] 189 |     fn test_search_capabilities_partial() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused attribute
[INFO] [stderr]  --> src/common/search.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Counts` should have a snake case name
[INFO] [stderr]   --> src/common/search.rs:43:70
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn search(query: &str, zipped: &Vec<(&Nucleotide, &Nucleotide)>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stderr]    |                                                                      ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Counts` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:103:68
[INFO] [stderr]     |
[INFO] [stderr] 103 | fn get_pos_from_vec(rows: &Vec<&(&(char, usize), &(char, usize))>, Counts: &HashMap<u8, usize>) -> Option<(usize, usize)> {
[INFO] [stderr]     |                                                                    ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `counts`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:134:13
[INFO] [stderr]     |
[INFO] [stderr] 134 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:146:13
[INFO] [stderr]     |
[INFO] [stderr] 146 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:158:13
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:169:13
[INFO] [stderr]     |
[INFO] [stderr] 169 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:180:13
[INFO] [stderr]     |
[INFO] [stderr] 180 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/search.rs:190:13
[INFO] [stderr]     |
[INFO] [stderr] 190 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `L` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub L: Vec<Nucleotide>,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `F` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub F: Vec<Nucleotide>, // Character,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `Index` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub Index: HashMap<Nucleotide, Nucleotide>,
[INFO] [stderr]    |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `FCounts` should have a snake case name
[INFO] [stderr]   --> src/common/suffix_array.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub FCounts: HashMap<u8, usize>,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fcounts`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `F` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:121:9
[INFO] [stderr]     |
[INFO] [stderr] 121 |     let F: Vec<Nucleotide> = sa.iter().enumerate().map(|suffix| {
[INFO] [stderr]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `L` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:141:9
[INFO] [stderr]     |
[INFO] [stderr] 141 |     let L: Vec<Nucleotide> = sa.iter().map(|suffix| {
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Index` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:165:9
[INFO] [stderr]     |
[INFO] [stderr] 165 |     let Index: HashMap<Nucleotide, Nucleotide> = (0 .. t.len()).into_par_iter().map(|i| {
[INFO] [stderr]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:200:13
[INFO] [stderr]     |
[INFO] [stderr] 200 |         let T = "ABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/common/suffix_array.rs:210:13
[INFO] [stderr]     |
[INFO] [stderr] 210 |         let T = "ABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABA$";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: 41 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashSet`
[INFO] [stderr]   --> src/bin/all_in_one.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::collections::HashSet;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str`
[INFO] [stderr]   --> src/bin/all_in_one.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | use std::str;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem`
[INFO] [stderr]   --> src/bin/all_in_one.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use std::mem;
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `IntoParallelRefMutIterator`
[INFO] [stderr]   --> src/bin/all_in_one.rs:20:44
[INFO] [stderr]    |
[INFO] [stderr] 20 | use rayon::iter::{IntoParallelRefIterator, IntoParallelRefMutIterator};
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Duration`
[INFO] [stderr]   --> src/bin/all_in_one.rs:23:17
[INFO] [stderr]    |
[INFO] [stderr] 23 | use std::time::{Duration, SystemTime};
[INFO] [stderr]    |                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/bin/all_in_one.rs:45:13
[INFO] [stderr]    |
[INFO] [stderr] 45 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/bin/all_in_one.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `original_string`
[INFO] [stderr]   --> src/bin/all_in_one.rs:64:9
[INFO] [stderr]    |
[INFO] [stderr] 64 |     let original_string = common::suffix_array::reverse_bwt(&lf.Index);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_string`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/bin/all_in_one.rs:75:13
[INFO] [stderr]    |
[INFO] [stderr] 75 |         Err(e) => {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]   --> src/bin/all_in_one.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |     let T = file_contents.as_str();
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |     for i in 0 .. index.len() {
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `final_char`
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:64:9
[INFO] [stderr]    |
[INFO] [stderr] 64 |     let final_char = stripped.chars().last().expect("Something went wrong when getting the last character. Does the file have contents?");
[INFO] [stderr]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_char`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:63:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |     let mut stripped = contents.replace('\n', "");
[INFO] [stderr]    |         ----^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:70:19
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub fn generate_l(T: &str) -> Vec<Nuc> {
[INFO] [stderr]    |                   ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `L` should have a snake case name
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 73 |     let L: Vec<Nucleotide> = T.as_bytes().iter().map(|c| {
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:80:19
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub fn generate_f(T: &str) -> Vec<Nuc> {
[INFO] [stderr]    |                   ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `F` should have a snake case name
[INFO] [stderr]   --> src/bin/bwt_rosalind.rs:83:13
[INFO] [stderr]    |
[INFO] [stderr] 83 |     let mut F: Vec<Nucleotide> = T.as_bytes().iter().map(|c| {
[INFO] [stderr]    |             ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:101:9
[INFO] [stderr]     |
[INFO] [stderr] 101 |     let T = file_contents.as_str();
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `L` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:103:9
[INFO] [stderr]     |
[INFO] [stderr] 103 |     let L = generate_l(&T);
[INFO] [stderr]     |         ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `F` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:104:9
[INFO] [stderr]     |
[INFO] [stderr] 104 |     let F = generate_f(&T);
[INFO] [stderr]     |         ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Index` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:106:9
[INFO] [stderr]     |
[INFO] [stderr] 106 |     let Index: HashMap<Nucleotide, Nucleotide> = (0..T.len()).map(|i| {
[INFO] [stderr]     |         ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stderr] 
[INFO] [stderr] warning: function `ROSALIND_TEST_TRUE` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:125:8
[INFO] [stderr]     |
[INFO] [stderr] 125 |     fn ROSALIND_TEST_TRUE() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `rosalind_test_true`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:126:13
[INFO] [stderr]     |
[INFO] [stderr] 126 |         let T = "TTCCTAACG$A";
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `L` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:127:13
[INFO] [stderr]     |
[INFO] [stderr] 127 |         let L = generate_l(&T);
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `l`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `F` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:128:13
[INFO] [stderr]     |
[INFO] [stderr] 128 |         let F = generate_f(&T);
[INFO] [stderr]     |             ^ help: convert the identifier to snake case (notice the capitalization): `f`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `Index` should have a snake case name
[INFO] [stderr]    --> src/bin/bwt_rosalind.rs:129:13
[INFO] [stderr]     |
[INFO] [stderr] 129 |         let Index: HashMap<Nucleotide, Nucleotide> = (0..T.len()).map(|i| {
[INFO] [stderr]     |             ^^^^^ help: convert the identifier to snake case (notice the capitalization): `index`
[INFO] [stderr] 
[INFO] [stderr] warning: 26 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.39s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/common-ebe298790ef08123
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test suffix_array::tests::get_suffixes_by_pos_test ... ok
[INFO] [stderr] thread '<unnamed>' panicked at 'attempted to leave type `nodrop::NoDrop<(epoch::Epoch, garbage::Bag)>` uninitialized, which is invalid', /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/mem/mod.rs:658:9
[INFO] [stderr] stack backtrace:
[INFO] [stderr]    0:     0x558ac187c710 - std::backtrace_rs::backtrace::libunwind::trace::h7cf3ca97bd83fbab
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/../../backtrace/src/backtrace/libunwind.rs:96
[INFO] [stderr]    1:     0x558ac187c710 - std::backtrace_rs::backtrace::trace_unsynchronized::h5a69c674b2d9ea5c
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/../../backtrace/src/backtrace/mod.rs:66
[INFO] [stderr]    2:     0x558ac187c710 - std::sys_common::backtrace::_print_fmt::hdf72478dfcb50678
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys_common/backtrace.rs:79
[INFO] [stderr]    3:     0x558ac187c710 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h1e0bdbb35e83deca
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys_common/backtrace.rs:58
[INFO] [stderr]    4:     0x558ac189eadc - core::fmt::write::he67f9b17bcb7ee73
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/fmt/mod.rs:1080
[INFO] [stderr]    5:     0x558ac1878b32 - std::io::Write::write_fmt::hac97d5cb5753e2ec
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/io/mod.rs:1516
[INFO] [stderr]    6:     0x558ac187ec3d - std::sys_common::backtrace::_print::haa20918e28a126c5
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys_common/backtrace.rs:61
[INFO] [stderr]    7:     0x558ac187ec3d - std::sys_common::backtrace::print::h49e772a4873d9076
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys_common/backtrace.rs:48
[INFO] [stderr]    8:     0x558ac187ec3d - std::panicking::default_hook::{{closure}}::hb218b305d15e3f11
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:208
[INFO] [stderr]    9:     0x558ac187e8e8 - std::panicking::default_hook::h63997b7b949e1ce0
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:227
[INFO] [stderr]   10:     0x558ac187f321 - std::panicking::rust_panic_with_hook::hb54f09ccadf64bd3
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:577
[INFO] [stderr]   11:     0x558ac187eec9 - std::panicking::begin_panic_handler::{{closure}}::h8b43445b254eeb30
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:484
[INFO] [stderr]   12:     0x558ac187cb9c - std::sys_common::backtrace::__rust_end_short_backtrace::hacd691450edfeae0
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys_common/backtrace.rs:153
[INFO] [stderr]   13:     0x558ac187ee89 - rust_begin_unwind
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:483
[INFO] [stderr]   14:     0x558ac189d3b1 - core::panicking::panic_fmt::h5b17d4a0e853d0f5
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/panicking.rs:85
[INFO] [stderr]   15:     0x558ac189d2fd - core::panicking::panic::hc6be4d7009fb30ae
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/panicking.rs:50
[INFO] [stderr]   16:     0x558ac185a8a6 - core::mem::uninitialized::h337df01c1706e595
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/mem/mod.rs:658
[INFO] [stderr]   17:     0x558ac185a8a6 - crossbeam_epoch::sync::queue::Queue<T>::new::hd37ba5fd2e1dc6ea
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.3.1/src/sync/queue.rs:57
[INFO] [stderr]   18:     0x558ac1851e9e - crossbeam_epoch::internal::Global::new::h8c9394254e681185
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.3.1/src/internal.rs:63
[INFO] [stderr]   19:     0x558ac185cd21 - crossbeam_epoch::collector::Collector::new::ha04be39ca2ff7b6c
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.3.1/src/collector.rs:32
[INFO] [stderr]   20:     0x558ac185607a - <crossbeam_epoch::default::COLLECTOR as core::ops::deref::Deref>::deref::__static_ref_initialize::hb76e48a49b3389b0
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.3.1/src/default.rs:12
[INFO] [stderr]   21:     0x558ac185607a - core::ops::function::FnOnce::call_once::h329298e45d0f5c50
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/ops/function.rs:227
[INFO] [stderr]   22:     0x558ac1856d77 - lazy_static::lazy::Lazy<T>::get::{{closure}}::h2bd22394dd3e3670
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/lazy_static-1.3.0/src/inline_lazy.rs:28
[INFO] [stderr]   23:     0x558ac185c43f - std::sync::once::Once::call_once::{{closure}}::h1e9a743fcf145de6
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sync/once.rs:261
[INFO] [stderr]   24:     0x558ac187bef2 - std::sync::once::Once::call_inner::h33bd609ddf05a465
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sync/once.rs:419
[INFO] [stderr]   25:     0x558ac185c3c1 - std::sync::once::Once::call_once::h41fc68fdb8a83da8
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sync/once.rs:261
[INFO] [stderr]   26:     0x558ac1855969 - lazy_static::lazy::Lazy<T>::get::h1e9b2b9ec184a133
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/lazy_static-1.3.0/src/inline_lazy.rs:27
[INFO] [stderr]   27:     0x558ac1855969 - <crossbeam_epoch::default::COLLECTOR as core::ops::deref::Deref>::deref::__stability::hae0cf75fe8058029
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/lazy_static-1.3.0/src/lib.rs:138
[INFO] [stderr]   28:     0x558ac1855969 - <crossbeam_epoch::default::COLLECTOR as core::ops::deref::Deref>::deref::he511e5bf01c8dd0e
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/lazy_static-1.3.0/src/lib.rs:140
[INFO] [stderr]   29:     0x558ac18559e4 - crossbeam_epoch::default::HANDLE::__init::h52573e9e907aaac6
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.3.1/src/default.rs:17
[INFO] [stderr]   30:     0x558ac1856099 - core::ops::function::FnOnce::call_once::h60b7d8daea6cfabd
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/ops/function.rs:227
[INFO] [stderr]   31:     0x558ac1853c2c - std::thread::local::lazy::LazyKeyInner<T>::initialize::hef9b3c3b55bc796e
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/local.rs:304
[INFO] [stderr]   32:     0x558ac185c4dd - std::thread::local::fast::Key<T>::try_initialize::h6fdb45ce18b16b99
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/local.rs:473
[INFO] [stderr]   33:     0x558ac185c627 - std::thread::local::fast::Key<T>::get::h6b5d853788387a2d
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/local.rs:456
[INFO] [stderr]   34:     0x558ac1855a2d - crossbeam_epoch::default::HANDLE::__getit::h62c9656b52707dbe
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/local.rs:183
[INFO] [stderr]   35:     0x558ac183749b - std::thread::local::LocalKey<T>::try_with::h78e63bfdf9a8e30a
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/local.rs:271
[INFO] [stderr]   36:     0x558ac18373df - std::thread::local::LocalKey<T>::with::h94c57abf098b2acd
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/local.rs:248
[INFO] [stderr]   37:     0x558ac1832784 - crossbeam_epoch::default::is_pinned::hf704422244d96973
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-epoch-0.3.1/src/default.rs:33
[INFO] [stderr]   38:     0x558ac183db85 - crossbeam_deque::Stealer<T>::steal::hbc805de777750287
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-deque-0.2.0/src/lib.rs:714
[INFO] [stderr]   39:     0x558ac182ccc3 - rayon_core::registry::WorkerThread::steal::{{closure}}::he09fe2f1fc9b3e8e
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:614
[INFO] [stderr]   40:     0x558ac182a1ab - core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut::hcbbb447f6c09b1b9
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/ops/function.rs:269
[INFO] [stderr]   41:     0x558ac183ae41 - core::iter::traits::iterator::Iterator::find_map::check::{{closure}}::hfcc23be35bcdce60
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/traits/iterator.rs:2261
[INFO] [stderr]   42:     0x558ac18336f5 - core::iter::adapters::filter_try_fold::{{closure}}::h1f71408cd9fc0152
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/adapters/mod.rs:1078
[INFO] [stderr]   43:     0x558ac18330fc - core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut::h133b2944f592b503
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/ops/function.rs:269
[INFO] [stderr]   44:     0x558ac183b0a4 - core::iter::traits::iterator::Iterator::try_fold::h778000b8b39b5f67
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/traits/iterator.rs:1888
[INFO] [stderr]   45:     0x558ac18369b3 - <core::iter::adapters::chain::Chain<A,B> as core::iter::traits::iterator::Iterator>::try_fold::h858ec9f7c1dadb77
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/adapters/chain.rs:105
[INFO] [stderr]   46:     0x558ac1833056 - <core::iter::adapters::Filter<I,P> as core::iter::traits::iterator::Iterator>::try_fold::h18514a8818be48c1
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/adapters/mod.rs:1127
[INFO] [stderr]   47:     0x558ac1833261 - core::iter::traits::iterator::Iterator::find_map::hab715f7d77b9530a
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/traits/iterator.rs:2267
[INFO] [stderr]   48:     0x558ac18330c6 - <core::iter::adapters::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next::h712452a64106f376
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/iter/adapters/mod.rs:1245
[INFO] [stderr]   49:     0x558ac182cbfb - rayon_core::registry::WorkerThread::steal::hfacb462a3d7b242d
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:608
[INFO] [stderr]   50:     0x558ac182c922 - rayon_core::registry::WorkerThread::wait_until_cold::{{closure}}::hdc75dd0aa42402e1
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:565
[INFO] [stderr]   51:     0x558ac18456bf - core::option::Option<T>::or_else::h1df2555397b9ffc8
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/option.rs:752
[INFO] [stderr]   52:     0x558ac182c605 - rayon_core::registry::WorkerThread::wait_until_cold::hb8e39d5d846addc2
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:564
[INFO] [stderr]   53:     0x558ac182c168 - rayon_core::registry::WorkerThread::wait_until::hfd95ca501ed845e7
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:544
[INFO] [stderr]   54:     0x558ac182d18b - rayon_core::registry::main_loop::hed144e783e53b297
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:666
[INFO] [stderr]   55:     0x558ac182b5dd - rayon_core::registry::Registry::new::{{closure}}::h31d1ea69fa696aef
[INFO] [stderr]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.4.1/src/registry.rs:135
[INFO] [stderr]   56:     0x558ac1832c0e - std::sys_common::backtrace::__rust_begin_short_backtrace::haea912c6d1d6a746
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys_common/backtrace.rs:137
[INFO] [stderr]   57:     0x558ac183f802 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4614aba4d7aa48ff
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/mod.rs:464
[INFO] [stderr]   58:     0x558ac183e4e2 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9995b44d9339c55c
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panic.rs:308
[INFO] [stderr]   59:     0x558ac184430e - std::panicking::try::do_call::h06dbad27b2945493
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:381
[INFO] [stderr]   60:     0x558ac1845f9d - __rust_try
[INFO] [stderr]   61:     0x558ac1844073 - std::panicking::try::h13ab34ff33caf21f
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panicking.rs:345
[INFO] [stderr]   62:     0x558ac183ed12 - std::panic::catch_unwind::hbf043846c0630949
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/panic.rs:382
[INFO] [stderr]   63:     0x558ac183f5f1 - std::thread::Builder::spawn_unchecked::{{closure}}::hce264c0bb7a333b6
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/thread/mod.rs:463
[INFO] [stderr]   64:     0x558ac183901f - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1cf7c12d72425d96
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/core/src/ops/function.rs:227
[INFO] [stderr]   65:     0x558ac188543a - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::hd4d30e37db281e8f
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/alloc/src/boxed.rs:1042
[INFO] [stderr]   66:     0x558ac188543a - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h019185a215ba16e4
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/alloc/src/boxed.rs:1042
[INFO] [stderr]   67:     0x558ac188543a - std::sys::unix::thread::Thread::new::thread_start::h33c6d7cf25f9291f
[INFO] [stderr]                                at /rustc/212e76c31d461462544b5d516d3bdc99fc8f016e/library/std/src/sys/unix/thread.rs:87
[INFO] [stderr]   68:     0x7f88793cb609 - start_thread
[INFO] [stderr]   69:     0x7f8879656103 - clone
[INFO] [stderr]   70:                0x0 - <unknown>
[INFO] [stderr] error: test failed, to rerun pass '--lib'
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/common-ebe298790ef08123` (signal: 11, SIGSEGV: invalid memory reference)
[INFO] running `Command { std: "docker" "inspect" "161e8e0e5bdf38df85b3b69e6add40f0a56161ec80e7bc440fa67ad0c485713d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "161e8e0e5bdf38df85b3b69e6add40f0a56161ec80e7bc440fa67ad0c485713d", kill_on_drop: false }`
[INFO] [stdout] 161e8e0e5bdf38df85b3b69e6add40f0a56161ec80e7bc440fa67ad0c485713d
