[INFO] fetching crate zui-widgets 0.0.3...
[INFO] testing zui-widgets-0.0.3 against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate zui-widgets 0.0.3 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate zui-widgets 0.0.3
[INFO] finished tweaking crates.io crate zui-widgets 0.0.3
[INFO] tweaked toml for crates.io crate zui-widgets 0.0.3 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate zui-widgets 0.0.3 on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zui-widgets 0.0.3 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" "+beta-2025-10-28" "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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e45ef101935b31f9e8f5f9835f7813765f5dd0bc3a7781f07e33537bf5b8225e
[INFO] running `Command { std: "docker" "start" "-a" "e45ef101935b31f9e8f5f9835f7813765f5dd0bc3a7781f07e33537bf5b8225e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e45ef101935b31f9e8f5f9835f7813765f5dd0bc3a7781f07e33537bf5b8225e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e45ef101935b31f9e8f5f9835f7813765f5dd0bc3a7781f07e33537bf5b8225e", kill_on_drop: false }`
[INFO] [stdout] e45ef101935b31f9e8f5f9835f7813765f5dd0bc3a7781f07e33537bf5b8225e
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8d19f26ed2b58c51d581d4831dafe408173074db68966729a5fa949c33594314
[INFO] running `Command { std: "docker" "start" "-a" "8d19f26ed2b58c51d581d4831dafe408173074db68966729a5fa949c33594314", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.106
[INFO] [stderr]    Compiling unicode-segmentation v1.8.0
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling zui-core v0.0.3
[INFO] [stderr]    Compiling zui-widgets v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `termion`
[INFO] [stdout]  --> src/backend/mod.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[cfg(feature = "termion")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `serde`
[INFO] [stdout]   = help: consider adding `termion` 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]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `termion`
[INFO] [stdout]  --> src/backend/mod.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[cfg(feature = "termion")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `serde`
[INFO] [stdout]   = help: consider adding `termion` 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: unexpected `cfg` condition value: `crossterm`
[INFO] [stdout]   --> src/backend/mod.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[cfg(feature = "crossterm")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `serde`
[INFO] [stdout]    = help: consider adding `crossterm` 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: unexpected `cfg` condition value: `crossterm`
[INFO] [stdout]   --> src/backend/mod.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg(feature = "crossterm")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `serde`
[INFO] [stdout]    = help: consider adding `crossterm` 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 import: `self`
[INFO] [stdout]  --> src/backend/zui.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 | use zui_core::style::{self, set, Style};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/backend/zui.rs:145:28
[INFO] [stdout]     |
[INFO] [stdout] 145 |             Color::Indexed(i) => write!(f, "{}", fg(ZuiColor::Reset)), //TODO: Fix
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/backend/zui.rs:173:28
[INFO] [stdout]     |
[INFO] [stdout] 173 |             Color::Indexed(i) => write!(f, "{}", bg(ZuiColor::Reset)), //TODO: Fix
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width` and `height` are never used
[INFO] [stdout]   --> src/widgets/canvas/mod.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | trait Grid: Debug {
[INFO] [stdout]    |       ---- methods in this trait
[INFO] [stdout] 42 |     fn width(&self) -> u16;
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 43 |     fn height(&self) -> u16;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/terminal.rs:288:22
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn get_frame(&mut self) -> Frame<B> {
[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] 288 |     pub fn get_frame(&mut self) -> Frame<'_, B> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/terminal.rs:339:20
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn draw<F>(&mut self, f: F) -> io::Result<CompletedFrame>
[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] 339 |     pub fn draw<F>(&mut self, f: F) -> io::Result<CompletedFrame<'_>>
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.17s
[INFO] running `Command { std: "docker" "inspect" "8d19f26ed2b58c51d581d4831dafe408173074db68966729a5fa949c33594314", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d19f26ed2b58c51d581d4831dafe408173074db68966729a5fa949c33594314", kill_on_drop: false }`
[INFO] [stdout] 8d19f26ed2b58c51d581d4831dafe408173074db68966729a5fa949c33594314
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f413777be4ba2daa39a0a29f1ffe929ed02ccd52b7dc9404e46a317741ecad28
[INFO] running `Command { std: "docker" "start" "-a" "f413777be4ba2daa39a0a29f1ffe929ed02ccd52b7dc9404e46a317741ecad28", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[INFO] [stderr]    Compiling syn v1.0.81
[INFO] [stderr]    Compiling ppv-lite86 v0.2.15
[INFO] [stderr]    Compiling argh_shared v0.1.6
[INFO] [stderr]    Compiling getrandom v0.2.3
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stdout] warning: unexpected `cfg` condition value: `termion`
[INFO] [stdout]  --> src/backend/mod.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[cfg(feature = "termion")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `serde`
[INFO] [stdout]   = help: consider adding `termion` 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]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `termion`
[INFO] [stdout]  --> src/backend/mod.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[cfg(feature = "termion")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `serde`
[INFO] [stdout]   = help: consider adding `termion` 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: unexpected `cfg` condition value: `crossterm`
[INFO] [stdout]   --> src/backend/mod.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[cfg(feature = "crossterm")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `serde`
[INFO] [stdout]    = help: consider adding `crossterm` 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: unexpected `cfg` condition value: `crossterm`
[INFO] [stdout]   --> src/backend/mod.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg(feature = "crossterm")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `serde`
[INFO] [stdout]    = help: consider adding `crossterm` 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 import: `self`
[INFO] [stdout]  --> src/backend/zui.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 | use zui_core::style::{self, set, Style};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/backend/zui.rs:145:28
[INFO] [stdout]     |
[INFO] [stdout] 145 |             Color::Indexed(i) => write!(f, "{}", fg(ZuiColor::Reset)), //TODO: Fix
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/backend/zui.rs:173:28
[INFO] [stdout]     |
[INFO] [stdout] 173 |             Color::Indexed(i) => write!(f, "{}", bg(ZuiColor::Reset)), //TODO: Fix
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width` and `height` are never used
[INFO] [stdout]   --> src/widgets/canvas/mod.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | trait Grid: Debug {
[INFO] [stdout]    |       ---- methods in this trait
[INFO] [stdout] 42 |     fn width(&self) -> u16;
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 43 |     fn height(&self) -> u16;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/terminal.rs:288:22
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn get_frame(&mut self) -> Frame<B> {
[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] 288 |     pub fn get_frame(&mut self) -> Frame<'_, B> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/terminal.rs:339:20
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn draw<F>(&mut self, f: F) -> io::Result<CompletedFrame>
[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] 339 |     pub fn draw<F>(&mut self, f: F) -> io::Result<CompletedFrame<'_>>
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand_core v0.6.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.4
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling argh_derive v0.1.6
[INFO] [stderr]    Compiling argh v0.1.6
[INFO] [stderr]    Compiling zui-widgets v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/widgets_paragraph.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/widgets_canvas.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/widgets_block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/widgets_gauge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/widgets_list.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/terminal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/widgets_paragraph.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/widgets_block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/widgets_gauge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/widgets_list.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/terminal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tui`
[INFO] [stdout]  --> tests/widgets_table.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `termion`
[INFO] [stdout]  --> tests/backend_termion.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[cfg(feature = "termion")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `serde`
[INFO] [stdout]   = help: consider adding `termion` 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]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/widgets_table.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tui`
[INFO] [stdout]  --> tests/widgets_canvas.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tui::{
[INFO] [stdout]   |     ^^^ use of unresolved module or unlinked crate `tui`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tui`, use `cargo add tui` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_block.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 |         .draw(|f| {
[INFO] [stdout]    |                ^
[INFO] [stdout] ...
[INFO] [stdout] 20 |             f.render_widget(
[INFO] [stdout]    |             - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 16 |         .draw(|f: /* Type */| {
[INFO] [stdout]    |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_list.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 |         .draw(|f| {
[INFO] [stdout]    |                ^
[INFO] [stdout] 20 |             let size = f.size();
[INFO] [stdout]    |                        - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 19 |         .draw(|f: /* Type */| {
[INFO] [stdout]    |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_paragraph.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 |             .draw(|f| {
[INFO] [stdout]    |                    ^
[INFO] [stdout] 23 |                 let size = f.size();
[INFO] [stdout]    |                            - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 22 |             .draw(|f: /* Type */| {
[INFO] [stdout]    |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/terminal.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let frame = terminal.draw(|f| {
[INFO] [stdout]    |                                ^
[INFO] [stdout] 23 |         let paragrah = Paragraph::new("Test");
[INFO] [stdout] 24 |         f.render_widget(paragrah, f.size());
[INFO] [stdout]    |         - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let frame = terminal.draw(|f: /* Type */| {
[INFO] [stdout]    |                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_block.rs:55:20
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .draw(|f| {
[INFO] [stdout]    |                    ^
[INFO] [stdout] 56 |                 f.render_widget(block, area);
[INFO] [stdout]    |                 - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .draw(|f: /* Type */| {
[INFO] [stdout]    |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_paragraph.rs:89:16
[INFO] [stdout]    |
[INFO] [stdout] 89 |         .draw(|f| {
[INFO] [stdout]    |                ^
[INFO] [stdout] 90 |             let size = f.size();
[INFO] [stdout]    |                        - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 89 |         .draw(|f: /* Type */| {
[INFO] [stdout]    |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_paragraph.rs:121:16
[INFO] [stdout]     |
[INFO] [stdout] 121 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 122 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 121 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/terminal.rs:29:32
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let frame = terminal.draw(|f| {
[INFO] [stdout]    |                                ^
[INFO] [stdout] 30 |         let paragrah = Paragraph::new("test");
[INFO] [stdout] 31 |         f.render_widget(paragrah, f.size());
[INFO] [stdout]    |         - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let frame = terminal.draw(|f: /* Type */| {
[INFO] [stdout]    |                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_paragraph.rs:156:16
[INFO] [stdout]     |
[INFO] [stdout] 156 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 157 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 156 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_paragraph.rs:172:20
[INFO] [stdout]     |
[INFO] [stdout] 172 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 173 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 172 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_table.rs:18:20
[INFO] [stdout]    |
[INFO] [stdout] 18 |             .draw(|f| {
[INFO] [stdout]    |                    ^
[INFO] [stdout] 19 |                 let size = f.size();
[INFO] [stdout]    |                            - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 18 |             .draw(|f: /* Type */| {
[INFO] [stdout]    |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_canvas.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |                 .paint(|ctx| {
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 22 |                     ctx.print(
[INFO] [stdout]    |                     --- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 21 |                 .paint(|ctx: /* Type */| {
[INFO] [stdout]    |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_block.rs:234:20
[INFO] [stdout]     |
[INFO] [stdout] 234 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 235 |                 f.render_widget(block, area);
[INFO] [stdout]     |                 - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 234 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_canvas.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |         .draw(|f| {
[INFO] [stdout]    |                ^
[INFO] [stdout] ...
[INFO] [stdout] 28 |             f.render_widget(canvas, f.size());
[INFO] [stdout]    |             - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 15 |         .draw(|f: /* Type */| {
[INFO] [stdout]    |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:116:20
[INFO] [stdout]     |
[INFO] [stdout] 116 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 117 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 116 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:204:20
[INFO] [stdout]     |
[INFO] [stdout] 204 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 205 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 204 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:310:20
[INFO] [stdout]     |
[INFO] [stdout] 310 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 311 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 310 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_list.rs:80:20
[INFO] [stdout]    |
[INFO] [stdout] 80 |             .draw(|f| {
[INFO] [stdout]    |                    ^
[INFO] [stdout] ...
[INFO] [stdout] 84 |                 f.render_stateful_widget(list, Rect::new(0, 0, 8, 2), &mut state);
[INFO] [stdout]    |                 - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 80 |             .draw(|f: /* Type */| {
[INFO] [stdout]    |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zui-widgets` (test "terminal") due to 4 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `zui-widgets` (test "widgets_paragraph") due to 7 previous errors
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:419:20
[INFO] [stdout]     |
[INFO] [stdout] 419 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 420 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 419 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:524:20
[INFO] [stdout]     |
[INFO] [stdout] 524 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 525 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 524 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_list.rs:100:16
[INFO] [stdout]     |
[INFO] [stdout] 100 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 101 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 100 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_list.rs:120:16
[INFO] [stdout]     |
[INFO] [stdout] 120 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 121 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 120 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:619:16
[INFO] [stdout]     |
[INFO] [stdout] 619 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 620 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 619 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_gauge.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 |         .draw(|f| {
[INFO] [stdout]    |                ^
[INFO] [stdout] ...
[INFO] [stdout] 22 |                 .split(f.size());
[INFO] [stdout]    |                        - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 17 |         .draw(|f: /* Type */| {
[INFO] [stdout]    |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_list.rs:138:16
[INFO] [stdout]     |
[INFO] [stdout] 138 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 139 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 138 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zui-widgets` (test "widgets_canvas") due to 4 previous errors
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_list.rs:173:16
[INFO] [stdout]     |
[INFO] [stdout] 173 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 174 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 173 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zui-widgets` (test "widgets_block") due to 5 previous errors
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:694:16
[INFO] [stdout]     |
[INFO] [stdout] 694 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 695 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 694 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:725:20
[INFO] [stdout]     |
[INFO] [stdout] 725 |             .draw(|f| {
[INFO] [stdout]     |                    ^
[INFO] [stdout] 726 |                 let size = f.size();
[INFO] [stdout]     |                            - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 725 |             .draw(|f: /* Type */| {
[INFO] [stdout]     |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> tests/widgets_gauge.rs:86:16
[INFO] [stdout]    |
[INFO] [stdout] 86 |         .draw(|f| {
[INFO] [stdout]    |                ^
[INFO] [stdout] ...
[INFO] [stdout] 91 |                 .split(f.size());
[INFO] [stdout]    |                        - type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 86 |         .draw(|f: /* Type */| {
[INFO] [stdout]    |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_gauge.rs:126:16
[INFO] [stdout]     |
[INFO] [stdout] 126 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] ...
[INFO] [stdout] 141 |             f.render_widget(gauge, f.size());
[INFO] [stdout]     |             - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 126 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:762:16
[INFO] [stdout]     |
[INFO] [stdout] 762 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 763 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 762 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_gauge.rs:192:16
[INFO] [stdout]     |
[INFO] [stdout] 192 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] ...
[INFO] [stdout] 196 |             f.render_widget(gauge, f.size());
[INFO] [stdout]     |             - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 192 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_table.rs:798:16
[INFO] [stdout]     |
[INFO] [stdout] 798 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] 799 |             let size = f.size();
[INFO] [stdout]     |                        - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 798 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> tests/widgets_gauge.rs:208:16
[INFO] [stdout]     |
[INFO] [stdout] 208 |         .draw(|f| {
[INFO] [stdout]     |                ^
[INFO] [stdout] ...
[INFO] [stdout] 212 |             f.render_widget(
[INFO] [stdout]     |             - type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 208 |         .draw(|f: /* Type */| {
[INFO] [stdout]     |                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zui-widgets` (test "widgets_list") due to 8 previous errors
[INFO] [stderr] error: could not compile `zui-widgets` (test "widgets_gauge") due to 7 previous errors
[INFO] [stderr] error: could not compile `zui-widgets` (test "widgets_table") due to 13 previous errors
[INFO] running `Command { std: "docker" "inspect" "f413777be4ba2daa39a0a29f1ffe929ed02ccd52b7dc9404e46a317741ecad28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f413777be4ba2daa39a0a29f1ffe929ed02ccd52b7dc9404e46a317741ecad28", kill_on_drop: false }`
[INFO] [stdout] f413777be4ba2daa39a0a29f1ffe929ed02ccd52b7dc9404e46a317741ecad28
