[INFO] cloning repository https://github.com/septumca/coding-train
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/septumca/coding-train" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fseptumca%2Fcoding-train", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fseptumca%2Fcoding-train'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ead0e9f79cb87cb16388fb831b15040d0ba39139
[INFO] testing septumca/coding-train against beta-2026-01-20 for beta-1.94-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fseptumca%2Fcoding-train" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/septumca/coding-train
[INFO] finished tweaking git repo https://github.com/septumca/coding-train
[INFO] tweaked toml for git repo https://github.com/septumca/coding-train written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/septumca/coding-train on toolchain beta-2026-01-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/septumca/coding-train 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" "+beta-2026-01-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7e89275e423cd0a4ab591abd196ed35664b2d140d563871fdec428b6b19031e3
[INFO] running `Command { std: "docker" "start" "-a" "7e89275e423cd0a4ab591abd196ed35664b2d140d563871fdec428b6b19031e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7e89275e423cd0a4ab591abd196ed35664b2d140d563871fdec428b6b19031e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7e89275e423cd0a4ab591abd196ed35664b2d140d563871fdec428b6b19031e3", kill_on_drop: false }`
[INFO] [stdout] 7e89275e423cd0a4ab591abd196ed35664b2d140d563871fdec428b6b19031e3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f4520a38ec17615be673f67b798a360a1e94e819581f340c5fb186cdf0dca9b9
[INFO] running `Command { std: "docker" "start" "-a" "f4520a38ec17615be673f67b798a360a1e94e819581f340c5fb186cdf0dca9b9", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling libc v0.2.141
[INFO] [stderr]    Compiling serde_derive v1.0.159
[INFO] [stderr]    Compiling serde v1.0.159
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling parking_lot_core v0.9.7
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling lock_api v0.4.9
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling winnow v0.4.1
[INFO] [stderr]    Compiling toml_datetime v0.6.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling pin-project-lite v0.2.9
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]    Compiling tracing-core v0.1.30
[INFO] [stderr]    Compiling ahash v0.7.6
[INFO] [stderr]    Compiling slab v0.4.8
[INFO] [stderr]    Compiling instant v0.1.12
[INFO] [stderr]    Compiling event-listener v2.5.3
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling waker-fn v1.1.0
[INFO] [stderr]    Compiling futures-io v0.3.28
[INFO] [stderr]    Compiling erased-serde v0.3.25
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling parking v2.0.0
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling async-lock v2.7.0
[INFO] [stderr]    Compiling tracing v0.1.37
[INFO] [stderr]    Compiling async-task v4.4.0
[INFO] [stderr]    Compiling thread_local v1.1.7
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling bevy_ptr v0.10.1
[INFO] [stderr]    Compiling downcast-rs v1.2.0
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling pkg-config v0.3.26
[INFO] [stderr]    Compiling overload v0.1.1
[INFO] [stderr]    Compiling tracing-log v0.1.3
[INFO] [stderr]    Compiling sharded-slab v0.1.4
[INFO] [stderr]    Compiling nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling concurrent-queue v2.1.0
[INFO] [stderr]    Compiling crossbeam-channel v0.5.7
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling async-channel v1.8.0
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling futures-lite v1.12.0
[INFO] [stderr]    Compiling uuid v1.3.0
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling khronos-egl v4.1.0
[INFO] [stderr]    Compiling ash v0.37.2+1.3.238
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling anyhow v1.0.70
[INFO] [stderr]    Compiling termcolor v1.2.0
[INFO] [stderr]    Compiling unicode-width v0.1.10
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling walkdir v2.3.3
[INFO] [stderr]    Compiling pp-rs v0.2.1
[INFO] [stderr]    Compiling syn v2.0.13
[INFO] [stderr]    Compiling miniz_oxide v0.6.2
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling gpu-descriptor-types v0.1.1
[INFO] [stderr]    Compiling codespan-reporting v0.11.1
[INFO] [stderr]    Compiling gpu-alloc-types v0.2.0
[INFO] [stderr]    Compiling arrayvec v0.7.2
[INFO] [stderr]    Compiling hexf-parse v0.2.1
[INFO] [stderr]    Compiling mio v0.8.6
[INFO] [stderr]    Compiling async-executor v1.5.0
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling inotify v0.9.6
[INFO] [stderr]    Compiling spirv v0.2.0+1.5.4
[INFO] [stderr]    Compiling bevy_tasks v0.10.1
[INFO] [stderr]    Compiling sysinfo v0.28.4
[INFO] [stderr]    Compiling filetime v0.2.21
[INFO] [stderr]    Compiling flate2 v1.0.25
[INFO] [stderr]    Compiling gpu-alloc v0.5.3
[INFO] [stderr]    Compiling notify v5.1.0
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling regex v1.7.3
[INFO] [stderr]    Compiling toml_edit v0.19.8
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling wgpu-types v0.15.2
[INFO] [stderr]    Compiling profiling v1.0.7
[INFO] [stderr]    Compiling renderdoc-sys v0.7.1
[INFO] [stderr]    Compiling glow v0.12.1
[INFO] [stderr]    Compiling png v0.17.7
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling const_panic v0.2.7
[INFO] [stderr]    Compiling ruzstd v0.2.4
[INFO] [stderr]    Compiling ktx2 v0.3.0
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling ttf-parser v0.18.1
[INFO] [stderr]    Compiling percent-encoding v2.2.0
[INFO] [stderr]    Compiling encase_derive_impl v0.5.0
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]    Compiling xml-rs v0.8.4
[INFO] [stderr]    Compiling radsort v0.1.0
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling serde_json v1.0.95
[INFO] [stderr]    Compiling bevy_macro_utils v0.10.1
[INFO] [stderr]    Compiling bytemuck_derive v1.4.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling euclid v0.22.9
[INFO] [stderr]    Compiling slotmap v1.0.6
[INFO] [stderr]    Compiling cpal v0.15.2
[INFO] [stderr]    Compiling itoa v1.0.6
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling svg_fmt v0.4.1
[INFO] [stderr]    Compiling accesskit v0.10.1
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]    Compiling ryu v1.0.13
[INFO] [stderr]    Compiling bytemuck v1.13.1
[INFO] [stderr]    Compiling nix v0.26.2
[INFO] [stderr]    Compiling ogg v0.8.0
[INFO] [stderr]    Compiling image v0.24.6
[INFO] [stderr]    Compiling xi-unicode v0.3.0
[INFO] [stderr]    Compiling rectangle-pack v0.4.2
[INFO] [stderr]    Compiling dasp_sample v0.11.0
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling guillotiere v0.6.2
[INFO] [stderr]    Compiling gilrs v0.10.1
[INFO] [stderr]    Compiling lewton v0.10.2
[INFO] [stderr]    Compiling urlencoding v2.1.2
[INFO] [stderr]    Compiling ahash v0.8.3
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling bevy_utils_proc_macros v0.10.1
[INFO] [stderr]    Compiling bevy_reflect_derive v0.10.1
[INFO] [stderr]    Compiling bevy_ecs_macros v0.10.1
[INFO] [stderr]    Compiling bevy_derive v0.10.1
[INFO] [stderr]    Compiling encase_derive v0.5.0
[INFO] [stderr]    Compiling bevy_encase_derive v0.10.1
[INFO] [stderr]    Compiling bevy_render_macros v0.10.1
[INFO] [stderr]    Compiling owned_ttf_parser v0.18.1
[INFO] [stderr]    Compiling winit v0.28.3
[INFO] [stderr]    Compiling ab_glyph v0.2.20
[INFO] [stderr]    Compiling gltf-derive v1.1.0
[INFO] [stderr]    Compiling taffy v0.3.10
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stderr]    Compiling glyph_brush_layout v0.2.3
[INFO] [stderr]    Compiling emath v0.21.0
[INFO] [stderr]    Compiling ecolor v0.21.0
[INFO] [stderr]    Compiling form_urlencoded v1.1.0
[INFO] [stderr]    Compiling gethostname v0.2.3
[INFO] [stderr]    Compiling dirs-sys v0.3.7
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling bevy-inspector-egui-derive v0.18.1
[INFO] [stderr]    Compiling alsa v0.7.0
[INFO] [stderr]    Compiling x11rb-protocol v0.10.0
[INFO] [stderr]    Compiling dirs v4.0.0
[INFO] [stderr]    Compiling url v2.3.1
[INFO] [stderr]    Compiling pretty-type-name v1.0.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling webbrowser v0.8.8
[INFO] [stderr]    Compiling smallvec v1.10.0
[INFO] [stderr]    Compiling glam v0.23.0
[INFO] [stderr]    Compiling ron v0.8.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.16
[INFO] [stderr]    Compiling accesskit_winit v0.12.4
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling gilrs-core v0.5.4
[INFO] [stderr]    Compiling epaint v0.21.0
[INFO] [stderr]    Compiling gpu-descriptor v0.2.3
[INFO] [stderr]    Compiling rodio v0.17.1
[INFO] [stderr]    Compiling gltf-json v1.1.0
[INFO] [stderr]    Compiling petgraph v0.6.3
[INFO] [stderr]    Compiling egui v0.21.0
[INFO] [stderr]    Compiling x11rb v0.10.1
[INFO] [stderr]    Compiling bevy_math v0.10.1
[INFO] [stderr]    Compiling encase v0.5.0
[INFO] [stderr]    Compiling bevy_mikktspace v0.10.1
[INFO] [stderr]    Compiling hexasphere v8.1.0
[INFO] [stderr]    Compiling bevy_utils v0.10.1
[INFO] [stderr]    Compiling naga v0.11.0
[INFO] [stderr]    Compiling bevy_reflect v0.10.1
[INFO] [stderr]    Compiling arboard v3.2.0
[INFO] [stderr]    Compiling gltf v1.1.0
[INFO] [stderr]    Compiling bevy_ecs v0.10.1
[INFO] [stderr]    Compiling wgpu-hal v0.15.4
[INFO] [stderr]    Compiling wgpu-core v0.15.1
[INFO] [stderr]    Compiling bevy_app v0.10.1
[INFO] [stderr]    Compiling bevy_log v0.10.1
[INFO] [stderr]    Compiling bevy_core v0.10.1
[INFO] [stderr]    Compiling bevy_time v0.10.1
[INFO] [stderr]    Compiling bevy_input v0.10.1
[INFO] [stderr]    Compiling bevy_a11y v0.10.1
[INFO] [stderr]    Compiling bevy_hierarchy v0.10.1
[INFO] [stderr]    Compiling bevy_diagnostic v0.10.1
[INFO] [stderr]    Compiling bevy_transform v0.10.1
[INFO] [stderr]    Compiling bevy_asset v0.10.1
[INFO] [stderr]    Compiling bevy_animation v0.10.1
[INFO] [stderr]    Compiling bevy_audio v0.10.1
[INFO] [stderr]    Compiling bevy_window v0.10.1
[INFO] [stderr]    Compiling bevy_gilrs v0.10.1
[INFO] [stderr]    Compiling wgpu v0.15.1
[INFO] [stderr]    Compiling bevy_winit v0.10.1
[INFO] [stderr]    Compiling bevy_render v0.10.1
[INFO] [stderr]    Compiling bevy_core_pipeline v0.10.1
[INFO] [stderr]    Compiling bevy_scene v0.10.1
[INFO] [stderr]    Compiling bevy_sprite v0.10.1
[INFO] [stderr]    Compiling bevy_pbr v0.10.1
[INFO] [stderr]    Compiling bevy_text v0.10.1
[INFO] [stderr]    Compiling bevy_ui v0.10.1
[INFO] [stderr]    Compiling bevy_gltf v0.10.1
[INFO] [stderr]    Compiling bevy_internal v0.10.1
[INFO] [stderr]    Compiling bevy v0.10.1
[INFO] [stderr]    Compiling bevy_egui v0.20.2
[INFO] [stderr]    Compiling bevy_prototype_debug_lines v0.10.1
[INFO] [stderr]    Compiling bevy-inspector-egui v0.18.3
[INFO] [stderr]    Compiling code-train v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `sprite::MaterialMesh2dBundle` and `transform::commands`
[INFO] [stdout]  --> src/main.rs:1:62
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{math::vec2, prelude::*, window::WindowResolution, transform::commands, sprite::MaterialMesh2dBundle};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout]    |     ----^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     mut materials: ResMut<Assets<ColorMaterial>>,
[INFO] [stdout]    |     ----^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meshes`
[INFO] [stdout]   --> src/main.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout]    |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meshes`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `materials`
[INFO] [stdout]   --> src/main.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     mut materials: ResMut<Assets<ColorMaterial>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_materials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game_resources`
[INFO] [stdout]   --> src/main.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     game_resources: Res<GameResources>
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     mut commands: Commands,
[INFO] [stdout]     |     ----^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commands`
[INFO] [stdout]    --> src/main.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     mut commands: Commands,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_position`
[INFO] [stdout]    --> src/main.rs:144:14
[INFO] [stdout]     |
[INFO] [stdout] 144 |     let Some(mouse_position) = window.cursor_position()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let Ok(mut transform) = player_q.get_single_mut() else {
[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:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let mut velocity = Vec2::ZERO;
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transform`
[INFO] [stdout]    --> src/main.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let Ok(mut transform) = player_q.get_single_mut() else {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `image_handle` and `font_handle` are never read
[INFO] [stdout]   --> src/main.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct GameResources {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 70 |     image_handle: Handle<Image>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 71 |     font_handle: Handle<Font>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ACCELERATION_MAGNITUE` is never used
[INFO] [stdout]    --> src/main.rs:127:7
[INFO] [stdout]     |
[INFO] [stdout] 127 | const ACCELERATION_MAGNITUE: f32 = 10.0;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VELOCITY_LIMIT` is never used
[INFO] [stdout]    --> src/main.rs:128:7
[INFO] [stdout]     |
[INFO] [stdout] 128 | const VELOCITY_LIMIT: f32 = 300.0;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Velocity` is never constructed
[INFO] [stdout]  --> src/forces_components.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Velocity(Vec2);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Acceleration` is never constructed
[INFO] [stdout]   --> src/forces_components.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Acceleration(Vec2);
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mass` is never constructed
[INFO] [stdout]   --> src/forces_components.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Mass(f32);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ForceComponentsPlugin` is never constructed
[INFO] [stdout]   --> src/forces_components.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ForceComponentsPlugin;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `motion` is never used
[INFO] [stdout]   --> src/forces_components.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn motion(
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_gravity` is never used
[INFO] [stdout]   --> src/forces_components.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn apply_gravity(
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_wind` is never used
[INFO] [stdout]   --> src/forces_components.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn apply_wind(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_friction` is never used
[INFO] [stdout]   --> src/forces_components.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn apply_friction(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_drag` is never used
[INFO] [stdout]   --> src/forces_components.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn apply_drag(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `edges_bounce` is never used
[INFO] [stdout]   --> src/forces_components.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn edges_bounce(
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_line` is never used
[INFO] [stdout]    --> src/forces_components.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn debug_line(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 49s
[INFO] running `Command { std: "docker" "inspect" "f4520a38ec17615be673f67b798a360a1e94e819581f340c5fb186cdf0dca9b9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4520a38ec17615be673f67b798a360a1e94e819581f340c5fb186cdf0dca9b9", kill_on_drop: false }`
[INFO] [stdout] f4520a38ec17615be673f67b798a360a1e94e819581f340c5fb186cdf0dca9b9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e2f4cf59d4dcf1f921f7639701bd65be25d4ae7ecd147beeaa8fda715155c449
[INFO] running `Command { std: "docker" "start" "-a" "e2f4cf59d4dcf1f921f7639701bd65be25d4ae7ecd147beeaa8fda715155c449", kill_on_drop: false }`
[INFO] [stderr]    Compiling code-train v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `sprite::MaterialMesh2dBundle` and `transform::commands`
[INFO] [stdout]  --> src/main.rs:1:62
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{math::vec2, prelude::*, window::WindowResolution, transform::commands, sprite::MaterialMesh2dBundle};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout]    |     ----^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     mut materials: ResMut<Assets<ColorMaterial>>,
[INFO] [stdout]    |     ----^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meshes`
[INFO] [stdout]   --> src/main.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout]    |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meshes`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `materials`
[INFO] [stdout]   --> src/main.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     mut materials: ResMut<Assets<ColorMaterial>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_materials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game_resources`
[INFO] [stdout]   --> src/main.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     game_resources: Res<GameResources>
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     mut commands: Commands,
[INFO] [stdout]     |     ----^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commands`
[INFO] [stdout]    --> src/main.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     mut commands: Commands,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_position`
[INFO] [stdout]    --> src/main.rs:144:14
[INFO] [stdout]     |
[INFO] [stdout] 144 |     let Some(mouse_position) = window.cursor_position()
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let Ok(mut transform) = player_q.get_single_mut() else {
[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:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let mut velocity = Vec2::ZERO;
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transform`
[INFO] [stdout]    --> src/main.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let Ok(mut transform) = player_q.get_single_mut() else {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `image_handle` and `font_handle` are never read
[INFO] [stdout]   --> src/main.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct GameResources {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 70 |     image_handle: Handle<Image>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 71 |     font_handle: Handle<Font>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ACCELERATION_MAGNITUE` is never used
[INFO] [stdout]    --> src/main.rs:127:7
[INFO] [stdout]     |
[INFO] [stdout] 127 | const ACCELERATION_MAGNITUE: f32 = 10.0;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VELOCITY_LIMIT` is never used
[INFO] [stdout]    --> src/main.rs:128:7
[INFO] [stdout]     |
[INFO] [stdout] 128 | const VELOCITY_LIMIT: f32 = 300.0;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Velocity` is never constructed
[INFO] [stdout]  --> src/forces_components.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Velocity(Vec2);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Acceleration` is never constructed
[INFO] [stdout]   --> src/forces_components.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct Acceleration(Vec2);
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mass` is never constructed
[INFO] [stdout]   --> src/forces_components.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Mass(f32);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ForceComponentsPlugin` is never constructed
[INFO] [stdout]   --> src/forces_components.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ForceComponentsPlugin;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `motion` is never used
[INFO] [stdout]   --> src/forces_components.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn motion(
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_gravity` is never used
[INFO] [stdout]   --> src/forces_components.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn apply_gravity(
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_wind` is never used
[INFO] [stdout]   --> src/forces_components.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn apply_wind(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_friction` is never used
[INFO] [stdout]   --> src/forces_components.rs:66:4
[INFO] [stdout]    |
[INFO] [stdout] 66 | fn apply_friction(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_drag` is never used
[INFO] [stdout]   --> src/forces_components.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn apply_drag(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `edges_bounce` is never used
[INFO] [stdout]   --> src/forces_components.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn edges_bounce(
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_line` is never used
[INFO] [stdout]    --> src/forces_components.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn debug_line(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.81s
[INFO] running `Command { std: "docker" "inspect" "e2f4cf59d4dcf1f921f7639701bd65be25d4ae7ecd147beeaa8fda715155c449", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2f4cf59d4dcf1f921f7639701bd65be25d4ae7ecd147beeaa8fda715155c449", kill_on_drop: false }`
[INFO] [stdout] e2f4cf59d4dcf1f921f7639701bd65be25d4ae7ecd147beeaa8fda715155c449
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f54dd1cdd2089ec086ec526e8a0a1ea441488e3efc34ab60556adb73e1605f2c
[INFO] running `Command { std: "docker" "start" "-a" "f54dd1cdd2089ec086ec526e8a0a1ea441488e3efc34ab60556adb73e1605f2c", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `sprite::MaterialMesh2dBundle` and `transform::commands`
[INFO] [stderr]  --> src/main.rs:1:62
[INFO] [stderr]   |
[INFO] [stderr] 1 | use bevy::{math::vec2, prelude::*, window::WindowResolution, transform::commands, sprite::MaterialMesh2dBundle};
[INFO] [stderr]   |                                                              ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:87:5
[INFO] [stderr]    |
[INFO] [stderr] 87 |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stderr]    |     ----^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:88:5
[INFO] [stderr]    |
[INFO] [stderr] 88 |     mut materials: ResMut<Assets<ColorMaterial>>,
[INFO] [stderr]    |     ----^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `meshes`
[INFO] [stderr]   --> src/main.rs:87:5
[INFO] [stderr]    |
[INFO] [stderr] 87 |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stderr]    |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meshes`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `materials`
[INFO] [stderr]   --> src/main.rs:88:5
[INFO] [stderr]    |
[INFO] [stderr] 88 |     mut materials: ResMut<Assets<ColorMaterial>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_materials`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `game_resources`
[INFO] [stderr]   --> src/main.rs:89:5
[INFO] [stderr]    |
[INFO] [stderr] 89 |     game_resources: Res<GameResources>
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_resources`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     mut commands: Commands,
[INFO] [stderr]     |     ----^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `commands`
[INFO] [stderr]    --> src/main.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     mut commands: Commands,
[INFO] [stderr]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mouse_position`
[INFO] [stderr]    --> src/main.rs:144:14
[INFO] [stderr]     |
[INFO] [stderr] 144 |     let Some(mouse_position) = window.cursor_position()
[INFO] [stderr]     |              ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_position`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:161:12
[INFO] [stderr]     |
[INFO] [stderr] 161 |     let Ok(mut transform) = player_q.get_single_mut() else {
[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:169:9
[INFO] [stderr]     |
[INFO] [stderr] 169 |     let mut velocity = Vec2::ZERO;
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `transform`
[INFO] [stderr]    --> src/main.rs:161:12
[INFO] [stderr]     |
[INFO] [stderr] 161 |     let Ok(mut transform) = player_q.get_single_mut() else {
[INFO] [stderr]     |            ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transform`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `image_handle` and `font_handle` are never read
[INFO] [stderr]   --> src/main.rs:70:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub struct GameResources {
[INFO] [stderr]    |            ------------- fields in this struct
[INFO] [stderr] 70 |     image_handle: Handle<Image>,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 71 |     font_handle: Handle<Font>,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ACCELERATION_MAGNITUE` is never used
[INFO] [stderr]    --> src/main.rs:127:7
[INFO] [stderr]     |
[INFO] [stderr] 127 | const ACCELERATION_MAGNITUE: f32 = 10.0;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `VELOCITY_LIMIT` is never used
[INFO] [stderr]    --> src/main.rs:128:7
[INFO] [stderr]     |
[INFO] [stderr] 128 | const VELOCITY_LIMIT: f32 = 300.0;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Velocity` is never constructed
[INFO] [stderr]  --> src/forces_components.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct Velocity(Vec2);
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Acceleration` is never constructed
[INFO] [stderr]   --> src/forces_components.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | struct Acceleration(Vec2);
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Mass` is never constructed
[INFO] [stderr]   --> src/forces_components.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | struct Mass(f32);
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ForceComponentsPlugin` is never constructed
[INFO] [stderr]   --> src/forces_components.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct ForceComponentsPlugin;
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `motion` is never used
[INFO] [stderr]   --> src/forces_components.rs:33:4
[INFO] [stderr]    |
[INFO] [stderr] 33 | fn motion(
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `apply_gravity` is never used
[INFO] [stderr]   --> src/forces_components.rs:47:4
[INFO] [stderr]    |
[INFO] [stderr] 47 | fn apply_gravity(
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `apply_wind` is never used
[INFO] [stderr]   --> src/forces_components.rs:55:4
[INFO] [stderr]    |
[INFO] [stderr] 55 | fn apply_wind(
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `apply_friction` is never used
[INFO] [stderr]   --> src/forces_components.rs:66:4
[INFO] [stderr]    |
[INFO] [stderr] 66 | fn apply_friction(
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `apply_drag` is never used
[INFO] [stderr]   --> src/forces_components.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn apply_drag(
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `edges_bounce` is never used
[INFO] [stderr]   --> src/forces_components.rs:86:4
[INFO] [stderr]    |
[INFO] [stderr] 86 | fn edges_bounce(
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `debug_line` is never used
[INFO] [stderr]    --> src/forces_components.rs:106:4
[INFO] [stderr]     |
[INFO] [stderr] 106 | fn debug_line(
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `code-train` (bin "code-train" test) generated 26 warnings (run `cargo fix --bin "code-train" -p code-train --tests` to apply 12 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/code_train-3725d3159af97425)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f54dd1cdd2089ec086ec526e8a0a1ea441488e3efc34ab60556adb73e1605f2c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f54dd1cdd2089ec086ec526e8a0a1ea441488e3efc34ab60556adb73e1605f2c", kill_on_drop: false }`
[INFO] [stdout] f54dd1cdd2089ec086ec526e8a0a1ea441488e3efc34ab60556adb73e1605f2c
