[INFO] cloning repository https://github.com/kuviman/salmoning
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kuviman/salmoning" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkuviman%2Fsalmoning", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkuviman%2Fsalmoning'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] da55b760ad3b666f388c46450fcbd04cf5861604
[INFO] testing kuviman/salmoning against try#9f93af291970322f4f1c6315ccde4d7078201159 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkuviman%2Fsalmoning" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kuviman/salmoning
[INFO] finished tweaking git repo https://github.com/kuviman/salmoning
[INFO] tweaked toml for git repo https://github.com/kuviman/salmoning written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kuviman/salmoning on toolchain 9f93af291970322f4f1c6315ccde4d7078201159
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kuviman/salmoning 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" "+9f93af291970322f4f1c6315ccde4d7078201159" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 96ea6a1523310e546be01ded92f4ab514bf5c6c27f8bfdd288e34c209f013669
[INFO] running `Command { std: "docker" "start" "-a" "96ea6a1523310e546be01ded92f4ab514bf5c6c27f8bfdd288e34c209f013669", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "96ea6a1523310e546be01ded92f4ab514bf5c6c27f8bfdd288e34c209f013669", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96ea6a1523310e546be01ded92f4ab514bf5c6c27f8bfdd288e34c209f013669", kill_on_drop: false }`
[INFO] [stdout] 96ea6a1523310e546be01ded92f4ab514bf5c6c27f8bfdd288e34c209f013669
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ba64fe9c5b18e2fc1be1fd42887f6234b6483473e345b8fd420d4fcc80a3226f
[INFO] running `Command { std: "docker" "start" "-a" "ba64fe9c5b18e2fc1be1fd42887f6234b6483473e345b8fd420d4fcc80a3226f", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling value-bag v1.8.1
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling memchr v2.7.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling cc v1.0.92
[INFO] [stderr]    Compiling getrandom v0.2.14
[INFO] [stderr]    Compiling bytemuck v1.15.0
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling rustix v0.38.32
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling syn v2.0.59
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling concurrent-queue v2.4.0
[INFO] [stderr]    Compiling wayland-sys v0.31.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling xml-rs v0.8.20
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]    Compiling indexmap v2.2.6
[INFO] [stderr]    Compiling either v1.10.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling anyhow v1.0.82
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling event-listener v4.0.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling symphonia-core v0.5.4
[INFO] [stderr]    Compiling event-listener-strategy v0.4.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling fastrand v2.0.2
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling wayland-backend v0.3.3
[INFO] [stderr]    Compiling batbox-range v0.16.0
[INFO] [stderr]    Compiling futures-lite v2.3.0
[INFO] [stderr]    Compiling batbox-cmp v0.16.0
[INFO] [stderr]    Compiling async-lock v3.3.0
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.5.0
[INFO] [stderr]    Compiling glutin_egl_sys v0.6.0
[INFO] [stderr]    Compiling quick-xml v0.31.0
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling allocator-api2 v0.2.18
[INFO] [stderr]    Compiling toml_edit v0.21.1
[INFO] [stderr]    Compiling darling_core v0.20.8
[INFO] [stderr]    Compiling wayland-scanner v0.31.1
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling thiserror-impl v1.0.58
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling thiserror v1.0.58
[INFO] [stderr]    Compiling glutin v0.31.3
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling weezl v0.1.8
[INFO] [stderr]    Compiling proc-macro-crate v3.1.0
[INFO] [stderr]    Compiling darling_macro v0.20.8
[INFO] [stderr]    Compiling async-executor v1.10.0
[INFO] [stderr]    Compiling darling v0.20.8
[INFO] [stderr]    Compiling jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling symphonia-metadata v0.5.4
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling bit_field v0.10.2
[INFO] [stderr]    Compiling lebe v0.5.2
[INFO] [stderr]    Compiling bytes v1.6.0
[INFO] [stderr]    Compiling gif v0.13.1
[INFO] [stderr]    Compiling exr v1.72.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling tiff v0.9.1
[INFO] [stderr]    Compiling num_enum_derive v0.7.2
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling futures-executor v0.3.30
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling event-listener v5.3.0
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling num_enum v0.7.2
[INFO] [stderr]    Compiling event-listener-strategy v0.5.1
[INFO] [stderr]    Compiling ugli-raw v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling field-offset v0.3.6
[INFO] [stderr]    Compiling ugli-derive v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling polling v2.8.0
[INFO] [stderr]    Compiling socket2 v0.5.6
[INFO] [stderr]    Compiling winnow v0.6.5
[INFO] [stderr]    Compiling piper v0.2.1
[INFO] [stderr]    Compiling tokio v1.37.0
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling async-channel v2.2.0
[INFO] [stderr]    Compiling symphonia-utils-xiph v0.5.4
[INFO] [stderr]    Compiling async-io v1.13.0
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling futures-lite v1.13.0
[INFO] [stderr]    Compiling anstyle-parse v0.2.3
[INFO] [stderr]    Compiling blocking v1.5.1
[INFO] [stderr]    Compiling unicode-normalization v0.1.23
[INFO] [stderr]    Compiling async-channel v1.9.0
[INFO] [stderr]    Compiling num-complex v0.4.5
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling batbox-num v0.16.0
[INFO] [stderr]    Compiling anstyle-query v1.0.2
[INFO] [stderr]    Compiling strict-num v0.1.1
[INFO] [stderr]    Compiling batbox-approx v0.16.0
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling batbox-la v0.16.0
[INFO] [stderr]    Compiling anstyle v1.0.6
[INFO] [stderr]    Compiling tiny-skia-path v0.11.4
[INFO] [stderr]    Compiling anstream v0.6.13
[INFO] [stderr]    Compiling batbox-color v0.16.0
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling kv-log-macro v1.0.7
[INFO] [stderr]    Compiling rustls v0.21.10
[INFO] [stderr]    Compiling rustversion v1.0.15
[INFO] [stderr]    Compiling clap_lex v0.7.0
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]    Compiling clap_builder v4.5.2
[INFO] [stderr]    Compiling ab_glyph v0.2.24
[INFO] [stderr]    Compiling clap_derive v4.5.4
[INFO] [stderr]    Compiling tiny-skia v0.11.4
[INFO] [stderr]    Compiling ugli v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling tokio-util v0.7.10
[INFO] [stderr]    Compiling batbox-lapp v0.16.0
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling rustls-webpki v0.101.7
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]    Compiling rustfft v6.2.0
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling x11rb-protocol v0.13.0
[INFO] [stderr]    Compiling strength_reduce v0.2.4
[INFO] [stderr]    Compiling transpose v0.2.3
[INFO] [stderr]    Compiling h2 v0.3.26
[INFO] [stderr]    Compiling clap v4.5.4
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling polling v3.6.0
[INFO] [stderr]    Compiling calloop v0.12.4
[INFO] [stderr]    Compiling wayland-client v0.31.2
[INFO] [stderr]    Compiling async-io v2.3.2
[INFO] [stderr]    Compiling async-global-executor v2.4.1
[INFO] [stderr]    Compiling wayland-csd-frame v0.3.0
[INFO] [stderr]    Compiling async-std v1.12.0
[INFO] [stderr]    Compiling url v2.5.0
[INFO] [stderr]    Compiling wayland-protocols v0.31.2
[INFO] [stderr]    Compiling wayland-cursor v0.31.1
[INFO] [stderr]    Compiling calloop-wayland-source v0.2.0
[INFO] [stderr]    Compiling xkbcommon-dl v0.4.2
[INFO] [stderr]    Compiling primal-check v0.3.3
[INFO] [stderr]    Compiling glutin-winit v0.4.2
[INFO] [stderr]    Compiling rtrb v0.3.0
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]    Compiling serde_json v1.0.115
[INFO] [stderr]    Compiling extended v0.1.0
[INFO] [stderr]    Compiling raw-window-handle v0.6.0
[INFO] [stderr]    Compiling tower-service v0.3.2
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.92
[INFO] [stderr]    Compiling hyper v0.14.28
[INFO] [stderr]    Compiling symphonia-format-riff v0.5.4
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling creek-core v0.2.2
[INFO] [stderr]    Compiling tokio-rustls v0.24.1
[INFO] [stderr]    Compiling geng-camera v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling geng-shader v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling serde_spanned v0.6.5
[INFO] [stderr]    Compiling symphonia-format-ogg v0.5.4
[INFO] [stderr]    Compiling symphonia-bundle-flac v0.5.4
[INFO] [stderr]    Compiling symphonia-format-isomp4 v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-vorbis v0.5.4
[INFO] [stderr]    Compiling symphonia-format-mkv v0.5.4
[INFO] [stderr]    Compiling symphonia-bundle-mp3 v0.5.4
[INFO] [stderr]    Compiling wayland-protocols-wlr v0.2.0
[INFO] [stderr]    Compiling wayland-protocols-plasma v0.2.0
[INFO] [stderr]    Compiling symphonia-codec-aac v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-adpcm v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-alac v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-pcm v0.5.4
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling smithay-client-toolkit v0.18.1
[INFO] [stderr]    Compiling bumpalo v3.16.0
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling symphonia v0.5.4
[INFO] [stderr]    Compiling toml_edit v0.22.9
[INFO] [stderr]    Compiling hyper-rustls v0.24.2
[INFO] [stderr]    Compiling realfft v3.3.0
[INFO] [stderr]    Compiling strum v0.25.0
[INFO] [stderr]    Compiling sctk-adwaita v0.8.1
[INFO] [stderr]    Compiling geng-font v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling batbox-time v0.16.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling async-broadcast v0.6.0 (https://github.com/kuviman/async-broadcast?branch=fix-wasm#6767b8a7)
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling byte-slice-cast v1.2.2
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]    Compiling regex-syntax v0.8.3
[INFO] [stderr]    Compiling creek-encode-wav v0.2.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling toml v0.8.12
[INFO] [stderr]    Compiling x11rb v0.13.0
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.92
[INFO] [stderr]    Compiling alsa v0.9.0
[INFO] [stderr]    Compiling rubato v0.14.1
[INFO] [stderr]    Compiling creek-decode-symphonia v0.3.1
[INFO] [stderr]    Compiling ron v0.8.1
[INFO] [stderr]    Compiling generic-array v0.12.4
[INFO] [stderr]    Compiling async-compat v0.2.3
[INFO] [stderr]    Compiling crossbeam-channel v0.5.12
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling dasp_sample v0.11.0
[INFO] [stderr]    Compiling piston-float v1.0.1
[INFO] [stderr]    Compiling batbox-tuple-macros v0.16.0
[INFO] [stderr]    Compiling async-trait v0.1.79
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling vecmath v1.0.0
[INFO] [stderr]    Compiling batbox-file v0.16.0
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling hrtf v0.8.1
[INFO] [stderr]    Compiling creek v1.2.2
[INFO] [stderr]    Compiling geng-draw2d v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling geng-window v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling tinyfiledialogs v3.9.1
[INFO] [stderr]    Compiling is-terminal v0.4.12
[INFO] [stderr]    Compiling arc-swap v1.7.1
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling no_denormals v0.1.2
[INFO] [stderr]    Compiling float_eq v1.0.1
[INFO] [stderr]    Compiling llq v0.1.1
[INFO] [stderr]    Compiling hound v3.5.1
[INFO] [stderr]    Compiling wasm-bindgen v0.2.92
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling geng-ui v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.92
[INFO] [stderr]    Compiling web-audio-api v0.41.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling digest v0.8.1
[INFO] [stderr]    Compiling batbox-diff-derive v0.16.0
[INFO] [stderr]    Compiling async-recursion v1.1.0
[INFO] [stderr]    Compiling safe_arch v0.7.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.8
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling futures-micro v0.5.0
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling opaque-debug v0.2.3
[INFO] [stderr]    Compiling fake-simd v0.1.2
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling inotify v0.9.6
[INFO] [stderr]    Compiling sha-1 v0.8.2
[INFO] [stderr]    Compiling wide v0.7.15
[INFO] [stderr]    Compiling mio-extras v2.0.6
[INFO] [stderr]    Compiling async-oneshot v0.5.9
[INFO] [stderr]    Compiling batbox-diff v0.16.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling batbox-logger v0.16.0
[INFO] [stderr]    Compiling directories v5.0.1
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling geng-web-audio-api v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling batbox-collection-derive v0.16.0
[INFO] [stderr]    Compiling batbox-i18n-macro v0.16.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling filetime v0.2.23
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling notify v6.1.1
[INFO] [stderr]    Compiling batbox-i18n v0.16.0
[INFO] [stderr]    Compiling threadpool v1.8.1
[INFO] [stderr]    Compiling simba v0.8.1
[INFO] [stderr]    Compiling batbox-collection v0.16.0
[INFO] [stderr]    Compiling ws v0.9.2
[INFO] [stderr]    Compiling geng-audio v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling js-sys v0.3.69
[INFO] [stderr]    Compiling batbox-preferences v0.16.0
[INFO] [stderr]    Compiling batbox-file-dialog v0.16.0
[INFO] [stderr]    Compiling switch-resume v0.1.3
[INFO] [stderr]    Compiling bomboni_core v0.1.55
[INFO] [stderr]    Compiling serde_derive_internals v0.29.0
[INFO] [stderr]    Compiling batbox-cli v0.16.0
[INFO] [stderr]    Compiling geng-asset-derive v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling robust v1.1.0
[INFO] [stderr]    Compiling maplit v1.0.2
[INFO] [stderr]    Compiling scoped-tls-hkt v0.1.4
[INFO] [stderr]    Compiling dyn-clone v1.0.17
[INFO] [stderr]    Compiling geng-async-state v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling serde-wasm-bindgen v0.6.5
[INFO] [stderr]    Compiling spade v2.6.0
[INFO] [stderr]    Compiling batbox v0.16.0
[INFO] [stderr]    Compiling bomboni_wasm_core v0.1.55
[INFO] [stderr]    Compiling geng-asset v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling geng-net v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling geng-debug_overlay v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling nalgebra v0.32.5
[INFO] [stderr]    Compiling geng-state v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling geng-texture-atlas v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling geng-obj v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling deprecate-until v0.1.1
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling evenio_macros v0.5.0 (https://github.com/rj00a/evenio#57603f59)
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling integer-sqrt v0.1.5
[INFO] [stderr]    Compiling finl_unicode v1.2.0
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling pathfinding v4.9.1
[INFO] [stderr]    Compiling ctrlc v3.4.4
[INFO] [stderr]    Compiling bomboni_wasm_derive v0.1.55
[INFO] [stderr]    Compiling evenio v0.5.0 (https://github.com/rj00a/evenio#57603f59)
[INFO] [stderr]    Compiling geng v0.18.0 (https://github.com/geng-engine/geng#79835fd9)
[INFO] [stderr]    Compiling bomboni_wasm v0.1.55
[INFO] [stderr]    Compiling generational-arena v0.2.9
[INFO] [stderr]    Compiling rustrict v0.7.24
[INFO] [stderr]    Compiling parry2d v0.13.7
[INFO] [stderr]    Compiling salmoning v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `world`
[INFO] [stdout]  --> src/editor.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use evenio::{prelude::*, world};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `target`
[INFO] [stdout]    --> src/editor.rs:851:19
[INFO] [stdout]     |
[INFO] [stdout] 851 |         #[cfg(not(target = "wasm32"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[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(target, values("wasm32"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(target, values(\"wasm32\"))");` 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 import: `Sounds`
[INFO] [stdout]  --> src/game.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 |     assets::{Assets, Sounds},
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `query`
[INFO] [stdout]   --> src/render/mod.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 | use evenio::{prelude::*, query};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `draw2d::ColoredVertex`
[INFO] [stdout]   --> src/render/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | use geng::{draw2d::ColoredVertex, prelude::*};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Invitation`
[INFO] [stdout]   --> src/render/mod.rs:23:39
[INFO] [stdout]    |
[INFO] [stdout] 23 |     net::{AvailableRace, CanDoQuests, Invitation, Name},
[INFO] [stdout]    |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Quaternion`
[INFO] [stdout]  --> src/render/particle.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parry2d::na::{Quaternion, SimdValue};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Object`
[INFO] [stdout]  --> src/sound.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 |     render::{Camera, Object},
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parry2d::na::distance`
[INFO] [stdout]   --> src/sound.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use parry2d::na::distance;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/render/mod.rs:1153:21
[INFO] [stdout]      |
[INFO] [stdout] 1153 |                 let mut texture = ugli::Texture::new_with(geng.ugli(), vec2(1024, 512), |_| {
[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: unused import: `asset::Load`
[INFO] [stdout]   --> src/main.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use geng::{asset::Load, prelude::*};
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SimdValue`
[INFO] [stdout]  --> src/render/particle.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parry2d::na::{Quaternion, SimdValue};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parry2d::na::ComplexField`
[INFO] [stdout]   --> src/render/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use parry2d::na::ComplexField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other_id`
[INFO] [stdout]    --> src/server.rs:955:15
[INFO] [stdout]     |
[INFO] [stdout] 955 |         for (&other_id, other_client) in &mut state.clients {
[INFO] [stdout]     |               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]    --> src/controls.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     receiver: Receiver<Update>,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]   --> src/editor.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     receiver: Receiver<Update>,
[INFO] [stdout]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/editor.rs:755:5
[INFO] [stdout]     |
[INFO] [stdout] 755 |     mut sender: Sender<(Spawn, Insert<RoadGraph>)>,
[INFO] [stdout]     |     ----^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]     --> src/render/mod.rs:1054:5
[INFO] [stdout]      |
[INFO] [stdout] 1054 |     rng: &mut dyn RngCore,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/model/mod.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let mut nodes: Vec<_> = nodes
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i_vn`
[INFO] [stdout]   --> src/render/obj.rs:96:29
[INFO] [stdout]    |
[INFO] [stdout] 96 |                         let i_vn: usize = parts.next().unwrap().parse().unwrap();
[INFO] [stdout]    |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_i_vn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/render/mod.rs:1046:46
[INFO] [stdout]      |
[INFO] [stdout] 1046 | fn emotes(receiver: Receiver<ServerMessage>, mut sender: Sender<Insert<BikeJump>>) {
[INFO] [stdout]      |                                              ----^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]     --> src/render/mod.rs:1046:46
[INFO] [stdout]      |
[INFO] [stdout] 1046 | fn emotes(receiver: Receiver<ServerMessage>, mut sender: Sender<Insert<BikeJump>>) {
[INFO] [stdout]      |                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/render/mod.rs:1047:33
[INFO] [stdout]      |
[INFO] [stdout] 1047 |     if let ServerMessage::Emote(id, typ) = receiver.event {}
[INFO] [stdout]      |                                 ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ`
[INFO] [stdout]     --> src/render/mod.rs:1047:37
[INFO] [stdout]      |
[INFO] [stdout] 1047 |     if let ServerMessage::Emote(id, typ) = receiver.event {}
[INFO] [stdout]      |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_typ`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_entity`
[INFO] [stdout]     --> src/render/mod.rs:1409:10
[INFO] [stdout]      |
[INFO] [stdout] 1409 |     for (board_entity, board) in boards {
[INFO] [stdout]      |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]     --> src/render/mod.rs:1549:5
[INFO] [stdout]      |
[INFO] [stdout] 1549 |     sender: Sender<Insert<Object>>,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `geng`
[INFO] [stdout]    --> src/ui.rs:212:38
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub async fn init(world: &mut World, geng: &Geng) {
[INFO] [stdout]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_geng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]    --> src/ui.rs:274:5
[INFO] [stdout]     |
[INFO] [stdout] 274 |     receiver: Receiver<Remove<TeamLeader>, With<&LocalPlayer>>,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `asphalt` and `border` are never read
[INFO] [stdout]   --> src/assets.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Road {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 73 |     #[load(options(wrap = "true"))]
[INFO] [stdout] 74 |     pub asphalt: Texture,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 75 |     #[load(options(wrap = "true"))]
[INFO] [stdout] 76 |     pub border: Texture,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `salmon` and `salmon2` are never read
[INFO] [stdout]    --> src/assets.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub struct Assets {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub salmon: Texture,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 128 |     pub salmon2: Texture,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Particles` is never constructed
[INFO] [stdout]    --> src/assets.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct Particles {}
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_debug_camera_controls` is never used
[INFO] [stdout]    --> src/controls.rs:401:4
[INFO] [stdout]     |
[INFO] [stdout] 401 | fn init_debug_camera_controls(world: &mut World) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/model/mod.rs:140:18
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct Money(pub i64);
[INFO] [stdout]     |            ----- ^^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `car_half_size` and `car_loop_length` are never read
[INFO] [stdout]    --> src/model/mod.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 156 | struct Config {
[INFO] [stdout]     |        ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 161 |     car_half_size: vec2<f32>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 162 |     car_loop_length: f32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `seed` is never read
[INFO] [stdout]    --> src/model/mod.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct RngStuff {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 229 |     pub seed: u64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `racers` is never read
[INFO] [stdout]    --> src/model/net.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct RacePlace {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 313 |     pub place: usize,
[INFO] [stdout] 314 |     pub racers: usize,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RacePlace` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TriangleStrip` is never constructed
[INFO] [stdout]   --> src/render/instancing.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum DrawMode {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     TriangleStrip,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DrawMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `texture` and `ambient_color` are never read
[INFO] [stdout]  --> src/render/obj.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Material {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 5 |     pub name: String,
[INFO] [stdout] 6 |     pub texture: Option<Rc<ugli::Texture>>,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 7 |     pub ambient_color: Rgba<f32>,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Material` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/render/obj.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ObjMesh {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sound` is never read
[INFO] [stdout]   --> src/sound.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Shopwubwub {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 51 |     sound: Option<geng::SoundEffect>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Races` is never constructed
[INFO] [stdout]    --> src/ui.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub struct Races {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]    --> src/ui.rs:212:14
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub async fn init(world: &mut World, geng: &Geng) {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bridge_forwarder` is never used
[INFO] [stdout]    --> src/ui.rs:254:4
[INFO] [stdout]     |
[INFO] [stdout] 254 | fn bridge_forwarder(receiver: Receiver<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `race_statistics` is never used
[INFO] [stdout]    --> src/ui.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 | fn race_statistics(receiver: Receiver<RaceStatistic>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_lmb` is never used
[INFO] [stdout]    --> src/ui.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn handle_lmb(receiver: Receiver<GengEvent>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_team_leader_remove` is never used
[INFO] [stdout]    --> src/ui.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn sync_team_leader_remove(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_team_leader` is never used
[INFO] [stdout]    --> src/ui.rs:284:4
[INFO] [stdout]     |
[INFO] [stdout] 284 | fn sync_team_leader(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `receive_invitation` is never used
[INFO] [stdout]    --> src/ui.rs:298:4
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn receive_invitation(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enter_race_start` is never used
[INFO] [stdout]    --> src/ui.rs:311:4
[INFO] [stdout]     |
[INFO] [stdout] 311 | fn enter_race_start(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `race_alert` is never used
[INFO] [stdout]    --> src/ui.rs:340:4
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn race_alert(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ready_count` is never used
[INFO] [stdout]    --> src/ui.rs:356:4
[INFO] [stdout]     |
[INFO] [stdout] 356 | fn ready_count(receiver: Receiver<ServerMessage>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `race_place` is never used
[INFO] [stdout]    --> src/ui.rs:365:4
[INFO] [stdout]     |
[INFO] [stdout] 365 | fn race_place(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unlock_bikes` is never used
[INFO] [stdout]    --> src/ui.rs:375:4
[INFO] [stdout]     |
[INFO] [stdout] 375 | fn unlock_bikes(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unlock_hats` is never used
[INFO] [stdout]    --> src/ui.rs:387:4
[INFO] [stdout]     |
[INFO] [stdout] 387 | fn unlock_hats(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_money` is never used
[INFO] [stdout]    --> src/ui.rs:400:4
[INFO] [stdout]     |
[INFO] [stdout] 400 | fn sync_money(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_shop` is never used
[INFO] [stdout]    --> src/ui.rs:409:4
[INFO] [stdout]     |
[INFO] [stdout] 409 | fn sync_shop(
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `phone_quest` is never used
[INFO] [stdout]    --> src/ui.rs:447:4
[INFO] [stdout]     |
[INFO] [stdout] 447 | fn phone_quest(receiver: Receiver<QuestEvent>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_events` is never used
[INFO] [stdout]    --> src/ui.rs:455:4
[INFO] [stdout]     |
[INFO] [stdout] 455 | fn handle_events(
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7m 22s
[INFO] running `Command { std: "docker" "inspect" "ba64fe9c5b18e2fc1be1fd42887f6234b6483473e345b8fd420d4fcc80a3226f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ba64fe9c5b18e2fc1be1fd42887f6234b6483473e345b8fd420d4fcc80a3226f", kill_on_drop: false }`
[INFO] [stdout] ba64fe9c5b18e2fc1be1fd42887f6234b6483473e345b8fd420d4fcc80a3226f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dc11be4c5aba3cd00f901365550113dd5c890a61ed9bc72b5aecd7ca386334cb
[INFO] running `Command { std: "docker" "start" "-a" "dc11be4c5aba3cd00f901365550113dd5c890a61ed9bc72b5aecd7ca386334cb", kill_on_drop: false }`
[INFO] [stderr]    Compiling salmoning v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `world`
[INFO] [stdout]  --> src/editor.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use evenio::{prelude::*, world};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `target`
[INFO] [stdout]    --> src/editor.rs:851:19
[INFO] [stdout]     |
[INFO] [stdout] 851 |         #[cfg(not(target = "wasm32"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[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(target, values("wasm32"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(target, values(\"wasm32\"))");` 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 import: `Sounds`
[INFO] [stdout]  --> src/game.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 |     assets::{Assets, Sounds},
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `query`
[INFO] [stdout]   --> src/render/mod.rs:16:26
[INFO] [stdout]    |
[INFO] [stdout] 16 | use evenio::{prelude::*, query};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `draw2d::ColoredVertex`
[INFO] [stdout]   --> src/render/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | use geng::{draw2d::ColoredVertex, prelude::*};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Invitation`
[INFO] [stdout]   --> src/render/mod.rs:23:39
[INFO] [stdout]    |
[INFO] [stdout] 23 |     net::{AvailableRace, CanDoQuests, Invitation, Name},
[INFO] [stdout]    |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Quaternion`
[INFO] [stdout]  --> src/render/particle.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parry2d::na::{Quaternion, SimdValue};
[INFO] [stdout]   |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Object`
[INFO] [stdout]  --> src/sound.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 |     render::{Camera, Object},
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parry2d::na::distance`
[INFO] [stdout]   --> src/sound.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use parry2d::na::distance;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/render/mod.rs:1153:21
[INFO] [stdout]      |
[INFO] [stdout] 1153 |                 let mut texture = ugli::Texture::new_with(geng.ugli(), vec2(1024, 512), |_| {
[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: unused import: `asset::Load`
[INFO] [stdout]   --> src/main.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use geng::{asset::Load, prelude::*};
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SimdValue`
[INFO] [stdout]  --> src/render/particle.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use parry2d::na::{Quaternion, SimdValue};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parry2d::na::ComplexField`
[INFO] [stdout]   --> src/render/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use parry2d::na::ComplexField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other_id`
[INFO] [stdout]    --> src/server.rs:955:15
[INFO] [stdout]     |
[INFO] [stdout] 955 |         for (&other_id, other_client) in &mut state.clients {
[INFO] [stdout]     |               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]    --> src/controls.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     receiver: Receiver<Update>,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]   --> src/editor.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     receiver: Receiver<Update>,
[INFO] [stdout]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/editor.rs:755:5
[INFO] [stdout]     |
[INFO] [stdout] 755 |     mut sender: Sender<(Spawn, Insert<RoadGraph>)>,
[INFO] [stdout]     |     ----^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]     --> src/render/mod.rs:1054:5
[INFO] [stdout]      |
[INFO] [stdout] 1054 |     rng: &mut dyn RngCore,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/model/mod.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let mut nodes: Vec<_> = nodes
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i_vn`
[INFO] [stdout]   --> src/render/obj.rs:96:29
[INFO] [stdout]    |
[INFO] [stdout] 96 |                         let i_vn: usize = parts.next().unwrap().parse().unwrap();
[INFO] [stdout]    |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_i_vn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/render/mod.rs:1046:46
[INFO] [stdout]      |
[INFO] [stdout] 1046 | fn emotes(receiver: Receiver<ServerMessage>, mut sender: Sender<Insert<BikeJump>>) {
[INFO] [stdout]      |                                              ----^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]     --> src/render/mod.rs:1046:46
[INFO] [stdout]      |
[INFO] [stdout] 1046 | fn emotes(receiver: Receiver<ServerMessage>, mut sender: Sender<Insert<BikeJump>>) {
[INFO] [stdout]      |                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/render/mod.rs:1047:33
[INFO] [stdout]      |
[INFO] [stdout] 1047 |     if let ServerMessage::Emote(id, typ) = receiver.event {}
[INFO] [stdout]      |                                 ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `typ`
[INFO] [stdout]     --> src/render/mod.rs:1047:37
[INFO] [stdout]      |
[INFO] [stdout] 1047 |     if let ServerMessage::Emote(id, typ) = receiver.event {}
[INFO] [stdout]      |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_typ`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_entity`
[INFO] [stdout]     --> src/render/mod.rs:1409:10
[INFO] [stdout]      |
[INFO] [stdout] 1409 |     for (board_entity, board) in boards {
[INFO] [stdout]      |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]     --> src/render/mod.rs:1549:5
[INFO] [stdout]      |
[INFO] [stdout] 1549 |     sender: Sender<Insert<Object>>,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `geng`
[INFO] [stdout]    --> src/ui.rs:212:38
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub async fn init(world: &mut World, geng: &Geng) {
[INFO] [stdout]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_geng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]    --> src/ui.rs:274:5
[INFO] [stdout]     |
[INFO] [stdout] 274 |     receiver: Receiver<Remove<TeamLeader>, With<&LocalPlayer>>,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `asphalt` and `border` are never read
[INFO] [stdout]   --> src/assets.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Road {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 73 |     #[load(options(wrap = "true"))]
[INFO] [stdout] 74 |     pub asphalt: Texture,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 75 |     #[load(options(wrap = "true"))]
[INFO] [stdout] 76 |     pub border: Texture,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `salmon` and `salmon2` are never read
[INFO] [stdout]    --> src/assets.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub struct Assets {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub salmon: Texture,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 128 |     pub salmon2: Texture,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Particles` is never constructed
[INFO] [stdout]    --> src/assets.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct Particles {}
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_debug_camera_controls` is never used
[INFO] [stdout]    --> src/controls.rs:401:4
[INFO] [stdout]     |
[INFO] [stdout] 401 | fn init_debug_camera_controls(world: &mut World) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/model/mod.rs:140:18
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct Money(pub i64);
[INFO] [stdout]     |            ----- ^^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `car_half_size` and `car_loop_length` are never read
[INFO] [stdout]    --> src/model/mod.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 156 | struct Config {
[INFO] [stdout]     |        ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 161 |     car_half_size: vec2<f32>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 162 |     car_loop_length: f32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `seed` is never read
[INFO] [stdout]    --> src/model/mod.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct RngStuff {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 229 |     pub seed: u64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `racers` is never read
[INFO] [stdout]    --> src/model/net.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct RacePlace {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 313 |     pub place: usize,
[INFO] [stdout] 314 |     pub racers: usize,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RacePlace` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TriangleStrip` is never constructed
[INFO] [stdout]   --> src/render/instancing.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum DrawMode {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     TriangleStrip,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DrawMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `texture` and `ambient_color` are never read
[INFO] [stdout]  --> src/render/obj.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Material {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 5 |     pub name: String,
[INFO] [stdout] 6 |     pub texture: Option<Rc<ugli::Texture>>,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 7 |     pub ambient_color: Rgba<f32>,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Material` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/render/obj.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ObjMesh {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sound` is never read
[INFO] [stdout]   --> src/sound.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Shopwubwub {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 51 |     sound: Option<geng::SoundEffect>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Races` is never constructed
[INFO] [stdout]    --> src/ui.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub struct Races {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]    --> src/ui.rs:212:14
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub async fn init(world: &mut World, geng: &Geng) {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bridge_forwarder` is never used
[INFO] [stdout]    --> src/ui.rs:254:4
[INFO] [stdout]     |
[INFO] [stdout] 254 | fn bridge_forwarder(receiver: Receiver<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `race_statistics` is never used
[INFO] [stdout]    --> src/ui.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 | fn race_statistics(receiver: Receiver<RaceStatistic>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_lmb` is never used
[INFO] [stdout]    --> src/ui.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn handle_lmb(receiver: Receiver<GengEvent>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_team_leader_remove` is never used
[INFO] [stdout]    --> src/ui.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn sync_team_leader_remove(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_team_leader` is never used
[INFO] [stdout]    --> src/ui.rs:284:4
[INFO] [stdout]     |
[INFO] [stdout] 284 | fn sync_team_leader(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `receive_invitation` is never used
[INFO] [stdout]    --> src/ui.rs:298:4
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn receive_invitation(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enter_race_start` is never used
[INFO] [stdout]    --> src/ui.rs:311:4
[INFO] [stdout]     |
[INFO] [stdout] 311 | fn enter_race_start(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `race_alert` is never used
[INFO] [stdout]    --> src/ui.rs:340:4
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn race_alert(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ready_count` is never used
[INFO] [stdout]    --> src/ui.rs:356:4
[INFO] [stdout]     |
[INFO] [stdout] 356 | fn ready_count(receiver: Receiver<ServerMessage>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `race_place` is never used
[INFO] [stdout]    --> src/ui.rs:365:4
[INFO] [stdout]     |
[INFO] [stdout] 365 | fn race_place(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unlock_bikes` is never used
[INFO] [stdout]    --> src/ui.rs:375:4
[INFO] [stdout]     |
[INFO] [stdout] 375 | fn unlock_bikes(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unlock_hats` is never used
[INFO] [stdout]    --> src/ui.rs:387:4
[INFO] [stdout]     |
[INFO] [stdout] 387 | fn unlock_hats(
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_money` is never used
[INFO] [stdout]    --> src/ui.rs:400:4
[INFO] [stdout]     |
[INFO] [stdout] 400 | fn sync_money(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sync_shop` is never used
[INFO] [stdout]    --> src/ui.rs:409:4
[INFO] [stdout]     |
[INFO] [stdout] 409 | fn sync_shop(
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `phone_quest` is never used
[INFO] [stdout]    --> src/ui.rs:447:4
[INFO] [stdout]     |
[INFO] [stdout] 447 | fn phone_quest(receiver: Receiver<QuestEvent>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_events` is never used
[INFO] [stdout]    --> src/ui.rs:455:4
[INFO] [stdout]     |
[INFO] [stdout] 455 | fn handle_events(
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 20.31s
[INFO] running `Command { std: "docker" "inspect" "dc11be4c5aba3cd00f901365550113dd5c890a61ed9bc72b5aecd7ca386334cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc11be4c5aba3cd00f901365550113dd5c890a61ed9bc72b5aecd7ca386334cb", kill_on_drop: false }`
[INFO] [stdout] dc11be4c5aba3cd00f901365550113dd5c890a61ed9bc72b5aecd7ca386334cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7cb635cfc695d54f044fb4c1af2ac68f11946940e0f045071f52908132e39a3e
[INFO] running `Command { std: "docker" "start" "-a" "7cb635cfc695d54f044fb4c1af2ac68f11946940e0f045071f52908132e39a3e", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `world`
[INFO] [stderr]  --> src/editor.rs:7:26
[INFO] [stderr]   |
[INFO] [stderr] 7 | use evenio::{prelude::*, world};
[INFO] [stderr]   |                          ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `target`
[INFO] [stderr]    --> src/editor.rs:851:19
[INFO] [stderr]     |
[INFO] [stderr] 851 |         #[cfg(not(target = "wasm32"))]
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[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(target, values("wasm32"))'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(target, values(\"wasm32\"))");` 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 import: `Sounds`
[INFO] [stderr]  --> src/game.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 |     assets::{Assets, Sounds},
[INFO] [stderr]   |                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `query`
[INFO] [stderr]   --> src/render/mod.rs:16:26
[INFO] [stderr]    |
[INFO] [stderr] 16 | use evenio::{prelude::*, query};
[INFO] [stderr]    |                          ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `draw2d::ColoredVertex`
[INFO] [stderr]   --> src/render/mod.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | use geng::{draw2d::ColoredVertex, prelude::*};
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Invitation`
[INFO] [stderr]   --> src/render/mod.rs:23:39
[INFO] [stderr]    |
[INFO] [stderr] 23 |     net::{AvailableRace, CanDoQuests, Invitation, Name},
[INFO] [stderr]    |                                       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Quaternion`
[INFO] [stderr]  --> src/render/particle.rs:2:19
[INFO] [stderr]   |
[INFO] [stderr] 2 | use parry2d::na::{Quaternion, SimdValue};
[INFO] [stderr]   |                   ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Object`
[INFO] [stderr]  --> src/sound.rs:6:22
[INFO] [stderr]   |
[INFO] [stderr] 6 |     render::{Camera, Object},
[INFO] [stderr]   |                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `parry2d::na::distance`
[INFO] [stderr]   --> src/sound.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use parry2d::na::distance;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/render/mod.rs:1153:21
[INFO] [stderr]      |
[INFO] [stderr] 1153 |                 let mut texture = ugli::Texture::new_with(geng.ugli(), vec2(1024, 512), |_| {
[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: unused import: `asset::Load`
[INFO] [stderr]   --> src/main.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | use geng::{asset::Load, prelude::*};
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SimdValue`
[INFO] [stderr]  --> src/render/particle.rs:2:31
[INFO] [stderr]   |
[INFO] [stderr] 2 | use parry2d::na::{Quaternion, SimdValue};
[INFO] [stderr]   |                               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `parry2d::na::ComplexField`
[INFO] [stderr]   --> src/render/mod.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use parry2d::na::ComplexField;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `other_id`
[INFO] [stderr]    --> src/server.rs:955:15
[INFO] [stderr]     |
[INFO] [stderr] 955 |         for (&other_id, other_client) in &mut state.clients {
[INFO] [stderr]     |               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_id`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `receiver`
[INFO] [stderr]    --> src/controls.rs:357:5
[INFO] [stderr]     |
[INFO] [stderr] 357 |     receiver: Receiver<Update>,
[INFO] [stderr]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `receiver`
[INFO] [stderr]   --> src/editor.rs:97:5
[INFO] [stderr]    |
[INFO] [stderr] 97 |     receiver: Receiver<Update>,
[INFO] [stderr]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/editor.rs:755:5
[INFO] [stderr]     |
[INFO] [stderr] 755 |     mut sender: Sender<(Spawn, Insert<RoadGraph>)>,
[INFO] [stderr]     |     ----^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rng`
[INFO] [stderr]     --> src/render/mod.rs:1054:5
[INFO] [stderr]      |
[INFO] [stderr] 1054 |     rng: &mut dyn RngCore,
[INFO] [stderr]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/model/mod.rs:403:13
[INFO] [stderr]     |
[INFO] [stderr] 403 |         let mut nodes: Vec<_> = nodes
[INFO] [stderr]     |             ----^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i_vn`
[INFO] [stderr]   --> src/render/obj.rs:96:29
[INFO] [stderr]    |
[INFO] [stderr] 96 |                         let i_vn: usize = parts.next().unwrap().parse().unwrap();
[INFO] [stderr]    |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_i_vn`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/render/mod.rs:1046:46
[INFO] [stderr]      |
[INFO] [stderr] 1046 | fn emotes(receiver: Receiver<ServerMessage>, mut sender: Sender<Insert<BikeJump>>) {
[INFO] [stderr]      |                                              ----^^^^^^
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sender`
[INFO] [stderr]     --> src/render/mod.rs:1046:46
[INFO] [stderr]      |
[INFO] [stderr] 1046 | fn emotes(receiver: Receiver<ServerMessage>, mut sender: Sender<Insert<BikeJump>>) {
[INFO] [stderr]      |                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]     --> src/render/mod.rs:1047:33
[INFO] [stderr]      |
[INFO] [stderr] 1047 |     if let ServerMessage::Emote(id, typ) = receiver.event {}
[INFO] [stderr]      |                                 ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `typ`
[INFO] [stderr]     --> src/render/mod.rs:1047:37
[INFO] [stderr]      |
[INFO] [stderr] 1047 |     if let ServerMessage::Emote(id, typ) = receiver.event {}
[INFO] [stderr]      |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_typ`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board_entity`
[INFO] [stderr]     --> src/render/mod.rs:1409:10
[INFO] [stderr]      |
[INFO] [stderr] 1409 |     for (board_entity, board) in boards {
[INFO] [stderr]      |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_entity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sender`
[INFO] [stderr]     --> src/render/mod.rs:1549:5
[INFO] [stderr]      |
[INFO] [stderr] 1549 |     sender: Sender<Insert<Object>>,
[INFO] [stderr]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `geng`
[INFO] [stderr]    --> src/ui.rs:212:38
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub async fn init(world: &mut World, geng: &Geng) {
[INFO] [stderr]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_geng`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `receiver`
[INFO] [stderr]    --> src/ui.rs:274:5
[INFO] [stderr]     |
[INFO] [stderr] 274 |     receiver: Receiver<Remove<TeamLeader>, With<&LocalPlayer>>,
[INFO] [stderr]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `asphalt` and `border` are never read
[INFO] [stderr]   --> src/assets.rs:74:9
[INFO] [stderr]    |
[INFO] [stderr] 72 | pub struct Road {
[INFO] [stderr]    |            ---- fields in this struct
[INFO] [stderr] 73 |     #[load(options(wrap = "true"))]
[INFO] [stderr] 74 |     pub asphalt: Texture,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 75 |     #[load(options(wrap = "true"))]
[INFO] [stderr] 76 |     pub border: Texture,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `salmon` and `salmon2` are never read
[INFO] [stderr]    --> src/assets.rs:127:9
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub struct Assets {
[INFO] [stderr]     |            ------ fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 127 |     pub salmon: Texture,
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr] 128 |     pub salmon2: Texture,
[INFO] [stderr]     |         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Particles` is never constructed
[INFO] [stderr]    --> src/assets.rs:175:12
[INFO] [stderr]     |
[INFO] [stderr] 175 | pub struct Particles {}
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `init_debug_camera_controls` is never used
[INFO] [stderr]    --> src/controls.rs:401:4
[INFO] [stderr]     |
[INFO] [stderr] 401 | fn init_debug_camera_controls(world: &mut World) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/model/mod.rs:140:18
[INFO] [stderr]     |
[INFO] [stderr] 140 | pub struct Money(pub i64);
[INFO] [stderr]     |            ----- ^^^^^^^
[INFO] [stderr]     |            |
[INFO] [stderr]     |            field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: fields `car_half_size` and `car_loop_length` are never read
[INFO] [stderr]    --> src/model/mod.rs:161:5
[INFO] [stderr]     |
[INFO] [stderr] 156 | struct Config {
[INFO] [stderr]     |        ------ fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 161 |     car_half_size: vec2<f32>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 162 |     car_loop_length: f32,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `seed` is never read
[INFO] [stderr]    --> src/model/mod.rs:229:9
[INFO] [stderr]     |
[INFO] [stderr] 228 | pub struct RngStuff {
[INFO] [stderr]     |            -------- field in this struct
[INFO] [stderr] 229 |     pub seed: u64,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `racers` is never read
[INFO] [stderr]    --> src/model/net.rs:314:9
[INFO] [stderr]     |
[INFO] [stderr] 312 | pub struct RacePlace {
[INFO] [stderr]     |            --------- field in this struct
[INFO] [stderr] 313 |     pub place: usize,
[INFO] [stderr] 314 |     pub racers: usize,
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `RacePlace` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `TriangleStrip` is never constructed
[INFO] [stderr]   --> src/render/instancing.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub enum DrawMode {
[INFO] [stderr]    |          -------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 21 |     TriangleStrip,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DrawMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `texture` and `ambient_color` are never read
[INFO] [stderr]  --> src/render/obj.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Material {
[INFO] [stderr]   |            -------- fields in this struct
[INFO] [stderr] 5 |     pub name: String,
[INFO] [stderr] 6 |     pub texture: Option<Rc<ugli::Texture>>,
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] 7 |     pub ambient_color: Rgba<f32>,
[INFO] [stderr]   |         ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Material` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> src/render/obj.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct ObjMesh {
[INFO] [stderr]    |            ------- field in this struct
[INFO] [stderr] 12 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `sound` is never read
[INFO] [stderr]   --> src/sound.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 50 | pub struct Shopwubwub {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 51 |     sound: Option<geng::SoundEffect>,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Races` is never constructed
[INFO] [stderr]    --> src/ui.rs:208:12
[INFO] [stderr]     |
[INFO] [stderr] 208 | pub struct Races {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `init` is never used
[INFO] [stderr]    --> src/ui.rs:212:14
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub async fn init(world: &mut World, geng: &Geng) {
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bridge_forwarder` is never used
[INFO] [stderr]    --> src/ui.rs:254:4
[INFO] [stderr]     |
[INFO] [stderr] 254 | fn bridge_forwarder(receiver: Receiver<OutboundUiMessage>) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `race_statistics` is never used
[INFO] [stderr]    --> src/ui.rs:258:4
[INFO] [stderr]     |
[INFO] [stderr] 258 | fn race_statistics(receiver: Receiver<RaceStatistic>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `handle_lmb` is never used
[INFO] [stderr]    --> src/ui.rs:264:4
[INFO] [stderr]     |
[INFO] [stderr] 264 | fn handle_lmb(receiver: Receiver<GengEvent>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sync_team_leader_remove` is never used
[INFO] [stderr]    --> src/ui.rs:273:4
[INFO] [stderr]     |
[INFO] [stderr] 273 | fn sync_team_leader_remove(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sync_team_leader` is never used
[INFO] [stderr]    --> src/ui.rs:284:4
[INFO] [stderr]     |
[INFO] [stderr] 284 | fn sync_team_leader(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `receive_invitation` is never used
[INFO] [stderr]    --> src/ui.rs:298:4
[INFO] [stderr]     |
[INFO] [stderr] 298 | fn receive_invitation(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `enter_race_start` is never used
[INFO] [stderr]    --> src/ui.rs:311:4
[INFO] [stderr]     |
[INFO] [stderr] 311 | fn enter_race_start(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `race_alert` is never used
[INFO] [stderr]    --> src/ui.rs:340:4
[INFO] [stderr]     |
[INFO] [stderr] 340 | fn race_alert(
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ready_count` is never used
[INFO] [stderr]    --> src/ui.rs:356:4
[INFO] [stderr]     |
[INFO] [stderr] 356 | fn ready_count(receiver: Receiver<ServerMessage>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `race_place` is never used
[INFO] [stderr]    --> src/ui.rs:365:4
[INFO] [stderr]     |
[INFO] [stderr] 365 | fn race_place(
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unlock_bikes` is never used
[INFO] [stderr]    --> src/ui.rs:375:4
[INFO] [stderr]     |
[INFO] [stderr] 375 | fn unlock_bikes(
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unlock_hats` is never used
[INFO] [stderr]    --> src/ui.rs:387:4
[INFO] [stderr]     |
[INFO] [stderr] 387 | fn unlock_hats(
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sync_money` is never used
[INFO] [stderr]    --> src/ui.rs:400:4
[INFO] [stderr]     |
[INFO] [stderr] 400 | fn sync_money(
[INFO] [stderr]     |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sync_shop` is never used
[INFO] [stderr]    --> src/ui.rs:409:4
[INFO] [stderr]     |
[INFO] [stderr] 409 | fn sync_shop(
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `phone_quest` is never used
[INFO] [stderr]    --> src/ui.rs:447:4
[INFO] [stderr]     |
[INFO] [stderr] 447 | fn phone_quest(receiver: Receiver<QuestEvent>, mut sender: Sender<OutboundUiMessage>) {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `handle_events` is never used
[INFO] [stderr]    --> src/ui.rs:455:4
[INFO] [stderr]     |
[INFO] [stderr] 455 | fn handle_events(
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `salmoning` (bin "salmoning" test) generated 58 warnings (run `cargo fix --bin "salmoning" -p salmoning --tests` to apply 24 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/salmoning-d92e4b4d663e18c1)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test server::test_brainoid ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7cb635cfc695d54f044fb4c1af2ac68f11946940e0f045071f52908132e39a3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7cb635cfc695d54f044fb4c1af2ac68f11946940e0f045071f52908132e39a3e", kill_on_drop: false }`
[INFO] [stdout] 7cb635cfc695d54f044fb4c1af2ac68f11946940e0f045071f52908132e39a3e
