[INFO] fetching crate tui-textarea 0.2.0...
[INFO] testing tui-textarea-0.2.0 against 1.69.0 for beta-1.70-1
[INFO] extracting crate tui-textarea 0.2.0 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate tui-textarea 0.2.0 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tui-textarea 0.2.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate tui-textarea 0.2.0
[INFO] tweaked toml for crates.io crate tui-textarea 0.2.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] crate crates.io crate tui-textarea 0.2.0 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.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded derive_arbitrary v1.1.6
[INFO] [stderr]   Downloaded arbitrary v1.1.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9b6af4e8040dfebcd074bbacce00054a5721433d2b19cfe4abefcf8a92efada4
[INFO] running `Command { std: "docker" "start" "-a" "9b6af4e8040dfebcd074bbacce00054a5721433d2b19cfe4abefcf8a92efada4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9b6af4e8040dfebcd074bbacce00054a5721433d2b19cfe4abefcf8a92efada4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b6af4e8040dfebcd074bbacce00054a5721433d2b19cfe4abefcf8a92efada4", kill_on_drop: false }`
[INFO] [stdout] 9b6af4e8040dfebcd074bbacce00054a5721433d2b19cfe4abefcf8a92efada4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b1dde1c06d6fb39a6c40eeb51265eaadf1c2ddb42f6a00cd539c579edb726738
[INFO] running `Command { std: "docker" "start" "-a" "b1dde1c06d6fb39a6c40eeb51265eaadf1c2ddb42f6a00cd539c579edb726738", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.133
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]    Compiling signal-hook v0.3.14
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling smallvec v1.9.0
[INFO] [stderr]    Compiling lock_api v0.4.9
[INFO] [stderr]    Compiling unicode-segmentation v1.10.0
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling unicode-width v0.1.10
[INFO] [stderr]    Compiling signal-hook-registry v1.4.0
[INFO] [stderr]    Compiling mio v0.8.4
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling signal-hook-mio v0.2.3
[INFO] [stderr]    Compiling crossterm v0.25.0
[INFO] [stderr]    Compiling tui v0.19.0
[INFO] [stderr]    Compiling tui-textarea v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 10.89s
[INFO] running `Command { std: "docker" "inspect" "b1dde1c06d6fb39a6c40eeb51265eaadf1c2ddb42f6a00cd539c579edb726738", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b1dde1c06d6fb39a6c40eeb51265eaadf1c2ddb42f6a00cd539c579edb726738", kill_on_drop: false }`
[INFO] [stdout] b1dde1c06d6fb39a6c40eeb51265eaadf1c2ddb42f6a00cd539c579edb726738
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 65156c112f27f8edafe2d8acffb818a01e140843dab2494b99f02d5f6b54e31f
[INFO] running `Command { std: "docker" "start" "-a" "65156c112f27f8edafe2d8acffb818a01e140843dab2494b99f02d5f6b54e31f", kill_on_drop: false }`
[INFO] [stderr]    Compiling tui-textarea v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 3.57s
[INFO] running `Command { std: "docker" "inspect" "65156c112f27f8edafe2d8acffb818a01e140843dab2494b99f02d5f6b54e31f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65156c112f27f8edafe2d8acffb818a01e140843dab2494b99f02d5f6b54e31f", kill_on_drop: false }`
[INFO] [stdout] 65156c112f27f8edafe2d8acffb818a01e140843dab2494b99f02d5f6b54e31f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f28c33b7cb2d3c81556e558ea680a939cf26053c4b6c3e87e96c962f828f8222
[INFO] running `Command { std: "docker" "start" "-a" "f28c33b7cb2d3c81556e558ea680a939cf26053c4b6c3e87e96c962f828f8222", kill_on_drop: false }`
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tui_textarea-0cf4d0cc587bdbdc)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tui-textarea
[INFO] [stdout] 
[INFO] [stdout] running 86 tests
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Bottom (line 98) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Jump (line 182) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Down (line 52) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::InViewport (line 201) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::End (line 76) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Head (line 64) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Back (line 28) ... ok
[INFO] [stdout] test src/input.rs - input::Input (line 46) - compile ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Forward (line 15) ... ok
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::ParagraphForward (line 139) ... ok
[INFO] [stdout] test src/lib.rs - (line 118) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 202) ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::ParagraphBack (line 157) ... ok
[INFO] [stdout] test src/lib.rs - (line 216) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 208) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 241) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 248) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 232) ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Up (line 40) ... ok
[INFO] [stdout] test src/lib.rs - (line 266) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 279) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 288) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 255) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 308) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 299) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 314) ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::Top (line 86) ... ok
[INFO] [stdout] test src/lib.rs - (line 330) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 362) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 501) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 433) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 545) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 526) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 566) ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::WordBack (line 124) ... ok
[INFO] [stdout] test src/lib.rs - (line 587) ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::CursorMove::WordForward (line 110) ... ok
[INFO] [stdout] test src/input.rs - input::Input (line 64) ... ok
[INFO] [stdout] test src/scroll.rs - scroll::Scrolling::Delta (line 13) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a> (line 88) - compile ... ok
[INFO] [stdout] test src/scroll.rs - scroll::Scrolling::HalfPageDown (line 95) ... ok
[INFO] [stdout] test src/scroll.rs - scroll::Scrolling::PageDown (line 39) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea (line 21) ... ok
[INFO] [stdout] test src/scroll.rs - scroll::Scrolling::PageUp (line 65) ... ok
[INFO] [stdout] test src/scroll.rs - scroll::Scrolling::HalfPageUp (line 121) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a> (line 106) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a> (line 58) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::alignment (line 1321) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::cursor (line 1286) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_next_char (line 777) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_line_by_head (line 818) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_newline (line 722) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::input (line 158) ... ignored
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_next_word (line 872) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_line_by_end (line 797) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_char (line 749) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_word (line 843) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::delete_str (line 636) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::insert_char (line 577) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::hard_tab_indent (line 1120) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::indent (line 1134) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::insert_str (line 600) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::insert_newline (line 695) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::into_lines (line 1270) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::insert_tab (line 673) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::is_empty (line 1334) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::lines (line 1250) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::move_cursor (line 919) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::new (line 122) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::redo (line 956) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::paste (line 903) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::remove_block (line 1060) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_alignment (line 1304) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::remove_line_number (line 1207) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::scroll (line 1561) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_block (line 1046) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_cursor_line_style (line 1165) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_style (line 1027) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_yank_text (line 1363) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_cursor_style (line 1228) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::widget (line 998) - compile ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_hard_tab_indent (line 1106) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_line_number_style (line 1190) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::set_tab_length (line 1081) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::undo (line 936) ... ok
[INFO] [stdout] test src/textarea.rs - textarea::TextArea<'a>::yank_text (line 1349) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - (line 118) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]  --> src/lib.rs:122:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut term = tui::Terminal::new(...);
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut term = tui::Terminal::new(..);
[INFO] [stdout]   |                                   ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut term = tui::Terminal::new(..=);
[INFO] [stdout]   |                                   ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]  --> src/lib.rs:122:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut term = tui::Terminal::new(...);
[INFO] [stdout]   |                                   ^^^ help: use `..` instead
[INFO] [stdout]   |
[INFO] [stdout]   = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]   --> src/lib.rs:131:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rect = ...;
[INFO] [stdout]    |                    ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rect = ..;
[INFO] [stdout]    |                    ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rect = ..=;
[INFO] [stdout]    |                    ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]   --> src/lib.rs:131:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rect = ...;
[INFO] [stdout]    |                    ^^^ help: use `..` instead
[INFO] [stdout]    |
[INFO] [stdout]    = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `KeyCode`
[INFO] [stdout]   --> src/lib.rs:140:24
[INFO] [stdout]    |
[INFO] [stdout] 25 |         if key.code == KeyCode::Esc {
[INFO] [stdout]    |                        ^^^^^^^ use of undeclared type `KeyCode`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:138:36
[INFO] [stdout]    |
[INFO] [stdout] 3  | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_118_0() {
[INFO] [stdout]    |                                      ----------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 23 |     if let Event::Key(key) = read()? {
[INFO] [stdout]    |                                    ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0433, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 202) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TextArea`
[INFO] [stdout]  --> src/lib.rs:203:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut textarea = TextArea::default();
[INFO] [stdout]   |                    ^^^^^^^^ use of undeclared type `TextArea`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui_textarea::TextArea;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 216) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]   --> src/lib.rs:225:24
[INFO] [stdout]    |
[INFO] [stdout] 11 | let mut text: String = ...;
[INFO] [stdout]    |                        ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]    |
[INFO] [stdout] 11 | let mut text: String = ..;
[INFO] [stdout]    |                        ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout] 11 | let mut text: String = ..=;
[INFO] [stdout]    |                        ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]   --> src/lib.rs:225:24
[INFO] [stdout]    |
[INFO] [stdout] 11 | let mut text: String = ...;
[INFO] [stdout]    |                        ^^^ help: use `..` instead
[INFO] [stdout]    |
[INFO] [stdout]    = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TextArea`
[INFO] [stdout]  --> src/lib.rs:218:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | let mut textarea = TextArea::from([
[INFO] [stdout]   |                    ^^^^^^^^ use of undeclared type `TextArea`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tui_textarea::TextArea;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TextARea`
[INFO] [stdout]   --> src/lib.rs:226:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | let mut textarea = TextARea::from(text.lines());
[INFO] [stdout]    |                    ^^^^^^^^ use of undeclared type `TextARea`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 208) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]  --> src/lib.rs:209:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut lines: Vec<String> = ...;
[INFO] [stdout]   |                              ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut lines: Vec<String> = ..;
[INFO] [stdout]   |                              ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut lines: Vec<String> = ..=;
[INFO] [stdout]   |                              ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]  --> src/lib.rs:209:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut lines: Vec<String> = ...;
[INFO] [stdout]   |                              ^^^ help: use `..` instead
[INFO] [stdout]   |
[INFO] [stdout]   = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TextArea`
[INFO] [stdout]  --> src/lib.rs:210:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | let mut textarea = TextArea::new(lines);
[INFO] [stdout]   |                    ^^^^^^^^ use of undeclared type `TextArea`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui_textarea::TextArea;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 241) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:242:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | let text: String = textarea.lines().join("\n");
[INFO] [stdout]   |                    ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 248) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:249:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | let lines: Vec<String> = textarea.into_lines();
[INFO] [stdout]   |                          ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 232) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `io`
[INFO] [stdout]  --> src/lib.rs:234:73
[INFO] [stdout]   |
[INFO] [stdout] 4 | let mut textarea: TextArea = io::BufReader::new(file).lines().collect::<io::Result<_>>()?;
[INFO] [stdout]   |                                                                         ^^ use of undeclared crate or module `io`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `fs`
[INFO] [stdout]  --> src/lib.rs:233:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | let file = fs::File::open(path)?;
[INFO] [stdout]   |            ^^ use of undeclared crate or module `fs`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fs::File;
[INFO] [stdout]   |
[INFO] [stdout] help: if you import `File`, refer to it directly
[INFO] [stdout]   |
[INFO] [stdout] 3 - let file = fs::File::open(path)?;
[INFO] [stdout] 3 + let file = File::open(path)?;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected value, found built-in attribute `path`
[INFO] [stdout]  --> src/lib.rs:233:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | let file = fs::File::open(path)?;
[INFO] [stdout]   |                           ^^^^ not a value
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `TextArea` in this scope
[INFO] [stdout]  --> src/lib.rs:234:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | let mut textarea: TextArea = io::BufReader::new(file).lines().collect::<io::Result<_>>()?;
[INFO] [stdout]   |                   ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui_textarea::TextArea;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `io`
[INFO] [stdout]  --> src/lib.rs:234:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | let mut textarea: TextArea = io::BufReader::new(file).lines().collect::<io::Result<_>>()?;
[INFO] [stdout]   |                              ^^ use of undeclared crate or module `io`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::BufReader;
[INFO] [stdout]   |
[INFO] [stdout] help: if you import `BufReader`, refer to it directly
[INFO] [stdout]   |
[INFO] [stdout] 4 - let mut textarea: TextArea = io::BufReader::new(file).lines().collect::<io::Result<_>>()?;
[INFO] [stdout] 4 + let mut textarea: TextArea = BufReader::new(file).lines().collect::<io::Result<_>>()?;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0423, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 266) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:270:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | textarea.set_line_number_style(style);
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 279) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:283:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | textarea.set_line_number_style(style);
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 288) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:291:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | textarea.set_line_number_style(Style::default());
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 255) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TextArea`
[INFO] [stdout]  --> src/lib.rs:256:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | let textarea = TextArea::default();
[INFO] [stdout]   |                ^^^^^^^^ use of undeclared type `TextArea`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui_textarea::TextArea;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 308) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:309:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | textarea.set_max_histories(1000);
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 299) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:300:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | textarea.set_tab_length(2);
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 314) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:315:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | textarea.set_max_histories(0);
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 330) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:333:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | textarea.set_search_pattern("(hello|hi)").unwrap();
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:335:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | textarea.search_forward(false); // Move cursor to the next match
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:336:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | textarea.search_back(false);    // Move cursor to the previous match
[INFO] [stdout]   | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]   --> src/lib.rs:339:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | textarea.set_search_pattern("").unwrap();
[INFO] [stdout]    | ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 362) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]  --> src/lib.rs:366:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | let default_text: &str = ...;
[INFO] [stdout]   |                          ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]   |
[INFO] [stdout] 7 | let default_text: &str = ..;
[INFO] [stdout]   |                          ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout] 7 | let default_text: &str = ..=;
[INFO] [stdout]   |                          ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]  --> src/lib.rs:366:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | let default_text: &str = ...;
[INFO] [stdout]   |                          ^^^ help: use `..` instead
[INFO] [stdout]   |
[INFO] [stdout]   = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TextArea`
[INFO] [stdout]  --> src/lib.rs:368:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut textarea = TextArea::new(vec![default_text]);
[INFO] [stdout]   |                    ^^^^^^^^ use of undeclared type `TextArea`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tui_textarea::TextArea;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `key` in this scope
[INFO] [stdout]   --> src/lib.rs:380:28
[INFO] [stdout]    |
[INFO] [stdout] 21 |             textarea.input(key);
[INFO] [stdout]    |                            ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:376:17
[INFO] [stdout]    |
[INFO] [stdout] 3  | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_362_0() {
[INFO] [stdout]    |                                      ----------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 17 |     match read()?.into() {
[INFO] [stdout]    |                 ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0425, E0433, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 501) stdout ----
[INFO] [stdout] error[E0425]: cannot find function `read` in this scope
[INFO] [stdout]  --> src/lib.rs:502:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | match read()?.into() {
[INFO] [stdout]   |       ^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 | use core::ptr::read;
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crossterm::event::read;
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fs::read;
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ptr::read;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `textarea` in this scope
[INFO] [stdout]  --> src/lib.rs:505:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     input => textarea.input_without_shortcuts(input),
[INFO] [stdout]   |              ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 433) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]  --> src/lib.rs:437:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut textarea = ...;
[INFO] [stdout]   |                    ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut textarea = ..;
[INFO] [stdout]   |                    ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut textarea = ..=;
[INFO] [stdout]   |                    ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]  --> src/lib.rs:437:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | let mut textarea = ...;
[INFO] [stdout]   |                    ^^^ help: use `..` instead
[INFO] [stdout]   |
[INFO] [stdout]   = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]   --> src/lib.rs:475:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 let pat = ...;
[INFO] [stdout]    |                           ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 let pat = ..;
[INFO] [stdout]    |                           ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 let pat = ..=;
[INFO] [stdout]    |                           ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]   --> src/lib.rs:475:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 let pat = ...;
[INFO] [stdout]    |                           ^^^ help: use `..` instead
[INFO] [stdout]    |
[INFO] [stdout]    = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:452:37
[INFO] [stdout]    |
[INFO] [stdout] 3  | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_433_0() {
[INFO] [stdout]    |                                      ----------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 22 |         Mode::Normal => match read()?.into() {
[INFO] [stdout]    |                                     ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] 
[INFO] [stdout] error[E0029]: only `char` and numeric types are allowed in range patterns
[INFO] [stdout]   --> src/lib.rs:481:48
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Input { key: Key::Char('e'), ctrl: true .. } => textarea.scroll((1, 0)),
[INFO] [stdout]    |                                                ^^^^ this is of type `bool` but it should be `char` or numeric
[INFO] [stdout] 
[INFO] [stdout] error[E0027]: pattern does not mention field `alt`
[INFO] [stdout]   --> src/lib.rs:481:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Input { key: Key::Char('e'), ctrl: true .. } => textarea.scroll((1, 0)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `alt`
[INFO] [stdout]    |
[INFO] [stdout] help: include the missing field in the pattern
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Input { key: Key::Char('e'), ctrl: true .., alt } => textarea.scroll((1, 0)),
[INFO] [stdout]    |                                                       ~~~~~~~
[INFO] [stdout] help: if you don't care about this missing field, you can explicitly ignore it
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Input { key: Key::Char('e'), ctrl: true .., .. } => textarea.scroll((1, 0)),
[INFO] [stdout]    |                                                       ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0029]: only `char` and numeric types are allowed in range patterns
[INFO] [stdout]   --> src/lib.rs:482:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |             Input { key: Key::Char('y'), ctrl: true .. } => textarea.scroll((-1, 0)),
[INFO] [stdout]    |                                                ^^^^ this is of type `bool` but it should be `char` or numeric
[INFO] [stdout] 
[INFO] [stdout] error[E0027]: pattern does not mention field `alt`
[INFO] [stdout]   --> src/lib.rs:482:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |             Input { key: Key::Char('y'), ctrl: true .. } => textarea.scroll((-1, 0)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `alt`
[INFO] [stdout]    |
[INFO] [stdout] help: include the missing field in the pattern
[INFO] [stdout]    |
[INFO] [stdout] 52 |             Input { key: Key::Char('y'), ctrl: true .., alt } => textarea.scroll((-1, 0)),
[INFO] [stdout]    |                                                       ~~~~~~~
[INFO] [stdout] help: if you don't care about this missing field, you can explicitly ignore it
[INFO] [stdout]    |
[INFO] [stdout] 52 |             Input { key: Key::Char('y'), ctrl: true .., .. } => textarea.scroll((-1, 0)),
[INFO] [stdout]    |                                                       ~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Home` found for enum `CursorMove` in the current scope
[INFO] [stdout]   --> src/lib.rs:459:83
[INFO] [stdout]    |
[INFO] [stdout] 29 |             Input { key: Key::Char('^'), .. } => textarea.move_cursor(CursorMove::Home),
[INFO] [stdout]    |                                                                                   ^^^^ variant or associated item not found in `CursorMove`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Home` found for enum `CursorMove` in the current scope
[INFO] [stdout]   --> src/lib.rs:471:50
[INFO] [stdout]    |
[INFO] [stdout] 41 |                 textarea.move_cursor(CursorMove::Home);
[INFO] [stdout]    |                                                  ^^^^ variant or associated item not found in `CursorMove`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:485:37
[INFO] [stdout]    |
[INFO] [stdout] 3  | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_433_0() {
[INFO] [stdout]    |                                      ----------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 55 |         Mode::Insert => match read()?.into() {
[INFO] [stdout]    |                                     ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 12 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0027, E0029, E0277, E0586, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0027`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 545) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `your_backend`
[INFO] [stdout]  --> src/lib.rs:547:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use your_backend::KeyDown;
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of undeclared crate or module `your_backend`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 526) stdout ----
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:538:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn read_next_key() -> (KeyDown, bool, bool) {
[INFO] [stdout]    |        -------------      ^^^^^^^^^^^^^^^^^^^^^ expected `(KeyDown, bool, bool)`, found `()`
[INFO] [stdout]    |        |
[INFO] [stdout]    |        implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:  expected tuple `(KeyDown, bool, bool)`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 566) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]  --> src/lib.rs:567:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut textarea = ...;
[INFO] [stdout]   |                    ^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut textarea = ..;
[INFO] [stdout]   |                    ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut textarea = ..=;
[INFO] [stdout]   |                    ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]  --> src/lib.rs:567:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut textarea = ...;
[INFO] [stdout]   |                    ^^^ help: use `..` instead
[INFO] [stdout]   |
[INFO] [stdout]   = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `your_backend`
[INFO] [stdout]   --> src/lib.rs:574:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |     if key == your_backend::KeyDown::Esc {
[INFO] [stdout]    |               ^^^^^^^^^^^^ use of undeclared crate or module `your_backend`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `your_backend`
[INFO] [stdout]  --> src/lib.rs:573:28
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let (key, ctrl, alt) = your_backend::read_next_key();
[INFO] [stdout]   |                            ^^^^^^^^^^^^ use of undeclared crate or module `your_backend`
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `keydown_to_input` in this scope
[INFO] [stdout]   --> src/lib.rs:577:20
[INFO] [stdout]    |
[INFO] [stdout] 13 |     textarea.input(keydown_to_input(key, ctrl, alt));
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 587) stdout ----
[INFO] [stdout] error: unexpected token: `...`
[INFO] [stdout]   --> src/lib.rs:600:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rects = ...;
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `..` for an exclusive range
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rects = ..;
[INFO] [stdout]    |                     ~~
[INFO] [stdout] help: or `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rects = ..=;
[INFO] [stdout]    |                     ~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0586]: inclusive range with no end
[INFO] [stdout]   --> src/lib.rs:600:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let rects = ...;
[INFO] [stdout]    |                     ^^^ help: use `..` instead
[INFO] [stdout]    |
[INFO] [stdout]    = note: inclusive ranges must be bounded at the end (`..=b` or `a..=b`)
[INFO] [stdout] 
[INFO] [stdout] error: `match` arm body without braces
[INFO] [stdout]   --> src/lib.rs:610:58
[INFO] [stdout]    |
[INFO] [stdout] 26 |         Input { key: Key::Char('s'), ctrl: true, .. } => focused = (focused + 1) % 2;
[INFO] [stdout]    |                                                       -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ this statement is not surrounded by a body
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       while parsing the `match` arm starting here
[INFO] [stdout]    |
[INFO] [stdout] help: replace `;` with `,` to end a `match` arm expression
[INFO] [stdout]    |
[INFO] [stdout] 26 |         Input { key: Key::Char('s'), ctrl: true, .. } => focused = (focused + 1) % 2,
[INFO] [stdout]    |                                                                                     ~
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `term` in this scope
[INFO] [stdout]   --> src/lib.rs:599:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     term.draw(|f| {
[INFO] [stdout]    |     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:608:17
[INFO] [stdout]    |
[INFO] [stdout] 3  | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_587_0() {
[INFO] [stdout]    |                                      ----------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 24 |     match read()?.into() {
[INFO] [stdout]    |                 ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromResidual<Result<Infallible, std::io::Error>>` is not implemented for `()`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0425, E0586.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 118)
[INFO] [stdout]     src/lib.rs - (line 202)
[INFO] [stdout]     src/lib.rs - (line 208)
[INFO] [stdout]     src/lib.rs - (line 216)
[INFO] [stdout]     src/lib.rs - (line 232)
[INFO] [stdout]     src/lib.rs - (line 241)
[INFO] [stdout]     src/lib.rs - (line 248)
[INFO] [stdout]     src/lib.rs - (line 255)
[INFO] [stdout]     src/lib.rs - (line 266)
[INFO] [stdout]     src/lib.rs - (line 279)
[INFO] [stdout]     src/lib.rs - (line 288)
[INFO] [stdout]     src/lib.rs - (line 299)
[INFO] [stdout]     src/lib.rs - (line 308)
[INFO] [stdout]     src/lib.rs - (line 314)
[INFO] [stdout]     src/lib.rs - (line 330)
[INFO] [stdout]     src/lib.rs - (line 362)
[INFO] [stdout]     src/lib.rs - (line 433)
[INFO] [stdout]     src/lib.rs - (line 501)
[INFO] [stdout]     src/lib.rs - (line 526)
[INFO] [stdout]     src/lib.rs - (line 545)
[INFO] [stdout]     src/lib.rs - (line 566)
[INFO] [stdout]     src/lib.rs - (line 587)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 63 passed; 22 failed; 1 ignored; 0 measured; 0 filtered out; finished in 31.88s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "f28c33b7cb2d3c81556e558ea680a939cf26053c4b6c3e87e96c962f828f8222", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f28c33b7cb2d3c81556e558ea680a939cf26053c4b6c3e87e96c962f828f8222", kill_on_drop: false }`
[INFO] [stdout] f28c33b7cb2d3c81556e558ea680a939cf26053c4b6c3e87e96c962f828f8222
