[INFO] cloning repository https://github.com/amuricys/sars
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/amuricys/sars" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Famuricys%2Fsars", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Famuricys%2Fsars'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ab2fa262b29f0e033dc7828120c08dd5c33082c8
[INFO] testing amuricys/sars against beta-2021-08-01 for beta-1.55-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Famuricys%2Fsars" "/workspace/builds/worker-3/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/amuricys/sars on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/amuricys/sars
[INFO] finished tweaking git repo https://github.com/amuricys/sars
[INFO] tweaked toml for git repo https://github.com/amuricys/sars written to /workspace/builds/worker-3/source/Cargo.toml
[INFO] crate git repo https://github.com/amuricys/sars already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pistoncore-glutin_window v0.65.0
[INFO] [stderr]   Downloaded piston v0.51.0
[INFO] [stderr]   Downloaded pistoncore-event_loop v0.51.0
[INFO] [stderr]   Downloaded piston_window v0.113.0
[INFO] [stderr]   Downloaded bytemuck v1.3.0
[INFO] [stderr]   Downloaded pistoncore-window v0.46.0
[INFO] [stderr]   Downloaded vec1 v1.6.0
[INFO] [stderr]   Downloaded pathfinding v2.1.1
[INFO] [stderr]   Downloaded conrod_derive v0.73.0
[INFO] [stderr]   Downloaded conrod_core v0.73.0
[INFO] [stderr]   Downloaded conrod_piston v0.73.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7a194d15d066489ec59db98432407551a9b80d138fc733e2c8797e03fb6942d9
[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" "7a194d15d066489ec59db98432407551a9b80d138fc733e2c8797e03fb6942d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7a194d15d066489ec59db98432407551a9b80d138fc733e2c8797e03fb6942d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7a194d15d066489ec59db98432407551a9b80d138fc733e2c8797e03fb6942d9", kill_on_drop: false }`
[INFO] [stdout] 7a194d15d066489ec59db98432407551a9b80d138fc733e2c8797e03fb6942d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", 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] 93685452a53309b4612835c858c0d18eeb12ec120f1d89bc6921dda4bdec201d
[INFO] running `Command { std: "docker" "start" "-a" "93685452a53309b4612835c858c0d18eeb12ec120f1d89bc6921dda4bdec201d", kill_on_drop: false }`
[INFO] [stderr]    Compiling libloading v0.6.2
[INFO] [stderr]    Compiling piston-float v1.0.0
[INFO] [stderr]    Compiling syn v1.0.35
[INFO] [stderr]    Compiling serde v1.0.117
[INFO] [stderr]    Compiling serde_derive v1.0.114
[INFO] [stderr]    Compiling rayon-core v1.7.1
[INFO] [stderr]    Compiling adler32 v1.1.0
[INFO] [stderr]    Compiling piston-texture v0.8.0
[INFO] [stderr]    Compiling piston-graphics_api_version v1.0.0
[INFO] [stderr]    Compiling cc v1.0.58
[INFO] [stderr]    Compiling interpolation v0.2.0
[INFO] [stderr]    Compiling read_color v1.0.0
[INFO] [stderr]    Compiling piston-graphics_api_version v0.2.0
[INFO] [stderr]    Compiling heapless v0.6.1
[INFO] [stderr]    Compiling bytemuck v1.3.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling pdqselect v0.1.0
[INFO] [stderr]    Compiling fixedbitset v0.3.2
[INFO] [stderr]    Compiling robust v0.2.3
[INFO] [stderr]    Compiling find_folder v0.3.0
[INFO] [stderr]    Compiling vec1 v1.6.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling num-bigint v0.3.2
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling rayon v1.3.1
[INFO] [stderr]    Compiling indexmap v1.6.2
[INFO] [stderr]    Compiling geographiclib-rs v0.2.0
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling petgraph v0.4.13
[INFO] [stderr]    Compiling piston-viewport v1.0.0
[INFO] [stderr]    Compiling vecmath v1.0.0
[INFO] [stderr]    Compiling miniz_oxide v0.3.7
[INFO] [stderr]    Compiling shader_version v0.6.0
[INFO] [stderr]    Compiling shader_version v0.7.0
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]    Compiling memmap v0.7.0
[INFO] [stderr]    Compiling xcb v0.9.0
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling raw-window-handle v0.3.3
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling deflate v0.8.6
[INFO] [stderr]    Compiling hash32 v0.1.1
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]    Compiling gl_generator v0.10.0
[INFO] [stderr]    Compiling gfx_core v0.9.2
[INFO] [stderr]    Compiling wayland-scanner v0.23.6
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling dlib v0.4.2
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling as-slice v0.1.5
[INFO] [stderr]    Compiling tiff v0.5.0
[INFO] [stderr]    Compiling wayland-client v0.21.13
[INFO] [stderr]    Compiling wayland-protocols v0.21.13
[INFO] [stderr]    Compiling png v0.16.7
[INFO] [stderr]    Compiling wayland-sys v0.21.13
[INFO] [stderr]    Compiling wayland-sys v0.23.6
[INFO] [stderr]    Compiling daggy v0.5.0
[INFO] [stderr]    Compiling gfx_gl v0.6.1
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling ordered-float v1.1.0
[INFO] [stderr]    Compiling approx v0.3.2
[INFO] [stderr]    Compiling line_drawing v0.7.0
[INFO] [stderr]    Compiling num-complex v0.3.1
[INFO] [stderr]    Compiling approx v0.4.0
[INFO] [stderr]    Compiling float-cmp v0.8.0
[INFO] [stderr]    Compiling pathfinding v2.1.1
[INFO] [stderr]    Compiling gl v0.11.0
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling gfx v0.18.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling crossbeam-deque v0.7.3
[INFO] [stderr]    Compiling wayland-client v0.23.6
[INFO] [stderr]    Compiling wayland-protocols v0.23.6
[INFO] [stderr]    Compiling rstar v0.8.3
[INFO] [stderr]    Compiling wayland-commons v0.21.13
[INFO] [stderr]    Compiling wayland-commons v0.23.6
[INFO] [stderr]    Compiling rusttype v0.8.3
[INFO] [stderr]    Compiling toml v0.5.7
[INFO] [stderr]    Compiling geo-types v0.7.2
[INFO] [stderr]    Compiling geo v0.18.0
[INFO] [stderr]    Compiling rusttype v0.7.9
[INFO] [stderr]    Compiling piston2d-graphics v0.37.0
[INFO] [stderr]    Compiling piston2d-graphics v0.36.0
[INFO] [stderr]    Compiling andrew v0.2.1
[INFO] [stderr]    Compiling gfx_device_gl v0.16.2
[INFO] [stderr]    Compiling num v0.3.1
[INFO] [stderr]    Compiling jpeg-decoder v0.1.20
[INFO] [stderr]    Compiling image v0.23.7
[INFO] [stderr]    Compiling conrod_derive v0.73.0
[INFO] [stderr]    Compiling x11-clipboard v0.5.2
[INFO] [stderr]    Compiling piston-gfx_texture v0.41.0
[INFO] [stderr]    Compiling piston2d-opengl_graphics v0.72.0
[INFO] [stderr]    Compiling piston2d-gfx_graphics v0.70.0
[INFO] [stderr]    Compiling pistoncore-input v1.0.0
[INFO] [stderr]    Compiling pistoncore-window v0.47.0
[INFO] [stderr]    Compiling pistoncore-window v0.46.0
[INFO] [stderr]    Compiling pistoncore-event_loop v0.52.0
[INFO] [stderr]    Compiling pistoncore-event_loop v0.51.0
[INFO] [stderr]    Compiling piston v0.52.1
[INFO] [stderr]    Compiling piston v0.51.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.6.6
[INFO] [stderr]    Compiling smithay-clipboard v0.4.0
[INFO] [stderr]    Compiling copypasta v0.6.3
[INFO] [stderr]    Compiling conrod_core v0.73.0
[INFO] [stderr]    Compiling conrod_piston v0.73.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.4.6
[INFO] [stderr]    Compiling winit v0.19.5
[INFO] [stderr]    Compiling glutin v0.21.2
[INFO] [stderr]    Compiling pistoncore-glutin_window v0.66.0
[INFO] [stderr]    Compiling pistoncore-glutin_window v0.65.0
[INFO] [stderr]    Compiling piston_window v0.113.0
[INFO] [stderr]    Compiling sars v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `graph::effects::apply_changes`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::effects::apply_changes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `INNER`, `NodeChange`, `Node`, `OUTER`, `ThickSurface`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Graph, Node, NodeChange, NodeChangeMap, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                           ^^^^  ^^^^^^^^^^                 ^^^^^^^^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `closest_node_to_some_point`, `distance_between_nodes`, `distance_between_points`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use graph::{closest_node_to_some_point, distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::input::keyboard::Key::Out`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use piston::input::keyboard::Key::Out;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::effects::apply_changes`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::effects::apply_changes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `INNER`, `OUTER`, `ThickSurface`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:3:60
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Graph, Node, NodeChange, NodeChangeMap, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `closest_node_to_some_point`, `distance_between_nodes`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use graph::{closest_node_to_some_point, distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::input::keyboard::Key::Out`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use piston::input::keyboard::Key::Out;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stitcher::types::Stitching`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use stitcher::types::Stitching;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::convex_hull::convex_hull_from_graph`
[INFO] [stdout]   --> src/my_gui/run_mode.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use graph::convex_hull::convex_hull_from_graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `conrod_core::widget::text_box::Event`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use conrod_core::widget::text_box::Event;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `conrod_core::widget::Id`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use conrod_core::widget::Id;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_io::toml_table_to_params`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use file_io::toml_table_to_params;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::closest_node_to_some_point`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use graph::closest_node_to_some_point;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dist`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use linalg_helpers::{dist, lines_intersection, points_to_cyclic_lines, closest_point};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::NumCast`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use num_traits::NumCast;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use regex::Regex;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `types::Params`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use types::Params;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Graph`, `Node`
[INFO] [stdout]  --> src/renderer/draw_mode.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use graph::types::{Graph, Node, NodeChange, NodeChangeMap, Smooth, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                    ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `simulated_annealing`
[INFO] [stdout]   --> src/renderer/draw_mode.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use simulated_annealing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MouseCursorEvent`, `RenderEvent`, `UpdateEvent`
[INFO] [stdout]  --> src/renderer/types.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use piston::input::{MouseCursorEvent, RenderArgs, RenderEvent, UpdateArgs, UpdateEvent};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^              ^^^^^^^^^^^              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Stitching`, `Strategy`
[INFO] [stdout]   --> src/renderer/mod.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 21 | use stitcher::types::{Stitching, Strategy};
[INFO] [stdout]    |                       ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `stitch_choice`, `stitch_default`
[INFO] [stdout]   --> src/renderer/mod.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | use stitcher::{stitch_choice, stitch_default};
[INFO] [stdout]    |                ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Align`, `Direction`, `Padding`, `Position`, `Relative`
[INFO] [stdout]   --> src/shared_shit.rs:16:29
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                             ^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Align` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                             ----- the item `Align` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Direction` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:40
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                    --------- the item `Direction` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Padding` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:51
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                               ------- the item `Padding` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Position` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:60
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                        -------- the item `Position` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Relative` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:70
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                                  -------- the item `Relative` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `widget` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:23
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `widget` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Colorable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:31
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Colorable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Labelable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:42
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Labelable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Positionable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:53
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Positionable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Sizeable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:67
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Sizeable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Widget` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:77
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Widget` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `distance_between_points`
[INFO] [stdout]  --> src/stitcher/greedy.rs:1:37
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::{distance_between_nodes, distance_between_points};
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/stitcher/greedy.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Graph, Node};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/stitcher/greedy.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec1::Vec1`
[INFO] [stdout]  --> src/stitcher/greedy.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use vec1::Vec1;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `distance_between_nodes`
[INFO] [stdout]  --> src/stitcher/types.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::{distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ThickSurface`
[INFO] [stdout]  --> src/stitcher/types.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Node, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `distance_between_nodes`, `distance_between_points`
[INFO] [stdout]  --> src/stitcher/mod.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use graph::{distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/stitcher/mod.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use graph::types::{Node, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/stitcher/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec1::Vec1`
[INFO] [stdout]  --> src/stitcher/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use vec1::Vec1;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toml::from_str`
[INFO] [stdout]   --> src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | use toml::from_str;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/renderer/draw_mode.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |         _ => Vec::new(),
[INFO] [stdout]     |         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/renderer/draw_mode.rs:331:9
[INFO] [stdout]     |
[INFO] [stdout] 331 |         _ => s.clone(),
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/main.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let s: Vec<i64> = empty_vec.iter().map(|x| *x).collect();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/graph/mod.rs:191:41
[INFO] [stdout]     |
[INFO] [stdout] 191 | fn can_merge_without_intersection_check(ts: &ThickSurface, node_merging: &NodeMerging, deletion_threshold: f64) -> bool {
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compression_factor`
[INFO] [stdout]    --> src/graph/effects/mod.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     compression_factor: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compression_factor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/graph/effects/pusher_1.rs:18:81
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn push_inners(inner: &Graph, outer: &Graph, outer_changes: &NodeChangeMap, s: &Stitching) -> NodeChangeMap {
[INFO] [stdout]    |                                                                                 ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cur_dist`
[INFO] [stdout]   --> src/graph/effects/pusher_2.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let cur_dist = distance_between_points(avg_ball_of_change.cur_x, avg_ball_of_change.cur_y, inn.x, inn.y);
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cur_dist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idontknow`
[INFO] [stdout]    --> src/my_gui/run_mode.rs:534:9
[INFO] [stdout]     |
[INFO] [stdout] 534 |     let idontknow = make_recorder_widgets(ids.title_recorders, ids, app, ui);
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idontknow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shau`
[INFO] [stdout]    --> src/my_gui/run_mode.rs:539:9
[INFO] [stdout]     |
[INFO] [stdout] 539 |     let shau = make_color_sliders(ids.title_color_sliders, ids, app, ui);
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_shau`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fn_`
[INFO] [stdout]   --> src/my_gui/run_mode.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |         for (rn, fn_) in rec_map() {
[INFO] [stdout]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_fn_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fn_`
[INFO] [stdout]   --> src/my_gui/run_mode.rs:91:18
[INFO] [stdout]    |
[INFO] [stdout] 91 |         for (rn, fn_) in rec_map() {
[INFO] [stdout]    |                  ^^^ help: if this is intentional, prefix it with an underscore: `_fn_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/renderer/draw_mode.rs:139:36
[INFO] [stdout]     |
[INFO] [stdout] 139 |         State::SurfaceStitched(ts, s) => lines_from_thick_surface(ts),
[INFO] [stdout]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/renderer/draw_mode.rs:141:38
[INFO] [stdout]     |
[INFO] [stdout] 141 |         State::SurfaceStitchingA(ts, s) => {
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/renderer/draw_mode.rs:155:38
[INFO] [stdout]     |
[INFO] [stdout] 155 |         State::SurfaceStitchingB(ts, s, (last_node_id, last_layer_id)) => {
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_ts`
[INFO] [stdout]    --> src/renderer/draw_mode.rs:324:21
[INFO] [stdout]     |
[INFO] [stdout] 324 |             let mut new_ts = new_sb.ts;
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_rng`
[INFO] [stdout]    --> src/renderer/draw_mode.rs:325:21
[INFO] [stdout]     |
[INFO] [stdout] 325 |             let mut new_rng = new_sb.rng;
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/file_io/recorders.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Ok(mut f) => Some(RecordingState { f, last_recorded: vec![] }),
[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/linalg_helpers.rs:82:17
[INFO] [stdout]    |
[INFO] [stdout] 82 |             let mut prev = layer[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/renderer/draw_mode.rs:323:17
[INFO] [stdout]     |
[INFO] [stdout] 323 |             let mut new_sb = sb.clone();
[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/renderer/draw_mode.rs:324:17
[INFO] [stdout]     |
[INFO] [stdout] 324 |             let mut new_ts = new_sb.ts;
[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/renderer/draw_mode.rs:325:17
[INFO] [stdout]     |
[INFO] [stdout] 325 |             let mut new_rng = new_sb.rng;
[INFO] [stdout]     |                 ----^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `outer_changes_to_blob`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn outer_changes_to_blob(n: usize, inn: &Node, outer_changes: &NodeChangeMap, g: &Graph) {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Continuous`
[INFO] [stdout]  --> src/graph/types.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Continuous(R),
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `best_effort_add`
[INFO] [stdout]    --> src/graph/types.rs:194:19
[INFO] [stdout]     |
[INFO] [stdout] 194 |     pub(crate) fn best_effort_add(&mut self, x: f64, y: f64) -> Result<(), ()> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `best_effort_delete`
[INFO] [stdout]    --> src/graph/types.rs:214:19
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub(crate) fn best_effort_delete(&mut self, x: f64, y: f64) -> Result<(), ()> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `closest_nodes_to_some_point`
[INFO] [stdout]    --> src/graph/mod.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub fn closest_nodes_to_some_point(graph: &Graph, some_point_x: f64, some_point_y: f64) -> (&Node, &Node) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `closest_node_across_all_layers`
[INFO] [stdout]    --> src/graph/mod.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn closest_node_across_all_layers(ts: &ThickSurface, some_point_x: f64, some_point_y: f64) -> (&Node, usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `closest_nodes_across_all_layers`
[INFO] [stdout]    --> src/graph/mod.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn closest_nodes_across_all_layers(ts: &ThickSurface, some_point_x: f64, some_point_y: f64) -> (&Node, &Node, usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `normed_vector`
[INFO] [stdout]   --> src/linalg_helpers.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn normed_vector(x: f64, y: f64) -> (f64, f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `bisecting_vector`
[INFO] [stdout]   --> src/linalg_helpers.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn bisecting_vector(middle_x: f64, middle_y: f64, clkwise_x: f64, clkwise_y: f64, ctrclkwise_x: f64, ctrclkwise_y: f64) -> (f64, f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `from`
[INFO] [stdout]   --> src/my_gui/run_mode.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn from(ss: SimState, params: Params) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `from_inherit`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn from_inherit(ss: SimState) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `BLACK`
[INFO] [stdout]  --> src/renderer/consts.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const BLACK: Color = [0.0, 0.0, 0.0, 0.0];
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `GREEN`
[INFO] [stdout]  --> src/renderer/consts.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const GREEN: Color = [0.2, 1.0, 0.2, 1.0];
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/renderer/draw_mode.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn new(ts: ThickSurface, stitch_strat: Strategy, params: Params) -> StateBag {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get`
[INFO] [stdout]   --> src/stitcher/types.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn get(&self, layer_id: usize, n: &Node) -> Vec1<usize> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_closest_correspondent`
[INFO] [stdout]   --> src/stitcher/types.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn get_closest_correspondent(&self, layer_id: usize, n: &Node) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `len`
[INFO] [stdout]    --> src/stitcher/types.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `corrs_amt`
[INFO] [stdout]    --> src/stitcher/types.rs:118:20
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 fn corrs_amt(v: &ListMap) -> usize {
[INFO] [stdout]     |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/file_io/recorders.rs:148:28
[INFO] [stdout]     |
[INFO] [stdout] 148 |             None => panic!(format!("unsupported recorder: {}", r)),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 148 |             None => panic!("unsupported recorder: {}", r),
[INFO] [stdout]     |                           --                           --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/stitcher/types.rs:129:28
[INFO] [stdout]     |
[INFO] [stdout] 129 |                     panic!(format!("Outer: {:?}; Inner: {:?}. Should never happen.", outer_amt, inner_amt))
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 129 |                     panic!("Outer: {:?}; Inner: {:?}. Should never happen.", outer_amt, inner_amt)
[INFO] [stdout]     |                           --                                                                    --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/main.rs:59:26
[INFO] [stdout]    |
[INFO] [stdout] 59 |         Err(_) => panic!(format!("Parameter file named \"{}\" not found.", params_file_path)),
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 59 |         Err(_) => panic!("Parameter file named \"{}\" not found.", params_file_path),
[INFO] [stdout]    |                         --                                                        --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 89 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4m 57s
[INFO] running `Command { std: "docker" "inspect" "93685452a53309b4612835c858c0d18eeb12ec120f1d89bc6921dda4bdec201d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "93685452a53309b4612835c858c0d18eeb12ec120f1d89bc6921dda4bdec201d", kill_on_drop: false }`
[INFO] [stdout] 93685452a53309b4612835c858c0d18eeb12ec120f1d89bc6921dda4bdec201d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f3737f58892e5c98f546db75fdd177344c7c49ecd24d3281ece6327343b608b8
[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" "f3737f58892e5c98f546db75fdd177344c7c49ecd24d3281ece6327343b608b8", kill_on_drop: false }`
[INFO] [stderr]    Compiling sars v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0425]: cannot find function `lines_intersection` in this scope
[INFO] [stdout]    --> src/graph/effects/mod.rs:703:21
[INFO] [stdout]     |
[INFO] [stdout] 703 |         let hmmmm = lines_intersection(&lines1);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 185 |     use linalg_helpers::lines_intersection;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `lines_intersection` in this scope
[INFO] [stdout]    --> src/graph/effects/mod.rs:704:22
[INFO] [stdout]     |
[INFO] [stdout] 704 |         let hmmmm2 = lines_intersection(&lines2);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 185 |     use linalg_helpers::lines_intersection;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::effects::apply_changes`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::effects::apply_changes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `INNER`, `NodeChange`, `Node`, `OUTER`, `ThickSurface`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Graph, Node, NodeChange, NodeChangeMap, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                           ^^^^  ^^^^^^^^^^                 ^^^^^^^^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `closest_node_to_some_point`, `distance_between_nodes`, `distance_between_points`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use graph::{closest_node_to_some_point, distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::input::keyboard::Key::Out`
[INFO] [stdout]  --> src/graph/effects/pusher_1.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use piston::input::keyboard::Key::Out;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::effects::apply_changes`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::effects::apply_changes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `INNER`, `OUTER`, `ThickSurface`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:3:60
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Graph, Node, NodeChange, NodeChangeMap, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `closest_node_to_some_point`, `distance_between_nodes`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use graph::{closest_node_to_some_point, distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `piston::input::keyboard::Key::Out`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use piston::input::keyboard::Key::Out;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stitcher::types::Stitching`
[INFO] [stdout]  --> src/graph/effects/pusher_2.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use stitcher::types::Stitching;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::convex_hull::convex_hull_from_graph`
[INFO] [stdout]   --> src/my_gui/run_mode.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use graph::convex_hull::convex_hull_from_graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `conrod_core::widget::text_box::Event`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use conrod_core::widget::text_box::Event;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `conrod_core::widget::Id`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use conrod_core::widget::Id;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `file_io::toml_table_to_params`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use file_io::toml_table_to_params;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::closest_node_to_some_point`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use graph::closest_node_to_some_point;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dist`
[INFO] [stdout]  --> src/my_gui/draw_mode.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use linalg_helpers::{dist, lines_intersection, points_to_cyclic_lines, closest_point};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::NumCast`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use num_traits::NumCast;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use regex::Regex;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `types::Params`
[INFO] [stdout]   --> src/my_gui/draw_mode.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use types::Params;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Graph`, `Node`
[INFO] [stdout]  --> src/renderer/draw_mode.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use graph::types::{Graph, Node, NodeChange, NodeChangeMap, Smooth, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                    ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `simulated_annealing`
[INFO] [stdout]   --> src/renderer/draw_mode.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use simulated_annealing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MouseCursorEvent`, `RenderEvent`, `UpdateEvent`
[INFO] [stdout]  --> src/renderer/types.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use piston::input::{MouseCursorEvent, RenderArgs, RenderEvent, UpdateArgs, UpdateEvent};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^              ^^^^^^^^^^^              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Stitching`, `Strategy`
[INFO] [stdout]   --> src/renderer/mod.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 21 | use stitcher::types::{Stitching, Strategy};
[INFO] [stdout]    |                       ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `stitch_choice`, `stitch_default`
[INFO] [stdout]   --> src/renderer/mod.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | use stitcher::{stitch_choice, stitch_default};
[INFO] [stdout]    |                ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Align`, `Direction`, `Padding`, `Position`, `Relative`
[INFO] [stdout]   --> src/shared_shit.rs:16:29
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                             ^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Align` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                             ----- the item `Align` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Direction` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:40
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                    --------- the item `Direction` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Padding` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:51
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                               ------- the item `Padding` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Position` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:60
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                        -------- the item `Position` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Relative` is imported redundantly
[INFO] [stdout]   --> src/shared_shit.rs:47:70
[INFO] [stdout]    |
[INFO] [stdout] 16 | use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                                  -------- the item `Relative` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 47 |     use conrod_core::position::{Align, Direction, Padding, Position, Relative};
[INFO] [stdout]    |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `widget` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:23
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `widget` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Colorable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:31
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Colorable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Labelable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:42
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Labelable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Positionable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:53
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Positionable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Sizeable` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:67
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Sizeable` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Widget` is imported redundantly
[INFO] [stdout]    --> src/shared_shit.rs:110:77
[INFO] [stdout]     |
[INFO] [stdout] 13  | use conrod_core::*;
[INFO] [stdout]     |     -------------- the item `Widget` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 110 |     use conrod_core::{widget, Colorable, Labelable, Positionable, Sizeable, Widget};
[INFO] [stdout]     |                                                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `distance_between_points`
[INFO] [stdout]  --> src/stitcher/greedy.rs:1:37
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::{distance_between_nodes, distance_between_points};
[INFO] [stdout]   |                                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/stitcher/greedy.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Graph, Node};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/stitcher/greedy.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec1::Vec1`
[INFO] [stdout]  --> src/stitcher/greedy.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use vec1::Vec1;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `distance_between_nodes`
[INFO] [stdout]  --> src/stitcher/types.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use graph::{distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ThickSurface`
[INFO] [stdout]  --> src/stitcher/types.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use graph::types::{Node, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `distance_between_nodes`, `distance_between_points`
[INFO] [stdout]  --> src/stitcher/mod.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use graph::{distance_between_nodes, distance_between_points};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/stitcher/mod.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use graph::types::{Node, ThickSurface, INNER, OUTER};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/stitcher/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec1::Vec1`
[INFO] [stdout]  --> src/stitcher/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use vec1::Vec1;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toml::from_str`
[INFO] [stdout]   --> src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | use toml::from_str;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 47 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sars` due to 3 previous errors; 47 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "f3737f58892e5c98f546db75fdd177344c7c49ecd24d3281ece6327343b608b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3737f58892e5c98f546db75fdd177344c7c49ecd24d3281ece6327343b608b8", kill_on_drop: false }`
[INFO] [stdout] f3737f58892e5c98f546db75fdd177344c7c49ecd24d3281ece6327343b608b8
