[INFO] cloning repository https://github.com/adihodos/space_invaders
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/adihodos/space_invaders" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadihodos%2Fspace_invaders", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadihodos%2Fspace_invaders'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 81f1a0ab9229f8e70af46b772ab0d55d75fdeae2
[INFO] testing adihodos/space_invaders against try#bd7d74411512a3dd3b35d2f699c51dd2557c7e7e+cargoflags=-Zbuild-dir-new-layout for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadihodos%2Fspace_invaders" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config
[INFO] started tweaking git repo https://github.com/adihodos/space_invaders
[INFO] finished tweaking git repo https://github.com/adihodos/space_invaders
[INFO] tweaked toml for git repo https://github.com/adihodos/space_invaders written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/adihodos/space_invaders on toolchain bd7d74411512a3dd3b35d2f699c51dd2557c7e7e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/adihodos/space_invaders 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" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cf1986194bd76405ea72b6d866388b0920edf77416002d18a4cc25c87d8b1f65
[INFO] running `Command { std: "docker" "start" "-a" "cf1986194bd76405ea72b6d866388b0920edf77416002d18a4cc25c87d8b1f65", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cf1986194bd76405ea72b6d866388b0920edf77416002d18a4cc25c87d8b1f65", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf1986194bd76405ea72b6d866388b0920edf77416002d18a4cc25c87d8b1f65", kill_on_drop: false }`
[INFO] [stdout] cf1986194bd76405ea72b6d866388b0920edf77416002d18a4cc25c87d8b1f65
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "build" "--frozen" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 93fe8e2375def170d1caed3c26f83639f60741e9a336b98d887ef3cd1935e2ed
[INFO] running `Command { std: "docker" "start" "-a" "93fe8e2375def170d1caed3c26f83639f60741e9a336b98d887ef3cd1935e2ed", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v0.1.4
[INFO] [stderr]    Compiling cc v1.0.37
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling libc v0.2.58
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling cfg-if v0.1.9
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling num-iter v0.1.39
[INFO] [stderr]    Compiling syn v0.15.39
[INFO] [stderr]    Compiling num-bigint v0.2.2
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling cmake v0.1.40
[INFO] [stderr]    Compiling freetype-sys v0.7.1
[INFO] [stderr]    Compiling num-rational v0.2.2
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]    Compiling num-complex v0.2.3
[INFO] [stderr]    Compiling adler32 v1.0.3
[INFO] [stderr]    Compiling libz-sys v1.0.25
[INFO] [stderr]    Compiling glfw-sys v3.3.0
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]    Compiling nom v1.2.4
[INFO] [stderr]    Compiling gl v0.10.0
[INFO] [stderr]    Compiling deflate v0.7.20
[INFO] [stderr]    Compiling simple_ui v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling semver v0.2.3
[INFO] [stderr]    Compiling inflate v0.4.5
[INFO] [stderr]    Compiling murmurhash64 v0.3.1
[INFO] [stderr]    Compiling enumflags2 v0.5.2
[INFO] [stderr]    Compiling png v0.14.1
[INFO] [stderr]    Compiling num v0.2.0
[INFO] [stderr]    Compiling enumflags2_derive v0.5.0
[INFO] [stderr]    Compiling glfw v0.29.0
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/hmi/input.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                              ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (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]  --> src/hmi/input.rs:4:45
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                             ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (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]   --> src/hmi/input.rs:41:30
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (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]   --> src/hmi/input.rs:41:45
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (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]   --> src/hmi/panel.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (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]   --> src/hmi/panel.rs:63:60
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (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]   --> src/hmi/style.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (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]   --> src/hmi/style.rs:15:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (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]    --> src/hmi/style.rs:354:30
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `FromPrimitive` (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]    --> src/hmi/style.rs:354:45
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `R32G32B32A32_Float` should have an upper camel case name
[INFO] [stdout]    --> src/hmi/base.rs:170:3
[INFO] [stdout]     |
[INFO] [stdout] 170 |   R32G32B32A32_Float,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `R32g32b32a32Float`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `R32G32B32A32_Double` should have an upper camel case name
[INFO] [stdout]    --> src/hmi/base.rs:171:3
[INFO] [stdout]     |
[INFO] [stdout] 171 |   R32G32B32A32_Double,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `R32g32b32a32Double`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WidgetLayoutStates` and `utility::clamp`
[INFO] [stdout]   --> src/hmi/button.rs:5:7
[INFO] [stdout]    |
[INFO] [stdout]  5 |       WidgetLayoutStates, WidgetStates,
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     colors::RGBAColor, rectangle::RectangleF32, utility::clamp, vec2::Vec2F32,
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `VERTEX_BUFFER_OUTPUT`
[INFO] [stdout]    --> src/hmi/commands.rs:672:7
[INFO] [stdout]     |
[INFO] [stdout] 672 | #[cfg(feature = "VERTEX_BUFFER_OUTPUT")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `VERTEX_BUFFER_OUTPUT` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `colors::RGBAColor`, `commands::CommandBuffer`, `ui_context::WindowPtr`, and `window::Window`
[INFO] [stdout]  --> src/hmi/image.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 |     base::GenericHandle, commands::CommandBuffer, ui_context::WindowPtr,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     window::Window,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |   },
[INFO] [stdout] 6 |   math::{colors::RGBAColor, rectangle::RectangleF32},
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cursor::Cursor`
[INFO] [stdout]  --> src/hmi/style.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     cursor::Cursor,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ButtonBehaviour`, `Heading`, `Input`, `MouseButtonId`, `StyleItem`, `SymbolType`, `WidgetLayoutStates`, `WidgetStates`, and `utility::clamp`
[INFO] [stdout]   --> src/hmi/text.rs:4:7
[INFO] [stdout]    |
[INFO] [stdout]  4 |       ButtonBehaviour, Heading, TextAlign, WidgetLayoutStates, WidgetStates,
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^  ^^^^^^^             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  7 |     input::{Input, MouseButtonId},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]  8 |     style::{Style, StyleItem, SymbolType},
[INFO] [stdout]    |                    ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     colors::RGBAColor, rectangle::RectangleF32, utility::clamp, vec2::Vec2F32,
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hmi::progress::do_progress`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1600:9
[INFO] [stdout]      |
[INFO] [stdout] 1600 |     use crate::hmi::progress::do_progress;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HslColor`, `RGBAColor`, `Vec2I16`, and `XyzColor`
[INFO] [stdout]   --> src/main.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  9 |   colors::{HslColor, HsvColor, RGBAColor, RGBAColorF32, XyzColor},
[INFO] [stdout]    |            ^^^^^^^^            ^^^^^^^^^                ^^^^^^^^
[INFO] [stdout] 10 |   rectangle::RectangleF32,
[INFO] [stdout] 11 |   vec2::{Vec2F32, Vec2I16},
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawList`, `FontAtlas`, `FontConfig`, `Font`, `TextAlign`, `style::SymbolType`, and `sys::memory_mapped_file::MemoryMappedFile`
[INFO] [stdout]   --> src/main.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 |       TextAlign,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     style::SymbolType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     text_engine::{
[INFO] [stdout] 24 |       Font, FontAtlas, FontAtlasBuilder, FontConfig, FontConfigBuilder,
[INFO] [stdout]    |       ^^^^  ^^^^^^^^^                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     vertex_output::{DrawCommand, DrawIndexType, DrawList},
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |   sys::memory_mapped_file::MemoryMappedFile,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cur`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1594:5
[INFO] [stdout]      |
[INFO] [stdout] 1594 |     cur: u32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cur`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1595:5
[INFO] [stdout]      |
[INFO] [stdout] 1595 |     max: u32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiable`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1596:5
[INFO] [stdout]      |
[INFO] [stdout] 1596 |     modifiable: bool,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hmi/window.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let mut buf = &mut self.popup.buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hmi/window.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |     let mut buf = &mut self.popup.buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font_atlas`
[INFO] [stdout]   --> src/main.rs:88:7
[INFO] [stdout]    |
[INFO] [stdout] 88 |   let font_atlas = FontAtlasBuilder::new(300)
[INFO] [stdout]    |       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_atlas`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font_atlas`
[INFO] [stdout]    --> src/main.rs:235:7
[INFO] [stdout]     |
[INFO] [stdout] 235 |   let font_atlas = FontAtlasBuilder::new(300)
[INFO] [stdout]     |       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_atlas`
[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]  --> src/hmi/input.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                              ^------------
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              `FromPrimitive` is not local
[INFO] [stdout]   |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_KeyId`
[INFO] [stdout] 5 | pub enum KeyId {
[INFO] [stdout]   |          ----- `KeyId` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]  --> src/hmi/input.rs:4:45
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                             ^----------
[INFO] [stdout]   |                                             |
[INFO] [stdout]   |                                             `ToPrimitive` is not local
[INFO] [stdout]   |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_KeyId`
[INFO] [stdout] 5 | pub enum KeyId {
[INFO] [stdout]   |          ----- `KeyId` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/input.rs:41:30
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_MouseButtonId`
[INFO] [stdout] 42 | pub enum MouseButtonId {
[INFO] [stdout]    |          ------------- `MouseButtonId` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/input.rs:41:45
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                             ^----------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `ToPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_MouseButtonId`
[INFO] [stdout] 42 | pub enum MouseButtonId {
[INFO] [stdout]    |          ------------- `MouseButtonId` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/panel.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                             ^------------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `FromPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PanelFlags`
[INFO] [stdout] ...
[INFO] [stdout] 66 | pub enum PanelFlags {
[INFO] [stdout]    |          ---------- `PanelFlags` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/panel.rs:63:60
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                                            ^----------
[INFO] [stdout]    |                                                            |
[INFO] [stdout]    |                                                            `ToPrimitive` is not local
[INFO] [stdout]    |                                                            move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PanelFlags`
[INFO] [stdout] ...
[INFO] [stdout] 66 | pub enum PanelFlags {
[INFO] [stdout]    |          ---------- `PanelFlags` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/style.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SymbolType`
[INFO] [stdout] 16 | pub enum SymbolType {
[INFO] [stdout]    |          ---------- `SymbolType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/style.rs:15:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                                             ^----------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `ToPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SymbolType`
[INFO] [stdout] 16 | pub enum SymbolType {
[INFO] [stdout]    |          ---------- `SymbolType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]    --> src/hmi/style.rs:354:30
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StyleHeaderAlign`
[INFO] [stdout] 355 | pub enum StyleHeaderAlign {
[INFO] [stdout]     |          ---------------- `StyleHeaderAlign` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]    --> src/hmi/style.rs:354:45
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                                             ^----------
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `ToPrimitive` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StyleHeaderAlign`
[INFO] [stdout] 355 | pub enum StyleHeaderAlign {
[INFO] [stdout]     |          ---------------- `StyleHeaderAlign` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `freetype_sys::FT_Raster_Params` does not permit zero-initialization
[INFO] [stdout]   --> src/hmi/text_engine.rs:68:31
[INFO] [stdout]    |
[INFO] [stdout] 68 |       let mut raster_params = std::mem::zeroed::<FT_Raster_Params>();
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               this code causes undefined behavior when executed
[INFO] [stdout]    |                               help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: function pointers must be non-null
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/ui_context.rs:149:20
[INFO] [stdout]     |
[INFO] [stdout] 149 |   pub fn input_mut(&self) -> std::cell::RefMut<Input> {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 149 |   pub fn input_mut(&self) -> std::cell::RefMut<'_, Input> {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/ui_context.rs:153:16
[INFO] [stdout]     |
[INFO] [stdout] 153 |   pub fn input(&self) -> std::cell::Ref<Input> {
[INFO] [stdout]     |                ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 153 |   pub fn input(&self) -> std::cell::Ref<'_, Input> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/ui_context.rs:272:24
[INFO] [stdout]     |
[INFO] [stdout] 272 |   pub fn commands_iter(&mut self) -> CommandsIterator {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 272 |   pub fn commands_iter(&mut self) -> CommandsIterator<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 |       .into_iter()
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 202 -       .into_iter()
[INFO] [stdout] 202 +       .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 196 ~       IntoIterator::into_iter([
[INFO] [stdout] 197 |         Vec2F32::new(dy, -dx) + p1,
[INFO] [stdout] ...
[INFO] [stdout] 200 |         Vec2F32::new(-dy, dx) + p1,
[INFO] [stdout] 201 ~       ])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:207:26
[INFO] [stdout]     |
[INFO] [stdout] 207 |       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 207 -       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 207 +       [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 207 -       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 207 +       IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:535:6
[INFO] [stdout]     |
[INFO] [stdout] 535 |     .into_iter()
[INFO] [stdout]     |      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 535 -     .into_iter()
[INFO] [stdout] 535 +     .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 529 ~     IntoIterator::into_iter([
[INFO] [stdout] 530 |       (Vec2F32::new(rect.x, rect.y), col_left),
[INFO] [stdout] ...
[INFO] [stdout] 533 |       (Vec2F32::new(rect.x, rect.y + rect.h), col_bottom),
[INFO] [stdout] 534 ~     ])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:542:24
[INFO] [stdout]     |
[INFO] [stdout] 542 |     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 542 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 542 +     [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 542 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 542 +     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:671:8
[INFO] [stdout]     |
[INFO] [stdout] 671 |       .into_iter()
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 671 -       .into_iter()
[INFO] [stdout] 671 +       .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 670 -     [(a, uva), (b, uvb), (c, uvc), (d, uvd)]
[INFO] [stdout] 671 -       .into_iter()
[INFO] [stdout] 670 +     IntoIterator::into_iter([(a, uva), (b, uvb), (c, uvc), (d, uvd)])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:676:24
[INFO] [stdout]     |
[INFO] [stdout] 676 |     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 676 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 676 +     [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 676 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 676 +     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/window.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn buffer_mut(&self) -> std::cell::RefMut<CommandBuffer> {
[INFO] [stdout]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn buffer_mut(&self) -> std::cell::RefMut<'_, CommandBuffer> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.86s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v1.2.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "93fe8e2375def170d1caed3c26f83639f60741e9a336b98d887ef3cd1935e2ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "93fe8e2375def170d1caed3c26f83639f60741e9a336b98d887ef3cd1935e2ed", kill_on_drop: false }`
[INFO] [stdout] 93fe8e2375def170d1caed3c26f83639f60741e9a336b98d887ef3cd1935e2ed
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "--no-run" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] b94232fa0cfafc0b01e8f7c6f0bddb7b06622d48ab11cefac45287aad562ebc4
[INFO] running `Command { std: "docker" "start" "-a" "b94232fa0cfafc0b01e8f7c6f0bddb7b06622d48ab11cefac45287aad562ebc4", kill_on_drop: false }`
[INFO] [stderr]    Compiling simple_ui v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/hmi/input.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                              ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (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]  --> src/hmi/input.rs:4:45
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                             ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (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]   --> src/hmi/input.rs:41:30
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (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]   --> src/hmi/input.rs:41:45
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (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]   --> src/hmi/panel.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (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]   --> src/hmi/panel.rs:63:60
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (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]   --> src/hmi/style.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (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]   --> src/hmi/style.rs:15:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (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]    --> src/hmi/style.rs:354:30
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `FromPrimitive` (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]    --> src/hmi/style.rs:354:45
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                                             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `R32G32B32A32_Float` should have an upper camel case name
[INFO] [stdout]    --> src/hmi/base.rs:170:3
[INFO] [stdout]     |
[INFO] [stdout] 170 |   R32G32B32A32_Float,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `R32g32b32a32Float`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `R32G32B32A32_Double` should have an upper camel case name
[INFO] [stdout]    --> src/hmi/base.rs:171:3
[INFO] [stdout]     |
[INFO] [stdout] 171 |   R32G32B32A32_Double,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `R32g32b32a32Double`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WidgetLayoutStates` and `utility::clamp`
[INFO] [stdout]   --> src/hmi/button.rs:5:7
[INFO] [stdout]    |
[INFO] [stdout]  5 |       WidgetLayoutStates, WidgetStates,
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     colors::RGBAColor, rectangle::RectangleF32, utility::clamp, vec2::Vec2F32,
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `VERTEX_BUFFER_OUTPUT`
[INFO] [stdout]    --> src/hmi/commands.rs:672:7
[INFO] [stdout]     |
[INFO] [stdout] 672 | #[cfg(feature = "VERTEX_BUFFER_OUTPUT")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `VERTEX_BUFFER_OUTPUT` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `colors::RGBAColor`, `commands::CommandBuffer`, `ui_context::WindowPtr`, and `window::Window`
[INFO] [stdout]  --> src/hmi/image.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 |     base::GenericHandle, commands::CommandBuffer, ui_context::WindowPtr,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     window::Window,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |   },
[INFO] [stdout] 6 |   math::{colors::RGBAColor, rectangle::RectangleF32},
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cursor::Cursor`
[INFO] [stdout]  --> src/hmi/style.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     cursor::Cursor,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ButtonBehaviour`, `Heading`, `Input`, `MouseButtonId`, `StyleItem`, `SymbolType`, `WidgetLayoutStates`, `WidgetStates`, and `utility::clamp`
[INFO] [stdout]   --> src/hmi/text.rs:4:7
[INFO] [stdout]    |
[INFO] [stdout]  4 |       ButtonBehaviour, Heading, TextAlign, WidgetLayoutStates, WidgetStates,
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^  ^^^^^^^             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  7 |     input::{Input, MouseButtonId},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]  8 |     style::{Style, StyleItem, SymbolType},
[INFO] [stdout]    |                    ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     colors::RGBAColor, rectangle::RectangleF32, utility::clamp, vec2::Vec2F32,
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hmi::progress::do_progress`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1600:9
[INFO] [stdout]      |
[INFO] [stdout] 1600 |     use crate::hmi::progress::do_progress;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HslColor`, `RGBAColor`, `Vec2I16`, and `XyzColor`
[INFO] [stdout]   --> src/main.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  9 |   colors::{HslColor, HsvColor, RGBAColor, RGBAColorF32, XyzColor},
[INFO] [stdout]    |            ^^^^^^^^            ^^^^^^^^^                ^^^^^^^^
[INFO] [stdout] 10 |   rectangle::RectangleF32,
[INFO] [stdout] 11 |   vec2::{Vec2F32, Vec2I16},
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawList`, `FontAtlas`, `FontConfig`, `Font`, `TextAlign`, `style::SymbolType`, and `sys::memory_mapped_file::MemoryMappedFile`
[INFO] [stdout]   --> src/main.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 |       TextAlign,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     style::SymbolType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     text_engine::{
[INFO] [stdout] 24 |       Font, FontAtlas, FontAtlasBuilder, FontConfig, FontConfigBuilder,
[INFO] [stdout]    |       ^^^^  ^^^^^^^^^                    ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     vertex_output::{DrawCommand, DrawIndexType, DrawList},
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |   sys::memory_mapped_file::MemoryMappedFile,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hmi/buffer.rs:158:11
[INFO] [stdout]     |
[INFO] [stdout] 158 |       let mut new_slice = dyb.alloc_elements(5);
[INFO] [stdout]     |           ----^^^^^^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hmi/buffer.rs:207:11
[INFO] [stdout]     |
[INFO] [stdout] 207 |       let mut new_slice = fixb.alloc_elements(4);
[INFO] [stdout]     |           ----^^^^^^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cur`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1594:5
[INFO] [stdout]      |
[INFO] [stdout] 1594 |     cur: u32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cur`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1595:5
[INFO] [stdout]      |
[INFO] [stdout] 1595 |     max: u32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiable`
[INFO] [stdout]     --> src/hmi/ui_context.rs:1596:5
[INFO] [stdout]      |
[INFO] [stdout] 1596 |     modifiable: bool,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hmi/window.rs:216:9
[INFO] [stdout]     |
[INFO] [stdout] 216 |     let mut buf = &mut self.popup.buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hmi/window.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |     let mut buf = &mut self.popup.buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font_atlas`
[INFO] [stdout]   --> src/main.rs:88:7
[INFO] [stdout]    |
[INFO] [stdout] 88 |   let font_atlas = FontAtlasBuilder::new(300)
[INFO] [stdout]    |       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_atlas`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font_atlas`
[INFO] [stdout]    --> src/main.rs:235:7
[INFO] [stdout]     |
[INFO] [stdout] 235 |   let font_atlas = FontAtlasBuilder::new(300)
[INFO] [stdout]     |       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_atlas`
[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]  --> src/hmi/input.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                              ^------------
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              `FromPrimitive` is not local
[INFO] [stdout]   |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_KeyId`
[INFO] [stdout] 5 | pub enum KeyId {
[INFO] [stdout]   |          ----- `KeyId` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]  --> src/hmi/input.rs:4:45
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                             ^----------
[INFO] [stdout]   |                                             |
[INFO] [stdout]   |                                             `ToPrimitive` is not local
[INFO] [stdout]   |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_KeyId`
[INFO] [stdout] 5 | pub enum KeyId {
[INFO] [stdout]   |          ----- `KeyId` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/input.rs:41:30
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_MouseButtonId`
[INFO] [stdout] 42 | pub enum MouseButtonId {
[INFO] [stdout]    |          ------------- `MouseButtonId` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/input.rs:41:45
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                             ^----------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `ToPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_MouseButtonId`
[INFO] [stdout] 42 | pub enum MouseButtonId {
[INFO] [stdout]    |          ------------- `MouseButtonId` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/panel.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                             ^------------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `FromPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PanelFlags`
[INFO] [stdout] ...
[INFO] [stdout] 66 | pub enum PanelFlags {
[INFO] [stdout]    |          ---------- `PanelFlags` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/panel.rs:63:60
[INFO] [stdout]    |
[INFO] [stdout] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stdout]    |                                                            ^----------
[INFO] [stdout]    |                                                            |
[INFO] [stdout]    |                                                            `ToPrimitive` is not local
[INFO] [stdout]    |                                                            move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PanelFlags`
[INFO] [stdout] ...
[INFO] [stdout] 66 | pub enum PanelFlags {
[INFO] [stdout]    |          ---------- `PanelFlags` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/style.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SymbolType`
[INFO] [stdout] 16 | pub enum SymbolType {
[INFO] [stdout]    |          ---------- `SymbolType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/style.rs:15:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]    |                                             ^----------
[INFO] [stdout]    |                                             |
[INFO] [stdout]    |                                             `ToPrimitive` is not local
[INFO] [stdout]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SymbolType`
[INFO] [stdout] 16 | pub enum SymbolType {
[INFO] [stdout]    |          ---------- `SymbolType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]    --> src/hmi/style.rs:354:30
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StyleHeaderAlign`
[INFO] [stdout] 355 | pub enum StyleHeaderAlign {
[INFO] [stdout]     |          ---------------- `StyleHeaderAlign` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]    --> src/hmi/style.rs:354:45
[INFO] [stdout]     |
[INFO] [stdout] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stdout]     |                                             ^----------
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `ToPrimitive` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StyleHeaderAlign`
[INFO] [stdout] 355 | pub enum StyleHeaderAlign {
[INFO] [stdout]     |          ---------------- `StyleHeaderAlign` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `freetype_sys::FT_Raster_Params` does not permit zero-initialization
[INFO] [stdout]   --> src/hmi/text_engine.rs:68:31
[INFO] [stdout]    |
[INFO] [stdout] 68 |       let mut raster_params = std::mem::zeroed::<FT_Raster_Params>();
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               this code causes undefined behavior when executed
[INFO] [stdout]    |                               help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: function pointers must be non-null
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/ui_context.rs:149:20
[INFO] [stdout]     |
[INFO] [stdout] 149 |   pub fn input_mut(&self) -> std::cell::RefMut<Input> {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 149 |   pub fn input_mut(&self) -> std::cell::RefMut<'_, Input> {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/ui_context.rs:153:16
[INFO] [stdout]     |
[INFO] [stdout] 153 |   pub fn input(&self) -> std::cell::Ref<Input> {
[INFO] [stdout]     |                ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 153 |   pub fn input(&self) -> std::cell::Ref<'_, Input> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/ui_context.rs:272:24
[INFO] [stdout]     |
[INFO] [stdout] 272 |   pub fn commands_iter(&mut self) -> CommandsIterator {
[INFO] [stdout]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 272 |   pub fn commands_iter(&mut self) -> CommandsIterator<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 |       .into_iter()
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 202 -       .into_iter()
[INFO] [stdout] 202 +       .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 196 ~       IntoIterator::into_iter([
[INFO] [stdout] 197 |         Vec2F32::new(dy, -dx) + p1,
[INFO] [stdout] ...
[INFO] [stdout] 200 |         Vec2F32::new(-dy, dx) + p1,
[INFO] [stdout] 201 ~       ])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:207:26
[INFO] [stdout]     |
[INFO] [stdout] 207 |       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 207 -       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 207 +       [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 207 -       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 207 +       IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:535:6
[INFO] [stdout]     |
[INFO] [stdout] 535 |     .into_iter()
[INFO] [stdout]     |      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 535 -     .into_iter()
[INFO] [stdout] 535 +     .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 529 ~     IntoIterator::into_iter([
[INFO] [stdout] 530 |       (Vec2F32::new(rect.x, rect.y), col_left),
[INFO] [stdout] ...
[INFO] [stdout] 533 |       (Vec2F32::new(rect.x, rect.y + rect.h), col_bottom),
[INFO] [stdout] 534 ~     ])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:542:24
[INFO] [stdout]     |
[INFO] [stdout] 542 |     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 542 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 542 +     [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 542 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 542 +     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:671:8
[INFO] [stdout]     |
[INFO] [stdout] 671 |       .into_iter()
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 671 -       .into_iter()
[INFO] [stdout] 671 +       .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 670 -     [(a, uva), (b, uvb), (c, uvc), (d, uvd)]
[INFO] [stdout] 671 -       .into_iter()
[INFO] [stdout] 670 +     IntoIterator::into_iter([(a, uva), (b, uvb), (c, uvc), (d, uvd)])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/hmi/vertex_output.rs:676:24
[INFO] [stdout]     |
[INFO] [stdout] 676 |     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 676 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 676 +     [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 676 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stdout] 676 +     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hmi/window.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn buffer_mut(&self) -> std::cell::RefMut<CommandBuffer> {
[INFO] [stdout]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |   pub fn buffer_mut(&self) -> std::cell::RefMut<'_, CommandBuffer> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.63s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v1.2.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "b94232fa0cfafc0b01e8f7c6f0bddb7b06622d48ab11cefac45287aad562ebc4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b94232fa0cfafc0b01e8f7c6f0bddb7b06622d48ab11cefac45287aad562ebc4", kill_on_drop: false }`
[INFO] [stdout] b94232fa0cfafc0b01e8f7c6f0bddb7b06622d48ab11cefac45287aad562ebc4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 24afc9a148dd890bda2ca94f8a4d4f86234640e225495160233045bdbb454885
[INFO] running `Command { std: "docker" "start" "-a" "24afc9a148dd890bda2ca94f8a4d4f86234640e225495160233045bdbb454885", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]  --> src/hmi/input.rs:4:30
[INFO] [stderr]   |
[INFO] [stderr] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                              ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]   = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]  --> src/hmi/input.rs:4:45
[INFO] [stderr]   |
[INFO] [stderr] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                                             ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]   = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/hmi/input.rs:41:30
[INFO] [stderr]    |
[INFO] [stderr] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                              ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/hmi/input.rs:41:45
[INFO] [stderr]    |
[INFO] [stderr] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                             ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/hmi/panel.rs:63:45
[INFO] [stderr]    |
[INFO] [stderr] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/hmi/panel.rs:63:60
[INFO] [stderr]    |
[INFO] [stderr] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stderr]    |                                                            ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/hmi/style.rs:15:30
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]    |                              ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/hmi/style.rs:15:45
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]    |                                             ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]    = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]    --> src/hmi/style.rs:354:30
[INFO] [stderr]     |
[INFO] [stderr] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]     |                              ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: no expected values for `feature`
[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 `FromPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]     = help: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]    --> src/hmi/style.rs:354:45
[INFO] [stderr]     |
[INFO] [stderr] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]     |                                             ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: no expected values for `feature`
[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 `ToPrimitive` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]     = help: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variant `R32G32B32A32_Float` should have an upper camel case name
[INFO] [stderr]    --> src/hmi/base.rs:170:3
[INFO] [stderr]     |
[INFO] [stderr] 170 |   R32G32B32A32_Float,
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `R32g32b32a32Float`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `R32G32B32A32_Double` should have an upper camel case name
[INFO] [stderr]    --> src/hmi/base.rs:171:3
[INFO] [stderr]     |
[INFO] [stderr] 171 |   R32G32B32A32_Double,
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `R32g32b32a32Double`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `WidgetLayoutStates` and `utility::clamp`
[INFO] [stderr]   --> src/hmi/button.rs:5:7
[INFO] [stderr]    |
[INFO] [stderr]  5 |       WidgetLayoutStates, WidgetStates,
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     colors::RGBAColor, rectangle::RectangleF32, utility::clamp, vec2::Vec2F32,
[INFO] [stderr]    |                                                 ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `VERTEX_BUFFER_OUTPUT`
[INFO] [stderr]    --> src/hmi/commands.rs:672:7
[INFO] [stderr]     |
[INFO] [stderr] 672 | #[cfg(feature = "VERTEX_BUFFER_OUTPUT")]
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]     |
[INFO] [stderr]     = note: no expected values for `feature`
[INFO] [stderr]     = help: consider adding `VERTEX_BUFFER_OUTPUT` as a feature in `Cargo.toml`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `colors::RGBAColor`, `commands::CommandBuffer`, `ui_context::WindowPtr`, and `window::Window`
[INFO] [stderr]  --> src/hmi/image.rs:3:26
[INFO] [stderr]   |
[INFO] [stderr] 3 |     base::GenericHandle, commands::CommandBuffer, ui_context::WindowPtr,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 4 |     window::Window,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 5 |   },
[INFO] [stderr] 6 |   math::{colors::RGBAColor, rectangle::RectangleF32},
[INFO] [stderr]   |          ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `cursor::Cursor`
[INFO] [stderr]  --> src/hmi/style.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     cursor::Cursor,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ButtonBehaviour`, `Heading`, `Input`, `MouseButtonId`, `StyleItem`, `SymbolType`, `WidgetLayoutStates`, `WidgetStates`, and `utility::clamp`
[INFO] [stderr]   --> src/hmi/text.rs:4:7
[INFO] [stderr]    |
[INFO] [stderr]  4 |       ButtonBehaviour, Heading, TextAlign, WidgetLayoutStates, WidgetStates,
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^  ^^^^^^^             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  7 |     input::{Input, MouseButtonId},
[INFO] [stderr]    |             ^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr]  8 |     style::{Style, StyleItem, SymbolType},
[INFO] [stderr]    |                    ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 13 |     colors::RGBAColor, rectangle::RectangleF32, utility::clamp, vec2::Vec2F32,
[INFO] [stderr]    |                                                 ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::hmi::progress::do_progress`
[INFO] [stderr]     --> src/hmi/ui_context.rs:1600:9
[INFO] [stderr]      |
[INFO] [stderr] 1600 |     use crate::hmi::progress::do_progress;
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HslColor`, `RGBAColor`, `Vec2I16`, and `XyzColor`
[INFO] [stderr]   --> src/main.rs:9:12
[INFO] [stderr]    |
[INFO] [stderr]  9 |   colors::{HslColor, HsvColor, RGBAColor, RGBAColorF32, XyzColor},
[INFO] [stderr]    |            ^^^^^^^^            ^^^^^^^^^                ^^^^^^^^
[INFO] [stderr] 10 |   rectangle::RectangleF32,
[INFO] [stderr] 11 |   vec2::{Vec2F32, Vec2I16},
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DrawList`, `FontAtlas`, `FontConfig`, `Font`, `TextAlign`, `style::SymbolType`, and `sys::memory_mapped_file::MemoryMappedFile`
[INFO] [stderr]   --> src/main.rs:19:7
[INFO] [stderr]    |
[INFO] [stderr] 19 |       TextAlign,
[INFO] [stderr]    |       ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     style::SymbolType,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 23 |     text_engine::{
[INFO] [stderr] 24 |       Font, FontAtlas, FontAtlasBuilder, FontConfig, FontConfigBuilder,
[INFO] [stderr]    |       ^^^^  ^^^^^^^^^                    ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     vertex_output::{DrawCommand, DrawIndexType, DrawList},
[INFO] [stderr]    |                                                 ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 31 |   sys::memory_mapped_file::MemoryMappedFile,
[INFO] [stderr]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/hmi/buffer.rs:158:11
[INFO] [stderr]     |
[INFO] [stderr] 158 |       let mut new_slice = dyb.alloc_elements(5);
[INFO] [stderr]     |           ----^^^^^^^^^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/hmi/buffer.rs:207:11
[INFO] [stderr]     |
[INFO] [stderr] 207 |       let mut new_slice = fixb.alloc_elements(4);
[INFO] [stderr]     |           ----^^^^^^^^^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cur`
[INFO] [stderr]     --> src/hmi/ui_context.rs:1594:5
[INFO] [stderr]      |
[INFO] [stderr] 1594 |     cur: u32,
[INFO] [stderr]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cur`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `max`
[INFO] [stderr]     --> src/hmi/ui_context.rs:1595:5
[INFO] [stderr]      |
[INFO] [stderr] 1595 |     max: u32,
[INFO] [stderr]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_max`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `modifiable`
[INFO] [stderr]     --> src/hmi/ui_context.rs:1596:5
[INFO] [stderr]      |
[INFO] [stderr] 1596 |     modifiable: bool,
[INFO] [stderr]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiable`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/hmi/window.rs:216:9
[INFO] [stderr]     |
[INFO] [stderr] 216 |     let mut buf = &mut self.popup.buf;
[INFO] [stderr]     |         ----^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/hmi/window.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |     let mut buf = &mut self.popup.buf;
[INFO] [stderr]     |         ----^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `font_atlas`
[INFO] [stderr]   --> src/main.rs:88:7
[INFO] [stderr]    |
[INFO] [stderr] 88 |   let font_atlas = FontAtlasBuilder::new(300)
[INFO] [stderr]    |       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_atlas`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `font_atlas`
[INFO] [stderr]    --> src/main.rs:235:7
[INFO] [stderr]     |
[INFO] [stderr] 235 |   let font_atlas = FontAtlasBuilder::new(300)
[INFO] [stderr]     |       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_font_atlas`
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/hmi/input.rs:4:30
[INFO] [stderr]   |
[INFO] [stderr] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                              ^------------
[INFO] [stderr]   |                              |
[INFO] [stderr]   |                              `FromPrimitive` is not local
[INFO] [stderr]   |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_KeyId`
[INFO] [stderr] 5 | pub enum KeyId {
[INFO] [stderr]   |          ----- `KeyId` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]  --> src/hmi/input.rs:4:45
[INFO] [stderr]   |
[INFO] [stderr] 4 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                                             ^----------
[INFO] [stderr]   |                                             |
[INFO] [stderr]   |                                             `ToPrimitive` is not local
[INFO] [stderr]   |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_KeyId`
[INFO] [stderr] 5 | pub enum KeyId {
[INFO] [stderr]   |          ----- `KeyId` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/input.rs:41:30
[INFO] [stderr]    |
[INFO] [stderr] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                              ^------------
[INFO] [stderr]    |                              |
[INFO] [stderr]    |                              `FromPrimitive` is not local
[INFO] [stderr]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_MouseButtonId`
[INFO] [stderr] 42 | pub enum MouseButtonId {
[INFO] [stderr]    |          ------------- `MouseButtonId` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/input.rs:41:45
[INFO] [stderr]    |
[INFO] [stderr] 41 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                             ^----------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `ToPrimitive` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_MouseButtonId`
[INFO] [stderr] 42 | pub enum MouseButtonId {
[INFO] [stderr]    |          ------------- `MouseButtonId` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/panel.rs:63:45
[INFO] [stderr]    |
[INFO] [stderr] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stderr]    |                                             ^------------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `FromPrimitive` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PanelFlags`
[INFO] [stderr] ...
[INFO] [stderr] 66 | pub enum PanelFlags {
[INFO] [stderr]    |          ---------- `PanelFlags` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/panel.rs:63:60
[INFO] [stderr]    |
[INFO] [stderr] 63 |   EnumFlags, Copy, Clone, Debug, PartialEq, FromPrimitive, ToPrimitive,
[INFO] [stderr]    |                                                            ^----------
[INFO] [stderr]    |                                                            |
[INFO] [stderr]    |                                                            `ToPrimitive` is not local
[INFO] [stderr]    |                                                            move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PanelFlags`
[INFO] [stderr] ...
[INFO] [stderr] 66 | pub enum PanelFlags {
[INFO] [stderr]    |          ---------- `PanelFlags` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]   --> src/hmi/style.rs:15:30
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]    |                              ^------------
[INFO] [stderr]    |                              |
[INFO] [stderr]    |                              `FromPrimitive` is not local
[INFO] [stderr]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SymbolType`
[INFO] [stderr] 16 | pub enum SymbolType {
[INFO] [stderr]    |          ---------- `SymbolType` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]   --> src/hmi/style.rs:15:45
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]    |                                             ^----------
[INFO] [stderr]    |                                             |
[INFO] [stderr]    |                                             `ToPrimitive` is not local
[INFO] [stderr]    |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SymbolType`
[INFO] [stderr] 16 | pub enum SymbolType {
[INFO] [stderr]    |          ---------- `SymbolType` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (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]    --> src/hmi/style.rs:354:30
[INFO] [stderr]     |
[INFO] [stderr] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]     |                              ^------------
[INFO] [stderr]     |                              |
[INFO] [stderr]     |                              `FromPrimitive` is not local
[INFO] [stderr]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StyleHeaderAlign`
[INFO] [stderr] 355 | pub enum StyleHeaderAlign {
[INFO] [stderr]     |          ---------------- `StyleHeaderAlign` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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]    --> src/hmi/style.rs:354:45
[INFO] [stderr]     |
[INFO] [stderr] 354 | #[derive(Copy, Clone, Debug, FromPrimitive, ToPrimitive, Eq, PartialEq)]
[INFO] [stderr]     |                                             ^----------
[INFO] [stderr]     |                                             |
[INFO] [stderr]     |                                             `ToPrimitive` is not local
[INFO] [stderr]     |                                             move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StyleHeaderAlign`
[INFO] [stderr] 355 | pub enum StyleHeaderAlign {
[INFO] [stderr]     |          ---------------- `StyleHeaderAlign` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: the type `freetype_sys::FT_Raster_Params` does not permit zero-initialization
[INFO] [stderr]   --> src/hmi/text_engine.rs:68:31
[INFO] [stderr]    |
[INFO] [stderr] 68 |       let mut raster_params = std::mem::zeroed::<FT_Raster_Params>();
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                               |
[INFO] [stderr]    |                               this code causes undefined behavior when executed
[INFO] [stderr]    |                               help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: function pointers must be non-null
[INFO] [stderr]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hmi/ui_context.rs:149:20
[INFO] [stderr]     |
[INFO] [stderr] 149 |   pub fn input_mut(&self) -> std::cell::RefMut<Input> {
[INFO] [stderr]     |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 149 |   pub fn input_mut(&self) -> std::cell::RefMut<'_, Input> {
[INFO] [stderr]     |                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hmi/ui_context.rs:153:16
[INFO] [stderr]     |
[INFO] [stderr] 153 |   pub fn input(&self) -> std::cell::Ref<Input> {
[INFO] [stderr]     |                ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                |
[INFO] [stderr]     |                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 153 |   pub fn input(&self) -> std::cell::Ref<'_, Input> {
[INFO] [stderr]     |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hmi/ui_context.rs:272:24
[INFO] [stderr]     |
[INFO] [stderr] 272 |   pub fn commands_iter(&mut self) -> CommandsIterator {
[INFO] [stderr]     |                        ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 272 |   pub fn commands_iter(&mut self) -> CommandsIterator<'_> {
[INFO] [stderr]     |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> src/hmi/vertex_output.rs:202:8
[INFO] [stderr]     |
[INFO] [stderr] 202 |       .into_iter()
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 202 -       .into_iter()
[INFO] [stderr] 202 +       .iter()
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 196 ~       IntoIterator::into_iter([
[INFO] [stderr] 197 |         Vec2F32::new(dy, -dx) + p1,
[INFO] [stderr] ...
[INFO] [stderr] 200 |         Vec2F32::new(-dy, dx) + p1,
[INFO] [stderr] 201 ~       ])
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> src/hmi/vertex_output.rs:207:26
[INFO] [stderr]     |
[INFO] [stderr] 207 |       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr]     |                          ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 207 -       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr] 207 +       [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 207 -       [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr] 207 +       IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> src/hmi/vertex_output.rs:535:6
[INFO] [stderr]     |
[INFO] [stderr] 535 |     .into_iter()
[INFO] [stderr]     |      ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 535 -     .into_iter()
[INFO] [stderr] 535 +     .iter()
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 529 ~     IntoIterator::into_iter([
[INFO] [stderr] 530 |       (Vec2F32::new(rect.x, rect.y), col_left),
[INFO] [stderr] ...
[INFO] [stderr] 533 |       (Vec2F32::new(rect.x, rect.y + rect.h), col_bottom),
[INFO] [stderr] 534 ~     ])
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> src/hmi/vertex_output.rs:542:24
[INFO] [stderr]     |
[INFO] [stderr] 542 |     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr]     |                        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 542 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr] 542 +     [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 542 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr] 542 +     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> src/hmi/vertex_output.rs:671:8
[INFO] [stderr]     |
[INFO] [stderr] 671 |       .into_iter()
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 671 -       .into_iter()
[INFO] [stderr] 671 +       .iter()
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 670 -     [(a, uva), (b, uvb), (c, uvc), (d, uvd)]
[INFO] [stderr] 671 -       .into_iter()
[INFO] [stderr] 670 +     IntoIterator::into_iter([(a, uva), (b, uvb), (c, uvc), (d, uvd)])
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> src/hmi/vertex_output.rs:676:24
[INFO] [stderr]     |
[INFO] [stderr] 676 |     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr]     |                        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 676 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr] 676 +     [0, 1, 2, 0, 2, 3].iter().for_each(|&offset| {
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 676 -     [0, 1, 2, 0, 2, 3].into_iter().for_each(|&offset| {
[INFO] [stderr] 676 +     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hmi/window.rs:230:21
[INFO] [stderr]     |
[INFO] [stderr] 230 |   pub fn buffer_mut(&self) -> std::cell::RefMut<CommandBuffer> {
[INFO] [stderr]     |                     ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 230 |   pub fn buffer_mut(&self) -> std::cell::RefMut<'_, CommandBuffer> {
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: `simple_ui` (bin "simple_ui" test) generated 50 warnings (run `cargo fix --bin "simple_ui" -p simple_ui --tests` to apply 26 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v1.2.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/simple_ui/c00322e108d0e3b4/deps/simple_ui-c00322e108d0e3b4)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test hmi::buffer::tests::test_dyn_buffer_alloc ... ok
[INFO] [stdout] test math::colors::tests::test_conversion_from_slice ... ok
[INFO] [stdout] test hmi::buffer::tests::test_fixed_buffer ... ok
[INFO] [stdout] test math::color_conversion::tests::test_hsl_to_rgb ... ok
[INFO] [stdout] test math::colors::tests::test_conversion_from_html ... ok
[INFO] [stdout] test sys::memory_mapped_file::tests::test_memory_mapped_file ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- sys::memory_mapped_file::tests::test_memory_mapped_file stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'sys::memory_mapped_file::tests::test_memory_mapped_file' (23) panicked at src/sys/memory_mapped_file.rs:332:44:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55e3eb246f62 - std[840933623431fd06]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x55e3eb246f62 - std[840933623431fd06]::backtrace_rs::backtrace::trace_unsynchronized::<std[840933623431fd06]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x55e3eb246f62 - std[840933623431fd06]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x55e3eb246f62 - <<std[840933623431fd06]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8f93d80df273fe75]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x55e3eb25c47a - <core[8f93d80df273fe75]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x55e3eb25c47a - core[8f93d80df273fe75]::fmt::write
[INFO] [stdout]    6:     0x55e3eb24be46 - std[840933623431fd06]::io::default_write_fmt::<alloc[40b2bae28975ac47]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x55e3eb24be46 - <alloc[40b2bae28975ac47]::vec::Vec<u8> as std[840933623431fd06]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x55e3eb22542f - <std[840933623431fd06]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x55e3eb22542f - std[840933623431fd06]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x55e3eb23f299 - std[840933623431fd06]::panicking::default_hook
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x55e3eb1d5e1e - <alloc[40b2bae28975ac47]::boxed::Box<dyn for<'a, 'b> core[8f93d80df273fe75]::ops::function::Fn<(&'a std[840933623431fd06]::panic::PanicHookInfo<'b>,), Output = ()> + core[8f93d80df273fe75]::marker::Sync + core[8f93d80df273fe75]::marker::Send> as core[8f93d80df273fe75]::ops::function::Fn<(&std[840933623431fd06]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x55e3eb1d5e1e - test[2f1252070343a163]::test_main_with_exit_callback::<test[2f1252070343a163]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x55e3eb23f452 - <alloc[40b2bae28975ac47]::boxed::Box<dyn for<'a, 'b> core[8f93d80df273fe75]::ops::function::Fn<(&'a std[840933623431fd06]::panic::PanicHookInfo<'b>,), Output = ()> + core[8f93d80df273fe75]::marker::Sync + core[8f93d80df273fe75]::marker::Send> as core[8f93d80df273fe75]::ops::function::Fn<(&std[840933623431fd06]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x55e3eb23f452 - std[840933623431fd06]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x55e3eb2254e8 - std[840933623431fd06]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x55e3eb21ce89 - std[840933623431fd06]::sys::backtrace::__rust_end_short_backtrace::<std[840933623431fd06]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x55e3eb22633d - __rustc[5b4a0c6d8cc4a177]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x55e3eb25cb2c - core[8f93d80df273fe75]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x55e3eb25c902 - core[8f93d80df273fe75]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x55e3eb1c6ddf - <core[8f93d80df273fe75]::result::Result<std[840933623431fd06]::fs::File, std[840933623431fd06]::io::error::Error>>::unwrap
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x55e3eb1c6ddf - simple_ui[b57178b7a4492a5]::sys::memory_mapped_file::tests::test_memory_mapped_file
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sys/memory_mapped_file.rs:332:44
[INFO] [stdout]   22:     0x55e3eb1c4ce7 - simple_ui[b57178b7a4492a5]::sys::memory_mapped_file::tests::test_memory_mapped_file::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sys/memory_mapped_file.rs:326:31
[INFO] [stdout]   23:     0x55e3eb1c9156 - <simple_ui[b57178b7a4492a5]::sys::memory_mapped_file::tests::test_memory_mapped_file::{closure#0} as core[8f93d80df273fe75]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55e3eb1ca1cb - <fn() -> core[8f93d80df273fe75]::result::Result<(), alloc[40b2bae28975ac47]::string::String> as core[8f93d80df273fe75]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55e3eb1ca1cb - test[2f1252070343a163]::__rust_begin_short_backtrace::<core[8f93d80df273fe75]::result::Result<(), alloc[40b2bae28975ac47]::string::String>, fn() -> core[8f93d80df273fe75]::result::Result<(), alloc[40b2bae28975ac47]::string::String>>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x55e3eb1d6a2a - test[2f1252070343a163]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x55e3eb1d6a2a - <core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<test[2f1252070343a163]::run_test_in_process::{closure#0}> as core[8f93d80df273fe75]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x55e3eb1d6a2a - std[840933623431fd06]::panicking::catch_unwind::do_call::<core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<test[2f1252070343a163]::run_test_in_process::{closure#0}>, core[8f93d80df273fe75]::result::Result<(), alloc[40b2bae28975ac47]::string::String>>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x55e3eb1d6a2a - std[840933623431fd06]::panicking::catch_unwind::<core[8f93d80df273fe75]::result::Result<(), alloc[40b2bae28975ac47]::string::String>, core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<test[2f1252070343a163]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x55e3eb1d6a2a - std[840933623431fd06]::panic::catch_unwind::<core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<test[2f1252070343a163]::run_test_in_process::{closure#0}>, core[8f93d80df273fe75]::result::Result<(), alloc[40b2bae28975ac47]::string::String>>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x55e3eb1d6a2a - test[2f1252070343a163]::run_test_in_process
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x55e3eb1d6a2a - test[2f1252070343a163]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x55e3eb1d0ef4 - test[2f1252070343a163]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x55e3eb1d0ef4 - std[840933623431fd06]::sys::backtrace::__rust_begin_short_backtrace::<test[2f1252070343a163]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x55e3eb1d9522 - std[840933623431fd06]::thread::lifecycle::spawn_unchecked::<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x55e3eb1d9522 - <core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<std[840933623431fd06]::thread::lifecycle::spawn_unchecked<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8f93d80df273fe75]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x55e3eb1d9522 - std[840933623431fd06]::panicking::catch_unwind::do_call::<core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<std[840933623431fd06]::thread::lifecycle::spawn_unchecked<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x55e3eb1d9522 - std[840933623431fd06]::panicking::catch_unwind::<(), core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<std[840933623431fd06]::thread::lifecycle::spawn_unchecked<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x55e3eb1d9522 - std[840933623431fd06]::panic::catch_unwind::<core[8f93d80df273fe75]::panic::unwind_safe::AssertUnwindSafe<std[840933623431fd06]::thread::lifecycle::spawn_unchecked<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x55e3eb1d9522 - std[840933623431fd06]::thread::lifecycle::spawn_unchecked::<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x55e3eb1d9522 - <std[840933623431fd06]::thread::lifecycle::spawn_unchecked<test[2f1252070343a163]::run_test::{closure#1}, ()>::{closure#1} as core[8f93d80df273fe75]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x55e3eb24680f - <alloc[40b2bae28975ac47]::boxed::Box<dyn core[8f93d80df273fe75]::ops::function::FnOnce<(), Output = ()> + core[8f93d80df273fe75]::marker::Send> as core[8f93d80df273fe75]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x55e3eb24680f - <std[840933623431fd06]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/bd7d74411512a3dd3b35d2f699c51dd2557c7e7e/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x7c8f9dfe9aa4 - <unknown>
[INFO] [stdout]   45:     0x7c8f9e076a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     sys::memory_mapped_file::tests::test_memory_mapped_file
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 5 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin simple_ui`
[INFO] running `Command { std: "docker" "inspect" "24afc9a148dd890bda2ca94f8a4d4f86234640e225495160233045bdbb454885", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24afc9a148dd890bda2ca94f8a4d4f86234640e225495160233045bdbb454885", kill_on_drop: false }`
[INFO] [stdout] 24afc9a148dd890bda2ca94f8a4d4f86234640e225495160233045bdbb454885
