[INFO] cloning repository https://github.com/mwalczyk/durer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mwalczyk/durer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmwalczyk%2Fdurer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmwalczyk%2Fdurer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8e7341b5c7ef6c83a7d419578aef5cc5a08d0972
[INFO] checking mwalczyk/durer against beta-2021-10-15 for beta-1.56-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmwalczyk%2Fdurer" "/workspace/builds/worker-8/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/mwalczyk/durer on toolchain beta-2021-10-15
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-10-15" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/mwalczyk/durer
[INFO] finished tweaking git repo https://github.com/mwalczyk/durer
[INFO] tweaked toml for git repo https://github.com/mwalczyk/durer written to /workspace/builds/worker-8/source/Cargo.toml
[INFO] crate git repo https://github.com/mwalczyk/durer already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-10-15" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lyon v0.16.0
[INFO] [stderr]   Downloaded lyon_path v0.16.0
[INFO] [stderr]   Downloaded futures-lite v1.8.0
[INFO] [stderr]   Downloaded lyon_geom v0.16.0
[INFO] [stderr]   Downloaded gfx-backend-dx12 v0.6.3
[INFO] [stderr]   Downloaded gfx-backend-metal v0.6.2
[INFO] [stderr]   Downloaded lyon_tessellation v0.16.0
[INFO] [stderr]   Downloaded bevy_prototype_lyon v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-10-15" "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] 7af4a7646c39bd524a6c17c26ffa9ffec001b1f4f00cdf9ae5f737bef0fee832
[INFO] running `Command { std: "docker" "start" "-a" "7af4a7646c39bd524a6c17c26ffa9ffec001b1f4f00cdf9ae5f737bef0fee832", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7af4a7646c39bd524a6c17c26ffa9ffec001b1f4f00cdf9ae5f737bef0fee832", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7af4a7646c39bd524a6c17c26ffa9ffec001b1f4f00cdf9ae5f737bef0fee832", kill_on_drop: false }`
[INFO] [stdout] 7af4a7646c39bd524a6c17c26ffa9ffec001b1f4f00cdf9ae5f737bef0fee832
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-10-15" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f0e0d055e74921e5c970f6a63c910cbf011798bfc2ca0b1e6b0bdd974a890b4c
[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" "f0e0d055e74921e5c970f6a63c910cbf011798bfc2ca0b1e6b0bdd974a890b4c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.76
[INFO] [stderr]    Compiling proc-macro2 v1.0.20
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]     Checking instant v0.1.6
[INFO] [stderr]    Compiling glam v0.9.4
[INFO] [stderr]     Checking async-task v4.0.2
[INFO] [stderr]     Checking fixedbitset v0.3.1
[INFO] [stderr]     Checking futures-sink v0.3.5
[INFO] [stderr]    Compiling serde_json v1.0.58
[INFO] [stderr]     Checking ttf-parser v0.8.2
[INFO] [stderr]    Compiling cart-tmp-winit v0.22.2
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.3
[INFO] [stderr]     Checking rectangle-pack v0.1.6
[INFO] [stderr]     Checking tobj v2.0.2
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling num-rational v0.3.0
[INFO] [stderr]    Compiling x11 v2.18.2
[INFO] [stderr]     Checking hibitset v0.6.3
[INFO] [stderr]     Checking tracing-core v0.1.16
[INFO] [stderr]     Checking futures-channel v0.3.5
[INFO] [stderr]     Checking async-channel v1.4.2
[INFO] [stderr]     Checking ash v0.31.0
[INFO] [stderr]     Checking futures-lite v1.8.0
[INFO] [stderr]    Compiling cpal v0.11.0
[INFO] [stderr]     Checking stretch v0.3.2
[INFO] [stderr]     Checking wayland-sys v0.23.6
[INFO] [stderr]     Checking png v0.16.7
[INFO] [stderr]    Compiling typed_index_derive v0.1.4
[INFO] [stderr]     Checking tracing v0.1.19
[INFO] [stderr]     Checking async-executor v1.3.0
[INFO] [stderr]     Checking owned_ttf_parser v0.8.0
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]     Checking ab_glyph v0.2.5
[INFO] [stderr]    Compiling syn v1.0.40
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking spirv_headers v1.5.0
[INFO] [stderr]     Checking euclid v0.22.1
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking ordered-float v1.1.0
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking sid v0.6.1
[INFO] [stderr]     Checking getrandom v0.1.14
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.35
[INFO] [stderr]     Checking inotify-sys v0.1.3
[INFO] [stderr]     Checking filetime v0.2.12
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking nix v0.14.1
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking libudev-sys v0.1.4
[INFO] [stderr]     Checking x11-dl v2.18.5
[INFO] [stderr]     Checking nix v0.15.0
[INFO] [stderr]     Checking slice-deque v0.3.0
[INFO] [stderr]     Checking alsa-sys v0.1.2
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking rusttype v0.8.3
[INFO] [stderr]    Compiling jobserver v0.1.21
[INFO] [stderr]     Checking gfx-hal v0.6.0
[INFO] [stderr]     Checking inotify v0.8.3
[INFO] [stderr]     Checking num-iter v0.1.41
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking bevy_tasks v0.2.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling cc v1.0.59
[INFO] [stderr]    Compiling const-random-macro v0.1.8
[INFO] [stderr]     Checking guillotiere v0.6.0
[INFO] [stderr]     Checking lyon_geom v0.16.0
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]     Checking image v0.23.9
[INFO] [stderr]    Compiling cmake v0.1.44
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking const-random v0.1.8
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking lyon_path v0.16.0
[INFO] [stderr]     Checking ahash v0.4.5
[INFO] [stderr]     Checking notify v5.0.0-pre.3
[INFO] [stderr]    Compiling bevy-glsl-to-spirv v0.1.7
[INFO] [stderr]    Compiling spirv-reflect v0.2.3
[INFO] [stderr]    Compiling minimp3-sys v0.3.2
[INFO] [stderr]     Checking lyon_tessellation v0.16.0
[INFO] [stderr]     Checking lyon_algorithms v0.16.0
[INFO] [stderr]     Checking bevy_utils v0.2.1
[INFO] [stderr]     Checking tempfile v3.1.0
[INFO] [stderr]     Checking lyon v0.16.0
[INFO] [stderr]     Checking minimp3 v0.3.5
[INFO] [stderr]     Checking gfx-backend-empty v0.6.0
[INFO] [stderr]     Checking gfx-memory v0.2.0
[INFO] [stderr]     Checking gfx-descriptor v0.2.0
[INFO] [stderr]     Checking calloop v0.4.4
[INFO] [stderr]     Checking wayland-commons v0.23.6
[INFO] [stderr]     Checking wayland-client v0.23.6
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking wayland-protocols v0.23.6
[INFO] [stderr]    Compiling serde_derive v1.0.116
[INFO] [stderr]    Compiling thiserror-impl v1.0.20
[INFO] [stderr]    Compiling pin-project-internal v0.4.23
[INFO] [stderr]    Compiling futures-macro v0.3.5
[INFO] [stderr]    Compiling gltf-derive v0.15.2
[INFO] [stderr]    Compiling clap_derive v3.0.0-beta.2
[INFO] [stderr]     Checking smithay-client-toolkit v0.6.6
[INFO] [stderr]     Checking thiserror v1.0.20
[INFO] [stderr]     Checking naga v0.2.0
[INFO] [stderr]     Checking pin-project v0.4.23
[INFO] [stderr]     Checking futures-util v0.3.5
[INFO] [stderr]     Checking clap v3.0.0-beta.2
[INFO] [stderr]     Checking rodio v0.11.0
[INFO] [stderr]     Checking serde v1.0.116
[INFO] [stderr]     Checking futures-executor v0.3.5
[INFO] [stderr]     Checking futures v0.3.5
[INFO] [stderr]     Checking smallvec v1.4.2
[INFO] [stderr]     Checking uuid v0.8.1
[INFO] [stderr]     Checking erased-serde v0.3.12
[INFO] [stderr]     Checking ron v0.6.2
[INFO] [stderr]     Checking parking_lot_core v0.8.0
[INFO] [stderr]     Checking parking_lot_core v0.7.2
[INFO] [stderr]     Checking gfx-backend-vulkan v0.6.1
[INFO] [stderr]     Checking gilrs-core v0.2.6
[INFO] [stderr]     Checking bevy_math v0.2.1
[INFO] [stderr]     Checking hexasphere v1.0.0
[INFO] [stderr]     Checking parking_lot v0.10.2
[INFO] [stderr]     Checking parking_lot v0.11.0
[INFO] [stderr]    Compiling toml v0.5.6
[INFO] [stderr]     Checking gilrs v0.7.4
[INFO] [stderr]     Checking gltf-json v0.15.2
[INFO] [stderr]     Checking wgpu-core v0.6.3
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling bevy_hecs_macros v0.2.1
[INFO] [stderr]    Compiling bevy_derive v0.2.1
[INFO] [stderr]    Compiling bevy_property_derive v0.2.1
[INFO] [stderr]     Checking bevy_hecs v0.2.1
[INFO] [stderr]     Checking gltf v0.15.2
[INFO] [stderr]     Checking bevy_ecs v0.2.1
[INFO] [stderr]     Checking wgpu v0.6.0
[INFO] [stderr]     Checking bevy_app v0.2.1
[INFO] [stderr]     Checking bevy_property v0.2.1
[INFO] [stderr]     Checking bevy_window v0.2.1
[INFO] [stderr]     Checking bevy_input v0.2.1
[INFO] [stderr]     Checking bevy_type_registry v0.2.1
[INFO] [stderr]     Checking bevy_asset v0.2.1
[INFO] [stderr]     Checking bevy_core v0.2.1
[INFO] [stderr]     Checking bevy_transform v0.2.1
[INFO] [stderr]     Checking bevy_winit v0.2.1
[INFO] [stderr]     Checking bevy_gilrs v0.2.1
[INFO] [stderr]     Checking bevy_scene v0.2.1
[INFO] [stderr]     Checking bevy_audio v0.2.1
[INFO] [stderr]     Checking bevy_render v0.2.1
[INFO] [stderr]     Checking bevy_diagnostic v0.2.1
[INFO] [stderr]     Checking bevy_sprite v0.2.1
[INFO] [stderr]     Checking bevy_gltf v0.2.1
[INFO] [stderr]     Checking bevy_wgpu v0.2.1
[INFO] [stderr]     Checking bevy_pbr v0.2.1
[INFO] [stderr]     Checking bevy_text v0.2.1
[INFO] [stderr]     Checking bevy_ui v0.2.1
[INFO] [stderr]     Checking bevy v0.2.1
[INFO] [stderr]     Checking bevy_prototype_lyon v0.1.2
[INFO] [stderr]     Checking durer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> src/goal_mesh.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | 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: `std::io::BufReader`
[INFO] [stdout]   --> src/goal_mesh.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/half_edge/mesh.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{info, warn};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> src/goal_mesh.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | 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: `std::io::BufReader`
[INFO] [stdout]   --> src/goal_mesh.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/half_edge/mesh.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{info, warn};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `materials`
[INFO] [stdout]   --> src/goal_mesh.rs:38:22
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let (models, materials) = tobj::load_obj(&path_to_file, true).expect("Failed to load file");
[INFO] [stdout]    |                      ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_materials`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `face_normals`
[INFO] [stdout]    --> src/goal_mesh.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |         let face_normals = self
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_face_normals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reference_edge`
[INFO] [stdout]    --> src/goal_mesh.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |         let reference_edge = self
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reference_edge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/goal_mesh.rs:424:32
[INFO] [stdout]     |
[INFO] [stdout] 424 |                 let (incoming, mut maybe_outgoing) =
[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/half_edge/mesh.rs:444:13
[INFO] [stdout]     |
[INFO] [stdout] 444 |         let mut center: Vec3 = self
[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/utils.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut min_x = points
[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/utils.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut max_x = points
[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/utils.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let mut min_y = points
[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/utils.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut max_y = points
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `NO_VERTEX`
[INFO] [stdout]   --> src/half_edge/ids.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub const NO_VERTEX: VertexIndex = VertexIndex(std::usize::MAX);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/half_edge/iterators.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `origin_vertex`
[INFO] [stdout]   --> src/half_edge/mesh.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn origin_vertex(&self) -> VertexIndex {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `half_edge`
[INFO] [stdout]    --> src/half_edge/mesh.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn half_edge(&self) -> HalfEdgeIndex {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `half_edge`
[INFO] [stdout]    --> src/half_edge/mesh.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn half_edge(&self) -> HalfEdgeIndex {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `empty`
[INFO] [stdout]    --> src/half_edge/mesh.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 144 |     pub fn empty() -> HalfEdgeMesh {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `half_edges`
[INFO] [stdout]    --> src/half_edge/mesh.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn half_edges(&self) -> &Vec<HalfEdge> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertices`
[INFO] [stdout]    --> src/half_edge/mesh.rs:322:12
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn vertices(&self) -> &Vec<Vertex> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `half_edge_mut`
[INFO] [stdout]    --> src/half_edge/mesh.rs:337:12
[INFO] [stdout]     |
[INFO] [stdout] 337 |     pub fn half_edge_mut(&mut self, eid: HalfEdgeIndex) -> &mut HalfEdge {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertex_mut`
[INFO] [stdout]    --> src/half_edge/mesh.rs:347:12
[INFO] [stdout]     |
[INFO] [stdout] 347 |     pub fn vertex_mut(&mut self, vid: VertexIndex) -> &mut Vertex {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `face_mut`
[INFO] [stdout]    --> src/half_edge/mesh.rs:357:12
[INFO] [stdout]     |
[INFO] [stdout] 357 |     pub fn face_mut(&mut self, fid: FaceIndex) -> &mut Face {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `is_border_half_edge`
[INFO] [stdout]    --> src/half_edge/mesh.rs:363:12
[INFO] [stdout]     |
[INFO] [stdout] 363 |     pub fn is_border_half_edge(&self, eid: HalfEdgeIndex) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boundary_edges`
[INFO] [stdout]    --> src/half_edge/mesh.rs:368:12
[INFO] [stdout]     |
[INFO] [stdout] 368 |     pub fn boundary_edges(&self) -> Vec<HalfEdgeIndex> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `boundary_vertices`
[INFO] [stdout]    --> src/half_edge/mesh.rs:375:12
[INFO] [stdout]     |
[INFO] [stdout] 375 |     pub fn boundary_vertices(&self) -> Vec<VertexIndex> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertex_degree`
[INFO] [stdout]    --> src/half_edge/mesh.rs:384:12
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn vertex_degree(&self, vid: VertexIndex) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `face_sides`
[INFO] [stdout]    --> src/half_edge/mesh.rs:389:12
[INFO] [stdout]     |
[INFO] [stdout] 389 |     pub fn face_sides(&self, fid: FaceIndex) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `edge_vector`
[INFO] [stdout]    --> src/half_edge/mesh.rs:396:12
[INFO] [stdout]     |
[INFO] [stdout] 396 |     pub fn edge_vector(&self, eid: HalfEdgeIndex) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `face_corner_angles`
[INFO] [stdout]    --> src/half_edge/mesh.rs:413:12
[INFO] [stdout]     |
[INFO] [stdout] 413 |     pub fn face_corner_angles(&self, vid: VertexIndex) -> Vec<f32> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `edge_midpoint`
[INFO] [stdout]    --> src/half_edge/mesh.rs:434:12
[INFO] [stdout]     |
[INFO] [stdout] 434 |     pub fn edge_midpoint(&self, eid: HalfEdgeIndex) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `face_center`
[INFO] [stdout]    --> src/half_edge/mesh.rs:443:12
[INFO] [stdout]     |
[INFO] [stdout] 443 |     pub fn face_center(&self, fid: FaceIndex) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `edge_normal`
[INFO] [stdout]    --> src/half_edge/mesh.rs:453:12
[INFO] [stdout]     |
[INFO] [stdout] 453 |     pub fn edge_normal(&self, eid: HalfEdgeIndex) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertex_normal`
[INFO] [stdout]    --> src/half_edge/mesh.rs:466:12
[INFO] [stdout]     |
[INFO] [stdout] 466 |     pub fn vertex_normal(&self, vid: VertexIndex) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `euler_characteristic`
[INFO] [stdout]    --> src/half_edge/mesh.rs:497:12
[INFO] [stdout]     |
[INFO] [stdout] 497 |     pub fn euler_characteristic(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `find_half_edge_between_vertices`
[INFO] [stdout]    --> src/half_edge/mesh.rs:504:12
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub fn find_half_edge_between_vertices(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `find_half_edge_between_faces`
[INFO] [stdout]    --> src/half_edge/mesh.rs:522:12
[INFO] [stdout]     |
[INFO] [stdout] 522 |     pub fn find_half_edge_between_faces(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `are_faces_neighbors`
[INFO] [stdout]    --> src/half_edge/mesh.rs:538:12
[INFO] [stdout]     |
[INFO] [stdout] 538 |     pub fn are_faces_neighbors(&self, a: FaceIndex, b: FaceIndex) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `face_contains_vertex`
[INFO] [stdout]    --> src/half_edge/mesh.rs:550:12
[INFO] [stdout]     |
[INFO] [stdout] 550 |     pub fn face_contains_vertex(&self, fid: FaceIndex, vid: VertexIndex) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertex_opposite_to_half_edge`
[INFO] [stdout]    --> src/half_edge/mesh.rs:559:12
[INFO] [stdout]     |
[INFO] [stdout] 559 |     pub fn vertex_opposite_to_half_edge(&self, eid: HalfEdgeIndex) -> Option<VertexIndex> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `insert_edge_between`
[INFO] [stdout]    --> src/half_edge/mesh.rs:577:12
[INFO] [stdout]     |
[INFO] [stdout] 577 |     pub fn insert_edge_between(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `vertex_id_iter`
[INFO] [stdout]    --> src/half_edge/mesh.rs:613:12
[INFO] [stdout]     |
[INFO] [stdout] 613 |     pub fn vertex_id_iter(&self) -> impl Iterator<Item = VertexIndex> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_terminating_vertex_along_half_edge`
[INFO] [stdout]    --> src/half_edge/mesh.rs:621:12
[INFO] [stdout]     |
[INFO] [stdout] 621 |     pub fn get_terminating_vertex_along_half_edge(&self, eid: HalfEdgeIndex) -> VertexIndex {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `adjacent_faces_to_half_edge`
[INFO] [stdout]    --> src/half_edge/mesh.rs:630:12
[INFO] [stdout]     |
[INFO] [stdout] 630 |     pub fn adjacent_faces_to_half_edge(&self, eid: HalfEdgeIndex) -> [Option<FaceIndex>; 2] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `adjacent_faces_to_face`
[INFO] [stdout]    --> src/half_edge/mesh.rs:670:12
[INFO] [stdout]     |
[INFO] [stdout] 670 |     pub fn adjacent_faces_to_face(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `adjacent_half_edges_to_vertex`
[INFO] [stdout]    --> src/half_edge/mesh.rs:699:12
[INFO] [stdout]     |
[INFO] [stdout] 699 |     pub fn adjacent_half_edges_to_vertex(&self, vid: VertexIndex) -> VertexEdgeLoop {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `adjacent_faces_to_vertex`
[INFO] [stdout]    --> src/half_edge/mesh.rs:716:12
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn adjacent_faces_to_vertex(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `adjacent_vertices_to_vertex`
[INFO] [stdout]    --> src/half_edge/mesh.rs:733:12
[INFO] [stdout]     |
[INFO] [stdout] 733 |     pub fn adjacent_vertices_to_vertex(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `triangle_area_2d`
[INFO] [stdout]   --> src/utils.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn triangle_area_2d(a: &Vec2, b: &Vec2, c: &Vec2) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `remap`
[INFO] [stdout]   --> src/utils.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn remap(from_range: (f32, f32), to_range: (f32, f32), s: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `normal` on type `&Face`
[INFO] [stdout]    --> src/half_edge/mesh.rs:801:55
[INFO] [stdout]     |
[INFO] [stdout] 801 |             println!("Face normal vector: {:?}", face.normal);
[INFO] [stdout]     |                                                       ^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `half_edge_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `normal` on type `&half_edge::mesh::Vertex`
[INFO] [stdout]    --> src/half_edge/mesh.rs:804:59
[INFO] [stdout]     |
[INFO] [stdout] 804 |             println!("Vertex normal vector: {:?}", vertex.normal);
[INFO] [stdout]     |                                                           ^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `coordinates`, `half_edge_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 50 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0609`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `durer` due to 3 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "f0e0d055e74921e5c970f6a63c910cbf011798bfc2ca0b1e6b0bdd974a890b4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0e0d055e74921e5c970f6a63c910cbf011798bfc2ca0b1e6b0bdd974a890b4c", kill_on_drop: false }`
[INFO] [stdout] f0e0d055e74921e5c970f6a63c910cbf011798bfc2ca0b1e6b0bdd974a890b4c
