[INFO] cloning repository https://github.com/andreymlv/durs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/andreymlv/durs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandreymlv%2Fdurs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandreymlv%2Fdurs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0893979dbce92d3e4f385ea62e42c587725dbf38
[INFO] testing andreymlv/durs against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandreymlv%2Fdurs" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/andreymlv/durs
[INFO] finished tweaking git repo https://github.com/andreymlv/durs
[INFO] tweaked toml for git repo https://github.com/andreymlv/durs written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/andreymlv/durs on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/andreymlv/durs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unicode-truncate v1.1.0
[INFO] [stderr]   Downloaded unicode-ident v1.0.14
[INFO] [stderr]   Downloaded strum v0.26.3
[INFO] [stderr]   Downloaded proc-macro2 v1.0.92
[INFO] [stderr]   Downloaded rustversion v1.0.19
[INFO] [stderr]   Downloaded anstyle-wincon v3.0.6
[INFO] [stderr]   Downloaded crossterm_winapi v0.9.1
[INFO] [stderr]   Downloaded instability v0.3.6
[INFO] [stderr]   Downloaded darling v0.20.10
[INFO] [stderr]   Downloaded redox_syscall v0.5.8
[INFO] [stderr]   Downloaded anyhow v1.0.95
[INFO] [stderr]   Downloaded darling_core v0.20.10
[INFO] [stderr]   Downloaded clap v4.5.23
[INFO] [stderr]   Downloaded compact_str v0.8.1
[INFO] [stderr]   Downloaded signal-hook v0.3.17
[INFO] [stderr]   Downloaded crossterm v0.28.1
[INFO] [stderr]   Downloaded indoc v2.0.5
[INFO] [stderr]   Downloaded foldhash v0.1.4
[INFO] [stderr]   Downloaded clap_builder v4.5.23
[INFO] [stderr]   Downloaded syn v2.0.95
[INFO] [stderr]   Downloaded castaway v0.2.3
[INFO] [stderr]   Downloaded itoa v1.0.14
[INFO] [stderr]   Downloaded errno v0.3.10
[INFO] [stderr]   Downloaded signal-hook-mio v0.2.4
[INFO] [stderr]   Downloaded ident_case v1.0.1
[INFO] [stderr]   Downloaded darling_macro v0.20.10
[INFO] [stderr]   Downloaded quote v1.0.38
[INFO] [stderr]   Downloaded strum_macros v0.26.4
[INFO] [stderr]   Downloaded rustix v0.38.42
[INFO] [stderr]   Downloaded ratatui v0.29.0
[INFO] [stderr]   Downloaded libc v0.2.169
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 694ccf97881f73a52cad2c648c64b065ecd4966b74e51f90f37990908fab2b55
[INFO] running `Command { std: "docker" "start" "-a" "694ccf97881f73a52cad2c648c64b065ecd4966b74e51f90f37990908fab2b55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "694ccf97881f73a52cad2c648c64b065ecd4966b74e51f90f37990908fab2b55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "694ccf97881f73a52cad2c648c64b065ecd4966b74e51f90f37990908fab2b55", kill_on_drop: false }`
[INFO] [stdout] 694ccf97881f73a52cad2c648c64b065ecd4966b74e51f90f37990908fab2b55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ffa9f15bf901a5e11f733bb537ddc2fceb3593aaf4431bb3306e5948a04068e7
[INFO] running `Command { std: "docker" "start" "-a" "ffa9f15bf901a5e11f733bb537ddc2fceb3593aaf4431bb3306e5948a04068e7", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling rustversion v1.0.19
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling rustix v0.38.42
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling foldhash v0.1.4
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling indoc v2.0.5
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling anyhow v1.0.95
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]    Compiling itoa v1.0.14
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling unicode-width v0.2.0
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling clap_builder v4.5.23
[INFO] [stderr]    Compiling syn v2.0.95
[INFO] [stderr]    Compiling castaway v0.2.3
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling darling_core v0.20.10
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling clap v4.5.23
[INFO] [stderr]    Compiling darling_macro v0.20.10
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling darling v0.20.10
[INFO] [stderr]    Compiling instability v0.3.6
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling durs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `fs::DirEntry`
[INFO] [stdout]  --> src/lib.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fs::DirEntry, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/main.rs:57:41
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] 57 |                         KeyCode::Down | KeyCode::Char('j') => app.on_down(),
[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: unreachable pattern
[INFO] [stdout]   --> src/main.rs:58:41
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] 57 |                         KeyCode::Down | KeyCode::Char('j') => app.on_down(),
[INFO] [stdout] 58 |                         KeyCode::Left | KeyCode::Char('h') => app.on_left(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/main.rs:59:42
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 59 |                         KeyCode::Right | KeyCode::Char('l') => app.on_right(),
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/main.rs:60:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 60 |                         KeyCode::Up | KeyCode::Char('k') => app.on_up(),
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]   --> src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct App {
[INFO] [stdout]    |        --- field in this struct
[INFO] [stdout] 19 |     path: PathBuf,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.94s
[INFO] running `Command { std: "docker" "inspect" "ffa9f15bf901a5e11f733bb537ddc2fceb3593aaf4431bb3306e5948a04068e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ffa9f15bf901a5e11f733bb537ddc2fceb3593aaf4431bb3306e5948a04068e7", kill_on_drop: false }`
[INFO] [stdout] ffa9f15bf901a5e11f733bb537ddc2fceb3593aaf4431bb3306e5948a04068e7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 20b77a3b143dd6c15689599858c6506c83414bb173b3f88088f8cc1df7f8e7b5
[INFO] running `Command { std: "docker" "start" "-a" "20b77a3b143dd6c15689599858c6506c83414bb173b3f88088f8cc1df7f8e7b5", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `fs::DirEntry`
[INFO] [stdout]  --> src/lib.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fs::DirEntry, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling durs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `fs::DirEntry`
[INFO] [stdout]  --> src/lib.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fs::DirEntry, path::PathBuf};
[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::path::Path`
[INFO] [stdout]    --> src/lib.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use std::path::Path;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:193:13
[INFO] [stdout]     |
[INFO] [stdout] 193 |         let mut actual = ls(&file_path)?;
[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/lib.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let mut expected = vec![file_path];
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |         let mut actual = ls_rec(&file_path)?;
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |         let mut expected = vec![file_path];
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         write!(file, "test"); // 4 bytes
[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] 135 |         let _ = write!(file, "test"); // 4 bytes
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |         write!(file, "testing test"); // 12 bytes
[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] 145 |         let _ = write!(file, "testing test"); // 12 bytes
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         write!(file, "testing test of tests"); // 21 bytes
[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] 150 |         let _ = write!(file, "testing test of tests"); // 21 bytes
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/main.rs:57:41
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] 57 |                         KeyCode::Down | KeyCode::Char('j') => app.on_down(),
[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: unreachable pattern
[INFO] [stdout]   --> src/main.rs:58:41
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] 57 |                         KeyCode::Down | KeyCode::Char('j') => app.on_down(),
[INFO] [stdout] 58 |                         KeyCode::Left | KeyCode::Char('h') => app.on_left(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/main.rs:59:42
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 59 |                         KeyCode::Right | KeyCode::Char('l') => app.on_right(),
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/main.rs:60:39
[INFO] [stdout]    |
[INFO] [stdout] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stdout]    |                         ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 60 |                         KeyCode::Up | KeyCode::Char('k') => app.on_up(),
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]   --> src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct App {
[INFO] [stdout]    |        --- field in this struct
[INFO] [stdout] 19 |     path: PathBuf,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.86s
[INFO] running `Command { std: "docker" "inspect" "20b77a3b143dd6c15689599858c6506c83414bb173b3f88088f8cc1df7f8e7b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "20b77a3b143dd6c15689599858c6506c83414bb173b3f88088f8cc1df7f8e7b5", kill_on_drop: false }`
[INFO] [stdout] 20b77a3b143dd6c15689599858c6506c83414bb173b3f88088f8cc1df7f8e7b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4dbc435609c2284bd6a644ffd3552b5b9ecc663dbc145fcdda26f76698e7d46c
[INFO] running `Command { std: "docker" "start" "-a" "4dbc435609c2284bd6a644ffd3552b5b9ecc663dbc145fcdda26f76698e7d46c", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `fs::DirEntry`
[INFO] [stderr]  --> src/lib.rs:2:11
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::{fs::DirEntry, path::PathBuf};
[INFO] [stderr]   |           ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::Path`
[INFO] [stderr]    --> src/lib.rs:122:9
[INFO] [stderr]     |
[INFO] [stderr] 122 |     use std::path::Path;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:193:13
[INFO] [stderr]     |
[INFO] [stderr] 193 |         let mut actual = ls(&file_path)?;
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:194:13
[INFO] [stderr]     |
[INFO] [stderr] 194 |         let mut expected = vec![file_path];
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:236:13
[INFO] [stderr]     |
[INFO] [stderr] 236 |         let mut actual = ls_rec(&file_path)?;
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:237:13
[INFO] [stderr]     |
[INFO] [stderr] 237 |         let mut expected = vec![file_path];
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:135:9
[INFO] [stderr]     |
[INFO] [stderr] 135 |         write!(file, "test"); // 4 bytes
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 135 |         let _ = write!(file, "test"); // 4 bytes
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:145:9
[INFO] [stderr]     |
[INFO] [stderr] 145 |         write!(file, "testing test"); // 12 bytes
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 145 |         let _ = write!(file, "testing test"); // 12 bytes
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:150:9
[INFO] [stderr]     |
[INFO] [stderr] 150 |         write!(file, "testing test of tests"); // 21 bytes
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 150 |         let _ = write!(file, "testing test of tests"); // 21 bytes
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `durs` (lib) generated 1 warning (run `cargo fix --lib -p durs` to apply 1 suggestion)
[INFO] [stderr] warning: `durs` (lib test) generated 9 warnings (1 duplicate) (run `cargo fix --lib -p durs --tests` to apply 5 suggestions)
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/main.rs:57:41
[INFO] [stderr]    |
[INFO] [stderr] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stderr]    |                         ---------------- matches all the relevant values
[INFO] [stderr] 57 |                         KeyCode::Down | KeyCode::Char('j') => app.on_down(),
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/main.rs:58:41
[INFO] [stderr]    |
[INFO] [stderr] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stderr]    |                         ---------------- matches all the relevant values
[INFO] [stderr] 57 |                         KeyCode::Down | KeyCode::Char('j') => app.on_down(),
[INFO] [stderr] 58 |                         KeyCode::Left | KeyCode::Char('h') => app.on_left(),
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/main.rs:59:42
[INFO] [stderr]    |
[INFO] [stderr] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stderr]    |                         ---------------- matches all the relevant values
[INFO] [stderr] ...
[INFO] [stderr] 59 |                         KeyCode::Right | KeyCode::Char('l') => app.on_right(),
[INFO] [stderr]    |                                          ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/main.rs:60:39
[INFO] [stderr]    |
[INFO] [stderr] 56 |                         KeyCode::Char(c) => app.on_key(c),
[INFO] [stderr]    |                         ---------------- matches all the relevant values
[INFO] [stderr] ...
[INFO] [stderr] 60 |                         KeyCode::Up | KeyCode::Char('k') => app.on_up(),
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: field `path` is never read
[INFO] [stderr]   --> src/main.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | struct App {
[INFO] [stderr]    |        --- field in this struct
[INFO] [stderr] 19 |     path: PathBuf,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `durs` (bin "durs" test) generated 5 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/durs-221a78e973621dbe)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test test::test_ls_dir ... ok
[INFO] [stdout] test test::test_size ... ok
[INFO] [stdout] test test::test_ls_file ... ok
[INFO] [stdout] test test::test_ls_rec_file ... ok
[INFO] [stdout] test test::test_ls_rec_dir ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/durs-f3914b17542caf8c)
[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 durs
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/lib.rs - ls (line 12) ... FAILED
[INFO] [stdout] test src/lib.rs - ls_rec (line 46) ... FAILED
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] [stdout] test src/lib.rs - size (line 86) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - ls (line 12) stdout ----
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:17:48
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_12_0() {
[INFO] [stdout]    |                                      ---------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 17 | let files = ls(Path::new("/path/to/directory"))?;
[INFO] [stdout]    |                                                ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding return type
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_12_0() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |                                                                         +++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - ls_rec (line 46) stdout ----
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:51:52
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_46_0() {
[INFO] [stdout]    |                                      ---------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 51 | let files = ls_rec(Path::new("/path/to/directory"))?;
[INFO] [stdout]    |                                                    ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding return type
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_46_0() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |                                                                         +++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - size (line 86) stdout ----
[INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`)
[INFO] [stdout]   --> src/lib.rs:91:63
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_86_0() {
[INFO] [stdout]    |                                      ---------------------------------- this function should return `Result` or `Option` to accept `?`
[INFO] [stdout] ...
[INFO] [stdout] 91 | let total_size = size(Path::new("/path/to/file_or_directory"))?;
[INFO] [stdout]    |                                                               ^ cannot use the `?` operator in a function that returns `()`
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding return type
[INFO] [stdout]    |
[INFO] [stdout] 87 ~ fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_86_0() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout] 88 | use durs::size;
[INFO] [stdout] ...
[INFO] [stdout] 92 | println!("Total size: {} bytes", total_size);
[INFO] [stdout] 93 +     Ok(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - ls (line 12)
[INFO] [stdout]     src/lib.rs - ls_rec (line 46)
[INFO] [stdout]     src/lib.rs - size (line 86)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4dbc435609c2284bd6a644ffd3552b5b9ecc663dbc145fcdda26f76698e7d46c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4dbc435609c2284bd6a644ffd3552b5b9ecc663dbc145fcdda26f76698e7d46c", kill_on_drop: false }`
[INFO] [stdout] 4dbc435609c2284bd6a644ffd3552b5b9ecc663dbc145fcdda26f76698e7d46c
