[INFO] cloning repository https://github.com/MetaMorgan/multipass
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MetaMorgan/multipass" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMetaMorgan%2Fmultipass", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMetaMorgan%2Fmultipass'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a64d0b7ea96c0b1a404ac29aca396a4d784980d1
[INFO] checking MetaMorgan/multipass against try#0611f7de057c584b8771102fde7aed6c70c71d3b for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMetaMorgan%2Fmultipass" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/MetaMorgan/multipass
[INFO] finished tweaking git repo https://github.com/MetaMorgan/multipass
[INFO] tweaked toml for git repo https://github.com/MetaMorgan/multipass written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/MetaMorgan/multipass on toolchain 0611f7de057c584b8771102fde7aed6c70c71d3b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/MetaMorgan/multipass 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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 53b89654a4d0a22af34330bf54283f292f95e8054867e8ace5d552195f29ee0f
[INFO] running `Command { std: "docker" "start" "-a" "53b89654a4d0a22af34330bf54283f292f95e8054867e8ace5d552195f29ee0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "53b89654a4d0a22af34330bf54283f292f95e8054867e8ace5d552195f29ee0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53b89654a4d0a22af34330bf54283f292f95e8054867e8ace5d552195f29ee0f", kill_on_drop: false }`
[INFO] [stdout] 53b89654a4d0a22af34330bf54283f292f95e8054867e8ace5d552195f29ee0f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2be22c22154ba1ce60e09c897eab394694bee60315f4ae0586ba33c57a9c6963
[INFO] running `Command { std: "docker" "start" "-a" "2be22c22154ba1ce60e09c897eab394694bee60315f4ae0586ba33c57a9c6963", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling bindgen v0.70.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.7
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]     Checking spin v0.10.0
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling erased-serde v0.4.9
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling cc v1.2.52
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking nonmax v0.5.5
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking bevy_platform v0.18.0
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]     Checking bevy_utils v0.18.0
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling bevy_macro_utils v0.18.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling bevy_reflect_derive v0.18.0
[INFO] [stderr]    Compiling variadics_please v1.1.0
[INFO] [stderr]    Compiling assert_type_match v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling bevy_ecs_macros v0.18.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking bevy_tasks v0.18.0
[INFO] [stderr]     Checking bevy_reflect v0.18.0
[INFO] [stderr]    Compiling raylib-sys v5.5.1
[INFO] [stderr]     Checking bevy_ecs v0.18.0
[INFO] [stderr]     Checking raylib v5.5.1
[INFO] [stderr]     Checking multipass v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/game_manager/menu.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/game_manager/menu.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BreakoutState` is more private than the item `breakout::systems::movement_system`
[INFO] [stdout]    --> src/games/breakout/systems.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub fn movement_system(state: Res<BreakoutState>, input: Res<InputState>, mut query: Query<(&mut Position, &Velocity)>) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `breakout::systems::movement_system` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `BreakoutState` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/games/breakout/resources.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub(crate) struct BreakoutState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `breakout::components::Paddle` is more private than the item `breakout::systems::paddle_bounds_system`
[INFO] [stdout]    --> src/games/breakout/systems.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn paddle_bounds_system(mut query: Query<(&mut Position, &Size), With<Paddle>>) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `breakout::systems::paddle_bounds_system` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `breakout::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/games/breakout/components.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub(crate) struct Paddle;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Paddle` is more private than the item `paddle_input_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn paddle_input_system(input: Res<InputState>, mut query: Query<(&Paddle, &mut Velocity)>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `paddle_input_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) struct Paddle {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Paddle` is more private than the item `pong::systems::paddle_bounds_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn paddle_bounds_system(mut query: Query<(&mut Position, &Size), With<Paddle>>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `pong::systems::paddle_bounds_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) struct Paddle {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Ball` is more private than the item `ball_collision_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn ball_collision_system(mut ball_query: Query<(&Position, &mut Velocity, &Size), With<Ball>>, paddle_query: Query<(&Position, &Size), With<Paddle>>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `ball_collision_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Ball` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub(crate) struct Ball;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Paddle` is more private than the item `ball_collision_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn ball_collision_system(mut ball_query: Query<(&Position, &mut Velocity, &Size), With<Ball>>, paddle_query: Query<(&Position, &Size), With<Paddle>>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `ball_collision_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) struct Paddle {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Ball` is more private than the item `ball_reset_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:79:1
[INFO] [stdout]    |
[INFO] [stdout] 79 | / pub fn ball_reset_system(
[INFO] [stdout] 80 | |     mut ball_query: Query<(&mut Position, &mut Velocity, &Size), With<Ball>>,
[INFO] [stdout] 81 | |     mut score: ResMut<PongScore>,
[INFO] [stdout] 82 | | ) {
[INFO] [stdout]    | |_^ function `ball_reset_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Ball` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub(crate) struct Ball;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `GameEngine` is never constructed
[INFO] [stdout]  --> src/game_engine/mod.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct GameEngine {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]   = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `camera` is never read
[INFO] [stdout]  --> src/game_engine/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct GameEngine {
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     camera: Camera2D,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level` is never read
[INFO] [stdout]  --> src/games/breakout/resources.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct BreakoutState {
[INFO] [stdout]   |                   ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     pub(crate) level: u16,
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_adjacent_cell_type` is never used
[INFO] [stdout]   --> src/games/mine_sweeper/resources.rs:82:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl MineSweeperState {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub(crate) fn get_adjacent_cell_type(&self, x: usize, y: usize, cell_type: CellType) -> Vec<(usize, usize)> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Wall` is never constructed
[INFO] [stdout]   --> src/games/snake/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) enum CellType {
[INFO] [stdout]    |                 -------- variant in this enum
[INFO] [stdout] 17 |     Empty,
[INFO] [stdout] 18 |     Wall,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `multipass` (lib) due to 1 previous error; 12 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: type `BreakoutState` is more private than the item `breakout::systems::movement_system`
[INFO] [stdout]    --> src/games/breakout/systems.rs:101:1
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub fn movement_system(state: Res<BreakoutState>, input: Res<InputState>, mut query: Query<(&mut Position, &Velocity)>) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `breakout::systems::movement_system` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `BreakoutState` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/games/breakout/resources.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub(crate) struct BreakoutState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `breakout::components::Paddle` is more private than the item `breakout::systems::paddle_bounds_system`
[INFO] [stdout]    --> src/games/breakout/systems.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn paddle_bounds_system(mut query: Query<(&mut Position, &Size), With<Paddle>>) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `breakout::systems::paddle_bounds_system` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `breakout::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/games/breakout/components.rs:5:1
[INFO] [stdout]     |
[INFO] [stdout]   5 | pub(crate) struct Paddle;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Paddle` is more private than the item `paddle_input_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn paddle_input_system(input: Res<InputState>, mut query: Query<(&Paddle, &mut Velocity)>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `paddle_input_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) struct Paddle {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Paddle` is more private than the item `pong::systems::paddle_bounds_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn paddle_bounds_system(mut query: Query<(&mut Position, &Size), With<Paddle>>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `pong::systems::paddle_bounds_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) struct Paddle {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Ball` is more private than the item `ball_collision_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn ball_collision_system(mut ball_query: Query<(&Position, &mut Velocity, &Size), With<Ball>>, paddle_query: Query<(&Position, &Size), With<Paddle>>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `ball_collision_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Ball` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub(crate) struct Ball;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Paddle` is more private than the item `ball_collision_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn ball_collision_system(mut ball_query: Query<(&Position, &mut Velocity, &Size), With<Ball>>, paddle_query: Query<(&Position, &Size), With<Paddle>>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `ball_collision_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Paddle` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub(crate) struct Paddle {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `pong::components::Ball` is more private than the item `ball_reset_system`
[INFO] [stdout]   --> src/games/pong/systems.rs:79:1
[INFO] [stdout]    |
[INFO] [stdout] 79 | / pub fn ball_reset_system(
[INFO] [stdout] 80 | |     mut ball_query: Query<(&mut Position, &mut Velocity, &Size), With<Ball>>,
[INFO] [stdout] 81 | |     mut score: ResMut<PongScore>,
[INFO] [stdout] 82 | | ) {
[INFO] [stdout]    | |_^ function `ball_reset_system` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `pong::components::Ball` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/games/pong/components.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub(crate) struct Ball;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `GameEngine` is never constructed
[INFO] [stdout]  --> src/game_engine/mod.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct GameEngine {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]   = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `camera` is never read
[INFO] [stdout]  --> src/game_engine/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct GameEngine {
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     camera: Camera2D,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level` is never read
[INFO] [stdout]  --> src/games/breakout/resources.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) struct BreakoutState {
[INFO] [stdout]   |                   ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     pub(crate) level: u16,
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_adjacent_cell_type` is never used
[INFO] [stdout]   --> src/games/mine_sweeper/resources.rs:82:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl MineSweeperState {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub(crate) fn get_adjacent_cell_type(&self, x: usize, y: usize, cell_type: CellType) -> Vec<(usize, usize)> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Wall` is never constructed
[INFO] [stdout]   --> src/games/snake/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) enum CellType {
[INFO] [stdout]    |                 -------- variant in this enum
[INFO] [stdout] 17 |     Empty,
[INFO] [stdout] 18 |     Wall,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CellType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `multipass` (lib test) due to 1 previous error; 12 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "2be22c22154ba1ce60e09c897eab394694bee60315f4ae0586ba33c57a9c6963", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2be22c22154ba1ce60e09c897eab394694bee60315f4ae0586ba33c57a9c6963", kill_on_drop: false }`
[INFO] [stdout] 2be22c22154ba1ce60e09c897eab394694bee60315f4ae0586ba33c57a9c6963
