[INFO] cloning repository https://github.com/SorenHeidelbach/rustymotif
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/SorenHeidelbach/rustymotif" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSorenHeidelbach%2Frustymotif", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSorenHeidelbach%2Frustymotif'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c6d71f49c1f683cc86f0d9967026db610f02ba20
[INFO] checking SorenHeidelbach/rustymotif against try#c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f for 2025-12-16-next-solver-global
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSorenHeidelbach%2Frustymotif" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/SorenHeidelbach/rustymotif
[INFO] finished tweaking git repo https://github.com/SorenHeidelbach/rustymotif
[INFO] tweaked toml for git repo https://github.com/SorenHeidelbach/rustymotif written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/SorenHeidelbach/rustymotif on toolchain c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/SorenHeidelbach/rustymotif 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" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3e36eedb9222dd17d5101f47076b78ab97a37e9d9046b5374c270953a5f4bd0f
[INFO] running `Command { std: "docker" "start" "-a" "3e36eedb9222dd17d5101f47076b78ab97a37e9d9046b5374c270953a5f4bd0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e36eedb9222dd17d5101f47076b78ab97a37e9d9046b5374c270953a5f4bd0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e36eedb9222dd17d5101f47076b78ab97a37e9d9046b5374c270953a5f4bd0f", kill_on_drop: false }`
[INFO] [stdout] 3e36eedb9222dd17d5101f47076b78ab97a37e9d9046b5374c270953a5f4bd0f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 327de90edf3c3c72b65d20cda569c3f34e8470005ecb9b3533d97579b3c4a004
[INFO] running `Command { std: "docker" "start" "-a" "327de90edf3c3c72b65d20cda569c3f34e8470005ecb9b3533d97579b3c4a004", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling libm v0.2.11
[INFO] [stderr]    Compiling target-lexicon v0.13.2
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]    Compiling rustversion v1.0.19
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling libloading v0.8.8
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]     Checking bytemuck v1.23.1
[INFO] [stderr]    Compiling bindgen v0.69.5
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling bitflags v2.8.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling newtype_derive v0.1.6
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]    Compiling fs-utils v1.1.4
[INFO] [stderr]     Checking wide v0.7.32
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling pyo3-build-config v0.25.1
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking utf8_iter v1.0.4
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]    Compiling syn v2.0.102
[INFO] [stderr]    Compiling jobserver v0.1.32
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]     Checking itoa v1.0.14
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling cc v1.2.27
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking custom_derive v0.1.7
[INFO] [stderr]     Checking indexmap v2.7.1
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking clap_builder v4.5.40
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking itertools-num v0.1.3
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking ordered-float v5.0.0
[INFO] [stderr]     Checking simba v0.9.0
[INFO] [stderr]    Compiling openssl-src v300.5.1+3.5.1
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]     Checking petgraph v0.7.1
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking buffer-redux v1.0.2
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking ieee754 v0.2.6
[INFO] [stderr]     Checking linear-map v1.2.0
[INFO] [stderr]     Checking unindent v0.2.4
[INFO] [stderr]     Checking jiff v0.2.14
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]    Compiling pyo3-macros-backend v0.25.1
[INFO] [stderr]    Compiling pyo3-ffi v0.25.1
[INFO] [stderr]    Compiling pyo3 v0.25.1
[INFO] [stderr]     Checking triple_accel v0.4.0
[INFO] [stderr]    Compiling libz-sys v1.1.22
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling lzma-sys v0.1.20
[INFO] [stderr]    Compiling bzip2-sys v0.1.13+1.0.8
[INFO] [stderr]    Compiling curl-sys v0.4.82+curl-8.14.1
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling indoc v2.0.6
[INFO] [stderr]     Checking editdistancek v1.0.2
[INFO] [stderr]     Checking bytecount v0.6.8
[INFO] [stderr]     Checking tempfile v3.20.0
[INFO] [stderr]     Checking ordered-float v4.6.0
[INFO] [stderr]     Checking atoi v2.0.0
[INFO] [stderr]     Checking strum v0.27.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling derive-new v0.6.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling enum-map-derive v0.17.0
[INFO] [stderr]    Compiling clap_derive v4.5.40
[INFO] [stderr]    Compiling derive-new v0.7.0
[INFO] [stderr]     Checking enum-map v2.7.3
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]    Compiling strum_macros v0.27.1
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking bio-types v1.0.4
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking clap v4.5.40
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]    Compiling pyo3-macros v0.25.1
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking nalgebra v0.33.2
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]    Compiling hts-sys v2.2.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking bv v0.11.1
[INFO] [stderr]     Checking multimap v0.10.0
[INFO] [stderr]     Checking seq_io v0.3.4
[INFO] [stderr]     Checking statrs v0.18.0
[INFO] [stderr]     Checking bio v2.3.0
[INFO] [stderr]     Checking rust-htslib v0.49.0
[INFO] [stderr]     Checking rustymotif v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `SerializeStruct` and `Serialize`
[INFO] [stdout]  --> src/lib/motif.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::ser::{Serialize, Serializer, SerializeStruct};
[INFO] [stdout]   |                  ^^^^^^^^^              ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToString`
[INFO] [stdout]  --> src/lib/pileup.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use strum_macros::{EnumIter, ToString};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `info`, and `warn`
[INFO] [stdout]  --> src/lib/pileup.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{debug, info, warn};
[INFO] [stdout]   |           ^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `motif::Motif`
[INFO] [stdout]  --> src/lib/preprocess.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{modtype::ModType, motif::Motif, pileup, strand::Strand};
[INFO] [stdout]   |                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/lib/preprocess.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | use log::{debug, info, warn};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PyList`
[INFO] [stdout]  --> src/lib/preprocess.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 | use pyo3::types::{PyDict, PyList};
[INFO] [stdout]   |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SerializeStruct` and `Serialize`
[INFO] [stdout]  --> src/lib/motif.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::ser::{Serialize, Serializer, SerializeStruct};
[INFO] [stdout]   |                  ^^^^^^^^^              ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToString`
[INFO] [stdout]  --> src/lib/pileup.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use strum_macros::{EnumIter, ToString};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `info`, and `warn`
[INFO] [stdout]  --> src/lib/pileup.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{debug, info, warn};
[INFO] [stdout]   |           ^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `motif::Motif`
[INFO] [stdout]  --> src/lib/preprocess.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{modtype::ModType, motif::Motif, pileup, strand::Strand};
[INFO] [stdout]   |                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/lib/preprocess.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | use log::{debug, info, warn};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PyList`
[INFO] [stdout]  --> src/lib/preprocess.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 | use pyo3::types::{PyDict, PyList};
[INFO] [stdout]   |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/lib/iupac.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib/pileup.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                 Err(e) => continue, // Skip invalid records
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]  --> src/lib/iupac.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use strum::IntoEnumIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line_to_byterecord` is never used
[INFO] [stdout]    --> src/lib/pileup.rs:532:4
[INFO] [stdout]     |
[INFO] [stdout] 532 | fn line_to_byterecord(line: &[u8]) -> ByteRecord {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib/pileup.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                 Err(e) => continue, // Skip invalid records
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/bin/preprocess/cli.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, ValueEnum};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/bin/preprocess/io.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `motif::Motif`
[INFO] [stdout]  --> src/bin/preprocess/io.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rustymotif_utils::{motif::Motif, pileup::PileupRecord};
[INFO] [stdout]   |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]   --> src/bin/preprocess/io.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]  --> src/bin/motif_summary/main.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{info, debug, warn};
[INFO] [stdout]   |                 ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `verbose` should have an upper camel case name
[INFO] [stdout]   --> src/bin/motif_summary/cli.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     verbose,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Verbose`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `normal` should have an upper camel case name
[INFO] [stdout]   --> src/bin/motif_summary/cli.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     normal,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Normal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `silent` should have an upper camel case name
[INFO] [stdout]   --> src/bin/motif_summary/cli.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     silent,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Silent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pileup`
[INFO] [stdout]  --> src/bin/motif_summary/data.rs:5:56
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rustymotif_utils::{modtype::ModType, motif::Motif, pileup, strand::Strand};
[INFO] [stdout]   |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/bin/motif_summary/data.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use log::{debug, info};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/bin/motif_summary/data.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::{anyhow, Ok};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::Contig`
[INFO] [stdout]  --> src/bin/motif_summary/fasta_reader.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::sequence::Contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/bin/motif_summary/sequence.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::anyhow`
[INFO] [stdout]  --> src/bin/motif_summary/sequence.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use anyhow::anyhow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/bin/motif_summary/io.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `info`, and `warn`
[INFO] [stdout]  --> src/bin/motif_summary/io.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{info, debug, warn};
[INFO] [stdout]   |           ^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WriterBuilder`
[INFO] [stdout]   --> src/bin/motif_summary/motif_summary.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use csv::{WriterBuilder};
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/bin/preprocess/cli.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, ValueEnum};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/bin/preprocess/io.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `motif::Motif`
[INFO] [stdout]  --> src/bin/preprocess/io.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rustymotif_utils::{motif::Motif, pileup::PileupRecord};
[INFO] [stdout]   |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]   --> src/bin/preprocess/io.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line_to_byterecord` is never used
[INFO] [stdout]    --> src/lib/pileup.rs:532:4
[INFO] [stdout]     |
[INFO] [stdout] 532 | fn line_to_byterecord(line: &[u8]) -> ByteRecord {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `verbose` should have an upper camel case name
[INFO] [stdout]   --> src/bin/rustymotif/cli.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 81 |     verbose,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Verbose`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `normal` should have an upper camel case name
[INFO] [stdout]   --> src/bin/rustymotif/cli.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 |     normal,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Normal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `silent` should have an upper camel case name
[INFO] [stdout]   --> src/bin/rustymotif/cli.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     silent,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Silent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/bin/rustymotif/data.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MethylationLevel`
[INFO] [stdout]   --> src/bin/rustymotif/data.rs:48:35
[INFO] [stdout]    |
[INFO] [stdout] 48 |     use crate::sequence::{Contig, MethylationLevel};
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ahash::HashSet`
[INFO] [stdout]   --> src/bin/rustymotif/data.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     use ahash::HashSet;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::Contig`
[INFO] [stdout]  --> src/bin/rustymotif/fasta_reader.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::sequence::Contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::MethylationThresholds`
[INFO] [stdout]  --> src/bin/rustymotif/fasta_reader.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::sequence::MethylationThresholds;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> src/bin/rustymotif/motif_discovery.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anyhow::{bail, Result};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]  --> src/bin/rustymotif/motif_discovery.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bio::bio_types::annot::contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `motif::MotifLike`, `motif`, and `strand::Strand`
[INFO] [stdout]  --> src/bin/rustymotif/motif_discovery.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rustymotif_utils::{motif, motif::MotifLike, pileup, strand::Strand};
[INFO] [stdout]   |                        ^^^^^  ^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashSet` and `hash::Hash`
[INFO] [stdout]  --> src/bin/rustymotif/search.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, hash::Hash};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]  --> src/bin/rustymotif/search.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use bio::bio_types::annot::contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ordered_float::OrderedFloat`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ordered_float::OrderedFloat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algo::min_spanning_tree`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     algo::min_spanning_tree,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pileup`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:20:80
[INFO] [stdout]    |
[INFO] [stdout] 20 |     iupac::IupacBase, modtype::ModType, motif, motif::Motif, motif::MotifLike, pileup,
[INFO] [stdout]    |                                                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::anyhow`
[INFO] [stdout]  --> src/bin/rustymotif/sequence.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use anyhow::anyhow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]    --> src/bin/rustymotif/sequence.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |     use bio::bio_types::annot::contig;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]  --> src/bin/motif_summary/main.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{info, debug, warn};
[INFO] [stdout]   |                 ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `verbose` should have an upper camel case name
[INFO] [stdout]   --> src/bin/motif_summary/cli.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     verbose,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Verbose`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `normal` should have an upper camel case name
[INFO] [stdout]   --> src/bin/motif_summary/cli.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     normal,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Normal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `silent` should have an upper camel case name
[INFO] [stdout]   --> src/bin/motif_summary/cli.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     silent,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Silent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pileup`
[INFO] [stdout]  --> src/bin/motif_summary/data.rs:5:56
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rustymotif_utils::{modtype::ModType, motif::Motif, pileup, strand::Strand};
[INFO] [stdout]   |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `verbose` should have an upper camel case name
[INFO] [stdout]   --> src/bin/rustymotif/cli.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 81 |     verbose,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Verbose`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/bin/motif_summary/data.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use log::{debug, info};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/bin/motif_summary/data.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::{anyhow, Ok};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `normal` should have an upper camel case name
[INFO] [stdout]   --> src/bin/rustymotif/cli.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 |     normal,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Normal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::Contig`
[INFO] [stdout]  --> src/bin/motif_summary/fasta_reader.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::sequence::Contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `silent` should have an upper camel case name
[INFO] [stdout]   --> src/bin/rustymotif/cli.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     silent,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Silent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/bin/motif_summary/sequence.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::MethylationThresholds`
[INFO] [stdout]  --> src/bin/rustymotif/data.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::sequence::MethylationThresholds;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::anyhow`
[INFO] [stdout]  --> src/bin/motif_summary/sequence.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use anyhow::anyhow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/bin/rustymotif/data.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:320:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |     use bio::bio_types::annot::contig;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::Contig`
[INFO] [stdout]  --> src/bin/rustymotif/fasta_reader.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::sequence::Contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::MethylationThresholds`
[INFO] [stdout]  --> src/bin/rustymotif/fasta_reader.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::sequence::MethylationThresholds;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> src/bin/rustymotif/motif_discovery.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anyhow::{bail, Result};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]  --> src/bin/rustymotif/motif_discovery.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bio::bio_types::annot::contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `motif::MotifLike`, `motif`, and `strand::Strand`
[INFO] [stdout]  --> src/bin/rustymotif/motif_discovery.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rustymotif_utils::{motif, motif::MotifLike, pileup, strand::Strand};
[INFO] [stdout]   |                        ^^^^^  ^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashSet` and `hash::Hash`
[INFO] [stdout]  --> src/bin/rustymotif/search.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, hash::Hash};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]  --> src/bin/rustymotif/search.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use bio::bio_types::annot::contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ordered_float::OrderedFloat`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ordered_float::OrderedFloat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algo::min_spanning_tree`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     algo::min_spanning_tree,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pileup`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:20:80
[INFO] [stdout]    |
[INFO] [stdout] 20 |     iupac::IupacBase, modtype::ModType, motif, motif::Motif, motif::MotifLike, pileup,
[INFO] [stdout]    |                                                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]   --> src/bin/rustymotif/search.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::anyhow`
[INFO] [stdout]  --> src/bin/rustymotif/sequence.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use anyhow::anyhow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `info`, and `warn`
[INFO] [stdout]  --> src/bin/motif_summary/io.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{info, debug, warn};
[INFO] [stdout]   |           ^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     use std::fs::File;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |     use std::collections::HashMap;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WriterBuilder`
[INFO] [stdout]   --> src/bin/motif_summary/motif_summary.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use csv::{WriterBuilder};
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/bin/mixedmotif/cli.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, ValueEnum};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::Contig`
[INFO] [stdout]  --> src/bin/mixedmotif/fasta_reader.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::sequence::Contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `score_motifs`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:1:56
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{cli, data, fasta_reader, search, sequence, score_motifs};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anyhow::{bail, Result};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bio::bio_types::annot::contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::concat`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::concat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `motif::MotifLike`, `motif`, and `strand::Strand`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rustymotif_utils::{motif, motif::MotifLike, pileup, strand::Strand};
[INFO] [stdout]   |                        ^^^^^  ^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::search::MotifNode`
[INFO] [stdout]  --> src/bin/mixedmotif/sequence.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::search::MotifNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::anyhow`
[INFO] [stdout]  --> src/bin/mixedmotif/sequence.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::anyhow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::io::fasta`
[INFO] [stdout]   --> src/bin/mixedmotif/sequence.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use bio::io::fasta;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]    --> src/bin/mixedmotif/sequence.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |     use bio::bio_types::annot::contig;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:1:43
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, fs::File, hash::Hash};
[INFO] [stdout]   |                                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BetaBernoulliModel`, `EqualLengthDNASet`, and `fit_true_beta_model_em`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         fit_true_beta_model_em, Beta, BetaBernoulliModel, BetaMixture
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     },
[INFO] [stdout] 7 |     sequence::{Contig, EqualLengthDNASet},
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ahash::{HashMap, HashMapExt};
[INFO] [stdout]   |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum_macros::EnumIter`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use strum_macros::EnumIter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 | use log::{debug, info};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ordered_float::OrderedFloat`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ordered_float::OrderedFloat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Direction`, `Graph`, `NodeIndex`, and `algo::min_spanning_tree`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     algo::min_spanning_tree,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     graph::{Graph, NodeIndex},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^^
[INFO] [stdout] 19 |     Direction,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp::Ordering` and `collections::BinaryHeap`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::{cmp::Ordering, collections::BinaryHeap};
[INFO] [stdout]    |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IupacBase`, `MotifLike`, `modtype::ModType`, `pileup`, `self`, `self`, and `strand::Strand`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |     iupac::{self, IupacBase}, modtype::ModType, motif::{self, Motif, MotifLike}, pileup,
[INFO] [stdout]    |             ^^^^  ^^^^^^^^^   ^^^^^^^^^^^^^^^^          ^^^^         ^^^^^^^^^   ^^^^^^
[INFO] [stdout] 24 |     strand::Strand,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ValueEnum`
[INFO] [stdout]  --> src/bin/mixedmotif/cli.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, ValueEnum};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::MethylationThresholds`
[INFO] [stdout]  --> src/bin/mixedmotif/data.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::sequence::MethylationThresholds;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sequence::Contig`
[INFO] [stdout]  --> src/bin/mixedmotif/fasta_reader.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::sequence::Contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `score_motifs`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:1:56
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{cli, data, fasta_reader, search, sequence, score_motifs};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use anyhow::{bail, Result};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::bio_types::annot::contig`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bio::bio_types::annot::contig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::concat`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::concat;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `motif::MotifLike`, `motif`, and `strand::Strand`
[INFO] [stdout]  --> src/bin/mixedmotif/motif_discovery.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rustymotif_utils::{motif, motif::MotifLike, pileup, strand::Strand};
[INFO] [stdout]   |                        ^^^^^  ^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::search::MotifNode`
[INFO] [stdout]  --> src/bin/mixedmotif/sequence.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::search::MotifNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::anyhow`
[INFO] [stdout]  --> src/bin/mixedmotif/sequence.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::anyhow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bio::io::fasta`
[INFO] [stdout]   --> src/bin/mixedmotif/sequence.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use bio::io::fasta;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:1:43
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, fs::File, hash::Hash};
[INFO] [stdout]   |                                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BetaBernoulliModel`, `EqualLengthDNASet`, and `fit_true_beta_model_em`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         fit_true_beta_model_em, Beta, BetaBernoulliModel, BetaMixture
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     },
[INFO] [stdout] 7 |     sequence::{Contig, EqualLengthDNASet},
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ahash::{HashMap, HashMapExt};
[INFO] [stdout]   |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum_macros::EnumIter`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use strum_macros::EnumIter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 | use log::{debug, info};
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ordered_float::OrderedFloat`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ordered_float::OrderedFloat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Direction`, `Graph`, `NodeIndex`, and `algo::min_spanning_tree`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     algo::min_spanning_tree,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     graph::{Graph, NodeIndex},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^^
[INFO] [stdout] 19 |     Direction,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp::Ordering` and `collections::BinaryHeap`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::{cmp::Ordering, collections::BinaryHeap};
[INFO] [stdout]    |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IupacBase`, `MotifLike`, `modtype::ModType`, `pileup`, `self`, `self`, and `strand::Strand`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |     iupac::{self, IupacBase}, modtype::ModType, motif::{self, Motif, MotifLike}, pileup,
[INFO] [stdout]    |             ^^^^  ^^^^^^^^^   ^^^^^^^^^^^^^^^^          ^^^^         ^^^^^^^^^   ^^^^^^
[INFO] [stdout] 24 |     strand::Strand,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_header` is never used
[INFO] [stdout]   --> src/bin/preprocess/io.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait MethylBedWriter {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] 16 |     fn write_header(&mut self) -> Result<()>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_records_iter` is never used
[INFO] [stdout]   --> src/bin/preprocess/io.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl RecordWriter {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn write_records_iter<'a, I>(&mut self, records: I) -> Result<()>
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_records_iter` is never used
[INFO] [stdout]   --> src/bin/preprocess/io.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl BgzippedRecordWriter {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn write_records_iter<'a, I>(&mut self, records: I) -> Result<()>
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_header` is never used
[INFO] [stdout]   --> src/bin/preprocess/io.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait MethylBedWriter {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] 16 |     fn write_header(&mut self) -> Result<()>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_records_iter` is never used
[INFO] [stdout]   --> src/bin/preprocess/io.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl RecordWriter {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn write_records_iter<'a, I>(&mut self, records: I) -> Result<()>
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_records_iter` is never used
[INFO] [stdout]   --> src/bin/preprocess/io.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl BgzippedRecordWriter {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn write_records_iter<'a, I>(&mut self, records: I) -> Result<()>
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mod_type`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:215:15
[INFO] [stdout]     |
[INFO] [stdout] 215 |         for ((mod_type, strand), data) in summary.summary.into_iter() {
[INFO] [stdout]     |               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mod_type`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strand`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:215:25
[INFO] [stdout]     |
[INFO] [stdout] 215 |         for ((mod_type, strand), data) in summary.summary.into_iter() {
[INFO] [stdout]     |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_strand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `extract_subsequences` and `remove_record_at_motif_indices` are never used
[INFO] [stdout]   --> src/bin/motif_summary/sequence.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Contig {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn extract_subsequences(&self, indices: &[usize], flank_size: usize) -> Result<Vec<String>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn remove_record_at_motif_indices(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EqualLengthDNASet` is never constructed
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct EqualLengthDNASet {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl EqualLengthDNASet {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 113 |     pub fn new_empty(length: usize) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn new(sequences: Vec<String>) -> Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn add_other(&mut self, other: &Self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn reverse_complement(&self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn pssm(&self, pseudocount: f64) -> PSSM {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn get_motif_matching_sequences(&self, motif: &Motif) -> Result<EqualLengthDNASet> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     pub fn remove_motif_matching_sequences(&self, motif: &Motif) -> Result<EqualLengthDNASet> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PSSM` is never constructed
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:269:12
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub struct PSSM {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `length`, `kl_divergence`, and `bases_above_freq` are never used
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:275:12
[INFO] [stdout]     |
[INFO] [stdout] 274 | impl PSSM {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] 275 |     pub fn new(pssm: Vec<Vec<f64>>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn kl_divergence(&self, other: &PSSM) -> Result<Vec<f64>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn bases_above_freq(&self, position: u8, min_freq: f64) -> Vec<IupacBase> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct AnnotatedRecordSummaryWriter {
[INFO] [stdout]     |            ---------------------------- field in this struct
[INFO] [stdout] 171 |     file: File,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&PileupRecord` instead of cloning the inner type
[INFO] [stdout]    --> src/bin/motif_summary/motif_summary.rs:112:43
[INFO] [stdout]     |
[INFO] [stdout] 112 | ...                   record.clone().clone(),
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |     use std::io::Write;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/bin/rustymotif/model.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl BetaBernoulliModel {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout]  9 |     /// Create a new Beta-Bernoulli model with alpha=1.0, beta=1.0
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_node` and `neighbors` are never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 398 | impl MotifGraph {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn check_node(&self, motif: &motif::Motif) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 461 |     pub fn neighbors(&self, motif: &motif::Motif) -> Option<impl Iterator<Item = &MotifNode>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `score_log_odds_ratio` and `score_log_odds_ratio_z_score` are never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:496:8
[INFO] [stdout]     |
[INFO] [stdout] 491 | impl ScoreCalculator {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 496 |     fn score_log_odds_ratio(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 511 |     fn score_log_odds_ratio_z_score(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `priority_log_odds_ratio` and `priority_log_odds_ratio_z_score` are never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:572:8
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl PriorityCalculator {
[INFO] [stdout]     | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 572 |     fn priority_log_odds_ratio(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 586 |     fn priority_log_odds_ratio_z_score(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_odds_ratio` is never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:601:4
[INFO] [stdout]     |
[INFO] [stdout] 601 | fn log_odds_ratio(p1: f64, p2: f64, q1: f64, q2: f64, psudo_count: f64) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_odds_ratio_z_score` is never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:607:4
[INFO] [stdout]     |
[INFO] [stdout] 607 | fn log_odds_ratio_z_score(p1: f64, p2: f64, q1: f64, q2: f64, psudo_count: f64) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default` is never used
[INFO] [stdout]   --> src/bin/rustymotif/sequence.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl MethylationThresholds {
[INFO] [stdout]    | -------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn default() -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `length` is never used
[INFO] [stdout]    --> src/bin/rustymotif/sequence.rs:334:12
[INFO] [stdout]     |
[INFO] [stdout] 328 | impl PSSM {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 334 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/bin/rustymotif/model.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl BetaBernoulliModel {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout]  9 |     /// Create a new Beta-Bernoulli model with alpha=1.0, beta=1.0
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_node` and `neighbors` are never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 398 | impl MotifGraph {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn check_node(&self, motif: &motif::Motif) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 461 |     pub fn neighbors(&self, motif: &motif::Motif) -> Option<impl Iterator<Item = &MotifNode>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `score_log_odds_ratio` and `score_log_odds_ratio_z_score` are never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:496:8
[INFO] [stdout]     |
[INFO] [stdout] 491 | impl ScoreCalculator {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 496 |     fn score_log_odds_ratio(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 511 |     fn score_log_odds_ratio_z_score(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `priority_log_odds_ratio` and `priority_log_odds_ratio_z_score` are never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:572:8
[INFO] [stdout]     |
[INFO] [stdout] 554 | impl PriorityCalculator {
[INFO] [stdout]     | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 572 |     fn priority_log_odds_ratio(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 586 |     fn priority_log_odds_ratio_z_score(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_odds_ratio` is never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:601:4
[INFO] [stdout]     |
[INFO] [stdout] 601 | fn log_odds_ratio(p1: f64, p2: f64, q1: f64, q2: f64, psudo_count: f64) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_odds_ratio_z_score` is never used
[INFO] [stdout]    --> src/bin/rustymotif/search.rs:607:4
[INFO] [stdout]     |
[INFO] [stdout] 607 | fn log_odds_ratio_z_score(p1: f64, p2: f64, q1: f64, q2: f64, psudo_count: f64) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `length` is never used
[INFO] [stdout]    --> src/bin/rustymotif/sequence.rs:334:12
[INFO] [stdout]     |
[INFO] [stdout] 328 | impl PSSM {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 334 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use strum::IntoEnumIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMapExt`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ahash::{HashMap, HashMapExt};
[INFO] [stdout]   |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Serialize`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `strum::IntoEnumIterator`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use strum::IntoEnumIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMapExt`
[INFO] [stdout]  --> src/bin/mixedmotif/score_motifs.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ahash::{HashMap, HashMapExt};
[INFO] [stdout]   |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Serialize`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mod_type`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:215:15
[INFO] [stdout]     |
[INFO] [stdout] 215 |         for ((mod_type, strand), data) in summary.summary.into_iter() {
[INFO] [stdout]     |               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mod_type`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `strand`
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:215:25
[INFO] [stdout]     |
[INFO] [stdout] 215 |         for ((mod_type, strand), data) in summary.summary.into_iter() {
[INFO] [stdout]     |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_strand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_record_at_motif_indices` is never used
[INFO] [stdout]   --> src/bin/motif_summary/sequence.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Contig {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn remove_record_at_motif_indices(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_other` and `remove_motif_matching_sequences` are never used
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl EqualLengthDNASet {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn add_other(&mut self, other: &Self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     pub fn remove_motif_matching_sequences(&self, motif: &Motif) -> Result<EqualLengthDNASet> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `length` and `bases_above_freq` are never used
[INFO] [stdout]    --> src/bin/motif_summary/sequence.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout] 274 | impl PSSM {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn bases_above_freq(&self, position: u8, min_freq: f64) -> Vec<IupacBase> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]    --> src/bin/motif_summary/io.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct AnnotatedRecordSummaryWriter {
[INFO] [stdout]     |            ---------------------------- field in this struct
[INFO] [stdout] 171 |     file: File,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&PileupRecord` instead of cloning the inner type
[INFO] [stdout]    --> src/bin/motif_summary/motif_summary.rs:112:43
[INFO] [stdout]     |
[INFO] [stdout] 112 | ...                   record.clone().clone(),
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iter`
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:395:9
[INFO] [stdout]     |
[INFO] [stdout] 395 |     for iter in 0..max_iter {
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_iter`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mix`
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:415:17
[INFO] [stdout]     |
[INFO] [stdout] 415 |             let mix = log_mix.exp(); // Stable mixture probability.
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_mix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `log_lik_old` is never read
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |             log_lik_old = log_lik;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iter`
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:395:9
[INFO] [stdout]     |
[INFO] [stdout] 395 |     for iter in 0..max_iter {
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_iter`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mix`
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:415:17
[INFO] [stdout]     |
[INFO] [stdout] 415 |             let mix = log_mix.exp(); // Stable mixture probability.
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_mix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `log_lik_old` is never read
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |             log_lik_old = log_lik;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/mixedmotif/motif_discovery.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 let mut genome_work_space = builder.build();
[INFO] [stdout]    |                     ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/mixedmotif/motif_discovery.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 let mut genome_work_space = builder.build();
[INFO] [stdout]    |                     ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_base_probability`
[INFO] [stdout]   --> src/bin/mixedmotif/search.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     min_base_probability: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_base_probability`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kl_divergence`
[INFO] [stdout]    --> src/bin/mixedmotif/search.rs:228:21
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 let kl_divergence = pssm_methylated.kl_divergence(&pssm_background)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kl_divergence`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_base_probability`
[INFO] [stdout]   --> src/bin/mixedmotif/search.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     min_base_probability: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_base_probability`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kl_divergence`
[INFO] [stdout]    --> src/bin/mixedmotif/search.rs:228:21
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 let kl_divergence = pssm_methylated.kl_divergence(&pssm_background)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kl_divergence`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `motif_reverse_index_set`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let motif_reverse_index_set: HashSet<usize> = motif_reverse_index.iter().cloned().collect();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_motif_reverse_index_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BetaBernoulliModel` is never constructed
[INFO] [stdout]  --> src/bin/mixedmotif/model.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct BetaBernoulliModel {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `new_with_params`, `update`, `mean`, and `standard_deviation` are never used
[INFO] [stdout]   --> src/bin/mixedmotif/model.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl BetaBernoulliModel {
[INFO] [stdout]    | ----------------------- associated items in this implementation
[INFO] [stdout] 14 |     /// Create a new Beta-Bernoulli model with alpha=1.0, beta=1.0
[INFO] [stdout] 15 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn new_with_params(alpha: f64, beta: f64) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn update(&mut self, n_meth: usize, n_nonmeth: usize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn mean(&self) -> f64 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn standard_deviation(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `variance`, `standard_deviation`, and `pdf` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:82:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl Beta {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn variance(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn standard_deviation(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn pdf(&self, x: f64) -> f64 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `log_pdf` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 116 | impl BetaMixture {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn log_pdf(&self, x: f64) -> f64 {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `mean`, `variance`, and `log_likelihoods` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl BetaMixture {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] 134 |     pub fn mean(&self) -> f64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn variance(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn log_likelihoods(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weighted_beta_fit_degrees_with_prior` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn weighted_beta_fit_degrees_with_prior(degrees: &[f64], weights: &[f64], prior_alpha: f64, prior_beta: f64) -> Option<Beta> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fit_true_beta_model_em` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub fn fit_true_beta_model_em(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `all_unique_combinations` is never used
[INFO] [stdout]   --> src/bin/mixedmotif/search.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn all_unique_combinations(bases: Vec<IupacBase>) -> Result<Vec<Vec<IupacBase>>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/search.rs:351:12
[INFO] [stdout]     |
[INFO] [stdout] 350 | impl MotifResult {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] 351 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_node`, `neighbors`, and `highest_scoring_node` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/search.rs:463:12
[INFO] [stdout]     |
[INFO] [stdout] 432 | impl MotifGraph {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 463 |     pub fn update_node(&mut self, motif: &motif::Motif, priority: f64, score: f64) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 496 |     pub fn neighbors(&self, motif: &motif::Motif) -> Option<impl Iterator<Item = &MotifNode>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 507 |     pub fn highest_scoring_node(&self) -> Option<&MotifNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default` is never used
[INFO] [stdout]   --> src/bin/mixedmotif/sequence.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl MethylationThresholds {
[INFO] [stdout]    | -------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn default() -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_record_at_motif_indices` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/sequence.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl Contig {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn remove_record_at_motif_indices(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `length` and `bases_above_freq` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/sequence.rs:412:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl PSSM {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 412 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     pub fn bases_above_freq(&self, position: u8, min_freq: f64) -> Vec<IupacBase> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `score_motif` is never used
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn score_motif(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `motif_reverse_index_set`
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let motif_reverse_index_set: HashSet<usize> = motif_reverse_index.iter().cloned().collect();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_motif_reverse_index_set`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BetaBernoulliModel` is never constructed
[INFO] [stdout]  --> src/bin/mixedmotif/model.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct BetaBernoulliModel {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `new_with_params`, `update`, `mean`, and `standard_deviation` are never used
[INFO] [stdout]   --> src/bin/mixedmotif/model.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl BetaBernoulliModel {
[INFO] [stdout]    | ----------------------- associated items in this implementation
[INFO] [stdout] 14 |     /// Create a new Beta-Bernoulli model with alpha=1.0, beta=1.0
[INFO] [stdout] 15 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn new_with_params(alpha: f64, beta: f64) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn update(&mut self, n_meth: usize, n_nonmeth: usize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn mean(&self) -> f64 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn standard_deviation(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `variance`, `standard_deviation`, and `pdf` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:82:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl Beta {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn variance(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn standard_deviation(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn pdf(&self, x: f64) -> f64 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `log_pdf` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 116 | impl BetaMixture {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn log_pdf(&self, x: f64) -> f64 {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `mean`, `variance`, and `log_likelihoods` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl BetaMixture {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] 134 |     pub fn mean(&self) -> f64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn variance(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn log_likelihoods(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weighted_beta_fit_degrees_with_prior` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn weighted_beta_fit_degrees_with_prior(degrees: &[f64], weights: &[f64], prior_alpha: f64, prior_beta: f64) -> Option<Beta> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fit_true_beta_model_em` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/model.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub fn fit_true_beta_model_em(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `all_unique_combinations` is never used
[INFO] [stdout]   --> src/bin/mixedmotif/search.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn all_unique_combinations(bases: Vec<IupacBase>) -> Result<Vec<Vec<IupacBase>>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/search.rs:351:12
[INFO] [stdout]     |
[INFO] [stdout] 350 | impl MotifResult {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] 351 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_node`, `neighbors`, and `highest_scoring_node` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/search.rs:463:12
[INFO] [stdout]     |
[INFO] [stdout] 432 | impl MotifGraph {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 463 |     pub fn update_node(&mut self, motif: &motif::Motif, priority: f64, score: f64) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 496 |     pub fn neighbors(&self, motif: &motif::Motif) -> Option<impl Iterator<Item = &MotifNode>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 507 |     pub fn highest_scoring_node(&self) -> Option<&MotifNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_record_at_motif_indices` is never used
[INFO] [stdout]    --> src/bin/mixedmotif/sequence.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl Contig {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn remove_record_at_motif_indices(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `length` and `bases_above_freq` are never used
[INFO] [stdout]    --> src/bin/mixedmotif/sequence.rs:412:12
[INFO] [stdout]     |
[INFO] [stdout] 406 | impl PSSM {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 412 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     pub fn bases_above_freq(&self, position: u8, min_freq: f64) -> Vec<IupacBase> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `score_motif` is never used
[INFO] [stdout]   --> src/bin/mixedmotif/score_motifs.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn score_motif(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 57.23s
[INFO] running `Command { std: "docker" "inspect" "327de90edf3c3c72b65d20cda569c3f34e8470005ecb9b3533d97579b3c4a004", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "327de90edf3c3c72b65d20cda569c3f34e8470005ecb9b3533d97579b3c4a004", kill_on_drop: false }`
[INFO] [stdout] 327de90edf3c3c72b65d20cda569c3f34e8470005ecb9b3533d97579b3c4a004
