[INFO] cloning repository https://github.com/LukeGrahamLandry/2.5d-maze-renderer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LukeGrahamLandry/2.5d-maze-renderer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLukeGrahamLandry%2F2.5d-maze-renderer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLukeGrahamLandry%2F2.5d-maze-renderer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 56110db20d4195539153c0bcfe9db57aaf77bc5c
[INFO] testing LukeGrahamLandry/2.5d-maze-renderer against 1.85.0 for beta-1.86-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLukeGrahamLandry%2F2.5d-maze-renderer" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/LukeGrahamLandry/2.5d-maze-renderer on toolchain 1.85.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.85.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/LukeGrahamLandry/2.5d-maze-renderer
[INFO] finished tweaking git repo https://github.com/LukeGrahamLandry/2.5d-maze-renderer
[INFO] tweaked toml for git repo https://github.com/LukeGrahamLandry/2.5d-maze-renderer written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/LukeGrahamLandry/2.5d-maze-renderer already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.85.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dlib v0.5.2
[INFO] [stderr]   Downloaded core-graphics-types v0.1.2
[INFO] [stderr]   Downloaded strict-num v0.1.1
[INFO] [stderr]   Downloaded as-raw-xcb-connection v1.0.0
[INFO] [stderr]   Downloaded thiserror v1.0.48
[INFO] [stderr]   Downloaded wayland-sys v0.30.1
[INFO] [stderr]   Downloaded jobserver v0.1.26
[INFO] [stderr]   Downloaded wayland-scanner v0.30.1
[INFO] [stderr]   Downloaded memmap2 v0.6.2
[INFO] [stderr]   Downloaded wayland-backend v0.1.2
[INFO] [stderr]   Downloaded wayland-client v0.30.2
[INFO] [stderr]   Downloaded toml_edit v0.19.14
[INFO] [stderr]   Downloaded memchr v2.6.3
[INFO] [stderr]   Downloaded hashbrown v0.14.0
[INFO] [stderr]   Downloaded quick-xml v0.28.2
[INFO] [stderr]   Downloaded winnow v0.5.15
[INFO] [stderr]   Downloaded objc2 v0.3.0-beta.3.patch-leaks.3
[INFO] [stderr]   Downloaded tiny-skia v0.8.4
[INFO] [stderr]   Downloaded x11rb v0.12.0
[INFO] [stderr]   Downloaded android-activity v0.4.3
[INFO] [stderr]   Downloaded syn v2.0.31
[INFO] [stderr]   Downloaded nix v0.26.4
[INFO] [stderr]   Downloaded winit v0.28.6
[INFO] [stderr]   Downloaded ttf-parser v0.19.1
[INFO] [stderr]   Downloaded indexmap v2.0.0
[INFO] [stderr]   Downloaded sctk-adwaita v0.5.4
[INFO] [stderr]   Downloaded calloop v0.10.6
[INFO] [stderr]   Downloaded softbuffer v0.3.0
[INFO] [stderr]   Downloaded tiny-skia-path v0.8.4
[INFO] [stderr]   Downloaded xml-rs v0.8.16
[INFO] [stderr]   Downloaded arrayvec v0.7.4
[INFO] [stderr]   Downloaded block2 v0.2.0-alpha.6
[INFO] [stderr]   Downloaded num_enum_derive v0.6.1
[INFO] [stderr]   Downloaded x11rb-protocol v0.12.0
[INFO] [stderr]   Downloaded toml_datetime v0.6.3
[INFO] [stderr]   Downloaded block-sys v0.1.0-beta.1
[INFO] [stderr]   Downloaded objc2-encode v2.0.0-pre.2
[INFO] [stderr]   Downloaded thiserror-impl v1.0.48
[INFO] [stderr]   Downloaded libloading v0.8.0
[INFO] [stderr]   Downloaded gethostname v0.3.0
[INFO] [stderr]   Downloaded num_enum v0.6.1
[INFO] [stderr]   Downloaded cfg_aliases v0.1.1
[INFO] [stderr]   Downloaded objc-sys v0.2.0-beta.2
[INFO] [stderr]   Downloaded android-properties v0.2.2
[INFO] [stderr]   Downloaded orbclient v0.3.46
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 67828721d73f091e7109d087dcf8bda421045cc60f1361966ca15a39e42f9097
[INFO] running `Command { std: "docker" "start" "-a" "67828721d73f091e7109d087dcf8bda421045cc60f1361966ca15a39e42f9097", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "67828721d73f091e7109d087dcf8bda421045cc60f1361966ca15a39e42f9097", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "67828721d73f091e7109d087dcf8bda421045cc60f1361966ca15a39e42f9097", kill_on_drop: false }`
[INFO] [stdout] 67828721d73f091e7109d087dcf8bda421045cc60f1361966ca15a39e42f9097
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 130eddf213107d94733657a05d3e60ed9b58169345da7db51ebb3abaf1475d94
[INFO] running `Command { std: "docker" "start" "-a" "130eddf213107d94733657a05d3e60ed9b58169345da7db51ebb3abaf1475d94", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling libloading v0.8.0
[INFO] [stderr]    Compiling xml-rs v0.8.16
[INFO] [stderr]    Compiling smallvec v1.11.0
[INFO] [stderr]    Compiling downcast-rs v1.2.0
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.87
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling slotmap v1.0.6
[INFO] [stderr]    Compiling memchr v2.6.3
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling thiserror v1.0.48
[INFO] [stderr]    Compiling bumpalo v3.13.0
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling bytemuck v1.13.1
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling fdeflate v0.3.0
[INFO] [stderr]    Compiling arrayref v0.3.7
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling wayland-sys v0.30.1
[INFO] [stderr]    Compiling smithay-client-toolkit v0.16.0
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.87
[INFO] [stderr]    Compiling ttf-parser v0.19.1
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling strict-num v0.1.1
[INFO] [stderr]    Compiling tiny-skia-path v0.8.4
[INFO] [stderr]    Compiling ab_glyph_rasterizer v0.1.8
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling x11rb v0.12.0
[INFO] [stderr]    Compiling flate2 v1.0.27
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling softbuffer v0.3.0
[INFO] [stderr]    Compiling quick-xml v0.28.2
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling png v0.17.10
[INFO] [stderr]    Compiling as-raw-xcb-connection v1.0.0
[INFO] [stderr]    Compiling raw-window-handle v0.5.2
[INFO] [stderr]    Compiling instant v0.1.12
[INFO] [stderr]    Compiling percent-encoding v2.3.0
[INFO] [stderr]    Compiling syn v2.0.31
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling nix v0.26.4
[INFO] [stderr]    Compiling nix v0.25.1
[INFO] [stderr]    Compiling getrandom v0.2.10
[INFO] [stderr]    Compiling memmap2 v0.5.10
[INFO] [stderr]    Compiling gethostname v0.3.0
[INFO] [stderr]    Compiling memmap2 v0.6.2
[INFO] [stderr]    Compiling mio v0.8.8
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling wayland-scanner v0.30.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling wayland-backend v0.1.2
[INFO] [stderr]    Compiling owned_ttf_parser v0.19.0
[INFO] [stderr]    Compiling ab_glyph v0.2.21
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tiny-skia v0.8.4
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling winit v0.28.6
[INFO] [stderr]    Compiling xcursor v0.3.4
[INFO] [stderr]    Compiling maze v0.1.0 (/opt/rustwide/workdir/maze)
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.87
[INFO] [stderr]    Compiling x11rb-protocol v0.12.0
[INFO] [stderr]    Compiling wayland-cursor v0.29.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.48
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.87
[INFO] [stderr]    Compiling wayland-client v0.30.2
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.87
[INFO] [stderr]    Compiling calloop v0.10.6
[INFO] [stderr]    Compiling js-sys v0.3.64
[INFO] [stderr]    Compiling web-sys v0.3.64
[INFO] [stderr]    Compiling sctk-adwaita v0.5.4
[INFO] [stderr]    Compiling mazerender2d v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `c_int` and `c_void`
[INFO] [stdout]  --> src/main.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ffi::{c_int, c_void};
[INFO] [stdout]   |                ^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MouseButton`
[INFO] [stdout]   --> src/main.rs:10:54
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DeviceEvent, ElementState, Event, KeyboardInput, MouseButton, VirtualKeyCode, WindowEvent,
[INFO] [stdout]    |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/light_cache.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]  --> src/world.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_platform`
[INFO] [stdout]   --> src/main.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 |     #[cfg(wasm_platform)]
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(wasm_platform)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(wasm_platform)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ray_direction`
[INFO] [stdout]   --> src/camera3d.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     ray_direction: Vector2,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ray_direction`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/player.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         mut world: &mut World,
[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/world_gen.rs:212:13
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let mut walls = &mut self.regions[region_index].walls;
[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/world_gen.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let mut lights = &mut self.regions[region_index].lights;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut builder = WindowBuilder::new().with_title("2.5dmazerenderer");
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColouredLine` is never constructed
[INFO] [stdout]   --> src/camera.rs:49:19
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) struct ColouredLine {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `draw_line` is never used
[INFO] [stdout]   --> src/camera.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub(crate) trait RenderStrategy {
[INFO] [stdout]    |                  -------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn draw_line(&mut self, line: LineSegment2);
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]  --> src/entity.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct SquareEntity {
[INFO] [stdout]   |                   ------------ field in this struct
[INFO] [stdout] 6 |     pub(crate) id: usize,
[INFO] [stdout]   |                ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `lerp`, `lerp_f`, and `to_u8` are never used
[INFO] [stdout]   --> src/material.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Colour {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) fn lerp(&self, other: &Colour, t: f64) -> Colour {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn lerp_f(a: f64, b: f64, t: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) fn to_u8(&self) -> (u8, u8, u8) {
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `rotate_basis` is never used
[INFO] [stdout]   --> src/mth.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Vector2 {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub(crate) fn rotate_basis(&self, new_forward_basis: Vector2) -> Vector2 {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `get_a`, `algebraic`, `vertical`, `horizontal`, `closest_point`, and `overlaps` are never used
[INFO] [stdout]    --> src/mth.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl LineSegment2 {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub(crate) fn get_a(&self) -> Vector2 {
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub(crate) fn algebraic(slope: f64, y_intercept: f64) -> LineSegment2 {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub(crate) fn vertical(x: f64) -> LineSegment2 {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub(crate) fn horizontal(y: f64) -> LineSegment2 {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub(crate) fn closest_point(&self, point: &Vector2) -> Vector2 {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub(crate) fn overlaps(&self, other: &LineSegment2) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PLAYER_SIZE` is never used
[INFO] [stdout]   --> src/player.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const PLAYER_SIZE: f64 = 4.0;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `trace_clear_path_with_portals_between` is never used
[INFO] [stdout]   --> src/ray.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl World {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub(crate) fn trace_clear_path_with_portals_between(&self, start_region: usize, origin: Vector2, target: Vector2) -> Option<Vec<RaySe...
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_shortest_path` is never used
[INFO] [stdout]    --> src/ray.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 74  | impl Region {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub(crate) fn find_shortest_path(&self, pos: Vector2, wall_normal: Vector2, wall: LineSegment2) -> Option<RaySegment> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hit_dist_squared` is never used
[INFO] [stdout]    --> src/ray.rs:201:8
[INFO] [stdout]     |
[INFO] [stdout] 183 | impl RaySegment {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn hit_dist_squared(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from_wall`, `from_region`, and `to_wall` are never read
[INFO] [stdout]   --> src/world.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub(crate) struct Portal {
[INFO] [stdout]    |                   ------ fields in this struct
[INFO] [stdout] 32 |     pub(crate) from_wall: usize,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 33 |     pub(crate) from_region: usize,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 34 |     pub(crate) to_wall: usize,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Portal` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `region` is never used
[INFO] [stdout]   --> src/world.rs:76:19
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl Wall {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub(crate) fn region(&self) -> usize {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_wall` and `add_wall` are never used
[INFO] [stdout]    --> src/world.rs:127:19
[INFO] [stdout]     |
[INFO] [stdout] 81  | impl World {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub(crate) fn remove_wall(&mut self, region: usize, wall: usize) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub(crate) fn add_wall(&mut self, wall: Wall) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `scale_factor` is never used
[INFO] [stdout]    --> src/world.rs:177:19
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl Portal {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub(crate) fn scale_factor(&self) -> f64 {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `example_preset` is never used
[INFO] [stdout]    --> src/world_gen.rs:153:15
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub(crate) fn example_preset() -> World  {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_square_region`, `unidirectional_portal`, `bidirectional_portal`, and `from_world` are never used
[INFO] [stdout]    --> src/world_gen.rs:198:19
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl MapBuilder {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub(crate) fn new_square_region(&mut self, x1: f64, y1: f64, x2: f64, y2: f64, material: Material) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub(crate) fn unidirectional_portal(&mut self, from_region: usize, from_wall: usize, to_region: usize, to_wall: usize){
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub(crate) fn bidirectional_portal(&mut self, from_region: usize, from_wall: usize, to_region: usize, to_wall: usize){
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub(crate) fn from_world(world: World) -> MapBuilder {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 34s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.87
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "130eddf213107d94733657a05d3e60ed9b58169345da7db51ebb3abaf1475d94", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "130eddf213107d94733657a05d3e60ed9b58169345da7db51ebb3abaf1475d94", kill_on_drop: false }`
[INFO] [stdout] 130eddf213107d94733657a05d3e60ed9b58169345da7db51ebb3abaf1475d94
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 792292259fe6ab8fcab0a6c337c5922c9e22ce52b433ff8b6b3ba3f298d04717
[INFO] running `Command { std: "docker" "start" "-a" "792292259fe6ab8fcab0a6c337c5922c9e22ce52b433ff8b6b3ba3f298d04717", kill_on_drop: false }`
[INFO] [stderr]    Compiling mazerender2d v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `c_int` and `c_void`
[INFO] [stdout]  --> src/main.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ffi::{c_int, c_void};
[INFO] [stdout]   |                ^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MouseButton`
[INFO] [stdout]   --> src/main.rs:10:54
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DeviceEvent, ElementState, Event, KeyboardInput, MouseButton, VirtualKeyCode, WindowEvent,
[INFO] [stdout]    |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/light_cache.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]  --> src/world.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_platform`
[INFO] [stdout]   --> src/main.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 |     #[cfg(wasm_platform)]
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(wasm_platform)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(wasm_platform)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ray_direction`
[INFO] [stdout]   --> src/camera3d.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     ray_direction: Vector2,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ray_direction`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/player.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         mut world: &mut World,
[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/world_gen.rs:212:13
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let mut walls = &mut self.regions[region_index].walls;
[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/world_gen.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let mut lights = &mut self.regions[region_index].lights;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut builder = WindowBuilder::new().with_title("2.5dmazerenderer");
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColouredLine` is never constructed
[INFO] [stdout]   --> src/camera.rs:49:19
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) struct ColouredLine {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `draw_line` is never used
[INFO] [stdout]   --> src/camera.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub(crate) trait RenderStrategy {
[INFO] [stdout]    |                  -------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn draw_line(&mut self, line: LineSegment2);
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]  --> src/entity.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct SquareEntity {
[INFO] [stdout]   |                   ------------ field in this struct
[INFO] [stdout] 6 |     pub(crate) id: usize,
[INFO] [stdout]   |                ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `lerp`, `lerp_f`, and `to_u8` are never used
[INFO] [stdout]   --> src/material.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Colour {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) fn lerp(&self, other: &Colour, t: f64) -> Colour {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn lerp_f(a: f64, b: f64, t: f64) -> f64 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) fn to_u8(&self) -> (u8, u8, u8) {
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_a`, `closest_point`, and `overlaps` are never used
[INFO] [stdout]    --> src/mth.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl LineSegment2 {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub(crate) fn get_a(&self) -> Vector2 {
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub(crate) fn closest_point(&self, point: &Vector2) -> Vector2 {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub(crate) fn overlaps(&self, other: &LineSegment2) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PLAYER_SIZE` is never used
[INFO] [stdout]   --> src/player.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const PLAYER_SIZE: f64 = 4.0;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `trace_clear_path_with_portals_between` is never used
[INFO] [stdout]   --> src/ray.rs:61:19
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl World {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub(crate) fn trace_clear_path_with_portals_between(&self, start_region: usize, origin: Vector2, target: Vector2) -> Option<Vec<RaySe...
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_shortest_path` is never used
[INFO] [stdout]    --> src/ray.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 74  | impl Region {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub(crate) fn find_shortest_path(&self, pos: Vector2, wall_normal: Vector2, wall: LineSegment2) -> Option<RaySegment> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hit_dist_squared` is never used
[INFO] [stdout]    --> src/ray.rs:201:8
[INFO] [stdout]     |
[INFO] [stdout] 183 | impl RaySegment {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn hit_dist_squared(&self) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from_wall`, `from_region`, and `to_wall` are never read
[INFO] [stdout]   --> src/world.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub(crate) struct Portal {
[INFO] [stdout]    |                   ------ fields in this struct
[INFO] [stdout] 32 |     pub(crate) from_wall: usize,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 33 |     pub(crate) from_region: usize,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 34 |     pub(crate) to_wall: usize,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Portal` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `region` is never used
[INFO] [stdout]   --> src/world.rs:76:19
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl Wall {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub(crate) fn region(&self) -> usize {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `remove_wall` and `add_wall` are never used
[INFO] [stdout]    --> src/world.rs:127:19
[INFO] [stdout]     |
[INFO] [stdout] 81  | impl World {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub(crate) fn remove_wall(&mut self, region: usize, wall: usize) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub(crate) fn add_wall(&mut self, wall: Wall) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `scale_factor` is never used
[INFO] [stdout]    --> src/world.rs:177:19
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl Portal {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub(crate) fn scale_factor(&self) -> f64 {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `example_preset` is never used
[INFO] [stdout]    --> src/world_gen.rs:153:15
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub(crate) fn example_preset() -> World  {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_square_region`, `unidirectional_portal`, `bidirectional_portal`, and `from_world` are never used
[INFO] [stdout]    --> src/world_gen.rs:198:19
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl MapBuilder {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub(crate) fn new_square_region(&mut self, x1: f64, y1: f64, x2: f64, y2: f64, material: Material) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub(crate) fn unidirectional_portal(&mut self, from_region: usize, from_wall: usize, to_region: usize, to_wall: usize){
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub(crate) fn bidirectional_portal(&mut self, from_region: usize, from_wall: usize, to_region: usize, to_wall: usize){
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub(crate) fn from_world(world: World) -> MapBuilder {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.29s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.87
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "792292259fe6ab8fcab0a6c337c5922c9e22ce52b433ff8b6b3ba3f298d04717", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "792292259fe6ab8fcab0a6c337c5922c9e22ce52b433ff8b6b3ba3f298d04717", kill_on_drop: false }`
[INFO] [stdout] 792292259fe6ab8fcab0a6c337c5922c9e22ce52b433ff8b6b3ba3f298d04717
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 6ada585b50ac8788967aac7f1d7d3098cb5014146121ae1d29e2a6725a8b020d
[INFO] running `Command { std: "docker" "start" "-a" "6ada585b50ac8788967aac7f1d7d3098cb5014146121ae1d29e2a6725a8b020d", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `c_int` and `c_void`
[INFO] [stderr]  --> src/main.rs:5:16
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::ffi::{c_int, c_void};
[INFO] [stderr]   |                ^^^^^  ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread::sleep`
[INFO] [stderr]  --> src/main.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::thread::sleep;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> src/main.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MouseButton`
[INFO] [stderr]   --> src/main.rs:10:54
[INFO] [stderr]    |
[INFO] [stderr] 10 |     DeviceEvent, ElementState, Event, KeyboardInput, MouseButton, VirtualKeyCode, WindowEvent,
[INFO] [stderr]    |                                                      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Instant`
[INFO] [stderr]  --> src/light_cache.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::time::Instant;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Arc` and `RwLock`
[INFO] [stderr]  --> src/world.rs:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::sync::{Arc, RwLock};
[INFO] [stderr]   |                 ^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `wasm_platform`
[INFO] [stderr]   --> src/main.rs:35:11
[INFO] [stderr]    |
[INFO] [stderr] 35 |     #[cfg(wasm_platform)]
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(wasm_platform)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(wasm_platform)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ray_direction`
[INFO] [stderr]   --> src/camera3d.rs:94:5
[INFO] [stderr]    |
[INFO] [stderr] 94 |     ray_direction: Vector2,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ray_direction`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/player.rs:249:9
[INFO] [stderr]     |
[INFO] [stderr] 249 |         mut world: &mut World,
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/world_gen.rs:212:13
[INFO] [stderr]     |
[INFO] [stderr] 212 |         let mut walls = &mut self.regions[region_index].walls;
[INFO] [stderr]     |             ----^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/world_gen.rs:254:13
[INFO] [stderr]     |
[INFO] [stderr] 254 |         let mut lights = &mut self.regions[region_index].lights;
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |     let mut builder = WindowBuilder::new().with_title("2.5dmazerenderer");
[INFO] [stderr]    |         ----^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ColouredLine` is never constructed
[INFO] [stderr]   --> src/camera.rs:49:19
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub(crate) struct ColouredLine {
[INFO] [stderr]    |                   ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `draw_line` is never used
[INFO] [stderr]   --> src/camera.rs:58:8
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub(crate) trait RenderStrategy {
[INFO] [stderr]    |                  -------------- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 58 |     fn draw_line(&mut self, line: LineSegment2);
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]  --> src/entity.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub(crate) struct SquareEntity {
[INFO] [stderr]   |                   ------------ field in this struct
[INFO] [stderr] 6 |     pub(crate) id: usize,
[INFO] [stderr]   |                ^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `lerp`, `lerp_f`, and `to_u8` are never used
[INFO] [stderr]   --> src/material.rs:47:19
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl Colour {
[INFO] [stderr]    | ----------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub(crate) fn lerp(&self, other: &Colour, t: f64) -> Colour {
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 55 |     fn lerp_f(a: f64, b: f64, t: f64) -> f64 {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 60 |     pub(crate) fn to_u8(&self) -> (u8, u8, u8) {
[INFO] [stderr]    |                   ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_a`, `closest_point`, and `overlaps` are never used
[INFO] [stderr]    --> src/mth.rs:139:19
[INFO] [stderr]     |
[INFO] [stderr] 131 | impl LineSegment2 {
[INFO] [stderr]     | ----------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 139 |     pub(crate) fn get_a(&self) -> Vector2 {
[INFO] [stderr]     |                   ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 222 |     pub(crate) fn closest_point(&self, point: &Vector2) -> Vector2 {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 227 |     pub(crate) fn overlaps(&self, other: &LineSegment2) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PLAYER_SIZE` is never used
[INFO] [stderr]   --> src/player.rs:16:7
[INFO] [stderr]    |
[INFO] [stderr] 16 | const PLAYER_SIZE: f64 = 4.0;
[INFO] [stderr]    |       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `trace_clear_path_with_portals_between` is never used
[INFO] [stderr]   --> src/ray.rs:61:19
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl World {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub(crate) fn trace_clear_path_with_portals_between(&self, start_region: usize, origin: Vector2, target: Vector2) -> Option<Vec<RaySe...
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `find_shortest_path` is never used
[INFO] [stderr]    --> src/ray.rs:150:19
[INFO] [stderr]     |
[INFO] [stderr] 74  | impl Region {
[INFO] [stderr]     | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 150 |     pub(crate) fn find_shortest_path(&self, pos: Vector2, wall_normal: Vector2, wall: LineSegment2) -> Option<RaySegment> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `hit_dist_squared` is never used
[INFO] [stderr]    --> src/ray.rs:201:8
[INFO] [stderr]     |
[INFO] [stderr] 183 | impl RaySegment {
[INFO] [stderr]     | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 201 |     fn hit_dist_squared(&self) -> f64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `from_wall`, `from_region`, and `to_wall` are never read
[INFO] [stderr]   --> src/world.rs:32:16
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub(crate) struct Portal {
[INFO] [stderr]    |                   ------ fields in this struct
[INFO] [stderr] 32 |     pub(crate) from_wall: usize,
[INFO] [stderr]    |                ^^^^^^^^^
[INFO] [stderr] 33 |     pub(crate) from_region: usize,
[INFO] [stderr]    |                ^^^^^^^^^^^
[INFO] [stderr] 34 |     pub(crate) to_wall: usize,
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Portal` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `region` is never used
[INFO] [stderr]   --> src/world.rs:76:19
[INFO] [stderr]    |
[INFO] [stderr] 63 | impl Wall {
[INFO] [stderr]    | --------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 76 |     pub(crate) fn region(&self) -> usize {
[INFO] [stderr]    |                   ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `remove_wall` and `add_wall` are never used
[INFO] [stderr]    --> src/world.rs:127:19
[INFO] [stderr]     |
[INFO] [stderr] 81  | impl World {
[INFO] [stderr]     | ---------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 127 |     pub(crate) fn remove_wall(&mut self, region: usize, wall: usize) {
[INFO] [stderr]     |                   ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub(crate) fn add_wall(&mut self, wall: Wall) {
[INFO] [stderr]     |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `scale_factor` is never used
[INFO] [stderr]    --> src/world.rs:177:19
[INFO] [stderr]     |
[INFO] [stderr] 161 | impl Portal {
[INFO] [stderr]     | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 177 |     pub(crate) fn scale_factor(&self) -> f64 {
[INFO] [stderr]     |                   ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `example_preset` is never used
[INFO] [stderr]    --> src/world_gen.rs:153:15
[INFO] [stderr]     |
[INFO] [stderr] 153 | pub(crate) fn example_preset() -> World  {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new_square_region`, `unidirectional_portal`, `bidirectional_portal`, and `from_world` are never used
[INFO] [stderr]    --> src/world_gen.rs:198:19
[INFO] [stderr]     |
[INFO] [stderr] 178 | impl MapBuilder {
[INFO] [stderr]     | --------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 198 |     pub(crate) fn new_square_region(&mut self, x1: f64, y1: f64, x2: f64, y2: f64, material: Material) -> usize {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 225 |     pub(crate) fn unidirectional_portal(&mut self, from_region: usize, from_wall: usize, to_region: usize, to_wall: usize){
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 248 |     pub(crate) fn bidirectional_portal(&mut self, from_region: usize, from_wall: usize, to_region: usize, to_wall: usize){
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 270 |     pub(crate) fn from_world(world: World) -> MapBuilder {
[INFO] [stderr]     |                   ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `mazerender2d` (bin "mazerender2d" test) generated 27 warnings (run `cargo fix --bin "mazerender2d" --tests` to apply 10 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.25s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.87
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/mazerender2d-a972037bd9d56504)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test mth::tests::row_reduce ... ok
[INFO] [stdout] test mth::tests::vector_angles ... ok
[INFO] [stdout] test mth::tests::lines ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6ada585b50ac8788967aac7f1d7d3098cb5014146121ae1d29e2a6725a8b020d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ada585b50ac8788967aac7f1d7d3098cb5014146121ae1d29e2a6725a8b020d", kill_on_drop: false }`
[INFO] [stdout] 6ada585b50ac8788967aac7f1d7d3098cb5014146121ae1d29e2a6725a8b020d
