[INFO] fetching crate nixterm 0.1.2...
[INFO] checking nixterm-0.1.2 against master#9e293ae9f8abecb0be5105787d181518c9012a19 for pr-146440-1
[INFO] extracting crate nixterm 0.1.2 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate nixterm 0.1.2
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate nixterm 0.1.2
[INFO] tweaked toml for crates.io crate nixterm 0.1.2 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate nixterm 0.1.2 on toolchain 9e293ae9f8abecb0be5105787d181518c9012a19
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9e293ae9f8abecb0be5105787d181518c9012a19" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9e293ae9f8abecb0be5105787d181518c9012a19" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 26 packages to latest compatible versions
[INFO] [stderr]       Adding nix v0.11.1 (available: v0.31.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9e293ae9f8abecb0be5105787d181518c9012a19" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `nixterm` (manifest) generated 1 warning
[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 nix v0.11.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+9e293ae9f8abecb0be5105787d181518c9012a19" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 83bb4a0fbc06a889c041ddaea5107c39feeb3466d4fa1ef29a466317794681e6
[INFO] running `Command { std: "docker" "start" "-a" "83bb4a0fbc06a889c041ddaea5107c39feeb3466d4fa1ef29a466317794681e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "83bb4a0fbc06a889c041ddaea5107c39feeb3466d4fa1ef29a466317794681e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83bb4a0fbc06a889c041ddaea5107c39feeb3466d4fa1ef29a466317794681e6", kill_on_drop: false }`
[INFO] [stdout] 83bb4a0fbc06a889c041ddaea5107c39feeb3466d4fa1ef29a466317794681e6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+9e293ae9f8abecb0be5105787d181518c9012a19" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a4fc3b6b4e8cfa759da6be3c8df5d95648aaac085fe57e92fcef42fcdab51fed
[INFO] running `Command { std: "docker" "start" "-a" "a4fc3b6b4e8cfa759da6be3c8df5d95648aaac085fe57e92fcef42fcdab51fed", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `nixterm` (manifest) generated 1 warning
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling nix v0.11.1
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking nixterm v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     '0'...'9' => (),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |             '0'...'9' => Ok(Color::Index(
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:211:27
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 30),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:212:27
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 82),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 40),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:221:27
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 92),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:23
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:33
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:43
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:251:15
[INFO] [stdout]     |
[INFO] [stdout] 251 |             32...126 => Key::Char(ch as char),
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | /     /// Turn off canonical mode.
[INFO] [stdout] 161 | |     /// In non-canonical mode the terminal does perform line editing, the input buffer is 4096 characters long,
[INFO] [stdout] 162 | |     /// and timeouts may be set for input.
[INFO] [stdout]     | |_____-------------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | /     /// Set the minimum number of characters for the `Term::read` function to return.
[INFO] [stdout] 166 | |     ///
[INFO] [stdout] 167 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     /// Set the maximum time the `Term::read` function will wait before returning (time in deciseconds)
[INFO] [stdout] 171 | |     ///
[INFO] [stdout] 172 | |     ///
[INFO] [stdout] 173 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     /// Set the character that will signal the stdout buffer should be flushed.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     /// Set an extra end-of-line character
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     /// Set the erase char (typically it will be something like `DEL` by default)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     /// Set the interrupt char, when this character is read the running process will be sent `SIGINT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     /// Set the suspend char, when this character is read the running process will be sent `SIGTSTP`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     /// Set the kill char, when this character is read the running process will be sent `SIGKILL`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     /// Set the quit char, when this character is read the running process will be sent `SIGQUIT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     /// stop showing output until the `start_output` char is reached.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 200 |     /// Set the character the will restart  output, ofter the `stop_output` char.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/term.rs:374:51
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout]     |                                                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 374 -                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout] 374 +                 ansi::Color::Index(x @ 8..=15) => x - 8 ,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:674:12
[INFO] [stdout]     |
[INFO] [stdout] 674 |         if (x > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 674 -         if (x > 0) {
[INFO] [stdout] 674 +         if x > 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:678:19
[INFO] [stdout]     |
[INFO] [stdout] 678 |         } else if (x < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 678 -         } else if (x < 0) {
[INFO] [stdout] 678 +         } else if x < 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:688:12
[INFO] [stdout]     |
[INFO] [stdout] 688 |         if (y > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 688 -         if (y > 0) {
[INFO] [stdout] 688 +         if y > 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:692:19
[INFO] [stdout]     |
[INFO] [stdout] 692 |         } else if (y < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 692 -         } else if (y < 0) {
[INFO] [stdout] 692 +         } else if y < 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `size_of` and `transmute`
[INFO] [stdout]  --> src/util.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::{size_of, transmute};
[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: `std::slice::from_raw_parts`
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::slice::from_raw_parts;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     '0'...'9' => (),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |             '0'...'9' => Ok(Color::Index(
[INFO] [stdout]     |                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:211:27
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 30),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:212:27
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 82),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 40),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:221:27
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 92),
[INFO] [stdout]     |                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:23
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                       ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:33
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                                 ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:43
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:251:15
[INFO] [stdout]     |
[INFO] [stdout] 251 |             32...126 => Key::Char(ch as char),
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | /     /// Turn off canonical mode.
[INFO] [stdout] 161 | |     /// In non-canonical mode the terminal does perform line editing, the input buffer is 4096 characters long,
[INFO] [stdout] 162 | |     /// and timeouts may be set for input.
[INFO] [stdout]     | |_____-------------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | /     /// Set the minimum number of characters for the `Term::read` function to return.
[INFO] [stdout] 166 | |     ///
[INFO] [stdout] 167 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     /// Set the maximum time the `Term::read` function will wait before returning (time in deciseconds)
[INFO] [stdout] 171 | |     ///
[INFO] [stdout] 172 | |     ///
[INFO] [stdout] 173 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     /// Set the character that will signal the stdout buffer should be flushed.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     /// Set an extra end-of-line character
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     /// Set the erase char (typically it will be something like `DEL` by default)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     /// Set the interrupt char, when this character is read the running process will be sent `SIGINT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     /// Set the suspend char, when this character is read the running process will be sent `SIGTSTP`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     /// Set the kill char, when this character is read the running process will be sent `SIGKILL`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     /// Set the quit char, when this character is read the running process will be sent `SIGQUIT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     /// stop showing output until the `start_output` char is reached.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 200 |     /// Set the character the will restart  output, ofter the `stop_output` char.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/term.rs:374:51
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout]     |                                                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 374 -                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout] 374 +                 ansi::Color::Index(x @ 8..=15) => x - 8 ,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:674:12
[INFO] [stdout]     |
[INFO] [stdout] 674 |         if (x > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 674 -         if (x > 0) {
[INFO] [stdout] 674 +         if x > 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:678:19
[INFO] [stdout]     |
[INFO] [stdout] 678 |         } else if (x < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 678 -         } else if (x < 0) {
[INFO] [stdout] 678 +         } else if x < 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:688:12
[INFO] [stdout]     |
[INFO] [stdout] 688 |         if (y > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 688 -         if (y > 0) {
[INFO] [stdout] 688 +         if y > 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:692:19
[INFO] [stdout]     |
[INFO] [stdout] 692 |         } else if (y < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 692 -         } else if (y < 0) {
[INFO] [stdout] 692 +         } else if y < 0  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `size_of` and `transmute`
[INFO] [stdout]  --> src/util.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::{size_of, transmute};
[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: `std::slice::from_raw_parts`
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::slice::from_raw_parts;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:98:32
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&failure::Fail> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/terminfo/errors.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&failure::Fail> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:98:32
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&failure::Fail> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/terminfo/errors.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&failure::Fail> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/events.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                     ------- matches all the relevant values
[INFO] [stdout] 247 |             9 => Key::Tab,
[INFO] [stdout] 248 |             10 | 13 => Key::Enter,
[INFO] [stdout]     |             ^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:701:31
[INFO] [stdout]     |
[INFO] [stdout] 701 |     pub fn default_background(mut self) -> Self {
[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/term.rs:705:31
[INFO] [stdout]     |
[INFO] [stdout] 705 |     pub fn default_foreground(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/events.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[INFO] [stdout]     |                     ------- matches all the relevant values
[INFO] [stdout] 247 |             9 => Key::Tab,
[INFO] [stdout] 248 |             10 | 13 => Key::Enter,
[INFO] [stdout]     |             ^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:701:31
[INFO] [stdout]     |
[INFO] [stdout] 701 |     pub fn default_background(mut self) -> Self {
[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/term.rs:705:31
[INFO] [stdout]     |
[INFO] [stdout] 705 |     pub fn default_foreground(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_u8` is never used
[INFO] [stdout]    --> src/term.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | / impl<'a, O> TermWriter<'a, O>
[INFO] [stdout] 339 | | where
[INFO] [stdout] 340 | |     O: io::Write + AsRawFd + 'a,
[INFO] [stdout]     | |________________________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 419 |       fn write_u8(mut self, x: u8) -> Self {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/errors.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Debug, Clone, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind`
[INFO] [stdout] 12 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/errors.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Debug, Clone, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind`
[INFO] [stdout] 12 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:675:13
[INFO] [stdout]     |
[INFO] [stdout] 675 | /             self.exec(terminfo::ParmRightCursor)
[INFO] [stdout] 676 | |                 .map(|ctx| ctx.arg(x).write(&mut self))
[INFO] [stdout] 677 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 |             let _ = self.exec(terminfo::ParmRightCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:679:13
[INFO] [stdout]     |
[INFO] [stdout] 679 | /             self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout] 680 | |                 .map(|ctx| ctx.arg(-x).write(&mut self))
[INFO] [stdout] 681 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 679 |             let _ = self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             self.exec(terminfo::ParmUpCursor)
[INFO] [stdout] 690 | |                 .map(|ctx| ctx.arg(y).write(&mut self))
[INFO] [stdout] 691 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 689 |             let _ = self.exec(terminfo::ParmUpCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:693:13
[INFO] [stdout]     |
[INFO] [stdout] 693 | /             self.exec(terminfo::ParmDownCursor)
[INFO] [stdout] 694 | |                 .map(|ctx| ctx.arg(-y).write(&mut self))
[INFO] [stdout] 695 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 693 |             let _ = self.exec(terminfo::ParmDownCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/terminfo/errors.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                ^---
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                `Fail` is not local
[INFO] [stdout]    |                                move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind`
[INFO] [stdout] 21 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/terminfo/errors.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                ^---
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                `Display` is not local
[INFO] [stdout]    |                                move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind`
[INFO] [stdout] 21 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/terminfo/lang/executor.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let _ = self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/terminfo/terminfo.rs:290:27
[INFO] [stdout]     |
[INFO] [stdout] 290 |     pub(crate) fn get_ext(&self) -> &Option<TermInfoExt> {
[INFO] [stdout]     |                           ^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |         |       |
[INFO] [stdout]     |                           |         |       the same lifetime is hidden here
[INFO] [stdout]     |                           |         the same lifetime is elided here
[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] 290 |     pub(crate) fn get_ext(&self) -> &Option<TermInfoExt<'_>> {
[INFO] [stdout]     |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_u8` is never used
[INFO] [stdout]    --> src/term.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | / impl<'a, O> TermWriter<'a, O>
[INFO] [stdout] 339 | | where
[INFO] [stdout] 340 | |     O: io::Write + AsRawFd + 'a,
[INFO] [stdout]     | |________________________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 419 |       fn write_u8(mut self, x: u8) -> Self {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/errors.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Debug, Clone, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind`
[INFO] [stdout] 12 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/errors.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Eq, PartialEq, Debug, Clone, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind`
[INFO] [stdout] 12 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:675:13
[INFO] [stdout]     |
[INFO] [stdout] 675 | /             self.exec(terminfo::ParmRightCursor)
[INFO] [stdout] 676 | |                 .map(|ctx| ctx.arg(x).write(&mut self))
[INFO] [stdout] 677 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 |             let _ = self.exec(terminfo::ParmRightCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:679:13
[INFO] [stdout]     |
[INFO] [stdout] 679 | /             self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout] 680 | |                 .map(|ctx| ctx.arg(-x).write(&mut self))
[INFO] [stdout] 681 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 679 |             let _ = self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             self.exec(terminfo::ParmUpCursor)
[INFO] [stdout] 690 | |                 .map(|ctx| ctx.arg(y).write(&mut self))
[INFO] [stdout] 691 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 689 |             let _ = self.exec(terminfo::ParmUpCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:693:13
[INFO] [stdout]     |
[INFO] [stdout] 693 | /             self.exec(terminfo::ParmDownCursor)
[INFO] [stdout] 694 | |                 .map(|ctx| ctx.arg(-y).write(&mut self))
[INFO] [stdout] 695 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 693 |             let _ = self.exec(terminfo::ParmDownCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/terminfo/errors.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                ^---
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                `Fail` is not local
[INFO] [stdout]    |                                move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind`
[INFO] [stdout] 21 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/terminfo/errors.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                ^---
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                `Display` is not local
[INFO] [stdout]    |                                move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind`
[INFO] [stdout] 21 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/terminfo/lang/executor.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let _ = self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/terminfo/terminfo.rs:290:27
[INFO] [stdout]     |
[INFO] [stdout] 290 |     pub(crate) fn get_ext(&self) -> &Option<TermInfoExt> {
[INFO] [stdout]     |                           ^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |         |       |
[INFO] [stdout]     |                           |         |       the same lifetime is hidden here
[INFO] [stdout]     |                           |         the same lifetime is elided here
[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] 290 |     pub(crate) fn get_ext(&self) -> &Option<TermInfoExt<'_>> {
[INFO] [stdout]     |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/term.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     term.println("");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let _ = term.println("");
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/term.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     term.println("");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let _ = term.println("");
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/term.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     term.println("");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let _ = term.println("");
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.14s
[INFO] running `Command { std: "docker" "inspect" "a4fc3b6b4e8cfa759da6be3c8df5d95648aaac085fe57e92fcef42fcdab51fed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a4fc3b6b4e8cfa759da6be3c8df5d95648aaac085fe57e92fcef42fcdab51fed", kill_on_drop: false }`
[INFO] [stdout] a4fc3b6b4e8cfa759da6be3c8df5d95648aaac085fe57e92fcef42fcdab51fed
