[INFO] cloning repository https://github.com/pit-rpg/Viz [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pit-rpg/Viz" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpit-rpg%2FViz", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpit-rpg%2FViz'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 98d6d74b380fd7e5e6dbfa59df75f2bf91a3939d [INFO] testing pit-rpg/Viz against master#ebf0cf75d368c035f4c7e7246d203bd469ee4a51 for pr-137940-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpit-rpg%2FViz" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/pit-rpg/Viz on toolchain ebf0cf75d368c035f4c7e7246d203bd469ee4a51 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/pit-rpg/Viz [INFO] finished tweaking git repo https://github.com/pit-rpg/Viz [INFO] tweaked toml for git repo https://github.com/pit-rpg/Viz written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/pit-rpg/Viz 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" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rand_os v0.1.3 [INFO] [stderr] Downloaded rand_core v0.4.2 [INFO] [stderr] Downloaded autocfg v0.1.6 [INFO] [stderr] Downloaded rand_core v0.3.1 [INFO] [stderr] Downloaded rdrand v0.4.0 [INFO] [stderr] Downloaded gif v0.10.3 [INFO] [stderr] Downloaded const-random-macro v0.1.6 [INFO] [stderr] Downloaded const-random v0.1.6 [INFO] [stderr] Downloaded memoffset v0.5.1 [INFO] [stderr] Downloaded rand_xorshift v0.1.1 [INFO] [stderr] Downloaded num-iter v0.1.39 [INFO] [stderr] Downloaded num-rational v0.2.2 [INFO] [stderr] Downloaded semver v0.9.0 [INFO] [stderr] Downloaded color_quant v1.0.1 [INFO] [stderr] Downloaded adler32 v1.0.4 [INFO] [stderr] Downloaded num_cpus v1.10.1 [INFO] [stderr] Downloaded jpeg-decoder v0.1.16 [INFO] [stderr] Downloaded malloc_buf v0.0.6 [INFO] [stderr] Downloaded derivative v1.0.3 [INFO] [stderr] Downloaded inflections v1.1.1 [INFO] [stderr] Downloaded gltf-derive v0.14.0 [INFO] [stderr] Downloaded atom v0.3.5 [INFO] [stderr] Downloaded deflate v0.7.20 [INFO] [stderr] Downloaded cgl v0.2.3 [INFO] [stderr] Downloaded rustc-demangle v0.1.16 [INFO] [stderr] Downloaded num-traits v0.1.43 [INFO] [stderr] Downloaded regex v1.3.1 [INFO] [stderr] Downloaded ansi_term v0.11.0 [INFO] [stderr] Downloaded winconsole v0.10.0 [INFO] [stderr] Downloaded rand v0.4.6 [INFO] [stderr] Downloaded wayland-protocols v0.21.13 [INFO] [stderr] Downloaded image v0.21.3 [INFO] [stderr] Downloaded nix v0.14.1 [INFO] [stderr] Downloaded typer v0.1.1 [INFO] [stderr] Downloaded winit v0.19.3 [INFO] [stderr] Downloaded libc v0.2.62 [INFO] [stderr] Downloaded khronos_api v3.1.0 [INFO] [stderr] Downloaded smithay-client-toolkit v0.4.6 [INFO] [stderr] Downloaded atty v0.2.13 [INFO] [stderr] Downloaded quote v1.0.2 [INFO] [stderr] Downloaded winapi v0.3.8 [INFO] [stderr] Downloaded serde_json v1.0.41 [INFO] [stderr] Downloaded redox_syscall v0.1.56 [INFO] [stderr] Downloaded gl_generator v0.11.0 [INFO] [stderr] Downloaded mopa v0.2.2 [INFO] [stderr] Downloaded unicode-segmentation v1.3.0 [INFO] [stderr] Downloaded cgmath v0.16.1 [INFO] [stderr] Downloaded cc v1.0.45 [INFO] [stderr] Downloaded clap v2.33.0 [INFO] [stderr] Downloaded backtrace v0.3.38 [INFO] [stderr] Downloaded wayland-client v0.21.13 [INFO] [stderr] Downloaded x11-dl v2.18.4 [INFO] [stderr] Downloaded glutin v0.21.1 [INFO] [stderr] Downloaded heck v0.3.1 [INFO] [stderr] Downloaded base64 v0.10.1 [INFO] [stderr] Downloaded png v0.14.1 [INFO] [stderr] Downloaded gltf v0.14.0 [INFO] [stderr] Downloaded cocoa v0.18.4 [INFO] [stderr] Downloaded parking_lot_core v0.6.2 [INFO] [stderr] Downloaded parking_lot v0.9.0 [INFO] [stderr] Downloaded crc32fast v1.2.0 [INFO] [stderr] Downloaded regex-syntax v0.6.12 [INFO] [stderr] Downloaded unicode-width v0.1.6 [INFO] [stderr] Downloaded vec_map v0.8.1 [INFO] [stderr] Downloaded approx v0.1.1 [INFO] [stderr] Downloaded colored v1.8.0 [INFO] [stderr] Downloaded gl v0.14.0 [INFO] [stderr] Downloaded gl_generator v0.13.1 [INFO] [stderr] Downloaded gleam v0.6.19 [INFO] [stderr] Downloaded shared_library v0.1.9 [INFO] [stderr] Downloaded core-foundation v0.6.4 [INFO] [stderr] Downloaded core-graphics v0.17.3 [INFO] [stderr] Downloaded walkdir v2.2.9 [INFO] [stderr] Downloaded rgb v0.8.14 [INFO] [stderr] Downloaded gl_generator v0.14.0 [INFO] [stderr] Downloaded gltf-json v0.14.0 [INFO] [stderr] Downloaded objc v0.2.6 [INFO] [stderr] Downloaded xdg v2.2.0 [INFO] [stderr] Downloaded memmap v0.7.0 [INFO] [stderr] Downloaded wayland-scanner v0.21.13 [INFO] [stderr] Downloaded image v0.22.3 [INFO] [stderr] Downloaded syn v1.0.5 [INFO] [stderr] Downloaded core-foundation-sys v0.6.2 [INFO] [stderr] Downloaded same-file v1.0.5 [INFO] [stderr] Downloaded andrew v0.2.1 [INFO] [stderr] Downloaded libloading v0.5.2 [INFO] [stderr] Downloaded maybe-uninit v2.0.0 [INFO] [stderr] Downloaded pkg-config v0.3.16 [INFO] [stderr] Downloaded syn v0.15.44 [INFO] [stderr] Downloaded glutin_egl_sys v0.1.3 [INFO] [stderr] Downloaded glutin_emscripten_sys v0.1.0 [INFO] [stderr] Downloaded glutin_glx_sys v0.1.5 [INFO] [stderr] Downloaded block v0.1.6 [INFO] [stderr] Downloaded lock_api v0.3.1 [INFO] [stderr] Downloaded percent-encoding v2.1.0 [INFO] [stderr] Downloaded line_drawing v0.7.0 [INFO] [stderr] Downloaded downcast-rs v1.1.0 [INFO] [stderr] Downloaded wayland-commons v0.21.13 [INFO] [stderr] Downloaded aho-corasick v0.7.6 [INFO] [stderr] Downloaded rand v0.7.2 [INFO] [stderr] Downloaded rayon v1.2.0 [INFO] [stderr] Downloaded specs v0.15.1 [INFO] [stderr] Downloaded hashbrown v0.6.1 [INFO] [stderr] Downloaded crossbeam-epoch v0.7.2 [INFO] [stderr] Downloaded rusttype v0.8.1 [INFO] [stderr] Downloaded rand v0.6.5 [INFO] [stderr] Downloaded glutin_gles2_sys v0.1.3 [INFO] [stderr] Downloaded osmesa-sys v0.1.2 [INFO] [stderr] Downloaded num-integer v0.1.41 [INFO] [stderr] Downloaded ryu v1.0.0 [INFO] [stderr] Downloaded serde_derive v1.0.101 [INFO] [stderr] Downloaded serde v1.0.101 [INFO] [stderr] Downloaded crossbeam-utils v0.6.6 [INFO] [stderr] Downloaded rayon-core v1.6.0 [INFO] [stderr] Downloaded backtrace-sys v0.1.31 [INFO] [stderr] Downloaded shred v0.9.3 [INFO] [stderr] Downloaded tar v0.4.26 [INFO] [stderr] Downloaded num-traits v0.2.8 [INFO] [stderr] Downloaded rusttype v0.7.9 [INFO] [stderr] Downloaded xml-rs v0.8.0 [INFO] [stderr] Downloaded glutin_wgl_sys v0.1.3 [INFO] [stderr] Downloaded android_glue v0.2.3 [INFO] [stderr] Downloaded winapi-util v0.1.2 [INFO] [stderr] Downloaded void v1.0.2 [INFO] [stderr] Downloaded dlib v0.4.1 [INFO] [stderr] Downloaded png v0.15.0 [INFO] [stderr] Downloaded memchr v2.2.1 [INFO] [stderr] Downloaded log v0.4.8 [INFO] [stderr] Downloaded wasi v0.7.0 [INFO] [stderr] Downloaded proc-macro2 v1.0.5 [INFO] [stderr] Downloaded unicode-xid v0.2.0 [INFO] [stderr] Downloaded arrayvec v0.4.12 [INFO] [stderr] Downloaded arrayvec v0.5.1 [INFO] [stderr] Downloaded ordered-float v1.0.2 [INFO] [stderr] Downloaded rand_chacha v0.1.1 [INFO] [stderr] Downloaded rand_isaac v0.1.1 [INFO] [stderr] Downloaded wayland-sys v0.21.13 [INFO] [stderr] Downloaded inflate v0.4.5 [INFO] [stderr] Downloaded lzw v0.10.0 [INFO] [stderr] Downloaded num-derive v0.2.5 [INFO] [stderr] Downloaded tiff v0.3.1 [INFO] [stderr] Downloaded obj v0.9.0 [INFO] [stderr] Downloaded thread_local v0.3.6 [INFO] [stderr] Downloaded itoa v0.4.4 [INFO] [stderr] Downloaded proc-macro2 v0.4.30 [INFO] [stderr] Downloaded quote v0.6.13 [INFO] [stderr] Downloaded hibitset v0.6.2 [INFO] [stderr] Downloaded ppv-lite86 v0.2.5 [INFO] [stderr] Downloaded c2-chacha v0.2.2 [INFO] [stderr] Downloaded rand_chacha v0.2.1 [INFO] [stderr] Downloaded getrandom v0.1.12 [INFO] [stderr] Downloaded rand_hc v0.2.0 [INFO] [stderr] Downloaded proc-macro-hack v0.5.10 [INFO] [stderr] Downloaded ahash v0.2.16 [INFO] [stderr] Downloaded crossbeam-deque v0.7.1 [INFO] [stderr] Downloaded shrev v1.1.1 [INFO] [stderr] Downloaded bitflags v1.2.0 [INFO] [stderr] Downloaded scoped_threadpool v0.1.9 [INFO] [stderr] Downloaded unicode-xid v0.1.0 [INFO] [stderr] Downloaded rand_core v0.5.1 [INFO] [stderr] Downloaded crossbeam-queue v0.1.2 [INFO] [stderr] Downloaded filetime v0.2.7 [INFO] [stderr] Downloaded byteorder v1.3.2 [INFO] [stderr] Downloaded stb_truetype v0.3.0 [INFO] [stderr] Downloaded smallvec v0.6.10 [INFO] [stderr] Downloaded either v1.5.3 [INFO] [stderr] Downloaded nodrop v0.1.14 [INFO] [stderr] Downloaded semver-parser v0.7.0 [INFO] [stderr] Downloaded rustc_version v0.2.3 [INFO] [stderr] Downloaded scopeguard v1.0.0 [INFO] [stderr] Downloaded xattr v0.2.2 [INFO] [stderr] Downloaded rand_hc v0.1.0 [INFO] [stderr] Downloaded cloudabi v0.0.3 [INFO] [stderr] Downloaded uuid v0.7.4 [INFO] [stderr] Downloaded cfg-if v0.1.10 [INFO] [stderr] Downloaded approx v0.3.2 [INFO] [stderr] Downloaded rand_jitter v0.1.4 [INFO] [stderr] Downloaded pathdiff v0.1.0 [INFO] [stderr] Downloaded tuple_utils v0.3.0 [INFO] [stderr] Downloaded fuchsia-cprng v0.1.1 [INFO] [stderr] Downloaded rand_pcg v0.1.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 90121ea80b0eac831b0405ca2244e8ae5eba838e59035e855301b4ba58883aa2 [INFO] running `Command { std: "docker" "start" "-a" "90121ea80b0eac831b0405ca2244e8ae5eba838e59035e855301b4ba58883aa2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "90121ea80b0eac831b0405ca2244e8ae5eba838e59035e855301b4ba58883aa2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "90121ea80b0eac831b0405ca2244e8ae5eba838e59035e855301b4ba58883aa2", kill_on_drop: false }` [INFO] [stdout] 90121ea80b0eac831b0405ca2244e8ae5eba838e59035e855301b4ba58883aa2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b802cf26ca9e50007bcd7ba0ed804a73b5d910426e4c493eef810598da6cb8af [INFO] running `Command { std: "docker" "start" "-a" "b802cf26ca9e50007bcd7ba0ed804a73b5d910426e4c493eef810598da6cb8af", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling libc v0.2.62 [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling xml-rs v0.8.0 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling proc-macro2 v1.0.5 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling bitflags v1.2.0 [INFO] [stderr] Compiling getrandom v0.1.12 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling rayon-core v1.6.0 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling wayland-scanner v0.21.13 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling num_cpus v1.10.1 [INFO] [stderr] Compiling crossbeam-epoch v0.7.2 [INFO] [stderr] Compiling ppv-lite86 v0.2.5 [INFO] [stderr] Compiling crossbeam-deque v0.7.1 [INFO] [stderr] Compiling libloading v0.5.2 [INFO] [stderr] Compiling c2-chacha v0.2.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Compiling either v1.5.3 [INFO] [stderr] Compiling dlib v0.4.1 [INFO] [stderr] Compiling rayon v1.2.0 [INFO] [stderr] Compiling rand_chacha v0.2.1 [INFO] [stderr] Compiling ordered-float v1.0.2 [INFO] [stderr] Compiling approx v0.3.2 [INFO] [stderr] Compiling gl_generator v0.11.0 [INFO] [stderr] Compiling stb_truetype v0.3.0 [INFO] [stderr] Compiling adler32 v1.0.4 [INFO] [stderr] Compiling arrayvec v0.5.1 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling wayland-client v0.21.13 [INFO] [stderr] Compiling rand v0.7.2 [INFO] [stderr] Compiling rusttype v0.8.1 [INFO] [stderr] Compiling proc-macro-hack v0.5.10 [INFO] [stderr] Compiling wayland-sys v0.21.13 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Compiling smallvec v0.6.10 [INFO] [stderr] Compiling pkg-config v0.3.16 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling const-random-macro v0.1.6 [INFO] [stderr] Compiling rusttype v0.7.9 [INFO] [stderr] Compiling wayland-protocols v0.21.13 [INFO] [stderr] Compiling x11-dl v2.18.4 [INFO] [stderr] Compiling deflate v0.7.20 [INFO] [stderr] Compiling inflate v0.4.5 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling num-rational v0.2.2 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling ryu v1.0.0 [INFO] [stderr] Compiling downcast-rs v1.1.0 [INFO] [stderr] Compiling same-file v1.0.5 [INFO] [stderr] Compiling lzw v0.10.0 [INFO] [stderr] Compiling walkdir v2.2.9 [INFO] [stderr] Compiling const-random v0.1.6 [INFO] [stderr] Compiling serde_derive v1.0.101 [INFO] [stderr] Compiling line_drawing v0.7.0 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling wayland-commons v0.21.13 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling hashbrown v0.6.1 [INFO] [stderr] Compiling crc32fast v1.2.0 [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling cgmath v0.16.1 [INFO] [stderr] Compiling xdg v2.2.0 [INFO] [stderr] Compiling winapi v0.3.8 [INFO] [stderr] Compiling andrew v0.2.1 [INFO] [stderr] Compiling ahash v0.2.16 [INFO] [stderr] Compiling jpeg-decoder v0.1.16 [INFO] [stderr] Compiling glutin_egl_sys v0.1.3 [INFO] [stderr] Compiling glutin_glx_sys v0.1.5 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling lock_api v0.3.1 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling memmap v0.7.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling approx v0.1.1 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling inflections v1.1.1 [INFO] [stderr] Compiling gltf-derive v0.14.0 [INFO] [stderr] Compiling gl v0.14.0 [INFO] [stderr] Compiling derivative v1.0.3 [INFO] [stderr] Compiling png v0.14.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling serde_json v1.0.41 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling shared_library v0.1.9 [INFO] [stderr] Compiling unicode-width v0.1.6 [INFO] [stderr] Compiling color_quant v1.0.1 [INFO] [stderr] Compiling mopa v0.2.2 [INFO] [stderr] Compiling atom v0.3.5 [INFO] [stderr] Compiling rgb v0.8.14 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling hibitset v0.6.2 [INFO] [stderr] Compiling gif v0.10.3 [INFO] [stderr] Compiling winconsole v0.10.0 [INFO] [stderr] Compiling shred v0.9.3 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling osmesa-sys v0.1.2 [INFO] [stderr] Compiling gltf-json v0.14.0 [INFO] [stderr] Compiling tiff v0.3.1 [INFO] [stderr] Compiling image v0.21.3 [INFO] [stderr] Compiling aho-corasick v0.7.6 [INFO] [stderr] Compiling png v0.15.0 [INFO] [stderr] Compiling smithay-client-toolkit v0.4.6 [INFO] [stderr] Compiling base64 v0.10.1 [INFO] [stderr] Compiling xattr v0.2.2 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling filetime v0.2.7 [INFO] [stderr] Compiling winit v0.19.3 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling tuple_utils v0.3.0 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling shrev v1.1.1 [INFO] [stderr] Compiling scoped_threadpool v0.1.9 [INFO] [stderr] Compiling regex-syntax v0.6.12 [INFO] [stderr] Compiling unicode-segmentation v1.3.0 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling regex v1.3.1 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling image v0.22.3 [INFO] [stderr] Compiling glutin v0.21.1 [INFO] [stderr] Compiling specs v0.15.1 [INFO] [stderr] Compiling tar v0.4.26 [INFO] [stderr] Compiling gltf v0.14.0 [INFO] [stderr] Compiling uuid v0.7.4 [INFO] [stderr] Compiling colored v1.8.0 [INFO] [stderr] Compiling typer v0.1.1 [INFO] [stderr] Compiling pathdiff v0.1.0 [INFO] [stderr] Compiling obj v0.9.0 [INFO] [stderr] Compiling project v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `self::uuid::Uuid` [INFO] [stdout] --> src/core/material.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use self::uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UniformItem` [INFO] [stdout] --> src/core/material.rs:6:69 [INFO] [stdout] | [INFO] [stdout] 6 | use super::{Blending, ShaderProgram, ShaderTag, ToUniform, Uniform, UniformItem, UniformName}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/core/material.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/core/texture.rs:108:49 [INFO] [stdout] | [INFO] [stdout] 108 | pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stdout] 108 + pub fn load(&mut self) -> Result<&TextureData, String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> src/render/open_gl/gl_material.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | use core::{Material, ShaderProgram}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/helpers/load_gltf.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> src/helpers/load_gltf.rs:59:2 [INFO] [stdout] | [INFO] [stdout] 59 | ShaderProgram, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:26:2 [INFO] [stdout] | [INFO] [stdout] 26 | #[inline] fn zero() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:27:2 [INFO] [stdout] | [INFO] [stdout] 27 | #[inline] fn one() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:28:2 [INFO] [stdout] | [INFO] [stdout] 28 | #[inline] fn two() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:29:2 [INFO] [stdout] | [INFO] [stdout] 29 | #[inline] fn random() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:30:2 [INFO] [stdout] | [INFO] [stdout] 30 | #[inline] fn sqrt(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:31:2 [INFO] [stdout] | [INFO] [stdout] 31 | #[inline] fn abs(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:32:2 [INFO] [stdout] | [INFO] [stdout] 32 | #[inline] fn round(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:33:2 [INFO] [stdout] | [INFO] [stdout] 33 | #[inline] fn floor(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:34:2 [INFO] [stdout] | [INFO] [stdout] 34 | #[inline] fn ceil(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:35:2 [INFO] [stdout] | [INFO] [stdout] 35 | #[inline] fn cos(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:36:2 [INFO] [stdout] | [INFO] [stdout] 36 | #[inline] fn sin(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:37:2 [INFO] [stdout] | [INFO] [stdout] 37 | #[inline] fn acos(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:38:2 [INFO] [stdout] | [INFO] [stdout] 38 | #[inline] fn asin(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:39:2 [INFO] [stdout] | [INFO] [stdout] 39 | #[inline] fn min(&self, other:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:40:2 [INFO] [stdout] | [INFO] [stdout] 40 | #[inline] fn max(&self, other:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:41:2 [INFO] [stdout] | [INFO] [stdout] 41 | #[inline] fn max_val() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:42:2 [INFO] [stdout] | [INFO] [stdout] 42 | #[inline] fn min_val() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:43:2 [INFO] [stdout] | [INFO] [stdout] 43 | #[inline] fn atan2(y:Self, x:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:44:2 [INFO] [stdout] | [INFO] [stdout] 44 | #[inline] fn epsilon() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:45:2 [INFO] [stdout] | [INFO] [stdout] 45 | #[inline] fn clamp(&self, min: Self, max: Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:46:2 [INFO] [stdout] | [INFO] [stdout] 46 | #[inline] fn from_f32(n: f32) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:47:2 [INFO] [stdout] | [INFO] [stdout] 47 | #[inline] fn from_f64(n: f64) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/buffer_geometry.rs:395:52 [INFO] [stdout] | [INFO] [stdout] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/buffer_geometry.rs:409:56 [INFO] [stdout] | [INFO] [stdout] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/load_gltf.rs:81:74 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `len` is never read [INFO] [stdout] --> src/core/buffer_geometry.rs:272:11 [INFO] [stdout] | [INFO] [stdout] 272 | let mut len = 0; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `parent_transform` is never read [INFO] [stdout] --> src/core/systems/system_transform.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | let mut parent_transform = Transform::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material_index` [INFO] [stdout] --> src/helpers/geometry_generators.rs:115:142 [INFO] [stdout] | [INFO] [stdout] 115 | ...size, grid_y: usize, material_index: i32| { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/helpers/geometry_generators.rs:301:6 [INFO] [stdout] | [INFO] [stdout] 301 | let mut vertices = vec![ [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/helpers/geometry_generators.rs:307:6 [INFO] [stdout] | [INFO] [stdout] 307 | let mut indices = vec![ [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `center` and `radius` are never read [INFO] [stdout] --> src/core/boundings.rs:84:2 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct BSphare [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 84 | center: Vector3, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 85 | radius: T, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_material.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub trait GLMaterial [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `depth_test` and `stencil_test` are never read [INFO] [stdout] --> src/render/open_gl/systems/system_render.rs:72:2 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct RenderSystem { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 72 | depth_test: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 73 | stencil_test: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_texture.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait GLTexture { [INFO] [stdout] | --------- method in this trait [INFO] [stdout] 29 | fn bind(&mut self, hash_map: &mut GLTextureIDs) -> u32; [INFO] [stdout] 30 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_render_buffer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait GLRenderBuffer { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] 30 | fn bind(&mut self, hash_map: &mut GLRenderBufferIDs)-> u32; [INFO] [stdout] 31 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_frame_buffer.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub trait GLFrameBuffer { [INFO] [stdout] | ------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 37 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index_old` is never read [INFO] [stdout] --> src/helpers/load_obj.rs:10:2 [INFO] [stdout] | [INFO] [stdout] 9 | struct TmpIndex { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 10 | index_old: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TmpIndex` 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 `path`, `images`, and `textures` are never read [INFO] [stdout] --> src/helpers/load_gltf.rs:71:2 [INFO] [stdout] | [INFO] [stdout] 70 | struct Context { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 71 | path: PathBuf, [INFO] [stdout] | ^^^^ [INFO] [stdout] 72 | doc: Document, [INFO] [stdout] 73 | images: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 74 | textures: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/core/texture.rs:270:16 [INFO] [stdout] | [INFO] [stdout] 270 | _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 270 - _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stdout] 270 + _ => panic!("can't convert color type from: {:?}", color_type), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `defaultMaterial` should have a snake case name [INFO] [stdout] --> src/helpers/load_gltf.rs:77:2 [INFO] [stdout] | [INFO] [stdout] 77 | defaultMaterial: SharedMaterials, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `default_material` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found module declaration for lib.rs [INFO] [stdout] --> resource-manager/main.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | mod lib; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: lib.rs is the root of this crate's library target [INFO] [stdout] = help: to refer to it from other targets, use the library's name as the path [INFO] [stdout] = note: `#[warn(special_module_name)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:29:21 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules [INFO] [stdout] --> resource-manager/main.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ResourceManager` is never constructed [INFO] [stdout] --> resource-manager/lib.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct ResourceManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResourceManager` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `name_str` is never used [INFO] [stdout] --> resource-manager/lib.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 49 | impl Resource { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 50 | pub fn name_str(&self) -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> resource-manager/lib.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 55 | impl ResourceManager { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 56 | pub fn parse_package_list(data: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn set_package_list(&mut self, package_list: PackageList) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn load_package_list(&mut self, path: &PathBuf) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn set_package_list_from_str(&mut self, data: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn get_package_list(&self) -> Result<&PackageList, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn add_package_data(&mut self, data: &[u8], name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn get_resource_data(&self, name: &str) -> Option<&Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn remove_package(&mut self, name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn load_package_from_disk(&mut self, name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn load_all_packages(&mut self) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn load_all(&mut self, path: &PathBuf) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | fn get_package_list_mut(&mut self) -> Result<&mut PackageList, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Resource` [INFO] [stdout] 23 | pub struct Resource { [INFO] [stdout] | -------- `Resource` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Resource` [INFO] [stdout] 23 | pub struct Resource { [INFO] [stdout] | -------- `Resource` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Package` [INFO] [stdout] 30 | pub struct Package { [INFO] [stdout] | ------- `Package` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:29:21 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Package` [INFO] [stdout] 30 | pub struct Package { [INFO] [stdout] | ------- `Package` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PackageList` [INFO] [stdout] 38 | pub struct PackageList { [INFO] [stdout] | ----------- `PackageList` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PackageList` [INFO] [stdout] 38 | pub struct PackageList { [INFO] [stdout] | ----------- `PackageList` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Path::join` that must be used [INFO] [stdout] --> resource-manager/lib.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | path.join(&res.path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 174 | let _ = path.join(&res.path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [optimized + debuginfo] target(s) in 1m 21s [INFO] running `Command { std: "docker" "inspect" "b802cf26ca9e50007bcd7ba0ed804a73b5d910426e4c493eef810598da6cb8af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b802cf26ca9e50007bcd7ba0ed804a73b5d910426e4c493eef810598da6cb8af", kill_on_drop: false }` [INFO] [stdout] b802cf26ca9e50007bcd7ba0ed804a73b5d910426e4c493eef810598da6cb8af [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d19a7ceff7f35dfe93be079cc0254613714556cd3dee4bb8c883131b2f57d944 [INFO] running `Command { std: "docker" "start" "-a" "d19a7ceff7f35dfe93be079cc0254613714556cd3dee4bb8c883131b2f57d944", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stdout] warning: unused import: `self::uuid::Uuid` [INFO] [stdout] --> src/core/material.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use self::uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UniformItem` [INFO] [stdout] --> src/core/material.rs:6:69 [INFO] [stdout] | [INFO] [stdout] 6 | use super::{Blending, ShaderProgram, ShaderTag, ToUniform, Uniform, UniformItem, UniformName}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/core/material.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/core/texture.rs:108:49 [INFO] [stdout] | [INFO] [stdout] 108 | pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stdout] 108 + pub fn load(&mut self) -> Result<&TextureData, String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> src/render/open_gl/gl_material.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | use core::{Material, ShaderProgram}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/helpers/load_gltf.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> src/helpers/load_gltf.rs:59:2 [INFO] [stdout] | [INFO] [stdout] 59 | ShaderProgram, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:26:2 [INFO] [stdout] | [INFO] [stdout] 26 | #[inline] fn zero() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:27:2 [INFO] [stdout] | [INFO] [stdout] 27 | #[inline] fn one() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:28:2 [INFO] [stdout] | [INFO] [stdout] 28 | #[inline] fn two() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:29:2 [INFO] [stdout] | [INFO] [stdout] 29 | #[inline] fn random() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:30:2 [INFO] [stdout] | [INFO] [stdout] 30 | #[inline] fn sqrt(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:31:2 [INFO] [stdout] | [INFO] [stdout] 31 | #[inline] fn abs(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:32:2 [INFO] [stdout] | [INFO] [stdout] 32 | #[inline] fn round(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:33:2 [INFO] [stdout] | [INFO] [stdout] 33 | #[inline] fn floor(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:34:2 [INFO] [stdout] | [INFO] [stdout] 34 | #[inline] fn ceil(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:35:2 [INFO] [stdout] | [INFO] [stdout] 35 | #[inline] fn cos(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:36:2 [INFO] [stdout] | [INFO] [stdout] 36 | #[inline] fn sin(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:37:2 [INFO] [stdout] | [INFO] [stdout] 37 | #[inline] fn acos(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:38:2 [INFO] [stdout] | [INFO] [stdout] 38 | #[inline] fn asin(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:39:2 [INFO] [stdout] | [INFO] [stdout] 39 | #[inline] fn min(&self, other:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:40:2 [INFO] [stdout] | [INFO] [stdout] 40 | #[inline] fn max(&self, other:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:41:2 [INFO] [stdout] | [INFO] [stdout] 41 | #[inline] fn max_val() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:42:2 [INFO] [stdout] | [INFO] [stdout] 42 | #[inline] fn min_val() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:43:2 [INFO] [stdout] | [INFO] [stdout] 43 | #[inline] fn atan2(y:Self, x:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:44:2 [INFO] [stdout] | [INFO] [stdout] 44 | #[inline] fn epsilon() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:45:2 [INFO] [stdout] | [INFO] [stdout] 45 | #[inline] fn clamp(&self, min: Self, max: Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:46:2 [INFO] [stdout] | [INFO] [stdout] 46 | #[inline] fn from_f32(n: f32) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:47:2 [INFO] [stdout] | [INFO] [stdout] 47 | #[inline] fn from_f64(n: f64) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/buffer_geometry.rs:395:52 [INFO] [stdout] | [INFO] [stdout] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/buffer_geometry.rs:409:56 [INFO] [stdout] | [INFO] [stdout] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/load_gltf.rs:81:74 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `len` is never read [INFO] [stdout] --> src/core/buffer_geometry.rs:272:11 [INFO] [stdout] | [INFO] [stdout] 272 | let mut len = 0; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `parent_transform` is never read [INFO] [stdout] --> src/core/systems/system_transform.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | let mut parent_transform = Transform::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material_index` [INFO] [stdout] --> src/helpers/geometry_generators.rs:115:142 [INFO] [stdout] | [INFO] [stdout] 115 | ...size, grid_y: usize, material_index: i32| { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/helpers/geometry_generators.rs:301:6 [INFO] [stdout] | [INFO] [stdout] 301 | let mut vertices = vec![ [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/helpers/geometry_generators.rs:307:6 [INFO] [stdout] | [INFO] [stdout] 307 | let mut indices = vec![ [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `center` and `radius` are never read [INFO] [stdout] --> src/core/boundings.rs:84:2 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct BSphare [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 84 | center: Vector3, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 85 | radius: T, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_material.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub trait GLMaterial [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `depth_test` and `stencil_test` are never read [INFO] [stdout] --> src/render/open_gl/systems/system_render.rs:72:2 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct RenderSystem { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 72 | depth_test: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 73 | stencil_test: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling project v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_texture.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait GLTexture { [INFO] [stdout] | --------- method in this trait [INFO] [stdout] 29 | fn bind(&mut self, hash_map: &mut GLTextureIDs) -> u32; [INFO] [stdout] 30 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_render_buffer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait GLRenderBuffer { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] 30 | fn bind(&mut self, hash_map: &mut GLRenderBufferIDs)-> u32; [INFO] [stdout] 31 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_frame_buffer.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub trait GLFrameBuffer { [INFO] [stdout] | ------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 37 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index_old` is never read [INFO] [stdout] --> src/helpers/load_obj.rs:10:2 [INFO] [stdout] | [INFO] [stdout] 9 | struct TmpIndex { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 10 | index_old: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TmpIndex` 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 `path`, `images`, and `textures` are never read [INFO] [stdout] --> src/helpers/load_gltf.rs:71:2 [INFO] [stdout] | [INFO] [stdout] 70 | struct Context { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 71 | path: PathBuf, [INFO] [stdout] | ^^^^ [INFO] [stdout] 72 | doc: Document, [INFO] [stdout] 73 | images: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 74 | textures: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/core/texture.rs:270:16 [INFO] [stdout] | [INFO] [stdout] 270 | _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 270 - _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stdout] 270 + _ => panic!("can't convert color type from: {:?}", color_type), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `defaultMaterial` should have a snake case name [INFO] [stdout] --> src/helpers/load_gltf.rs:77:2 [INFO] [stdout] | [INFO] [stdout] 77 | defaultMaterial: SharedMaterials, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `default_material` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found module declaration for lib.rs [INFO] [stdout] --> resource-manager/main.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | mod lib; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: lib.rs is the root of this crate's library target [INFO] [stdout] = help: to refer to it from other targets, use the library's name as the path [INFO] [stdout] = note: `#[warn(special_module_name)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:29:21 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> resource-manager/lib.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `names` and `prod` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules [INFO] [stdout] --> resource-manager/main.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ResourceManager` is never constructed [INFO] [stdout] --> resource-manager/lib.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct ResourceManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResourceManager` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `name_str` is never used [INFO] [stdout] --> resource-manager/lib.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 49 | impl Resource { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 50 | pub fn name_str(&self) -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> resource-manager/lib.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 55 | impl ResourceManager { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 56 | pub fn parse_package_list(data: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn set_package_list(&mut self, package_list: PackageList) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn load_package_list(&mut self, path: &PathBuf) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn set_package_list_from_str(&mut self, data: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn get_package_list(&self) -> Result<&PackageList, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn add_package_data(&mut self, data: &[u8], name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn get_resource_data(&self, name: &str) -> Option<&Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn remove_package(&mut self, name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn load_package_from_disk(&mut self, name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn load_all_packages(&mut self) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn load_all(&mut self, path: &PathBuf) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | fn get_package_list_mut(&mut self) -> Result<&mut PackageList, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Resource` [INFO] [stdout] 23 | pub struct Resource { [INFO] [stdout] | -------- `Resource` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Resource` [INFO] [stdout] 23 | pub struct Resource { [INFO] [stdout] | -------- `Resource` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Package` [INFO] [stdout] 30 | pub struct Package { [INFO] [stdout] | ------- `Package` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:29:21 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Package` [INFO] [stdout] 30 | pub struct Package { [INFO] [stdout] | ------- `Package` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PackageList` [INFO] [stdout] 38 | pub struct PackageList { [INFO] [stdout] | ----------- `PackageList` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> resource-manager/lib.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PackageList` [INFO] [stdout] 38 | pub struct PackageList { [INFO] [stdout] | ----------- `PackageList` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Path::join` that must be used [INFO] [stdout] --> resource-manager/lib.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | path.join(&res.path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 174 | let _ = path.join(&res.path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e8.rs:10:3 [INFO] [stdout] | [INFO] [stdout] 10 | ShaderProgram, ShaderTag, SharedFrameBuffer, SharedGeometry, SharedMaterials, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e1.rs:6:63 [INFO] [stdout] | [INFO] [stdout] 6 | create_world, EntityRelations, Material, PerspectiveCamera, ShaderProgram, SharedGeometry, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e5.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | ShaderProgram, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e1.rs:244:85 [INFO] [stdout] | [INFO] [stdout] 244 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e5.rs:236:85 [INFO] [stdout] | [INFO] [stdout] 236 | transform_camera.position.x = ( (x_prog * (PI_f64*2.0)).cos() * radius ) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e8.rs:314:85 [INFO] [stdout] | [INFO] [stdout] 314 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e4.rs:10:70 [INFO] [stdout] | [INFO] [stdout] 10 | create_world, BufferType, Material, PerspectiveCamera, PointLight, ShaderProgram, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e4.rs:192:85 [INFO] [stdout] | [INFO] [stdout] 192 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e3.rs:22:3 [INFO] [stdout] | [INFO] [stdout] 22 | ShaderProgram, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e3.rs:166:85 [INFO] [stdout] | [INFO] [stdout] 166 | transform_camera.position.x = ( (x_prog * (PI_f64*2.0)).cos() * radius ) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e7.rs:10:3 [INFO] [stdout] | [INFO] [stdout] 10 | ShaderProgram, ShaderTag, SharedGeometry, SharedMaterials, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e7.rs:232:85 [INFO] [stdout] | [INFO] [stdout] 232 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::uuid::Uuid` [INFO] [stdout] --> src/core/material.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use self::uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UniformItem` [INFO] [stdout] --> src/core/material.rs:6:69 [INFO] [stdout] | [INFO] [stdout] 6 | use super::{Blending, ShaderProgram, ShaderTag, ToUniform, Uniform, UniformItem, UniformName}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/core/material.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/core/texture.rs:108:49 [INFO] [stdout] | [INFO] [stdout] 108 | pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stdout] 108 + pub fn load(&mut self) -> Result<&TextureData, String> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> src/render/open_gl/gl_material.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | use core::{Material, ShaderProgram}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/helpers/load_gltf.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> src/helpers/load_gltf.rs:59:2 [INFO] [stdout] | [INFO] [stdout] 59 | ShaderProgram, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShaderProgram` [INFO] [stdout] --> examples/e2.rs:7:63 [INFO] [stdout] | [INFO] [stdout] 7 | create_world, EntityRelations, Material, PerspectiveCamera, ShaderProgram, ShaderTag, SharedGeometry, SharedMaterials, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e2.rs:236:85 [INFO] [stdout] | [INFO] [stdout] 236 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:26:2 [INFO] [stdout] | [INFO] [stdout] 26 | #[inline] fn zero() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:27:2 [INFO] [stdout] | [INFO] [stdout] 27 | #[inline] fn one() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:28:2 [INFO] [stdout] | [INFO] [stdout] 28 | #[inline] fn two() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:29:2 [INFO] [stdout] | [INFO] [stdout] 29 | #[inline] fn random() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:30:2 [INFO] [stdout] | [INFO] [stdout] 30 | #[inline] fn sqrt(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:31:2 [INFO] [stdout] | [INFO] [stdout] 31 | #[inline] fn abs(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:32:2 [INFO] [stdout] | [INFO] [stdout] 32 | #[inline] fn round(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:33:2 [INFO] [stdout] | [INFO] [stdout] 33 | #[inline] fn floor(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:34:2 [INFO] [stdout] | [INFO] [stdout] 34 | #[inline] fn ceil(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:35:2 [INFO] [stdout] | [INFO] [stdout] 35 | #[inline] fn cos(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:36:2 [INFO] [stdout] | [INFO] [stdout] 36 | #[inline] fn sin(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:37:2 [INFO] [stdout] | [INFO] [stdout] 37 | #[inline] fn acos(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:38:2 [INFO] [stdout] | [INFO] [stdout] 38 | #[inline] fn asin(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:39:2 [INFO] [stdout] | [INFO] [stdout] 39 | #[inline] fn min(&self, other:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:40:2 [INFO] [stdout] | [INFO] [stdout] 40 | #[inline] fn max(&self, other:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:41:2 [INFO] [stdout] | [INFO] [stdout] 41 | #[inline] fn max_val() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:42:2 [INFO] [stdout] | [INFO] [stdout] 42 | #[inline] fn min_val() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:43:2 [INFO] [stdout] | [INFO] [stdout] 43 | #[inline] fn atan2(y:Self, x:Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:44:2 [INFO] [stdout] | [INFO] [stdout] 44 | #[inline] fn epsilon() -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:45:2 [INFO] [stdout] | [INFO] [stdout] 45 | #[inline] fn clamp(&self, min: Self, max: Self) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:46:2 [INFO] [stdout] | [INFO] [stdout] 46 | #[inline] fn from_f32(n: f32) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` is ignored on function prototypes [INFO] [stdout] --> src/helpers/nums.rs:47:2 [INFO] [stdout] | [INFO] [stdout] 47 | #[inline] fn from_f64(n: f64) -> Self; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/buffer_geometry.rs:395:52 [INFO] [stdout] | [INFO] [stdout] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/buffer_geometry.rs:409:56 [INFO] [stdout] | [INFO] [stdout] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/helpers/load_gltf.rs:81:74 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `len` is never read [INFO] [stdout] --> src/core/buffer_geometry.rs:272:11 [INFO] [stdout] | [INFO] [stdout] 272 | let mut len = 0; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `parent_transform` is never read [INFO] [stdout] --> src/core/systems/system_transform.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | let mut parent_transform = Transform::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `material_index` [INFO] [stdout] --> src/helpers/geometry_generators.rs:115:142 [INFO] [stdout] | [INFO] [stdout] 115 | ...size, grid_y: usize, material_index: i32| { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/helpers/geometry_generators.rs:301:6 [INFO] [stdout] | [INFO] [stdout] 301 | let mut vertices = vec![ [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/helpers/geometry_generators.rs:307:6 [INFO] [stdout] | [INFO] [stdout] 307 | let mut indices = vec![ [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `center` and `radius` are never read [INFO] [stdout] --> src/core/boundings.rs:84:2 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct BSphare [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 84 | center: Vector3, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 85 | radius: T, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_material.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub trait GLMaterial [INFO] [stdout] | ---------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `depth_test` and `stencil_test` are never read [INFO] [stdout] --> src/render/open_gl/systems/system_render.rs:72:2 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct RenderSystem { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 72 | depth_test: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 73 | stencil_test: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_texture.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait GLTexture { [INFO] [stdout] | --------- method in this trait [INFO] [stdout] 29 | fn bind(&mut self, hash_map: &mut GLTextureIDs) -> u32; [INFO] [stdout] 30 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_render_buffer.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait GLRenderBuffer { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] 30 | fn bind(&mut self, hash_map: &mut GLRenderBufferIDs)-> u32; [INFO] [stdout] 31 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unbind` is never used [INFO] [stdout] --> src/render/open_gl/gl_frame_buffer.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub trait GLFrameBuffer { [INFO] [stdout] | ------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 37 | fn unbind(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index_old` is never read [INFO] [stdout] --> src/helpers/load_obj.rs:10:2 [INFO] [stdout] | [INFO] [stdout] 9 | struct TmpIndex { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 10 | index_old: usize, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TmpIndex` 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 `path`, `images`, and `textures` are never read [INFO] [stdout] --> src/helpers/load_gltf.rs:71:2 [INFO] [stdout] | [INFO] [stdout] 70 | struct Context { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 71 | path: PathBuf, [INFO] [stdout] | ^^^^ [INFO] [stdout] 72 | doc: Document, [INFO] [stdout] 73 | images: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 74 | textures: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/core/texture.rs:270:16 [INFO] [stdout] | [INFO] [stdout] 270 | _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 270 - _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stdout] 270 + _ => panic!("can't convert color type from: {:?}", color_type), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `defaultMaterial` should have a snake case name [INFO] [stdout] --> src/helpers/load_gltf.rs:77:2 [INFO] [stdout] | [INFO] [stdout] 77 | defaultMaterial: SharedMaterials, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `default_material` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/e6.rs:220:85 [INFO] [stdout] | [INFO] [stdout] 220 | transform_camera.position.x = ( (x_prog * (PI_f64*2.0)).cos() * radius ) as f32;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 14.00s [INFO] running `Command { std: "docker" "inspect" "d19a7ceff7f35dfe93be079cc0254613714556cd3dee4bb8c883131b2f57d944", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d19a7ceff7f35dfe93be079cc0254613714556cd3dee4bb8c883131b2f57d944", kill_on_drop: false }` [INFO] [stdout] d19a7ceff7f35dfe93be079cc0254613714556cd3dee4bb8c883131b2f57d944 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 132cdcd6ec9478bb6db191f967eb8204d018091cc9251894dd3d6bc68a2cde06 [INFO] running `Command { std: "docker" "start" "-a" "132cdcd6ec9478bb6db191f967eb8204d018091cc9251894dd3d6bc68a2cde06", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: unused import: `self::uuid::Uuid` [INFO] [stderr] --> src/core/material.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use self::uuid::Uuid; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `UniformItem` [INFO] [stderr] --> src/core/material.rs:6:69 [INFO] [stderr] | [INFO] [stderr] 6 | use super::{Blending, ShaderProgram, ShaderTag, ToUniform, Uniform, UniformItem, UniformName}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashSet` [INFO] [stderr] --> src/core/material.rs:8:33 [INFO] [stderr] | [INFO] [stderr] 8 | use std::collections::{HashMap, HashSet}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/core/texture.rs:108:49 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 108 - pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stderr] 108 + pub fn load(&mut self) -> Result<&TextureData, String> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> src/render/open_gl/gl_material.rs:6:22 [INFO] [stderr] | [INFO] [stderr] 6 | use core::{Material, ShaderProgram}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/helpers/load_gltf.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> src/helpers/load_gltf.rs:59:2 [INFO] [stderr] | [INFO] [stderr] 59 | ShaderProgram, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:26:2 [INFO] [stderr] | [INFO] [stderr] 26 | #[inline] fn zero() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:27:2 [INFO] [stderr] | [INFO] [stderr] 27 | #[inline] fn one() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:28:2 [INFO] [stderr] | [INFO] [stderr] 28 | #[inline] fn two() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:29:2 [INFO] [stderr] | [INFO] [stderr] 29 | #[inline] fn random() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:30:2 [INFO] [stderr] | [INFO] [stderr] 30 | #[inline] fn sqrt(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:31:2 [INFO] [stderr] | [INFO] [stderr] 31 | #[inline] fn abs(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:32:2 [INFO] [stderr] | [INFO] [stderr] 32 | #[inline] fn round(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:33:2 [INFO] [stderr] | [INFO] [stderr] 33 | #[inline] fn floor(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:34:2 [INFO] [stderr] | [INFO] [stderr] 34 | #[inline] fn ceil(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:35:2 [INFO] [stderr] | [INFO] [stderr] 35 | #[inline] fn cos(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:36:2 [INFO] [stderr] | [INFO] [stderr] 36 | #[inline] fn sin(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:37:2 [INFO] [stderr] | [INFO] [stderr] 37 | #[inline] fn acos(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:38:2 [INFO] [stderr] | [INFO] [stderr] 38 | #[inline] fn asin(&self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:39:2 [INFO] [stderr] | [INFO] [stderr] 39 | #[inline] fn min(&self, other:Self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:40:2 [INFO] [stderr] | [INFO] [stderr] 40 | #[inline] fn max(&self, other:Self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:41:2 [INFO] [stderr] | [INFO] [stderr] 41 | #[inline] fn max_val() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:42:2 [INFO] [stderr] | [INFO] [stderr] 42 | #[inline] fn min_val() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:43:2 [INFO] [stderr] | [INFO] [stderr] 43 | #[inline] fn atan2(y:Self, x:Self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:44:2 [INFO] [stderr] | [INFO] [stderr] 44 | #[inline] fn epsilon() -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:45:2 [INFO] [stderr] | [INFO] [stderr] 45 | #[inline] fn clamp(&self, min: Self, max: Self) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:46:2 [INFO] [stderr] | [INFO] [stderr] 46 | #[inline] fn from_f32(n: f32) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` is ignored on function prototypes [INFO] [stderr] --> src/helpers/nums.rs:47:2 [INFO] [stderr] | [INFO] [stderr] 47 | #[inline] fn from_f64(n: f64) -> Self; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/buffer_geometry.rs:395:52 [INFO] [stderr] | [INFO] [stderr] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 395 | pub fn update_box3 (&mut self) -> Result <(), Box> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/buffer_geometry.rs:409:56 [INFO] [stderr] | [INFO] [stderr] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 409 | pub fn get_b_box(&mut self) -> Result, Box> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/helpers/load_gltf.rs:81:74 [INFO] [stderr] | [INFO] [stderr] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 81 | pub fn load_gltf(world: &mut World, path: PathBuf) -> Result> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `len` is never read [INFO] [stderr] --> src/core/buffer_geometry.rs:272:11 [INFO] [stderr] | [INFO] [stderr] 272 | let mut len = 0; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `parent_transform` is never read [INFO] [stderr] --> src/core/systems/system_transform.rs:59:11 [INFO] [stderr] | [INFO] [stderr] 59 | let mut parent_transform = Transform::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `material_index` [INFO] [stderr] --> src/helpers/geometry_generators.rs:115:142 [INFO] [stderr] | [INFO] [stderr] 115 | ...size, grid_y: usize, material_index: i32| { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_material_index` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/helpers/geometry_generators.rs:301:6 [INFO] [stderr] | [INFO] [stderr] 301 | let mut vertices = vec![ [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/helpers/geometry_generators.rs:307:6 [INFO] [stderr] | [INFO] [stderr] 307 | let mut indices = vec![ [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: fields `center` and `radius` are never read [INFO] [stderr] --> src/core/boundings.rs:84:2 [INFO] [stderr] | [INFO] [stderr] 80 | pub struct BSphare [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 84 | center: Vector3, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 85 | radius: T, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `unbind` is never used [INFO] [stderr] --> src/render/open_gl/gl_material.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub trait GLMaterial [INFO] [stderr] | ---------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 22 | fn unbind(&self) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `depth_test` and `stencil_test` are never read [INFO] [stderr] --> src/render/open_gl/systems/system_render.rs:72:2 [INFO] [stderr] | [INFO] [stderr] 55 | pub struct RenderSystem { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] ... [INFO] [stderr] 72 | depth_test: bool, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 73 | stencil_test: bool, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `unbind` is never used [INFO] [stderr] --> src/render/open_gl/gl_texture.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 28 | pub trait GLTexture { [INFO] [stderr] | --------- method in this trait [INFO] [stderr] 29 | fn bind(&mut self, hash_map: &mut GLTextureIDs) -> u32; [INFO] [stderr] 30 | fn unbind(&self); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `unbind` is never used [INFO] [stderr] --> src/render/open_gl/gl_render_buffer.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub trait GLRenderBuffer { [INFO] [stderr] | -------------- method in this trait [INFO] [stderr] 30 | fn bind(&mut self, hash_map: &mut GLRenderBufferIDs)-> u32; [INFO] [stderr] 31 | fn unbind(&self); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `unbind` is never used [INFO] [stderr] --> src/render/open_gl/gl_frame_buffer.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 30 | pub trait GLFrameBuffer { [INFO] [stderr] | ------------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 37 | fn unbind(&self); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `index_old` is never read [INFO] [stderr] --> src/helpers/load_obj.rs:10:2 [INFO] [stderr] | [INFO] [stderr] 9 | struct TmpIndex { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 10 | index_old: usize, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TmpIndex` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `path`, `images`, and `textures` are never read [INFO] [stderr] --> src/helpers/load_gltf.rs:71:2 [INFO] [stderr] | [INFO] [stderr] 70 | struct Context { [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] 71 | path: PathBuf, [INFO] [stderr] | ^^^^ [INFO] [stderr] 72 | doc: Document, [INFO] [stderr] 73 | images: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 74 | textures: Vec, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/core/texture.rs:270:16 [INFO] [stderr] | [INFO] [stderr] 270 | _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 270 - _ => panic!(format!("can't convert color type from: {:?}", color_type)), [INFO] [stderr] 270 + _ => panic!("can't convert color type from: {:?}", color_type), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: structure field `defaultMaterial` should have a snake case name [INFO] [stderr] --> src/helpers/load_gltf.rs:77:2 [INFO] [stderr] | [INFO] [stderr] 77 | defaultMaterial: SharedMaterials, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `default_material` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `project` (lib) generated 47 warnings (run `cargo fix --lib -p project` to apply 13 suggestions) [INFO] [stderr] warning: `project` (lib test) generated 47 warnings (47 duplicates) [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e6.rs:220:85 [INFO] [stderr] | [INFO] [stderr] 220 | transform_camera.position.x = ( (x_prog * (PI_f64*2.0)).cos() * radius ) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e5.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | ShaderProgram, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e5.rs:236:85 [INFO] [stderr] | [INFO] [stderr] 236 | transform_camera.position.x = ( (x_prog * (PI_f64*2.0)).cos() * radius ) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e2.rs:7:63 [INFO] [stderr] | [INFO] [stderr] 7 | create_world, EntityRelations, Material, PerspectiveCamera, ShaderProgram, ShaderTag, SharedGeometry, SharedMaterials, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e2.rs:236:85 [INFO] [stderr] | [INFO] [stderr] 236 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e3.rs:22:3 [INFO] [stderr] | [INFO] [stderr] 22 | ShaderProgram, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e3.rs:166:85 [INFO] [stderr] | [INFO] [stderr] 166 | transform_camera.position.x = ( (x_prog * (PI_f64*2.0)).cos() * radius ) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e4.rs:10:70 [INFO] [stderr] | [INFO] [stderr] 10 | create_world, BufferType, Material, PerspectiveCamera, PointLight, ShaderProgram, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e4.rs:192:85 [INFO] [stderr] | [INFO] [stderr] 192 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e8.rs:10:3 [INFO] [stderr] | [INFO] [stderr] 10 | ShaderProgram, ShaderTag, SharedFrameBuffer, SharedGeometry, SharedMaterials, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e8.rs:314:85 [INFO] [stderr] | [INFO] [stderr] 314 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e7.rs:10:3 [INFO] [stderr] | [INFO] [stderr] 10 | ShaderProgram, ShaderTag, SharedGeometry, SharedMaterials, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e7.rs:232:85 [INFO] [stderr] | [INFO] [stderr] 232 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `project` (example "e6") generated 1 warning [INFO] [stderr] warning: `project` (example "e5") generated 2 warnings (run `cargo fix --example "e5"` to apply 1 suggestion) [INFO] [stderr] warning: `project` (example "e2") generated 2 warnings (run `cargo fix --example "e2"` to apply 1 suggestion) [INFO] [stderr] warning: `project` (example "e3") generated 2 warnings (run `cargo fix --example "e3"` to apply 1 suggestion) [INFO] [stderr] warning: `project` (example "e4") generated 2 warnings (run `cargo fix --example "e4"` to apply 1 suggestion) [INFO] [stderr] warning: `project` (example "e8") generated 2 warnings (run `cargo fix --example "e8"` to apply 1 suggestion) [INFO] [stderr] warning: `project` (example "e7") generated 2 warnings (run `cargo fix --example "e7"` to apply 1 suggestion) [INFO] [stderr] warning: found module declaration for lib.rs [INFO] [stderr] --> resource-manager/main.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | mod lib; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: lib.rs is the root of this crate's library target [INFO] [stderr] = help: to refer to it from other targets, use the library's name as the path [INFO] [stderr] = note: `#[warn(special_module_name)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> resource-manager/lib.rs:22:10 [INFO] [stderr] | [INFO] [stderr] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `names` and `prod` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> resource-manager/lib.rs:22:21 [INFO] [stderr] | [INFO] [stderr] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `names` and `prod` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> resource-manager/lib.rs:29:10 [INFO] [stderr] | [INFO] [stderr] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `names` and `prod` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> resource-manager/lib.rs:29:21 [INFO] [stderr] | [INFO] [stderr] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `names` and `prod` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> resource-manager/lib.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `names` and `prod` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> resource-manager/lib.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `names` and `prod` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `#[macro_use]` only has an effect on `extern crate` and modules [INFO] [stderr] --> resource-manager/main.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct `ResourceManager` is never constructed [INFO] [stderr] --> resource-manager/lib.rs:43:12 [INFO] [stderr] | [INFO] [stderr] 43 | pub struct ResourceManager { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ResourceManager` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `name_str` is never used [INFO] [stderr] --> resource-manager/lib.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 49 | impl Resource { [INFO] [stderr] | ------------- method in this implementation [INFO] [stderr] 50 | pub fn name_str(&self) -> String { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> resource-manager/lib.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 55 | impl ResourceManager { [INFO] [stderr] | -------------------- associated items in this implementation [INFO] [stderr] 56 | pub fn parse_package_list(data: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | pub fn set_package_list(&mut self, package_list: PackageList) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 65 | pub fn load_package_list(&mut self, path: &PathBuf) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 74 | pub fn set_package_list_from_str(&mut self, data: &str) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 80 | pub fn get_package_list(&self) -> Result<&PackageList, String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 84 | pub fn clear(&mut self) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 90 | pub fn add_package_data(&mut self, data: &[u8], name: &str) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 131 | pub fn get_resource_data(&self, name: &str) -> Option<&Vec> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 135 | pub fn remove_package(&mut self, name: &str) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 157 | pub fn load_package_from_disk(&mut self, name: &str) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 185 | pub fn load_all_packages(&mut self) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 201 | pub fn load_all(&mut self, path: &PathBuf) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | fn get_package_list_mut(&mut self) -> Result<&mut PackageList, String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> resource-manager/lib.rs:22:10 [INFO] [stderr] | [INFO] [stderr] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Resource` [INFO] [stderr] 23 | pub struct Resource { [INFO] [stderr] | -------- `Resource` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> resource-manager/lib.rs:22:21 [INFO] [stderr] | [INFO] [stderr] 22 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Resource` [INFO] [stderr] 23 | pub struct Resource { [INFO] [stderr] | -------- `Resource` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> resource-manager/lib.rs:29:10 [INFO] [stderr] | [INFO] [stderr] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Package` [INFO] [stderr] 30 | pub struct Package { [INFO] [stderr] | ------- `Package` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> resource-manager/lib.rs:29:21 [INFO] [stderr] | [INFO] [stderr] 29 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Package` [INFO] [stderr] 30 | pub struct Package { [INFO] [stderr] | ------- `Package` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> resource-manager/lib.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PackageList` [INFO] [stderr] 38 | pub struct PackageList { [INFO] [stderr] | ----------- `PackageList` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> resource-manager/lib.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PackageList` [INFO] [stderr] 38 | pub struct PackageList { [INFO] [stderr] | ----------- `PackageList` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Path::join` that must be used [INFO] [stderr] --> resource-manager/lib.rs:174:4 [INFO] [stderr] | [INFO] [stderr] 174 | path.join(&res.path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 174 | let _ = path.join(&res.path); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ShaderProgram` [INFO] [stderr] --> examples/e1.rs:6:63 [INFO] [stderr] | [INFO] [stderr] 6 | create_world, EntityRelations, Material, PerspectiveCamera, ShaderProgram, SharedGeometry, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> examples/e1.rs:244:85 [INFO] [stderr] | [INFO] [stderr] 244 | transform_camera.position.x = ((x_prog * (PI_f64 * 2.0)).cos() * radius) as f32;; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `project` (bin "resource-manager" test) generated 18 warnings [INFO] [stderr] warning: `project` (example "e1") generated 2 warnings (run `cargo fix --example "e1"` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 0.38s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/project-893005a0b32e0a12) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests resource-manager/main.rs (/opt/rustwide/target/debug/deps/resource_manager-f02b58fe477cd709) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests project [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/core/texture.rs:108:49 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 108 - pub fn load(&mut self) -> Result<&TextureData, (String)> { [INFO] [stderr] 108 + pub fn load(&mut self) -> Result<&TextureData, String> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "132cdcd6ec9478bb6db191f967eb8204d018091cc9251894dd3d6bc68a2cde06", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "132cdcd6ec9478bb6db191f967eb8204d018091cc9251894dd3d6bc68a2cde06", kill_on_drop: false }` [INFO] [stdout] 132cdcd6ec9478bb6db191f967eb8204d018091cc9251894dd3d6bc68a2cde06