[INFO] cloning repository https://github.com/awesomerustgenius/cursr
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/awesomerustgenius/cursr" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fawesomerustgenius%2Fcursr", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fawesomerustgenius%2Fcursr'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7621957ac37b7ba242df03dab08a2bab024797d8
[INFO] checking awesomerustgenius/cursr against try#59a256151e578f525a26127f2c3e3a6c7e2982ca for pr-149291-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fawesomerustgenius%2Fcursr" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/awesomerustgenius/cursr
[INFO] finished tweaking git repo https://github.com/awesomerustgenius/cursr
[INFO] tweaked toml for git repo https://github.com/awesomerustgenius/cursr written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/awesomerustgenius/cursr on toolchain 59a256151e578f525a26127f2c3e3a6c7e2982ca
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+59a256151e578f525a26127f2c3e3a6c7e2982ca" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/awesomerustgenius/cursr 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" "+59a256151e578f525a26127f2c3e3a6c7e2982ca" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking awesomerustgenius/cursr against try#59a256151e578f525a26127f2c3e3a6c7e2982ca for pr-149291-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fawesomerustgenius%2Fcursr" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/awesomerustgenius/cursr
[INFO] finished tweaking git repo https://github.com/awesomerustgenius/cursr
[INFO] tweaked toml for git repo https://github.com/awesomerustgenius/cursr written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/awesomerustgenius/cursr on toolchain 59a256151e578f525a26127f2c3e3a6c7e2982ca
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+59a256151e578f525a26127f2c3e3a6c7e2982ca" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/awesomerustgenius/cursr 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" "+59a256151e578f525a26127f2c3e3a6c7e2982ca" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded termion v4.0.5
[INFO] [stderr]   Downloaded numtoa v0.2.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+59a256151e578f525a26127f2c3e3a6c7e2982ca" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2c95261da94985a1cc2437153a7b845b040d6866faae2c53ab4db7d48aa711e2
[INFO] running `Command { std: "docker" "start" "-a" "2c95261da94985a1cc2437153a7b845b040d6866faae2c53ab4db7d48aa711e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2c95261da94985a1cc2437153a7b845b040d6866faae2c53ab4db7d48aa711e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c95261da94985a1cc2437153a7b845b040d6866faae2c53ab4db7d48aa711e2", kill_on_drop: false }`
[INFO] [stdout] 2c95261da94985a1cc2437153a7b845b040d6866faae2c53ab4db7d48aa711e2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+59a256151e578f525a26127f2c3e3a6c7e2982ca" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 20398a050206a9db8165bb1a2d44475609288c01c73bc5916877a1b277c7c621
[INFO] running `Command { std: "docker" "start" "-a" "20398a050206a9db8165bb1a2d44475609288c01c73bc5916877a1b277c7c621", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]     Checking numtoa v0.2.4
[INFO] [stderr]     Checking termion v4.0.5
[INFO] [stderr]     Checking myTerm1 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: format argument must be a string literal
[INFO] [stdout]   --> src/events/events.rs:28:34
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a string literal to format with
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", "{}", Goto(a, b));
[INFO] [stdout]    |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: multiple unused formatting arguments
[INFO] [stdout]   --> src/viewer/viewer.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             "Welcome to super text viewer \r{} ",
[INFO] [stdout]    |             ------------------------------------ multiple missing formatting specifiers
[INFO] [stdout] 62 |             color::Bg(Black),
[INFO] [stdout] 63 |             color::Fg(White),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ argument never used
[INFO] [stdout] 64 |             style::Reset,
[INFO] [stdout]    |             ^^^^^^^^^^^^ argument never used
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider adding 2 format specifiers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: format argument must be a string literal
[INFO] [stdout]   --> src/events/events.rs:28:34
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might be missing a string literal to format with
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", "{}", Goto(a, b));
[INFO] [stdout]    |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: multiple unused formatting arguments
[INFO] [stdout]   --> src/viewer/viewer.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             "Welcome to super text viewer \r{} ",
[INFO] [stdout]    |             ------------------------------------ multiple missing formatting specifiers
[INFO] [stdout] 62 |             color::Bg(Black),
[INFO] [stdout] 63 |             color::Fg(White),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ argument never used
[INFO] [stdout] 64 |             style::Reset,
[INFO] [stdout]    |             ^^^^^^^^^^^^ argument never used
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider adding 2 format specifiers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `bin` in the crate root
[INFO] [stdout]   --> src/main.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{bin::viewer::TextViewer, events::events::mouse_events};
[INFO] [stdout]    |             ^^^ could not find `bin` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Goto`
[INFO] [stdout]  --> src/events/events.rs:4:37
[INFO] [stdout]   |
[INFO] [stdout] 4 |     cursor::{self, DetectCursorPos, Goto},
[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 import: `read_to_string`
[INFO] [stdout]  --> src/viewer/viewer.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ::std::fs::{self, read_to_string};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Left`
[INFO] [stdout]  --> src/viewer/viewer.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::termion::cursor::{Goto, Left};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `screen` and `scroll`
[INFO] [stdout]   --> src/viewer/viewer.rs:10:74
[INFO] [stdout]    |
[INFO] [stdout] 10 |     clear, color, cursor, event::Key, input::TermRead, raw::IntoRawMode, screen, scroll, style,
[INFO] [stdout]    |                                                                          ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `termion::terminal_size`
[INFO] [stdout]   --> src/viewer/viewer.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use termion::terminal_size;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PathBuf` and `self`
[INFO] [stdout]  --> src/main.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 |     path::{self, Path, PathBuf},
[INFO] [stdout]   |            ^^^^        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `bin` in the crate root
[INFO] [stdout]   --> src/main.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{bin::viewer::TextViewer, events::events::mouse_events};
[INFO] [stdout]    |             ^^^ could not find `bin` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Goto`
[INFO] [stdout]  --> src/events/events.rs:4:37
[INFO] [stdout]   |
[INFO] [stdout] 4 |     cursor::{self, DetectCursorPos, Goto},
[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 import: `read_to_string`
[INFO] [stdout]  --> src/viewer/viewer.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ::std::fs::{self, read_to_string};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Left`
[INFO] [stdout]  --> src/viewer/viewer.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ::termion::cursor::{Goto, Left};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `screen` and `scroll`
[INFO] [stdout]   --> src/viewer/viewer.rs:10:74
[INFO] [stdout]    |
[INFO] [stdout] 10 |     clear, color, cursor, event::Key, input::TermRead, raw::IntoRawMode, screen, scroll, style,
[INFO] [stdout]    |                                                                          ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `termion::terminal_size`
[INFO] [stdout]   --> src/viewer/viewer.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use termion::terminal_size;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PathBuf` and `self`
[INFO] [stdout]  --> src/main.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 |     path::{self, Path, PathBuf},
[INFO] [stdout]   |            ^^^^        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: cannot write into `&'static str`
[INFO] [stdout]   --> src/events/events.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                     -------^^^^------------- method not found in `&'static str`
[INFO] [stdout]    |
[INFO] [stdout] note: must implement `io::Write`, `fmt::Write`, or have a `write_fmt` method
[INFO] [stdout]   --> src/events/events.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout] help: a writer is needed before this format string
[INFO] [stdout]   --> src/events/events.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                            ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: cannot write into `&'static str`
[INFO] [stdout]   --> src/events/events.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                     -------^^^^------------- method not found in `&'static str`
[INFO] [stdout]    |
[INFO] [stdout] note: must implement `io::Write`, `fmt::Write`, or have a `write_fmt` method
[INFO] [stdout]   --> src/events/events.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout] help: a writer is needed before this format string
[INFO] [stdout]   --> src/events/events.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     write!("{}", Goto(a, b));
[INFO] [stdout]    |                            ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/events/events.rs:30:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |                ::termion::event::Event::Mouse(mouse_event) => match mouse_event {
[INFO] [stdout]    |  _____________________________________________________________-
[INFO] [stdout] 27 | |                  MouseEvent::Hold(a, b) | MouseEvent::Press(_, a, b) | MouseEvent::Release(a, b) => {
[INFO] [stdout] 28 | |                      write!("{}", Goto(a, b));
[INFO] [stdout] 29 | |                      let (x, y) = stdout.cursor_pos().unwrap();
[INFO] [stdout] 30 | |/                     write!(
[INFO] [stdout] 31 | ||                         stdout,
[INFO] [stdout] 32 | ||                         "{}{} Cursor is at ({}, {}){}",
[INFO] [stdout] 33 | ||                         cursor::Goto(5, 5),
[INFO] [stdout] ...  ||
[INFO] [stdout] 37 | ||                         cursor::Goto(a, b)
[INFO] [stdout] 38 | ||                     )
[INFO] [stdout]    | ||_____________________^ expected `()`, found `Result<(), Error>`
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | |              },
[INFO] [stdout]    | |______________- expected this to be `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected unit type `()`
[INFO] [stdout]                    found enum `Result<(), std::io::Error>`
[INFO] [stdout]    = note: this error originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider using a semicolon here
[INFO] [stdout]    |
[INFO] [stdout] 41 |             };,
[INFO] [stdout]    |              +
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Result<(), std::io::Error>` value, panicking if the value is a `Result::Err`
[INFO] [stdout]    |
[INFO] [stdout] 38 |                     ).expect("REASON")
[INFO] [stdout]    |                      +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/events/events.rs:30:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |                ::termion::event::Event::Mouse(mouse_event) => match mouse_event {
[INFO] [stdout]    |  _____________________________________________________________-
[INFO] [stdout] 27 | |                  MouseEvent::Hold(a, b) | MouseEvent::Press(_, a, b) | MouseEvent::Release(a, b) => {
[INFO] [stdout] 28 | |                      write!("{}", Goto(a, b));
[INFO] [stdout] 29 | |                      let (x, y) = stdout.cursor_pos().unwrap();
[INFO] [stdout] 30 | |/                     write!(
[INFO] [stdout] 31 | ||                         stdout,
[INFO] [stdout] 32 | ||                         "{}{} Cursor is at ({}, {}){}",
[INFO] [stdout] 33 | ||                         cursor::Goto(5, 5),
[INFO] [stdout] ...  ||
[INFO] [stdout] 37 | ||                         cursor::Goto(a, b)
[INFO] [stdout] 38 | ||                     )
[INFO] [stdout]    | ||_____________________^ expected `()`, found `Result<(), Error>`
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | |              },
[INFO] [stdout]    | |______________- expected this to be `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected unit type `()`
[INFO] [stdout]                    found enum `Result<(), std::io::Error>`
[INFO] [stdout]    = note: this error originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider using a semicolon here
[INFO] [stdout]    |
[INFO] [stdout] 41 |             };,
[INFO] [stdout]    |              +
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Result<(), std::io::Error>` value, panicking if the value is a `Result::Err`
[INFO] [stdout]    |
[INFO] [stdout] 38 |                     ).expect("REASON")
[INFO] [stdout]    |                      +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/viewer/viewer.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |         if self.document_len < self.terminal_size {
[INFO] [stdout]    |            -----------------   ^^^^^^^^^^^^^^^^^^ expected `usize`, found `Coordinates`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            expected because this is `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/viewer/viewer.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |         if self.document_len < self.terminal_size {
[INFO] [stdout]    |            -----------------   ^^^^^^^^^^^^^^^^^^ expected `usize`, found `Coordinates`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            expected because this is `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a method that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> src/viewer/viewer.rs:103:51
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn run(&mut self) {
[INFO] [stdout]     |     --------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] 103 |         let mut std_out = stdout().into_raw_mode()?;
[INFO] [stdout]     |                                                   ^ cannot use the `?` operator in a method that returns `()`
[INFO] [stdout]     |
[INFO] [stdout] help: consider adding return type
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn run(&mut self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |                           +++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a method that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]    --> src/viewer/viewer.rs:103:51
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn run(&mut self) {
[INFO] [stdout]     |     --------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] 103 |         let mut std_out = stdout().into_raw_mode()?;
[INFO] [stdout]     |                                                   ^ cannot use the `?` operator in a method that returns `()`
[INFO] [stdout]     |
[INFO] [stdout] help: consider adding return type
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn run(&mut self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |                           +++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:136:33
[INFO] [stdout]     |
[INFO] [stdout] 136 |         if self.cursor_position < self.terminal_size.x {
[INFO] [stdout]     |            -------------------- ^ -------------------- usize
[INFO] [stdout]     |            |
[INFO] [stdout]     |            Coordinates
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialOrd<usize>` might be missing for `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | pub struct Coordinates {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialOrd<usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:136:33
[INFO] [stdout]     |
[INFO] [stdout] 136 |         if self.cursor_position < self.terminal_size.x {
[INFO] [stdout]     |            -------------------- ^ -------------------- usize
[INFO] [stdout]     |            |
[INFO] [stdout]     |            Coordinates
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `PartialOrd<usize>` might be missing for `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | pub struct Coordinates {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialOrd<usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0368]: binary assignment operation `+=` cannot be applied to type `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |             self.cursor_position += 1;
[INFO] [stdout]     |             --------------------^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             cannot use `+=` on type `Coordinates`
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `AddAssign<{integer}>` might be missing for `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | pub struct Coordinates {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^ must implement `AddAssign<{integer}>`
[INFO] [stdout] note: the trait `AddAssign` must be implemented
[INFO] [stdout]    --> /rustc/59a256151e578f525a26127f2c3e3a6c7e2982ca/library/core/src/ops/arith.rs:769:0
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0368]: binary assignment operation `+=` cannot be applied to type `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |             self.cursor_position += 1;
[INFO] [stdout]     |             --------------------^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             cannot use `+=` on type `Coordinates`
[INFO] [stdout]     |
[INFO] [stdout] note: an implementation of `AddAssign<{integer}>` might be missing for `Coordinates`
[INFO] [stdout]    --> src/viewer/viewer.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | pub struct Coordinates {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^ must implement `AddAssign<{integer}>`
[INFO] [stdout] note: the trait `AddAssign` must be implemented
[INFO] [stdout]    --> /rustc/59a256151e578f525a26127f2c3e3a6c7e2982ca/library/core/src/ops/arith.rs:769:0
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> src/main.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         process::exit(0)?;
[INFO] [stdout]    |         ----------------^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         unreachable call
[INFO] [stdout]    |         any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[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/main.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn main() {
[INFO] [stdout]    | --------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 16 |         process::exit(0)?;
[INFO] [stdout]    |                         ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         process::exit(0)?;
[INFO] [stdout]    |         ----------------^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         unreachable call
[INFO] [stdout]    |         any code following this expression is unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> src/main.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         process::exit(0)?;
[INFO] [stdout]    |         ----------------^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         unreachable call
[INFO] [stdout]    |         any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[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/main.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn main() {
[INFO] [stdout]    | --------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 16 |         process::exit(0)?;
[INFO] [stdout]    |                         ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         process::exit(0)?;
[INFO] [stdout]    |         ----------------^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         unreachable call
[INFO] [stdout]    |         any code following this expression is unreachable
[INFO] [stdout] 
[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/main.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn main() {
[INFO] [stdout]    | --------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 21 |         process::exit(0)?;
[INFO] [stdout]    |                         ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout] 
[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/main.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn main() {
[INFO] [stdout]    | --------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 21 |         process::exit(0)?;
[INFO] [stdout]    |                         ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/viewer/viewer.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let mut doc_len = &file_handle.lines().count();
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/viewer/viewer.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let mut doc_len = &file_handle.lines().count();
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0368, E0369, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0368, E0369, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `myTerm1` (bin "myTerm1" test) due to 11 previous errors; 9 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `myTerm1` (bin "myTerm1") due to 11 previous errors; 9 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "20398a050206a9db8165bb1a2d44475609288c01c73bc5916877a1b277c7c621", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "20398a050206a9db8165bb1a2d44475609288c01c73bc5916877a1b277c7c621", kill_on_drop: false }`
[INFO] [stdout] 20398a050206a9db8165bb1a2d44475609288c01c73bc5916877a1b277c7c621
