[INFO] updating cached repository https://github.com/bbrener1/gravity_clustering [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 2c18804261e2bc4fa7df8a581dadaa358eabdd6a [INFO] checking bbrener1/gravity_clustering against master#45d050cde277b22a755847338f2acc2c7b834141 for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbbrener1%2Fgravity_clustering" "/workspace/builds/worker-2/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/bbrener1/gravity_clustering on toolchain 45d050cde277b22a755847338f2acc2c7b834141 [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/bbrener1/gravity_clustering [INFO] finished tweaking git repo https://github.com/bbrener1/gravity_clustering [INFO] tweaked toml for git repo https://github.com/bbrener1/gravity_clustering written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/bbrener1/gravity_clustering already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] ff402d34183ccc5630c11252f98e35d09898a053e9da35089b32af3d14f4ba2d [INFO] running `"docker" "start" "-a" "ff402d34183ccc5630c11252f98e35d09898a053e9da35089b32af3d14f4ba2d"` [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Compiling num-complex v0.2.0 [INFO] [stderr] Compiling matrixmultiply v0.1.15 [INFO] [stderr] Checking rand_core v0.3.0 [INFO] [stderr] Checking itertools v0.7.8 [INFO] [stderr] Checking rand_core v0.2.2 [INFO] [stderr] Compiling lazy_static v1.1.0 [INFO] [stderr] Checking rand v0.5.5 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Checking ndarray v0.12.1 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking rayon-core v1.4.1 [INFO] [stderr] Checking rayon v1.0.2 [INFO] [stderr] Checking gravity_clustering v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::iter::IntoParallelIterator` [INFO] [stderr] --> src/io.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use rayon::iter::IntoParallelIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/io.rs:647:32 [INFO] [stderr] | [INFO] [stderr] 647 | products[[i,j]] /= (&geo[i] * &geo[j]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ArrayView`, `Zip`, `stack` [INFO] [stderr] --> src/mobile_gravity_field.rs:3:33 [INFO] [stderr] | [INFO] [stderr] 3 | use ndarray::{Array,Ix1,Ix2,Ix3,Zip,Axis,ArrayView,stack}; [INFO] [stderr] | ^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::max` [INFO] [stderr] --> src/mobile_gravity_field.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::cmp::max; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `distance` [INFO] [stderr] --> src/mobile_gravity_field.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use distance; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `length` [INFO] [stderr] --> src/mobile_gravity_field.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use length; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/mobile_gravity_field.rs:397:17 [INFO] [stderr] | [INFO] [stderr] 397 | 'j_loop: for j in 0..clusters.len() { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Rng`, `ThreadRng` [INFO] [stderr] --> src/single_pathfinder.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | use rand::{Rng,ThreadRng,thread_rng}; [INFO] [stderr] | ^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/cluster.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Axis`, `Ix3`, `Zip`, `stack` [INFO] [stderr] --> src/cluster.rs:3:29 [INFO] [stderr] | [INFO] [stderr] 3 | use ndarray::{Array,Ix1,Ix2,Ix3,Zip,Axis,ArrayView,stack}; [INFO] [stderr] | ^^^ ^^^ ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::max` [INFO] [stderr] --> src/cluster.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::cmp::max; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `single_pathfinder::Pathfinder` [INFO] [stderr] --> src/cluster.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use single_pathfinder::Pathfinder; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `length` [INFO] [stderr] --> src/cluster.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use length; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Array`, `Axis`, `Ix2` [INFO] [stderr] --> src/main.rs:23:15 [INFO] [stderr] | [INFO] [stderr] 23 | use ndarray::{Array,Axis,Ix1,Ix2,Zip,ArrayView}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::iter::IntoParallelIterator` [INFO] [stderr] --> src/io.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use rayon::iter::IntoParallelIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/io.rs:647:32 [INFO] [stderr] | [INFO] [stderr] 647 | products[[i,j]] /= (&geo[i] * &geo[j]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ArrayView`, `Zip`, `stack` [INFO] [stderr] --> src/mobile_gravity_field.rs:3:33 [INFO] [stderr] | [INFO] [stderr] 3 | use ndarray::{Array,Ix1,Ix2,Ix3,Zip,Axis,ArrayView,stack}; [INFO] [stderr] | ^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::max` [INFO] [stderr] --> src/mobile_gravity_field.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::cmp::max; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `distance` [INFO] [stderr] --> src/mobile_gravity_field.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use distance; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `length` [INFO] [stderr] --> src/mobile_gravity_field.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use length; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/mobile_gravity_field.rs:397:17 [INFO] [stderr] | [INFO] [stderr] 397 | 'j_loop: for j in 0..clusters.len() { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Rng`, `ThreadRng` [INFO] [stderr] --> src/single_pathfinder.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | use rand::{Rng,ThreadRng,thread_rng}; [INFO] [stderr] | ^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/cluster.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Axis`, `Ix3`, `Zip`, `stack` [INFO] [stderr] --> src/cluster.rs:3:29 [INFO] [stderr] | [INFO] [stderr] 3 | use ndarray::{Array,Ix1,Ix2,Ix3,Zip,Axis,ArrayView,stack}; [INFO] [stderr] | ^^^ ^^^ ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::max` [INFO] [stderr] --> src/cluster.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::cmp::max; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `single_pathfinder::Pathfinder` [INFO] [stderr] --> src/cluster.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use single_pathfinder::Pathfinder; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `length` [INFO] [stderr] --> src/cluster.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use length; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Array`, `Axis`, `Ix2` [INFO] [stderr] --> src/main.rs:23:15 [INFO] [stderr] | [INFO] [stderr] 23 | use ndarray::{Array,Axis,Ix1,Ix2,Zip,ArrayView}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/cluster.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `field` is never read [INFO] [stderr] --> src/main.rs:76:17 [INFO] [stderr] | [INFO] [stderr] 76 | field = refining_field; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `field` is never read [INFO] [stderr] --> src/main.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | field = refining_field; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `similarity` [INFO] [stderr] --> src/io.rs:462:9 [INFO] [stderr] | [INFO] [stderr] 462 | let similarity = standardized.t().dot(&standardized); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_similarity` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mobile_gravity_field.rs:141:18 [INFO] [stderr] | [INFO] [stderr] 141 | for (i,(mut position,new_position_option)) in [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `step_length` [INFO] [stderr] --> src/mobile_gravity_field.rs:147:47 [INFO] [stderr] | [INFO] [stderr] 147 | if let Some((new_position,step_length)) = new_position_option { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_step_length` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `displacement` [INFO] [stderr] --> src/mobile_gravity_field.rs:301:25 [INFO] [stderr] | [INFO] [stderr] 301 | let displacement = self.distance.measure(self.initial_positions.row(point_index),point); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_displacement` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `final_positions` [INFO] [stderr] --> src/mobile_gravity_field.rs:385:13 [INFO] [stderr] | [INFO] [stderr] 385 | let final_positions = self.current_positions.as_ref().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_positions` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `candidate_points` is never read [INFO] [stderr] --> src/mobile_gravity_field.rs:450:13 [INFO] [stderr] | [INFO] [stderr] 450 | let mut candidate_points = HashSet::with_capacity(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `previous_point` [INFO] [stderr] --> src/single_pathfinder.rs:165:29 [INFO] [stderr] | [INFO] [stderr] 165 | for (i,(previous_point,previous_distance)) in sub_points.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_previous_point` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `previous_point` [INFO] [stderr] --> src/single_pathfinder.rs:188:29 [INFO] [stderr] | [INFO] [stderr] 188 | for (i,(previous_point,previous_distance)) in sub_points.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_previous_point` [INFO] [stderr] [INFO] [stderr] warning: variable `step_counter` is assigned to, but never used [INFO] [stderr] --> src/single_pathfinder.rs:264:13 [INFO] [stderr] | [INFO] [stderr] 264 | let mut step_counter = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_step_counter` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `distance` [INFO] [stderr] --> src/single_pathfinder.rs:275:30 [INFO] [stderr] | [INFO] [stderr] 275 | while let Some((step,distance)) = self.step_from(point.view(),points) { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distance` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:69:21 [INFO] [stderr] | [INFO] [stderr] 69 | let mut refining_parameters = Arc::make_mut(&mut parameters).clone(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:123:17 [INFO] [stderr] | [INFO] [stderr] 123 | let mut final_positions = field.fuzzy_fit_mobile(); [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/main.rs:124:17 [INFO] [stderr] | [INFO] [stderr] 124 | let mut predictions = field.fuzzy_predict(); [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/io.rs:602:9 [INFO] [stderr] | [INFO] [stderr] 602 | let mut means = input.mean_axis(Axis(0)); [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/io.rs:603:9 [INFO] [stderr] | [INFO] [stderr] 603 | let mut variances = input.var_axis(Axis(0),0.); [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/io.rs:660:9 [INFO] [stderr] | [INFO] [stderr] 660 | let mut geo = (&slice * &slice).sum_axis(Axis(1)); [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/io.rs:819:17 [INFO] [stderr] | [INFO] [stderr] 819 | let mut stdout = io::stdout(); [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/io.rs:844:17 [INFO] [stderr] | [INFO] [stderr] 844 | let mut stdout = io::stdout(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/cluster.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `field` is never read [INFO] [stderr] --> src/main.rs:76:17 [INFO] [stderr] | [INFO] [stderr] 76 | field = refining_field; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `field` is never read [INFO] [stderr] --> src/main.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | field = refining_field; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `similarity` [INFO] [stderr] --> src/io.rs:462:9 [INFO] [stderr] | [INFO] [stderr] 462 | let similarity = standardized.t().dot(&standardized); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_similarity` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/mobile_gravity_field.rs:141:18 [INFO] [stderr] | [INFO] [stderr] 141 | for (i,(mut position,new_position_option)) in [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `step_length` [INFO] [stderr] --> src/mobile_gravity_field.rs:147:47 [INFO] [stderr] | [INFO] [stderr] 147 | if let Some((new_position,step_length)) = new_position_option { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_step_length` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `displacement` [INFO] [stderr] --> src/mobile_gravity_field.rs:301:25 [INFO] [stderr] | [INFO] [stderr] 301 | let displacement = self.distance.measure(self.initial_positions.row(point_index),point); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_displacement` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `final_positions` [INFO] [stderr] --> src/mobile_gravity_field.rs:385:13 [INFO] [stderr] | [INFO] [stderr] 385 | let final_positions = self.current_positions.as_ref().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_positions` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `candidate_points` is never read [INFO] [stderr] --> src/mobile_gravity_field.rs:450:13 [INFO] [stderr] | [INFO] [stderr] 450 | let mut candidate_points = HashSet::with_capacity(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `previous_point` [INFO] [stderr] --> src/single_pathfinder.rs:165:29 [INFO] [stderr] | [INFO] [stderr] 165 | for (i,(previous_point,previous_distance)) in sub_points.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_previous_point` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `previous_point` [INFO] [stderr] --> src/single_pathfinder.rs:188:29 [INFO] [stderr] | [INFO] [stderr] 188 | for (i,(previous_point,previous_distance)) in sub_points.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_previous_point` [INFO] [stderr] [INFO] [stderr] warning: variable `step_counter` is assigned to, but never used [INFO] [stderr] --> src/single_pathfinder.rs:264:13 [INFO] [stderr] | [INFO] [stderr] 264 | let mut step_counter = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_step_counter` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `distance` [INFO] [stderr] --> src/single_pathfinder.rs:275:30 [INFO] [stderr] | [INFO] [stderr] 275 | while let Some((step,distance)) = self.step_from(point.view(),points) { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distance` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:69:21 [INFO] [stderr] | [INFO] [stderr] 69 | let mut refining_parameters = Arc::make_mut(&mut parameters).clone(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:123:17 [INFO] [stderr] | [INFO] [stderr] 123 | let mut final_positions = field.fuzzy_fit_mobile(); [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/main.rs:124:17 [INFO] [stderr] | [INFO] [stderr] 124 | let mut predictions = field.fuzzy_predict(); [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/single_pathfinder.rs:116:13 [INFO] [stderr] | [INFO] [stderr] 116 | for mut sub_point_index in sample_indices(&mut thread_rng(), self.samples, self.sample_subsample) { [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/single_pathfinder.rs:265:13 [INFO] [stderr] | [INFO] [stderr] 265 | let mut distance = 0.; [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/single_pathfinder.rs:307:13 [INFO] [stderr] | [INFO] [stderr] 307 | for mut final_point in final_points.outer_iter_mut() { [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `distance` [INFO] [stderr] --> src/io.rs:263:5 [INFO] [stderr] | [INFO] [stderr] 263 | pub fn distance(&self, p1:ArrayView,p2:ArrayView) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sanitize` [INFO] [stderr] --> src/io.rs:626:8 [INFO] [stderr] | [INFO] [stderr] 626 | pub fn sanitize(mut input: Array) -> Array { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `correlation_matrix` [INFO] [stderr] --> src/io.rs:679:8 [INFO] [stderr] | [INFO] [stderr] 679 | pub fn correlation_matrix(slice: ArrayView) -> Array { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `argsort` [INFO] [stderr] --> src/io.rs:690:4 [INFO] [stderr] | [INFO] [stderr] 690 | fn argsort(input: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `subsampled_nearest` [INFO] [stderr] --> src/single_pathfinder.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | fn subsampled_nearest(&self,points:Arc>) -> Option<(Array,f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fuzz` [INFO] [stderr] --> src/single_pathfinder.rs:381:5 [INFO] [stderr] | [INFO] [stderr] 381 | pub fn fuzz(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test` [INFO] [stderr] --> src/single_pathfinder.rs:397:4 [INFO] [stderr] | [INFO] [stderr] 397 | fn test(){ [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/io.rs:602:9 [INFO] [stderr] | [INFO] [stderr] 602 | let mut means = input.mean_axis(Axis(0)); [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/io.rs:603:9 [INFO] [stderr] | [INFO] [stderr] 603 | let mut variances = input.var_axis(Axis(0),0.); [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/io.rs:660:9 [INFO] [stderr] | [INFO] [stderr] 660 | let mut geo = (&slice * &slice).sum_axis(Axis(1)); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 46 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/io.rs:819:17 [INFO] [stderr] | [INFO] [stderr] 819 | let mut stdout = io::stdout(); [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/io.rs:844:17 [INFO] [stderr] | [INFO] [stderr] 844 | let mut stdout = io::stdout(); [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/single_pathfinder.rs:116:13 [INFO] [stderr] | [INFO] [stderr] 116 | for mut sub_point_index in sample_indices(&mut thread_rng(), self.samples, self.sample_subsample) { [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/single_pathfinder.rs:265:13 [INFO] [stderr] | [INFO] [stderr] 265 | let mut distance = 0.; [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/single_pathfinder.rs:307:13 [INFO] [stderr] | [INFO] [stderr] 307 | for mut final_point in final_points.outer_iter_mut() { [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `distance` [INFO] [stderr] --> src/io.rs:263:5 [INFO] [stderr] | [INFO] [stderr] 263 | pub fn distance(&self, p1:ArrayView,p2:ArrayView) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sanitize` [INFO] [stderr] --> src/io.rs:626:8 [INFO] [stderr] | [INFO] [stderr] 626 | pub fn sanitize(mut input: Array) -> Array { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `correlation_matrix` [INFO] [stderr] --> src/io.rs:679:8 [INFO] [stderr] | [INFO] [stderr] 679 | pub fn correlation_matrix(slice: ArrayView) -> Array { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `argsort` [INFO] [stderr] --> src/io.rs:690:4 [INFO] [stderr] | [INFO] [stderr] 690 | fn argsort(input: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `subsampled_nearest` [INFO] [stderr] --> src/single_pathfinder.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | fn subsampled_nearest(&self,points:Arc>) -> Option<(Array,f64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fuzz` [INFO] [stderr] --> src/single_pathfinder.rs:381:5 [INFO] [stderr] | [INFO] [stderr] 381 | pub fn fuzz(&self) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test` [INFO] [stderr] --> src/single_pathfinder.rs:397:4 [INFO] [stderr] | [INFO] [stderr] 397 | fn test(){ [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: 46 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 15.07s [INFO] running `"docker" "inspect" "ff402d34183ccc5630c11252f98e35d09898a053e9da35089b32af3d14f4ba2d"` [INFO] running `"docker" "rm" "-f" "ff402d34183ccc5630c11252f98e35d09898a053e9da35089b32af3d14f4ba2d"` [INFO] [stdout] ff402d34183ccc5630c11252f98e35d09898a053e9da35089b32af3d14f4ba2d