[INFO] cloning repository https://github.com/Yixf-Self/MutationScan [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Yixf-Self/MutationScan" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYixf-Self%2FMutationScan", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYixf-Self%2FMutationScan'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b96f9176772372aeb7efa12aac03d8b24e6f4c7e [INFO] building Yixf-Self/MutationScan against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYixf-Self%2FMutationScan" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Yixf-Self/MutationScan on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Yixf-Self/MutationScan [INFO] finished tweaking git repo https://github.com/Yixf-Self/MutationScan [INFO] tweaked toml for git repo https://github.com/Yixf-Self/MutationScan written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Yixf-Self/MutationScan already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 50319d95b70a1d3cf1d86a9fd90f84e66fe3ea40051cb35142c24c1bbebf0856 [INFO] running `Command { std: "docker" "start" "-a" "50319d95b70a1d3cf1d86a9fd90f84e66fe3ea40051cb35142c24c1bbebf0856", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "50319d95b70a1d3cf1d86a9fd90f84e66fe3ea40051cb35142c24c1bbebf0856", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "50319d95b70a1d3cf1d86a9fd90f84e66fe3ea40051cb35142c24c1bbebf0856", kill_on_drop: false }` [INFO] [stdout] 50319d95b70a1d3cf1d86a9fd90f84e66fe3ea40051cb35142c24c1bbebf0856 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3f182ae3f2c80e63d2816b462e6920b9c26558b64e4b8174857a01d89c0a76c2 [INFO] running `Command { std: "docker" "start" "-a" "3f182ae3f2c80e63d2816b462e6920b9c26558b64e4b8174857a01d89c0a76c2", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling MutationScan v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/main.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | match ( cnt % 4) { [INFO] [stdout] | ^^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 52 - match ( cnt % 4) { [INFO] [stdout] 52 + match cnt % 4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/main.rs:125:23 [INFO] [stdout] | [INFO] [stdout] 125 | match (cnt % 2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 125 - match (cnt % 2) { [INFO] [stdout] 125 + match cnt % 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:402:12 [INFO] [stdout] | [INFO] [stdout] 402 | if (it.seq.clone()[min_edis_index..min_edis_index+len2].chars().nth(idx) != snp.seq.clone().chars().nth(idx)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 402 - if (it.seq.clone()[min_edis_index..min_edis_index+len2].chars().nth(idx) != snp.seq.clone().chars().nth(idx)) { [INFO] [stdout] 402 + if it.seq.clone()[min_edis_index..min_edis_index+len2].chars().nth(idx) != snp.seq.clone().chars().nth(idx) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:408:7 [INFO] [stdout] | [INFO] [stdout] 408 | if(ed_dis <= threshold_value) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 408 - if(ed_dis <= threshold_value) { [INFO] [stdout] 408 + if ed_dis <= threshold_value { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:416:11 [INFO] [stdout] | [INFO] [stdout] 416 | if(flag == true) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 416 - if(flag == true) { [INFO] [stdout] 416 + if flag == true { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:446:23 [INFO] [stdout] | [INFO] [stdout] 446 | if(len1 <= len2) {continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 446 - if(len1 <= len2) {continue;} [INFO] [stdout] 446 + if len1 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:483:31 [INFO] [stdout] | [INFO] [stdout] 483 | ... if(len1 <= len2) {continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 483 - if(len1 <= len2) {continue;} [INFO] [stdout] 483 + if len1 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:498:31 [INFO] [stdout] | [INFO] [stdout] 498 | ... if(len1 <= len2){continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 498 - if(len1 <= len2){continue;} [INFO] [stdout] 498 + if len1 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:499:31 [INFO] [stdout] | [INFO] [stdout] 499 | ... if(len3 <= len2){continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 499 - if(len3 <= len2){continue;} [INFO] [stdout] 499 + if len3 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:33:59 [INFO] [stdout] | [INFO] [stdout] 33 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:40:59 [INFO] [stdout] | [INFO] [stdout] 40 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:105:59 [INFO] [stdout] | [INFO] [stdout] 105 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:112:59 [INFO] [stdout] | [INFO] [stdout] 112 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index` [INFO] [stdout] --> src/main.rs:447:40 [INFO] [stdout] | [INFO] [stdout] 447 | let (flag, snp_rs, min_edis_index) = search_snp(&it, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index` [INFO] [stdout] --> src/main.rs:485:48 [INFO] [stdout] | [INFO] [stdout] 485 | ... let (flag, snp_rs, min_edis_index) = search_snp(&it, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index1` [INFO] [stdout] --> src/main.rs:500:50 [INFO] [stdout] | [INFO] [stdout] 500 | ... let (flag1, snp_rs1, min_edis_index1) = search_snp(&it1, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index2` [INFO] [stdout] --> src/main.rs:501:50 [INFO] [stdout] | [INFO] [stdout] 501 | ... let (flag2, snp_rs2, min_edis_index2) = search_snp(&it2, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hamming_distance` is never used [INFO] [stdout] --> src/main.rs:179:4 [INFO] [stdout] | [INFO] [stdout] 179 | fn hamming_distance(s1: &str, s2: &str) -> u32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `complement_str` is never used [INFO] [stdout] --> src/main.rs:346:4 [INFO] [stdout] | [INFO] [stdout] 346 | fn complement_str(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `snp_label`, `snp_seq`, `fastq_header`, `fastq_seq`, and `fastq_qual` are never read [INFO] [stdout] --> src/main.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 364 | struct SnpResult { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 365 | snp_label: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 366 | snp_seq: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 367 | fastq_header: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 368 | fastq_seq: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 369 | fastq_qual: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SnpResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 218 | fu_s = r1_head.clone().to_string() + &fu_s + r2_tail; [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.21s [INFO] running `Command { std: "docker" "inspect" "3f182ae3f2c80e63d2816b462e6920b9c26558b64e4b8174857a01d89c0a76c2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f182ae3f2c80e63d2816b462e6920b9c26558b64e4b8174857a01d89c0a76c2", kill_on_drop: false }` [INFO] [stdout] 3f182ae3f2c80e63d2816b462e6920b9c26558b64e4b8174857a01d89c0a76c2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1a4543aab7c578b693d81d53e6f6e4022353000e4239c6d9dd5547a62535d51f [INFO] running `Command { std: "docker" "start" "-a" "1a4543aab7c578b693d81d53e6f6e4022353000e4239c6d9dd5547a62535d51f", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling MutationScan v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/main.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | match ( cnt % 4) { [INFO] [stdout] | ^^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 52 - match ( cnt % 4) { [INFO] [stdout] 52 + match cnt % 4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/main.rs:125:23 [INFO] [stdout] | [INFO] [stdout] 125 | match (cnt % 2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 125 - match (cnt % 2) { [INFO] [stdout] 125 + match cnt % 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:402:12 [INFO] [stdout] | [INFO] [stdout] 402 | if (it.seq.clone()[min_edis_index..min_edis_index+len2].chars().nth(idx) != snp.seq.clone().chars().nth(idx)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 402 - if (it.seq.clone()[min_edis_index..min_edis_index+len2].chars().nth(idx) != snp.seq.clone().chars().nth(idx)) { [INFO] [stdout] 402 + if it.seq.clone()[min_edis_index..min_edis_index+len2].chars().nth(idx) != snp.seq.clone().chars().nth(idx) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:408:7 [INFO] [stdout] | [INFO] [stdout] 408 | if(ed_dis <= threshold_value) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 408 - if(ed_dis <= threshold_value) { [INFO] [stdout] 408 + if ed_dis <= threshold_value { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:416:11 [INFO] [stdout] | [INFO] [stdout] 416 | if(flag == true) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 416 - if(flag == true) { [INFO] [stdout] 416 + if flag == true { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:446:23 [INFO] [stdout] | [INFO] [stdout] 446 | if(len1 <= len2) {continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 446 - if(len1 <= len2) {continue;} [INFO] [stdout] 446 + if len1 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:483:31 [INFO] [stdout] | [INFO] [stdout] 483 | ... if(len1 <= len2) {continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 483 - if(len1 <= len2) {continue;} [INFO] [stdout] 483 + if len1 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:498:31 [INFO] [stdout] | [INFO] [stdout] 498 | ... if(len1 <= len2){continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 498 - if(len1 <= len2){continue;} [INFO] [stdout] 498 + if len1 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:499:31 [INFO] [stdout] | [INFO] [stdout] 499 | ... if(len3 <= len2){continue;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 499 - if(len3 <= len2){continue;} [INFO] [stdout] 499 + if len3 <= len2 {continue;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:33:59 [INFO] [stdout] | [INFO] [stdout] 33 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:40:59 [INFO] [stdout] | [INFO] [stdout] 40 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:105:59 [INFO] [stdout] | [INFO] [stdout] 105 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:112:59 [INFO] [stdout] | [INFO] [stdout] 112 | ... Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index` [INFO] [stdout] --> src/main.rs:447:40 [INFO] [stdout] | [INFO] [stdout] 447 | let (flag, snp_rs, min_edis_index) = search_snp(&it, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index` [INFO] [stdout] --> src/main.rs:485:48 [INFO] [stdout] | [INFO] [stdout] 485 | ... let (flag, snp_rs, min_edis_index) = search_snp(&it, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index1` [INFO] [stdout] --> src/main.rs:500:50 [INFO] [stdout] | [INFO] [stdout] 500 | ... let (flag1, snp_rs1, min_edis_index1) = search_snp(&it1, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `min_edis_index2` [INFO] [stdout] --> src/main.rs:501:50 [INFO] [stdout] | [INFO] [stdout] 501 | ... let (flag2, snp_rs2, min_edis_index2) = search_snp(&it2, &snp, threshold_value); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_edis_index2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hamming_distance` is never used [INFO] [stdout] --> src/main.rs:179:4 [INFO] [stdout] | [INFO] [stdout] 179 | fn hamming_distance(s1: &str, s2: &str) -> u32{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `complement_str` is never used [INFO] [stdout] --> src/main.rs:346:4 [INFO] [stdout] | [INFO] [stdout] 346 | fn complement_str(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `snp_label`, `snp_seq`, `fastq_header`, `fastq_seq`, and `fastq_qual` are never read [INFO] [stdout] --> src/main.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 364 | struct SnpResult { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 365 | snp_label: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 366 | snp_seq: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 367 | fastq_header: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 368 | fastq_seq: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 369 | fastq_qual: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SnpResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 218 | fu_s = r1_head.clone().to_string() + &fu_s + r2_tail; [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s [INFO] running `Command { std: "docker" "inspect" "1a4543aab7c578b693d81d53e6f6e4022353000e4239c6d9dd5547a62535d51f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1a4543aab7c578b693d81d53e6f6e4022353000e4239c6d9dd5547a62535d51f", kill_on_drop: false }` [INFO] [stdout] 1a4543aab7c578b693d81d53e6f6e4022353000e4239c6d9dd5547a62535d51f