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