[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 1.76.0 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadihodos%2Fspace_invaders" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/adihodos/space_invaders on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-7-tc1/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-7-tc1/source/Cargo.toml
[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" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded freetype-sys v0.7.1
[INFO] [stderr]   Downloaded enumflags2_derive v0.5.0
[INFO] [stderr]   Downloaded murmurhash64 v0.3.1
[INFO] [stderr]   Downloaded enumflags2 v0.5.2
[INFO] [stderr]   Downloaded glfw v0.29.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 13d1f6319dcad59df89a82fa71ca71968151ad7bdc73019e13ff07cefd481179
[INFO] running `Command { std: "docker" "start" "-a" "13d1f6319dcad59df89a82fa71ca71968151ad7bdc73019e13ff07cefd481179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "13d1f6319dcad59df89a82fa71ca71968151ad7bdc73019e13ff07cefd481179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "13d1f6319dcad59df89a82fa71ca71968151ad7bdc73019e13ff07cefd481179", kill_on_drop: false }`
[INFO] [stdout] 13d1f6319dcad59df89a82fa71ca71968151ad7bdc73019e13ff07cefd481179
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 11a72b3925190830afe3dc60e66f617413d3b0986d1a9e2a35d7a3d49a2f97f6
[INFO] running `Command { std: "docker" "start" "-a" "11a72b3925190830afe3dc60e66f617413d3b0986d1a9e2a35d7a3d49a2f97f6", 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 cfg-if v0.1.9
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling khronos_api v2.2.0
[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 num-bigint v0.2.2
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling cmake v0.1.40
[INFO] [stderr]    Compiling num-iter v0.1.39
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling syn v0.15.39
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]    Compiling libz-sys v1.0.25
[INFO] [stderr]    Compiling glfw-sys v3.3.0
[INFO] [stderr]    Compiling freetype-sys v0.7.1
[INFO] [stderr]    Compiling num-rational v0.2.2
[INFO] [stderr]    Compiling num-complex v0.2.3
[INFO] [stderr]    Compiling adler32 v1.0.3
[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 rand v0.3.23
[INFO] [stderr]    Compiling semver v0.2.3
[INFO] [stderr]    Compiling inflate v0.4.5
[INFO] [stderr]    Compiling simple_ui v0.1.0 (/opt/rustwide/workdir)
[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: 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)]` 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`, `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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `colors::RGBAColor`, `commands::CommandBuffer`, `ui_context::WindowPtr`, `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`, `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`, `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`, `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)]` 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)]` 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: 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: 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/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[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/nightly/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].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 |       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/nightly/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 |     .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/nightly/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].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 |     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/nightly/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 |       .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 |     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/nightly/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].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 |     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |     ++++++++++++++++++++++++                  ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 20.25s
[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 1`
[INFO] running `Command { std: "docker" "inspect" "11a72b3925190830afe3dc60e66f617413d3b0986d1a9e2a35d7a3d49a2f97f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "11a72b3925190830afe3dc60e66f617413d3b0986d1a9e2a35d7a3d49a2f97f6", kill_on_drop: false }`
[INFO] [stdout] 11a72b3925190830afe3dc60e66f617413d3b0986d1a9e2a35d7a3d49a2f97f6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e8049088cf7864d9022030ac5a06e16de5aac1f27af72ccd9259e9e34c484b25
[INFO] running `Command { std: "docker" "start" "-a" "e8049088cf7864d9022030ac5a06e16de5aac1f27af72ccd9259e9e34c484b25", kill_on_drop: false }`
[INFO] [stderr]    Compiling simple_ui v0.1.0 (/opt/rustwide/workdir)
[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)]` 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`, `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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `colors::RGBAColor`, `commands::CommandBuffer`, `ui_context::WindowPtr`, `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`, `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`, `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`, `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)]` 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)]` 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: 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: 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/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[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/nightly/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].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 |       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/nightly/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 |     .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/nightly/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].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 |     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/nightly/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 |       .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 |     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/nightly/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].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 |     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stdout]     |     ++++++++++++++++++++++++                  ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 25 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 1.79s
[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 1`
[INFO] running `Command { std: "docker" "inspect" "e8049088cf7864d9022030ac5a06e16de5aac1f27af72ccd9259e9e34c484b25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e8049088cf7864d9022030ac5a06e16de5aac1f27af72ccd9259e9e34c484b25", kill_on_drop: false }`
[INFO] [stdout] e8049088cf7864d9022030ac5a06e16de5aac1f27af72ccd9259e9e34c484b25
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f3703fad3a4378549774370cc94d8bad7077d45f75ba00893f33a234b4c92d55
[INFO] running `Command { std: "docker" "start" "-a" "f3703fad3a4378549774370cc94d8bad7077d45f75ba00893f33a234b4c92d55", kill_on_drop: false }`
[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)]` 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`, `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)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `colors::RGBAColor`, `commands::CommandBuffer`, `ui_context::WindowPtr`, `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`, `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`, `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`, `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)]` 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)]` 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: 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: 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/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[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/nightly/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].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 |       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/nightly/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 |     .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/nightly/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].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 |     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/nightly/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 |       .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 |     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/nightly/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].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 |     IntoIterator::into_iter([0, 1, 2, 0, 2, 3]).for_each(|&offset| {
[INFO] [stderr]     |     ++++++++++++++++++++++++                  ~
[INFO] [stderr] 
[INFO] [stderr] warning: `simple_ui` (bin "simple_ui" test) generated 25 warnings (run `cargo fix --bin "simple_ui" --tests` to apply 22 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.09s
[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 1`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/simple_ui-6e294bd495818675)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[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 hmi::buffer::tests::test_dyn_buffer_alloc ... ok
[INFO] [stdout] test math::colors::tests::test_conversion_from_html ... ok
[INFO] [stdout] test math::colors::tests::test_conversion_from_slice ... 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] thread 'sys::memory_mapped_file::tests::test_memory_mapped_file' 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:     0x56166c708ed6 - std::backtrace_rs::backtrace::libunwind::trace::hbee8a7973eeb6c93
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x56166c708ed6 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8ac75eea3aa6899
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x56166c708ed6 - std::sys_common::backtrace::_print_fmt::hc7f3e3b5298b1083
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x56166c708ed6 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb235daedd7c6190
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x56166c7327c0 - core::fmt::rt::Argument::fmt::h76c38a80d925a410
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x56166c7327c0 - core::fmt::write::h3ed6aeaa977c8e45
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x56166c70693f - std::io::Write::write_fmt::h1299aa7741865f2b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/io/mod.rs:1810:15
[INFO] [stdout]    7:     0x56166c708cb4 - std::sys_common::backtrace::_print::h5d645a07e0fcfdbb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x56166c708cb4 - std::sys_common::backtrace::print::h85035a511aafe7a8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x56166c70aa27 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
[INFO] [stdout]   10:     0x56166c70a70d - std::panicking::default_hook::hf5fcb0f213fe709a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x56166c6d2577 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h60265c2dfa87ee34
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x56166c6d2577 - test::test_main::{{closure}}::h77865bd3127078c6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x56166c70b046 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x56166c70b046 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x56166c70ad92 - std::panicking::begin_panic_handler::{{closure}}::h032ba12139b353db
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x56166c7093d6 - std::sys_common::backtrace::__rust_end_short_backtrace::h9259bc2ff8fd0f76
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x56166c70aaf0 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x56166c695cd5 - core::panicking::panic_fmt::h784f20a50eaab275
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x56166c696183 - core::result::unwrap_failed::h03d8a5018196e1cd
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/result.rs:1649:5
[INFO] [stdout]   20:     0x56166c69851b - core::result::Result<T,E>::unwrap::h7c7853c22e71766a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/result.rs:1073:23
[INFO] [stdout]   21:     0x56166c69d029 - simple_ui::sys::memory_mapped_file::tests::test_memory_mapped_file::h26eae3bd5fe763eb
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sys/memory_mapped_file.rs:332:19
[INFO] [stdout]   22:     0x56166c69cf37 - simple_ui::sys::memory_mapped_file::tests::test_memory_mapped_file::{{closure}}::h253bf96c5b72a2bd
[INFO] [stdout]                                at /opt/rustwide/workdir/src/sys/memory_mapped_file.rs:326:31
[INFO] [stdout]   23:     0x56166c697916 - core::ops::function::FnOnce::call_once::h381f2e3191467119
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x56166c6d7e4f - core::ops::function::FnOnce::call_once::h8dc6907944022cf6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56166c6d7e4f - test::__rust_begin_short_backtrace::haae1a87433f1efb3
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:627:18
[INFO] [stdout]   26:     0x56166c6d6bd1 - test::run_test_in_process::{{closure}}::h8c7decfa7c14e152
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:60
[INFO] [stdout]   27:     0x56166c6d6bd1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h19e6ff056d9d21e9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x56166c6d6bd1 - std::panicking::try::do_call::h89c848fcaa37c035
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   29:     0x56166c6d6bd1 - std::panicking::try::h57ab3dc74e2839b8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   30:     0x56166c6d6bd1 - std::panic::catch_unwind::hfb6a1b1abc120fb9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   31:     0x56166c6d6bd1 - test::run_test_in_process::h5ae2f9875edd562d
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:27
[INFO] [stdout]   32:     0x56166c6d6bd1 - test::run_test::{{closure}}::h35d7300d8928a067
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:573:43
[INFO] [stdout]   33:     0x56166c69df06 - test::run_test::{{closure}}::h7525ced405d23d1b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:601:41
[INFO] [stdout]   34:     0x56166c69df06 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4e7db78ce05afad8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   35:     0x56166c6a2f67 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcfbcb64f1a1b3482
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   36:     0x56166c6a2f67 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9d89c5c4108bd689
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x56166c6a2f67 - std::panicking::try::do_call::h8a4869bc94ec50c9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   38:     0x56166c6a2f67 - std::panicking::try::h9a576f20ff81ac30
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   39:     0x56166c6a2f67 - std::panic::catch_unwind::hbcb4e3f860ef9830
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   40:     0x56166c6a2f67 - std::thread::Builder::spawn_unchecked_::{{closure}}::h93c79a6be1505948
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   41:     0x56166c6a2f67 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h426d96740c81bdaf
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x56166c70fb05 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   43:     0x56166c70fb05 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x56166c70fb05 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   45:     0x7f132dda8ac3 - <unknown>
[INFO] [stdout]   46:     0x7f132de39bf4 - __clone
[INFO] [stdout]   47:                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.03s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin simple_ui`
[INFO] running `Command { std: "docker" "inspect" "f3703fad3a4378549774370cc94d8bad7077d45f75ba00893f33a234b4c92d55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3703fad3a4378549774370cc94d8bad7077d45f75ba00893f33a234b4c92d55", kill_on_drop: false }`
[INFO] [stdout] f3703fad3a4378549774370cc94d8bad7077d45f75ba00893f33a234b4c92d55
