[INFO] fetching crate peep 0.1.4... [INFO] testing peep-0.1.4 against beta-2022-02-22 for beta-1.60-1 [INFO] extracting crate peep 0.1.4 into /workspace/builds/worker-50/source [INFO] validating manifest of crates.io crate peep 0.1.4 on toolchain beta-2022-02-22 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate peep 0.1.4 [INFO] finished tweaking crates.io crate peep 0.1.4 [INFO] tweaked toml for crates.io crate peep 0.1.4 written to /workspace/builds/worker-50/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fad04045a36c95cd232cc504353b44232f49fa6b7a1b4ba93d67070d5da320c5 [INFO] running `Command { std: "docker" "start" "-a" "fad04045a36c95cd232cc504353b44232f49fa6b7a1b4ba93d67070d5da320c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fad04045a36c95cd232cc504353b44232f49fa6b7a1b4ba93d67070d5da320c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fad04045a36c95cd232cc504353b44232f49fa6b7a1b4ba93d67070d5da320c5", kill_on_drop: false }` [INFO] [stdout] fad04045a36c95cd232cc504353b44232f49fa6b7a1b4ba93d67070d5da320c5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 94567c590f7a6d53bd4f6ebf1febd78646ceea1e6bea396ba44955d87f2db248 [INFO] running `Command { std: "docker" "start" "-a" "94567c590f7a6d53bd4f6ebf1febd78646ceea1e6bea396ba44955d87f2db248", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.119 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling futures v0.1.31 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling nix v0.11.1 [INFO] [stderr] Compiling numtoa v0.1.0 [INFO] [stderr] Compiling unicode-width v0.1.9 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling aho-corasick v0.7.18 [INFO] [stderr] Compiling getopts v0.2.21 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling regex v1.5.4 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.37 [INFO] [stderr] Compiling num_cpus v1.13.1 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling nix v0.23.1 [INFO] [stderr] Compiling termios v0.3.3 [INFO] [stderr] Compiling termion v1.5.6 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling inotify v0.6.1 [INFO] [stderr] Compiling ctrlc v3.2.1 [INFO] [stderr] Compiling peep v0.1.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `AsRawFd` is imported redundantly [INFO] [stdout] --> src/app.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 7 | use std::os::unix::io::AsRawFd; [INFO] [stdout] | -------------------------- the item `AsRawFd` is already imported here [INFO] [stdout] ... [INFO] [stdout] 79 | use std::os::unix::io::AsRawFd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/filewatch/mod.rs:24:73 [INFO] [stdout] | [INFO] [stdout] 24 | fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] 24 + fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/filewatch/mod.rs:32:73 [INFO] [stdout] | [INFO] [stdout] 32 | fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 32 - fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] 32 + fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/keybind.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | '1'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/keybind.rs:175:20 [INFO] [stdout] | [INFO] [stdout] 175 | '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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:225:14 [INFO] [stdout] | [INFO] [stdout] 225 | 0...2 => format!("{:>2}", line_number + 1), [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:239:14 [INFO] [stdout] | [INFO] [stdout] 239 | 0...2 => " ".to_owned(), [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:448:14 [INFO] [stdout] | [INFO] [stdout] 448 | 0...99 => 2, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:449:16 [INFO] [stdout] | [INFO] [stdout] 449 | 100...999 => 3, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:450:17 [INFO] [stdout] | [INFO] [stdout] 450 | 1000...9999 => 4, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 27 | istream: &'a mut Read, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 - istream: &'a mut Read, [INFO] [stdout] 27 + istream: &'a mut dyn Read, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | parser: &'a mut keybind::KeyParser, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 28 - parser: &'a mut keybind::KeyParser, [INFO] [stdout] 28 + parser: &'a mut dyn keybind::KeyParser, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | searcher: Rc>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 - searcher: Rc>, [INFO] [stdout] 145 + searcher: Rc>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:35:25 [INFO] [stdout] | [INFO] [stdout] 35 | writer: Box>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 35 - writer: Box>, [INFO] [stdout] 35 + writer: Box>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:43:28 [INFO] [stdout] | [INFO] [stdout] 43 | hlsearcher: Rc>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 - hlsearcher: Rc>, [INFO] [stdout] 43 + hlsearcher: Rc>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | termsize_getter: Box io::Result<(u16, u16)>>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 45 - termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stdout] 45 + termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:32:33 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] 32 + pub fn new(istream: &'a mut dyn Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:32:55 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] 32 + pub fn new(istream: &'a mut Read, parser: &'a mut dyn keybind::KeyParser) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:463:67 [INFO] [stdout] | [INFO] [stdout] 463 | pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 463 - pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stdout] 463 + pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filewatch/mod.rs:44:27 [INFO] [stdout] | [INFO] [stdout] 44 | let filewatcher: &mut FileWatch = if file_path == "-" { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 44 - let filewatcher: &mut FileWatch = if file_path == "-" { [INFO] [stdout] 44 + let filewatcher: &mut dyn FileWatch = if file_path == "-" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | let mut bufreader = BufReader::new(file); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 11.65s [INFO] running `Command { std: "docker" "inspect" "94567c590f7a6d53bd4f6ebf1febd78646ceea1e6bea396ba44955d87f2db248", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "94567c590f7a6d53bd4f6ebf1febd78646ceea1e6bea396ba44955d87f2db248", kill_on_drop: false }` [INFO] [stdout] 94567c590f7a6d53bd4f6ebf1febd78646ceea1e6bea396ba44955d87f2db248 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5e4148ec2be5bc57efcd56ff5e475725ce4bb935de0a65b61f9c64577419c37b [INFO] running `Command { std: "docker" "start" "-a" "5e4148ec2be5bc57efcd56ff5e475725ce4bb935de0a65b61f9c64577419c37b", kill_on_drop: false }` [INFO] [stdout] warning: the item `AsRawFd` is imported redundantly [INFO] [stdout] --> src/app.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 7 | use std::os::unix::io::AsRawFd; [INFO] [stdout] | -------------------------- the item `AsRawFd` is already imported here [INFO] [stdout] ... [INFO] [stdout] 79 | use std::os::unix::io::AsRawFd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/filewatch/mod.rs:24:73 [INFO] [stdout] | [INFO] [stdout] 24 | fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] 24 + fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/filewatch/mod.rs:32:73 [INFO] [stdout] | [INFO] [stdout] 32 | fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 32 - fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] 32 + fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/keybind.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | '1'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/keybind.rs:175:20 [INFO] [stdout] | [INFO] [stdout] 175 | '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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:225:14 [INFO] [stdout] | [INFO] [stdout] 225 | 0...2 => format!("{:>2}", line_number + 1), [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:239:14 [INFO] [stdout] | [INFO] [stdout] 239 | 0...2 => " ".to_owned(), [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:448:14 [INFO] [stdout] | [INFO] [stdout] 448 | 0...99 => 2, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:449:16 [INFO] [stdout] | [INFO] [stdout] 449 | 100...999 => 3, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:450:17 [INFO] [stdout] | [INFO] [stdout] 450 | 1000...9999 => 4, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 27 | istream: &'a mut Read, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 - istream: &'a mut Read, [INFO] [stdout] 27 + istream: &'a mut dyn Read, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | parser: &'a mut keybind::KeyParser, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 28 - parser: &'a mut keybind::KeyParser, [INFO] [stdout] 28 + parser: &'a mut dyn keybind::KeyParser, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | searcher: Rc>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 - searcher: Rc>, [INFO] [stdout] 145 + searcher: Rc>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:35:25 [INFO] [stdout] | [INFO] [stdout] 35 | writer: Box>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 35 - writer: Box>, [INFO] [stdout] 35 + writer: Box>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:43:28 [INFO] [stdout] | [INFO] [stdout] 43 | hlsearcher: Rc>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 - hlsearcher: Rc>, [INFO] [stdout] 43 + hlsearcher: Rc>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | termsize_getter: Box io::Result<(u16, u16)>>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 45 - termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stdout] 45 + termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:32:33 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] 32 + pub fn new(istream: &'a mut dyn Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:32:55 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] 32 + pub fn new(istream: &'a mut Read, parser: &'a mut dyn keybind::KeyParser) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:463:67 [INFO] [stdout] | [INFO] [stdout] 463 | pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 463 - pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stdout] 463 + pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filewatch/mod.rs:44:27 [INFO] [stdout] | [INFO] [stdout] 44 | let filewatcher: &mut FileWatch = if file_path == "-" { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 44 - let filewatcher: &mut FileWatch = if file_path == "-" { [INFO] [stdout] 44 + let filewatcher: &mut dyn FileWatch = if file_path == "-" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | let mut bufreader = BufReader::new(file); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling peep v0.1.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `AsRawFd` is imported redundantly [INFO] [stdout] --> src/app.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 7 | use std::os::unix::io::AsRawFd; [INFO] [stdout] | -------------------------- the item `AsRawFd` is already imported here [INFO] [stdout] ... [INFO] [stdout] 79 | use std::os::unix::io::AsRawFd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/filewatch/mod.rs:24:73 [INFO] [stdout] | [INFO] [stdout] 24 | fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] 24 + fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/filewatch/mod.rs:32:73 [INFO] [stdout] | [INFO] [stdout] 32 | fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 32 - fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] 32 + fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/keybind.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | '1'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/keybind.rs:175:20 [INFO] [stdout] | [INFO] [stdout] 175 | '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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:225:14 [INFO] [stdout] | [INFO] [stdout] 225 | 0...2 => format!("{:>2}", line_number + 1), [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:239:14 [INFO] [stdout] | [INFO] [stdout] 239 | 0...2 => " ".to_owned(), [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:448:14 [INFO] [stdout] | [INFO] [stdout] 448 | 0...99 => 2, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:449:16 [INFO] [stdout] | [INFO] [stdout] 449 | 100...999 => 3, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/pane.rs:450:17 [INFO] [stdout] | [INFO] [stdout] 450 | 1000...9999 => 4, [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 27 | istream: &'a mut Read, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 - istream: &'a mut Read, [INFO] [stdout] 27 + istream: &'a mut dyn Read, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | parser: &'a mut keybind::KeyParser, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 28 - parser: &'a mut keybind::KeyParser, [INFO] [stdout] 28 + parser: &'a mut dyn keybind::KeyParser, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | searcher: Rc>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 - searcher: Rc>, [INFO] [stdout] 145 + searcher: Rc>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:35:25 [INFO] [stdout] | [INFO] [stdout] 35 | writer: Box>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 35 - writer: Box>, [INFO] [stdout] 35 + writer: Box>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:43:28 [INFO] [stdout] | [INFO] [stdout] 43 | hlsearcher: Rc>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 - hlsearcher: Rc>, [INFO] [stdout] 43 + hlsearcher: Rc>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | termsize_getter: Box io::Result<(u16, u16)>>, [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 45 - termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stdout] 45 + termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:32:33 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] 32 + pub fn new(istream: &'a mut dyn Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app.rs:32:55 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stdout] 32 + pub fn new(istream: &'a mut Read, parser: &'a mut dyn keybind::KeyParser) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:105:55 [INFO] [stdout] | [INFO] [stdout] 105 | fn replace_termsize_getter(&mut self, getter: Box io::Result<(u16, u16)>>) { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 105 - fn replace_termsize_getter(&mut self, getter: Box io::Result<(u16, u16)>>) { [INFO] [stdout] 105 + fn replace_termsize_getter(&mut self, getter: Box io::Result<(u16, u16)>>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:463:67 [INFO] [stdout] | [INFO] [stdout] 463 | pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 463 - pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stdout] 463 + pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pane.rs:765:54 [INFO] [stdout] | [INFO] [stdout] 765 | fn gen_sizer(w: u16, h: u16) -> ((u16, u16), Box io::Result<(u16, u16)>>) { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 765 - fn gen_sizer(w: u16, h: u16) -> ((u16, u16), Box io::Result<(u16, u16)>>) { [INFO] [stdout] 765 + fn gen_sizer(w: u16, h: u16) -> ((u16, u16), Box io::Result<(u16, u16)>>) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/filewatch/mod.rs:44:27 [INFO] [stdout] | [INFO] [stdout] 44 | let filewatcher: &mut FileWatch = if file_path == "-" { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 44 - let filewatcher: &mut FileWatch = if file_path == "-" { [INFO] [stdout] 44 + let filewatcher: &mut dyn FileWatch = if file_path == "-" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app.rs:207:17 [INFO] [stdout] | [INFO] [stdout] 207 | let mut bufreader = BufReader::new(file); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.54s [INFO] running `Command { std: "docker" "inspect" "5e4148ec2be5bc57efcd56ff5e475725ce4bb935de0a65b61f9c64577419c37b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5e4148ec2be5bc57efcd56ff5e475725ce4bb935de0a65b61f9c64577419c37b", kill_on_drop: false }` [INFO] [stdout] 5e4148ec2be5bc57efcd56ff5e475725ce4bb935de0a65b61f9c64577419c37b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-50/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] f85714b9dc62c23c960be1ef6649a10f28b13567dd1e11fb146591ccc6079532 [INFO] running `Command { std: "docker" "start" "-a" "f85714b9dc62c23c960be1ef6649a10f28b13567dd1e11fb146591ccc6079532", kill_on_drop: false }` [INFO] [stderr] warning: the item `AsRawFd` is imported redundantly [INFO] [stderr] --> src/app.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 7 | use std::os::unix::io::AsRawFd; [INFO] [stderr] | -------------------------- the item `AsRawFd` is already imported here [INFO] [stderr] ... [INFO] [stderr] 79 | use std::os::unix::io::AsRawFd; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/filewatch/mod.rs:24:73 [INFO] [stderr] | [INFO] [stderr] 24 | fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 24 - fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stderr] 24 + fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/filewatch/mod.rs:32:73 [INFO] [stderr] | [INFO] [stderr] 32 | fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 32 - fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stderr] 32 + fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/keybind.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | '1'...'9' => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/keybind.rs:175:20 [INFO] [stderr] | [INFO] [stderr] 175 | '0'...'9' => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/pane.rs:225:14 [INFO] [stderr] | [INFO] [stderr] 225 | 0...2 => format!("{:>2}", line_number + 1), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/pane.rs:239:14 [INFO] [stderr] | [INFO] [stderr] 239 | 0...2 => " ".to_owned(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/pane.rs:448:14 [INFO] [stderr] | [INFO] [stderr] 448 | 0...99 => 2, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/pane.rs:449:16 [INFO] [stderr] | [INFO] [stderr] 449 | 100...999 => 3, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/pane.rs:450:17 [INFO] [stderr] | [INFO] [stderr] 450 | 1000...9999 => 4, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app.rs:27:22 [INFO] [stderr] | [INFO] [stderr] 27 | istream: &'a mut Read, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 27 - istream: &'a mut Read, [INFO] [stderr] 27 + istream: &'a mut dyn Read, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app.rs:28:21 [INFO] [stderr] | [INFO] [stderr] 28 | parser: &'a mut keybind::KeyParser, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 28 - parser: &'a mut keybind::KeyParser, [INFO] [stderr] 28 + parser: &'a mut dyn keybind::KeyParser, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app.rs:145:26 [INFO] [stderr] | [INFO] [stderr] 145 | searcher: Rc>, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 145 - searcher: Rc>, [INFO] [stderr] 145 + searcher: Rc>, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pane.rs:35:25 [INFO] [stderr] | [INFO] [stderr] 35 | writer: Box>, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 35 - writer: Box>, [INFO] [stderr] 35 + writer: Box>, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pane.rs:43:28 [INFO] [stderr] | [INFO] [stderr] 43 | hlsearcher: Rc>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 43 - hlsearcher: Rc>, [INFO] [stderr] 43 + hlsearcher: Rc>, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pane.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 45 - termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stderr] 45 + termsize_getter: Box io::Result<(u16, u16)>>, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app.rs:32:33 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stderr] 32 + pub fn new(istream: &'a mut dyn Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app.rs:32:55 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 32 - pub fn new(istream: &'a mut Read, parser: &'a mut keybind::KeyParser) -> Self { [INFO] [stderr] 32 + pub fn new(istream: &'a mut Read, parser: &'a mut dyn keybind::KeyParser) -> Self { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pane.rs:463:67 [INFO] [stderr] | [INFO] [stderr] 463 | pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 463 - pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stderr] 463 + pub fn set_highlight_searcher(&mut self, searcher: Rc>) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/filewatch/mod.rs:44:27 [INFO] [stderr] | [INFO] [stderr] 44 | let filewatcher: &mut FileWatch = if file_path == "-" { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 44 - let filewatcher: &mut FileWatch = if file_path == "-" { [INFO] [stderr] 44 + let filewatcher: &mut dyn FileWatch = if file_path == "-" { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/app.rs:207:17 [INFO] [stderr] | [INFO] [stderr] 207 | let mut bufreader = BufReader::new(file); [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pane.rs:105:55 [INFO] [stderr] | [INFO] [stderr] 105 | fn replace_termsize_getter(&mut self, getter: Box io::Result<(u16, u16)>>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 105 - fn replace_termsize_getter(&mut self, getter: Box io::Result<(u16, u16)>>) { [INFO] [stderr] 105 + fn replace_termsize_getter(&mut self, getter: Box io::Result<(u16, u16)>>) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pane.rs:765:54 [INFO] [stderr] | [INFO] [stderr] 765 | fn gen_sizer(w: u16, h: u16) -> ((u16, u16), Box io::Result<(u16, u16)>>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 765 - fn gen_sizer(w: u16, h: u16) -> ((u16, u16), Box io::Result<(u16, u16)>>) { [INFO] [stderr] 765 + fn gen_sizer(w: u16, h: u16) -> ((u16, u16), Box io::Result<(u16, u16)>>) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `peep` (lib) generated 21 warnings [INFO] [stderr] warning: `peep` (lib test) generated 23 warnings (21 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/peep-fcfaeb6142bc79a9) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test pane::tests::test_goto_horizontal_line ... ok [INFO] [stdout] test keybind::tests::test_keybind_search ... ok [INFO] [stdout] test keybind::tests::test_keybind_command ... ok [INFO] [stdout] test keybind::tests::test_keybind_number ... ok [INFO] [stdout] test pane::tests::test_goto_vertical_lines ... ok [INFO] [stdout] test pane::tests::test_limit_bottom_y ... ok [INFO] [stdout] test pane::tests::test_limit_right_x ... ok [INFO] [stdout] test pane::tests::test_load ... ok [INFO] [stdout] test pane::tests::test_range_of_visible_lines ... ok [INFO] [stdout] test pane::tests::test_scroll_left_right ... ok [INFO] [stdout] test pane::tests::test_scroll_up_down ... ok [INFO] [stdout] test pane::tests::test_set_height ... ok [INFO] [stdout] test pane::tests::test_set_highlight_searcher ... ok [INFO] [stdout] test pane::tests::test_set_message ... ok [INFO] [stdout] test pane::tests::test_show_highlight ... ok [INFO] [stdout] test search::tests::test_plane ... ok [INFO] [stdout] test pane::tests::test_show_line_number ... ok [INFO] [stdout] test tab::tests::test_tab ... ok [INFO] [stdout] test unicode_divide::tests::test_iterator ... ok [INFO] [stdout] test unicode_divide::tests::test_seek ... ok [INFO] [stdout] test search::tests::test_regex ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/peep-cd2670ed8e2dba2f) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests peep [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/filewatch/mod.rs:24:73 [INFO] [stderr] | [INFO] [stderr] 24 | fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 24 - fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stderr] 24 + fn watch(&mut self, timeout: Option) -> io::Result>; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/filewatch/mod.rs:32:73 [INFO] [stderr] | [INFO] [stderr] 32 | fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 32 - fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stderr] 32 + fn watch(&mut self, timeout: Option) -> io::Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/keybind.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | '1'...'9' => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/keybind.rs:175:20 [INFO] [stderr] | [INFO] [stderr] 175 | '0'...'9' => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/pane.rs:225:14 [INFO] [stderr] | [INFO] [stderr] 225 | 0...2 => format!("{:>2}", line_number + 1), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/pane.rs:239:14 [INFO] [stderr] | [INFO] [stderr] 239 | 0...2 => " ".to_owned(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/pane.rs:448:14 [INFO] [stderr] | [INFO] [stderr] 448 | 0...99 => 2, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/pane.rs:449:16 [INFO] [stderr] | [INFO] [stderr] 449 | 100...999 => 3, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/pane.rs:450:17 [INFO] [stderr] | [INFO] [stderr] 450 | 1000...9999 => 4, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: 9 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "f85714b9dc62c23c960be1ef6649a10f28b13567dd1e11fb146591ccc6079532", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f85714b9dc62c23c960be1ef6649a10f28b13567dd1e11fb146591ccc6079532", kill_on_drop: false }` [INFO] [stdout] f85714b9dc62c23c960be1ef6649a10f28b13567dd1e11fb146591ccc6079532