[INFO] fetching crate voxcov 0.2.8...
[INFO] testing voxcov-0.2.8 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate voxcov 0.2.8 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate voxcov 0.2.8
[INFO] finished tweaking crates.io crate voxcov 0.2.8
[INFO] tweaked toml for crates.io crate voxcov 0.2.8 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate voxcov 0.2.8 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate voxcov 0.2.8 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded approx v0.3.2
[INFO] [stderr]   Downloaded getrandom v0.2.10
[INFO] [stderr]   Downloaded num-traits v0.2.16
[INFO] [stderr]   Downloaded libc v0.2.148
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 96b9c98f3920dae7fa1a896d170e167def9544c9ad559be0062bd70203c10827
[INFO] running `Command { std: "docker" "start" "-a" "96b9c98f3920dae7fa1a896d170e167def9544c9ad559be0062bd70203c10827", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "96b9c98f3920dae7fa1a896d170e167def9544c9ad559be0062bd70203c10827", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96b9c98f3920dae7fa1a896d170e167def9544c9ad559be0062bd70203c10827", kill_on_drop: false }`
[INFO] [stdout] 96b9c98f3920dae7fa1a896d170e167def9544c9ad559be0062bd70203c10827
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fbbdafc86cff0970a61e2bba4d71435c6796695fa8d6ad47d6b36235e4037999
[INFO] running `Command { std: "docker" "start" "-a" "fbbdafc86cff0970a61e2bba4d71435c6796695fa8d6ad47d6b36235e4037999", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.148
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling getrandom v0.2.10
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rayon v1.7.0
[INFO] [stderr]    Compiling voxcov v0.2.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Gaussian1D`
[INFO] [stdout]  --> src/bfactor.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::blur::{AddGaussianToMap, Gaussian, Gaussian1D, GaussianBlur, GetDensity, Map, RawMap};
[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: `Grid`
[INFO] [stdout]  --> src/bfactor.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stdout]   |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::score::LinearBin`
[INFO] [stdout]  --> src/bfactor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::score::LinearBin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/blur.rs:55:44
[INFO] [stdout]    |
[INFO] [stdout] 55 |             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stdout]    |                                            ^                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 55 -             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stdout] 55 +             pdf: 1f64 / (sigma * f64::powf(2f64 * std::f64::consts::PI, 0.5)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/blur.rs:97:54
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stdout]    |                                                      ^                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 97 -                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stdout] 97 +                 / (sigma * sigma * sigma * f64::powf(2f64 * std::f64::consts::PI, 3.0 / 2.0)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/blur.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |           return r;
[INFO] [stdout]    |           -------- any code following this expression is unreachable
[INFO] [stdout] 70 | /         if r.is_nan() {
[INFO] [stdout] 71 | |             return 0f64;
[INFO] [stdout] 72 | |         }
[INFO] [stdout]    | |_________^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/grid.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |           return ();
[INFO] [stdout]     |           --------- any code following this expression is unreachable
[INFO] [stdout] 132 |           // iterate over any region which has been touched.
[INFO] [stdout] 133 | /         if let Some(low) = self.low {
[INFO] [stdout] 134 | |             if let Some(high) = self.high {
[INFO] [stdout] 135 | |                 for i in low[0]..=high[0] {
[INFO] [stdout] 136 | |                     for j in low[1]..=high[1] {
[INFO] [stdout] ...   |
[INFO] [stdout] 143 | |         }
[INFO] [stdout]     | |_________^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GridLike`
[INFO] [stdout]  --> src/bfactor.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[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/bfactor.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let mut q = 0;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `back`
[INFO] [stdout]    --> src/bfactor.rs:188:54
[INFO] [stdout]     |
[INFO] [stdout] 188 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]    --> src/bfactor.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let mut q = 0;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:268:26
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `back`
[INFO] [stdout]    --> src/bfactor.rs:277:54
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sigma`
[INFO] [stdout]    --> src/bfactor.rs:277:65
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_sigma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_mean`
[INFO] [stdout]    --> src/bfactor.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |         let old_mean = self.mean;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `tot` is never read
[INFO] [stdout]    --> src/bfactor.rs:280:23
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let mut tot = 0f64;
[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: `data`
[INFO] [stdout]    --> src/bfactor.rs:324:20
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:324:32
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:327:26
[INFO] [stdout]     |
[INFO] [stdout] 327 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/bfactor.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stdout]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `ret` is never read
[INFO] [stdout]    --> src/bfactor.rs:496:9
[INFO] [stdout]     |
[INFO] [stdout] 496 |         ret = ret.max(pz);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `low`
[INFO] [stdout]    --> src/grid.rs:133:21
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(low) = self.low {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `high`
[INFO] [stdout]    --> src/grid.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |             if let Some(high) = self.high {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/grid.rs:135:21
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in low[0]..=high[0] {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> src/grid.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     for j in low[1]..=high[1] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/grid.rs:137:29
[INFO] [stdout]     |
[INFO] [stdout] 137 |                         for k in low[2]..=high[2] {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `likelihood` is never used
[INFO] [stdout]   --> src/bfactor.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | trait EM {
[INFO] [stdout]    |       -- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn likelihood(&self, obs: &RawMap) -> f64;
[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 `set_mean` is never used
[INFO] [stdout]    --> src/bfactor.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl UniformComp {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn set_mean(&mut self, mean: f64) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `likelihood`, `gaussian_likelihood`, and `noise_likelihood` are never used
[INFO] [stdout]    --> src/bfactor.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 339 | impl Mixture {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn likelihood(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 421 |     fn noise_likelihood(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]    --> src/coverage.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct GridCoverageMap {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 186 |     width: usize,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.80s
[INFO] running `Command { std: "docker" "inspect" "fbbdafc86cff0970a61e2bba4d71435c6796695fa8d6ad47d6b36235e4037999", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fbbdafc86cff0970a61e2bba4d71435c6796695fa8d6ad47d6b36235e4037999", kill_on_drop: false }`
[INFO] [stdout] fbbdafc86cff0970a61e2bba4d71435c6796695fa8d6ad47d6b36235e4037999
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eed46900595fb8ec94870200c845d41b289f644fae2e533d76fffb087521119f
[INFO] running `Command { std: "docker" "start" "-a" "eed46900595fb8ec94870200c845d41b289f644fae2e533d76fffb087521119f", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.16
[INFO] [stdout] warning: unused import: `Gaussian1D`
[INFO] [stdout]  --> src/bfactor.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::blur::{AddGaussianToMap, Gaussian, Gaussian1D, GaussianBlur, GetDensity, Map, RawMap};
[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: `Grid`
[INFO] [stdout]  --> src/bfactor.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stdout]   |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::score::LinearBin`
[INFO] [stdout]  --> src/bfactor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::score::LinearBin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/blur.rs:55:44
[INFO] [stdout]    |
[INFO] [stdout] 55 |             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stdout]    |                                            ^                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 55 -             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stdout] 55 +             pdf: 1f64 / (sigma * f64::powf(2f64 * std::f64::consts::PI, 0.5)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/blur.rs:97:54
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stdout]    |                                                      ^                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 97 -                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stdout] 97 +                 / (sigma * sigma * sigma * f64::powf(2f64 * std::f64::consts::PI, 3.0 / 2.0)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/blur.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |           return r;
[INFO] [stdout]    |           -------- any code following this expression is unreachable
[INFO] [stdout] 70 | /         if r.is_nan() {
[INFO] [stdout] 71 | |             return 0f64;
[INFO] [stdout] 72 | |         }
[INFO] [stdout]    | |_________^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/grid.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |           return ();
[INFO] [stdout]     |           --------- any code following this expression is unreachable
[INFO] [stdout] 132 |           // iterate over any region which has been touched.
[INFO] [stdout] 133 | /         if let Some(low) = self.low {
[INFO] [stdout] 134 | |             if let Some(high) = self.high {
[INFO] [stdout] 135 | |                 for i in low[0]..=high[0] {
[INFO] [stdout] 136 | |                     for j in low[1]..=high[1] {
[INFO] [stdout] ...   |
[INFO] [stdout] 143 | |         }
[INFO] [stdout]     | |_________^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GridLike`
[INFO] [stdout]  --> src/bfactor.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[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/bfactor.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let mut q = 0;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `back`
[INFO] [stdout]    --> src/bfactor.rs:188:54
[INFO] [stdout]     |
[INFO] [stdout] 188 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]    --> src/bfactor.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let mut q = 0;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:268:26
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `back`
[INFO] [stdout]    --> src/bfactor.rs:277:54
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sigma`
[INFO] [stdout]    --> src/bfactor.rs:277:65
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_sigma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_mean`
[INFO] [stdout]    --> src/bfactor.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |         let old_mean = self.mean;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `tot` is never read
[INFO] [stdout]    --> src/bfactor.rs:280:23
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let mut tot = 0f64;
[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: `data`
[INFO] [stdout]    --> src/bfactor.rs:324:20
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:324:32
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:327:26
[INFO] [stdout]     |
[INFO] [stdout] 327 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/bfactor.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stdout]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `ret` is never read
[INFO] [stdout]    --> src/bfactor.rs:496:9
[INFO] [stdout]     |
[INFO] [stdout] 496 |         ret = ret.max(pz);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `low`
[INFO] [stdout]    --> src/grid.rs:133:21
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(low) = self.low {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `high`
[INFO] [stdout]    --> src/grid.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |             if let Some(high) = self.high {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/grid.rs:135:21
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in low[0]..=high[0] {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> src/grid.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     for j in low[1]..=high[1] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/grid.rs:137:29
[INFO] [stdout]     |
[INFO] [stdout] 137 |                         for k in low[2]..=high[2] {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `likelihood` is never used
[INFO] [stdout]   --> src/bfactor.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | trait EM {
[INFO] [stdout]    |       -- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn likelihood(&self, obs: &RawMap) -> f64;
[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 `set_mean` is never used
[INFO] [stdout]    --> src/bfactor.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl UniformComp {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn set_mean(&mut self, mean: f64) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `likelihood`, `gaussian_likelihood`, and `noise_likelihood` are never used
[INFO] [stdout]    --> src/bfactor.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 339 | impl Mixture {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn likelihood(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 421 |     fn noise_likelihood(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]    --> src/coverage.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct GridCoverageMap {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 186 |     width: usize,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling approx v0.3.2
[INFO] [stderr]    Compiling voxcov v0.2.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Gaussian1D`
[INFO] [stdout]  --> src/bfactor.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::blur::{AddGaussianToMap, Gaussian, Gaussian1D, GaussianBlur, GetDensity, Map, RawMap};
[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: `Grid`
[INFO] [stdout]  --> src/bfactor.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stdout]   |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::score::LinearBin`
[INFO] [stdout]  --> src/bfactor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::score::LinearBin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/blur.rs:55:44
[INFO] [stdout]    |
[INFO] [stdout] 55 |             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stdout]    |                                            ^                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 55 -             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stdout] 55 +             pdf: 1f64 / (sigma * f64::powf(2f64 * std::f64::consts::PI, 0.5)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/blur.rs:97:54
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stdout]    |                                                      ^                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 97 -                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stdout] 97 +                 / (sigma * sigma * sigma * f64::powf(2f64 * std::f64::consts::PI, 3.0 / 2.0)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `voxcov::grid::GridLike`
[INFO] [stdout]  --> examples/bench.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use voxcov::grid::GridLike;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/blur.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |           return r;
[INFO] [stdout]    |           -------- any code following this expression is unreachable
[INFO] [stdout] 70 | /         if r.is_nan() {
[INFO] [stdout] 71 | |             return 0f64;
[INFO] [stdout] 72 | |         }
[INFO] [stdout]    | |_________^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/grid.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |           return ();
[INFO] [stdout]     |           --------- any code following this expression is unreachable
[INFO] [stdout] 132 |           // iterate over any region which has been touched.
[INFO] [stdout] 133 | /         if let Some(low) = self.low {
[INFO] [stdout] 134 | |             if let Some(high) = self.high {
[INFO] [stdout] 135 | |                 for i in low[0]..=high[0] {
[INFO] [stdout] 136 | |                     for j in low[1]..=high[1] {
[INFO] [stdout] ...   |
[INFO] [stdout] 143 | |         }
[INFO] [stdout]     | |_________^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GridLike`
[INFO] [stdout]  --> src/bfactor.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[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/bfactor.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let mut q = 0;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `back`
[INFO] [stdout]    --> src/bfactor.rs:188:54
[INFO] [stdout]     |
[INFO] [stdout] 188 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]    --> src/bfactor.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |         let mut q = 0;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:268:26
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bfactor.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `back`
[INFO] [stdout]    --> src/bfactor.rs:277:54
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sigma`
[INFO] [stdout]    --> src/bfactor.rs:277:65
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stdout]     |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_sigma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bi`
[INFO] [stdout]    --> src/bfactor.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `old_mean`
[INFO] [stdout]    --> src/bfactor.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |         let old_mean = self.mean;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `tot` is never read
[INFO] [stdout]    --> src/bfactor.rs:280:23
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let mut tot = 0f64;
[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: `data`
[INFO] [stdout]    --> src/bfactor.rs:324:20
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:324:32
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obs`
[INFO] [stdout]    --> src/bfactor.rs:327:26
[INFO] [stdout]     |
[INFO] [stdout] 327 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/bfactor.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stdout]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `ret` is never read
[INFO] [stdout]    --> src/bfactor.rs:496:9
[INFO] [stdout]     |
[INFO] [stdout] 496 |         ret = ret.max(pz);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `low`
[INFO] [stdout]    --> src/grid.rs:133:21
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(low) = self.low {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `high`
[INFO] [stdout]    --> src/grid.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |             if let Some(high) = self.high {
[INFO] [stdout]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/grid.rs:135:21
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 for i in low[0]..=high[0] {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> src/grid.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     for j in low[1]..=high[1] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/grid.rs:137:29
[INFO] [stdout]     |
[INFO] [stdout] 137 |                         for k in low[2]..=high[2] {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `likelihood` is never used
[INFO] [stdout]   --> src/bfactor.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | trait EM {
[INFO] [stdout]    |       -- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn likelihood(&self, obs: &RawMap) -> f64;
[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 `set_mean` is never used
[INFO] [stdout]    --> src/bfactor.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl UniformComp {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn set_mean(&mut self, mean: f64) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `likelihood`, `gaussian_likelihood`, and `noise_likelihood` are never used
[INFO] [stdout]    --> src/bfactor.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 339 | impl Mixture {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 415 |     fn likelihood(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 421 |     fn noise_likelihood(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]    --> src/coverage.rs:186:5
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub struct GridCoverageMap {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 186 |     width: usize,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.26s
[INFO] running `Command { std: "docker" "inspect" "eed46900595fb8ec94870200c845d41b289f644fae2e533d76fffb087521119f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eed46900595fb8ec94870200c845d41b289f644fae2e533d76fffb087521119f", kill_on_drop: false }`
[INFO] [stdout] eed46900595fb8ec94870200c845d41b289f644fae2e533d76fffb087521119f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7b77216bcfadbd503981ee00e24d04b8c7a034b454f2fb348d94467e9b0bdd0c
[INFO] running `Command { std: "docker" "start" "-a" "7b77216bcfadbd503981ee00e24d04b8c7a034b454f2fb348d94467e9b0bdd0c", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Gaussian1D`
[INFO] [stderr]  --> src/bfactor.rs:1:47
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::blur::{AddGaussianToMap, Gaussian, Gaussian1D, GaussianBlur, GetDensity, Map, RawMap};
[INFO] [stderr]   |                                               ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Grid`
[INFO] [stderr]  --> src/bfactor.rs:3:19
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stderr]   |                   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::score::LinearBin`
[INFO] [stderr]  --> src/bfactor.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::score::LinearBin;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/blur.rs:55:44
[INFO] [stderr]    |
[INFO] [stderr] 55 |             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stderr]    |                                            ^                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 55 -             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stderr] 55 +             pdf: 1f64 / (sigma * f64::powf(2f64 * std::f64::consts::PI, 0.5)),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/blur.rs:97:54
[INFO] [stderr]    |
[INFO] [stderr] 97 |                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stderr]    |                                                      ^                           ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 97 -                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stderr] 97 +                 / (sigma * sigma * sigma * f64::powf(2f64 * std::f64::consts::PI, 3.0 / 2.0)),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]   --> src/blur.rs:70:9
[INFO] [stderr]    |
[INFO] [stderr] 69 |           return r;
[INFO] [stderr]    |           -------- any code following this expression is unreachable
[INFO] [stderr] 70 | /         if r.is_nan() {
[INFO] [stderr] 71 | |             return 0f64;
[INFO] [stderr] 72 | |         }
[INFO] [stderr]    | |_________^ unreachable statement
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/grid.rs:133:9
[INFO] [stderr]     |
[INFO] [stderr] 131 |           return ();
[INFO] [stderr]     |           --------- any code following this expression is unreachable
[INFO] [stderr] 132 |           // iterate over any region which has been touched.
[INFO] [stderr] 133 | /         if let Some(low) = self.low {
[INFO] [stderr] 134 | |             if let Some(high) = self.high {
[INFO] [stderr] 135 | |                 for i in low[0]..=high[0] {
[INFO] [stderr] 136 | |                     for j in low[1]..=high[1] {
[INFO] [stderr] ...   |
[INFO] [stderr] 143 | |         }
[INFO] [stderr]     | |_________^ unreachable statement
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GridLike`
[INFO] [stderr]  --> src/bfactor.rs:3:25
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::grid::{Grid, GridLike};
[INFO] [stderr]   |                         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bfactor.rs:197:13
[INFO] [stderr]     |
[INFO] [stderr] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bfactor.rs:202:13
[INFO] [stderr]     |
[INFO] [stderr] 202 |         let mut q = 0;
[INFO] [stderr]     |             ----^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `back`
[INFO] [stderr]    --> src/bfactor.rs:188:54
[INFO] [stderr]     |
[INFO] [stderr] 188 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stderr]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bi`
[INFO] [stderr]    --> src/bfactor.rs:197:13
[INFO] [stderr]     |
[INFO] [stderr] 197 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `q`
[INFO] [stderr]    --> src/bfactor.rs:202:13
[INFO] [stderr]     |
[INFO] [stderr] 202 |         let mut q = 0;
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bfactor.rs:237:13
[INFO] [stderr]     |
[INFO] [stderr] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bi`
[INFO] [stderr]    --> src/bfactor.rs:237:13
[INFO] [stderr]     |
[INFO] [stderr] 237 |         let mut bi = BoundingBoxIter::new(bb.lower, bb.upper);
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `obs`
[INFO] [stderr]    --> src/bfactor.rs:268:26
[INFO] [stderr]     |
[INFO] [stderr] 268 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stderr]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bfactor.rs:279:13
[INFO] [stderr]     |
[INFO] [stderr] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bfactor.rs:282:13
[INFO] [stderr]     |
[INFO] [stderr] 282 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bfactor.rs:297:13
[INFO] [stderr]     |
[INFO] [stderr] 297 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `back`
[INFO] [stderr]    --> src/bfactor.rs:277:54
[INFO] [stderr]     |
[INFO] [stderr] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stderr]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_back`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sigma`
[INFO] [stderr]    --> src/bfactor.rs:277:65
[INFO] [stderr]     |
[INFO] [stderr] 277 |     fn maximise(&mut self, data: &Map, obs: &RawMap, back: f64, sigma: f64) {
[INFO] [stderr]     |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_sigma`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bi`
[INFO] [stderr]    --> src/bfactor.rs:279:13
[INFO] [stderr]     |
[INFO] [stderr] 279 |         let mut bi = BoundingBoxIter::new(dens.low.unwrap(), dens.high.unwrap());
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_bi`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `old_mean`
[INFO] [stderr]    --> src/bfactor.rs:311:13
[INFO] [stderr]     |
[INFO] [stderr] 311 |         let old_mean = self.mean;
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_mean`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `tot` is never read
[INFO] [stderr]    --> src/bfactor.rs:280:23
[INFO] [stderr]     |
[INFO] [stderr] 280 |         let mut tot = 0f64;
[INFO] [stderr]     |                       ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]    --> src/bfactor.rs:324:20
[INFO] [stderr]     |
[INFO] [stderr] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stderr]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `obs`
[INFO] [stderr]    --> src/bfactor.rs:324:32
[INFO] [stderr]     |
[INFO] [stderr] 324 |     fn mean(&self, data: &Map, obs: &RawMap) -> Point {
[INFO] [stderr]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `obs`
[INFO] [stderr]    --> src/bfactor.rs:327:26
[INFO] [stderr]     |
[INFO] [stderr] 327 |     fn likelihood(&self, obs: &RawMap) -> f64 {
[INFO] [stderr]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_obs`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `idx`
[INFO] [stderr]    --> src/bfactor.rs:418:35
[INFO] [stderr]     |
[INFO] [stderr] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stderr]     |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `ret` is never read
[INFO] [stderr]    --> src/bfactor.rs:496:9
[INFO] [stderr]     |
[INFO] [stderr] 496 |         ret = ret.max(pz);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `low`
[INFO] [stderr]    --> src/grid.rs:133:21
[INFO] [stderr]     |
[INFO] [stderr] 133 |         if let Some(low) = self.low {
[INFO] [stderr]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_low`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `high`
[INFO] [stderr]    --> src/grid.rs:134:25
[INFO] [stderr]     |
[INFO] [stderr] 134 |             if let Some(high) = self.high {
[INFO] [stderr]     |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_high`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/grid.rs:135:21
[INFO] [stderr]     |
[INFO] [stderr] 135 |                 for i in low[0]..=high[0] {
[INFO] [stderr]     |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `j`
[INFO] [stderr]    --> src/grid.rs:136:25
[INFO] [stderr]     |
[INFO] [stderr] 136 |                     for j in low[1]..=high[1] {
[INFO] [stderr]     |                         ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `k`
[INFO] [stderr]    --> src/grid.rs:137:29
[INFO] [stderr]     |
[INFO] [stderr] 137 |                         for k in low[2]..=high[2] {
[INFO] [stderr]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stderr] 
[INFO] [stderr] warning: method `likelihood` is never used
[INFO] [stderr]   --> src/bfactor.rs:94:8
[INFO] [stderr]    |
[INFO] [stderr] 90 | trait EM {
[INFO] [stderr]    |       -- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 94 |     fn likelihood(&self, obs: &RawMap) -> f64;
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `set_mean` is never used
[INFO] [stderr]    --> src/bfactor.rs:128:8
[INFO] [stderr]     |
[INFO] [stderr] 123 | impl UniformComp {
[INFO] [stderr]     | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 128 |     fn set_mean(&mut self, mean: f64) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `likelihood`, `gaussian_likelihood`, and `noise_likelihood` are never used
[INFO] [stderr]    --> src/bfactor.rs:415:8
[INFO] [stderr]     |
[INFO] [stderr] 339 | impl Mixture {
[INFO] [stderr]     | ------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 415 |     fn likelihood(&self) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 418 |     fn gaussian_likelihood(&self, idx: usize) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 421 |     fn noise_likelihood(&self) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `width` is never read
[INFO] [stderr]    --> src/coverage.rs:186:5
[INFO] [stderr]     |
[INFO] [stderr] 185 | pub struct GridCoverageMap {
[INFO] [stderr]     |            --------------- field in this struct
[INFO] [stderr] 186 |     width: usize,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `voxcov` (lib) generated 38 warnings (run `cargo fix --lib -p voxcov` to apply 29 suggestions)
[INFO] [stderr] warning: `voxcov` (lib test) generated 38 warnings (38 duplicates)
[INFO] [stderr] warning: unused import: `voxcov::grid::GridLike`
[INFO] [stderr]  --> examples/bench.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use voxcov::grid::GridLike;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `voxcov` (example "bench") generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/voxcov-2d4478b91ac907ed)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test blur::tests::test_raw_map ... ok
[INFO] [stdout] test coverage::tests::node_to_bounding_box ... ok
[INFO] [stdout] test coverage::tests::mono_map ... ok
[INFO] [stdout] test coverage::tests::naive_diff_map ... ok
[INFO] [stdout] test score::test::moc_test ... ok
[INFO] [stdout] test blur::tests::test_blur ... ok
[INFO] [stdout] test coverage::tests::diff_map ... ok
[INFO] [stdout] test coverage::tests::same_output_map ... ok
[INFO] [stdout] test score::test::linear_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests voxcov
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/blur.rs:55:44
[INFO] [stderr]    |
[INFO] [stderr] 55 |             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stderr]    |                                            ^                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 55 -             pdf: 1f64 / (sigma * f64::powf((2f64 * std::f64::consts::PI), 0.5)),
[INFO] [stderr] 55 +             pdf: 1f64 / (sigma * f64::powf(2f64 * std::f64::consts::PI, 0.5)),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/blur.rs:97:54
[INFO] [stderr]    |
[INFO] [stderr] 97 |                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stderr]    |                                                      ^                           ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 97 -                 / (sigma * sigma * sigma * f64::powf((2f64 * std::f64::consts::PI), 3.0 / 2.0)),
[INFO] [stderr] 97 +                 / (sigma * sigma * sigma * f64::powf(2f64 * std::f64::consts::PI, 3.0 / 2.0)),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 2 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test src/blur.rs - blur::Map::new (line 263) ... ok
[INFO] [stdout] test src/geom.rs - geom::Point::vector_to (line 42) ... ok
[INFO] [stdout] test src/blur.rs - blur::RawMap::coord_to_idx (line 363) ... ok
[INFO] [stdout] test src/blur.rs - blur::GaussianRing::height_at_point (line 135) ... ok
[INFO] [stdout] test src/geom.rs - geom::BoundingBox::nearest_corner (line 142) ... ok
[INFO] [stdout] test src/bfactor.rs - bfactor::BoundingBoxIter::new (line 16) ... ok
[INFO] [stdout] test src/geom.rs - geom::BoundingBox::farthest_corner (line 172) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7b77216bcfadbd503981ee00e24d04b8c7a034b454f2fb348d94467e9b0bdd0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b77216bcfadbd503981ee00e24d04b8c7a034b454f2fb348d94467e9b0bdd0c", kill_on_drop: false }`
[INFO] [stdout] 7b77216bcfadbd503981ee00e24d04b8c7a034b454f2fb348d94467e9b0bdd0c
