[INFO] cloning repository https://github.com/GappelSolutions/lazychat [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/GappelSolutions/lazychat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGappelSolutions%2Flazychat", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGappelSolutions%2Flazychat'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bbab4106a73774ad47814ee86a26e9295f0ce336 [INFO] testing GappelSolutions/lazychat against master#d933cf483edf1605142ac6899ff32536c0ad8b22 for pr-150933 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGappelSolutions%2Flazychat" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/GappelSolutions/lazychat [INFO] finished tweaking git repo https://github.com/GappelSolutions/lazychat [INFO] tweaked toml for git repo https://github.com/GappelSolutions/lazychat written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/GappelSolutions/lazychat on toolchain d933cf483edf1605142ac6899ff32536c0ad8b22 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/GappelSolutions/lazychat 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" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serial_test v3.3.1 [INFO] [stderr] Downloaded vt100 v0.15.2 [INFO] [stderr] Downloaded notify-types v1.0.1 [INFO] [stderr] Downloaded serial_test_derive v3.3.1 [INFO] [stderr] Downloaded vte_generate_state_changes v0.1.2 [INFO] [stderr] Downloaded portable-pty v0.8.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5a9ace0ffb368bf030aa4c9efb795d339d4c9463ffdd2c06fd20bb437649447e [INFO] running `Command { std: "docker" "start" "-a" "5a9ace0ffb368bf030aa4c9efb795d339d4c9463ffdd2c06fd20bb437649447e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5a9ace0ffb368bf030aa4c9efb795d339d4c9463ffdd2c06fd20bb437649447e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5a9ace0ffb368bf030aa4c9efb795d339d4c9463ffdd2c06fd20bb437649447e", kill_on_drop: false }` [INFO] [stdout] 5a9ace0ffb368bf030aa4c9efb795d339d4c9463ffdd2c06fd20bb437649447e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 75eab7b91c1bddc1fa09cba6c0a195632fd31118e1c913779cd3578fdf9c6faf [INFO] running `Command { std: "docker" "start" "-a" "75eab7b91c1bddc1fa09cba6c0a195632fd31118e1c913779cd3578fdf9c6faf", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling instability v0.3.11 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling zmij v1.0.19 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling instant v0.1.13 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling clap_lex v0.7.7 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling ryu v1.0.22 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling clap_builder v4.5.56 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling notify-types v1.0.1 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling fuzzy-matcher v0.3.7 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling vte_generate_state_changes v0.1.2 [INFO] [stderr] Compiling compact_str v0.8.1 [INFO] [stderr] Compiling vte v0.11.1 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling termios v0.2.2 [INFO] [stderr] Compiling serial-core v0.4.0 [INFO] [stderr] Compiling ioctl-rs v0.1.6 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling filetime v0.2.27 [INFO] [stderr] Compiling serial-unix v0.4.0 [INFO] [stderr] Compiling inotify v0.10.2 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling serial v0.4.0 [INFO] [stderr] Compiling nix v0.25.1 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling uuid v1.20.0 [INFO] [stderr] Compiling vt100 v0.15.2 [INFO] [stderr] Compiling nix v0.27.1 [INFO] [stderr] Compiling sysinfo v0.30.13 [INFO] [stderr] Compiling notify v7.0.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling filedescriptor v0.8.3 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling portable-pty v0.8.1 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling ratatui v0.29.0 [INFO] [stderr] Compiling clap v4.5.56 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling lazychat v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `validate_preset_name` is never used [INFO] [stdout] --> src/process/headless.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PresetManager` and `Preset` [INFO] [stdout] --> src/config/mod.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | pub use presets::{Preset, PresetManager}; [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 imports: `OrphanSession` and `discover_orphan_sessions` [INFO] [stdout] --> src/process/mod.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | pub use adoption::{discover_orphan_sessions, OrphanSession}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `headless::HeadlessTerminal` [INFO] [stdout] --> src/process/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use headless::HeadlessTerminal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ManagedProcess` and `ProcessRegistry` [INFO] [stdout] --> src/process/mod.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | pub use registry::{ManagedProcess, ProcessRegistry}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `preset_filter` and `preset_filter_active` are never read [INFO] [stdout] --> src/app.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct App { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 75 | pub preset_filter: String, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 76 | pub preset_filter_active: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `preset_next`, `preset_prev`, and `managed_process_count` are never used [INFO] [stdout] --> src/app.rs:632:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl App { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 632 | pub fn preset_next(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 638 | pub fn preset_prev(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 766 | pub fn managed_process_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `config_path` and `matcher` are never read [INFO] [stdout] --> src/config/presets.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct PresetManager { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 43 | presets: Vec, [INFO] [stdout] 44 | config_path: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 45 | matcher: SkimMatcherV2, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `find_by_name`, `find_by_shortcut`, `fuzzy_search`, `reload`, and `get_config_path` are never used [INFO] [stdout] --> src/config/presets.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 48 | impl PresetManager { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn find_by_name(&self, name: &str) -> Option<&Preset> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn find_by_shortcut(&self, shortcut: &str) -> Option<&Preset> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn fuzzy_search(&self, query: &str) -> Vec<(&Preset, i64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn reload(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn get_config_path(&self) -> &PathBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Task` is never constructed [INFO] [stdout] --> src/data/mod.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct Task { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DailyStats` is never constructed [INFO] [stdout] --> src/data/mod.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct DailyStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HistoryEntry` is never constructed [INFO] [stdout] --> src/data/mod.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct HistoryEntry { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `session_id`, `pid`, `cwd`, and `status` are never read [INFO] [stdout] --> src/process/adoption.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct OrphanSession { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 11 | pub session_id: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | pub pid: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 13 | pub cwd: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | pub status: String, // from state file: "working", "active", "idle" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OrphanSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_active_session_ids` is never used [INFO] [stdout] --> src/process/adoption.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn get_active_session_ids() -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_preset_name` is never used [INFO] [stdout] --> src/process/headless.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_alive` and `terminate` are never used [INFO] [stdout] --> src/process/headless.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl HeadlessTerminal { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn is_alive(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn terminate(mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_all_processes_mut`, `find_by_pid`, `find_by_session`, and `update_status` are never used [INFO] [stdout] --> src/process/registry.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl ProcessRegistry { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_all_processes_mut(&mut self) -> &mut Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn find_by_pid(&self, pid: u32) -> Option<&ManagedProcess> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn find_by_session(&self, session_id: &str) -> Option<&ManagedProcess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn update_status(&mut self, pid: u32, status: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_preset_detail` is never used [INFO] [stdout] --> src/ui/presets.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn draw_preset_detail(f: &mut Frame, app: &App, area: Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ui/mod.rs:448:28 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block { [INFO] [stdout] | ^^^^ ^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.91s [INFO] running `Command { std: "docker" "inspect" "75eab7b91c1bddc1fa09cba6c0a195632fd31118e1c913779cd3578fdf9c6faf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "75eab7b91c1bddc1fa09cba6c0a195632fd31118e1c913779cd3578fdf9c6faf", kill_on_drop: false }` [INFO] [stdout] 75eab7b91c1bddc1fa09cba6c0a195632fd31118e1c913779cd3578fdf9c6faf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bac0ddd7252b100faf4ab0c869ffd9ff44bfa9f43c442adbce23b02ddd0e25f8 [INFO] running `Command { std: "docker" "start" "-a" "bac0ddd7252b100faf4ab0c869ffd9ff44bfa9f43c442adbce23b02ddd0e25f8", kill_on_drop: false }` [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling sdd v3.0.10 [INFO] [stderr] Compiling serial_test_derive v3.3.1 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stdout] warning: function `validate_preset_name` is never used [INFO] [stdout] --> src/process/headless.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PresetManager` and `Preset` [INFO] [stdout] --> src/config/mod.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | pub use presets::{Preset, PresetManager}; [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 imports: `OrphanSession` and `discover_orphan_sessions` [INFO] [stdout] --> src/process/mod.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | pub use adoption::{discover_orphan_sessions, OrphanSession}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `headless::HeadlessTerminal` [INFO] [stdout] --> src/process/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use headless::HeadlessTerminal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ManagedProcess` and `ProcessRegistry` [INFO] [stdout] --> src/process/mod.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | pub use registry::{ManagedProcess, ProcessRegistry}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `preset_filter` and `preset_filter_active` are never read [INFO] [stdout] --> src/app.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct App { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 75 | pub preset_filter: String, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 76 | pub preset_filter_active: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `preset_next`, `preset_prev`, and `managed_process_count` are never used [INFO] [stdout] --> src/app.rs:632:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl App { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 632 | pub fn preset_next(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 638 | pub fn preset_prev(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 766 | pub fn managed_process_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `config_path` and `matcher` are never read [INFO] [stdout] --> src/config/presets.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct PresetManager { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 43 | presets: Vec, [INFO] [stdout] 44 | config_path: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 45 | matcher: SkimMatcherV2, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `find_by_name`, `find_by_shortcut`, `fuzzy_search`, `reload`, and `get_config_path` are never used [INFO] [stdout] --> src/config/presets.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 48 | impl PresetManager { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn find_by_name(&self, name: &str) -> Option<&Preset> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn find_by_shortcut(&self, shortcut: &str) -> Option<&Preset> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn fuzzy_search(&self, query: &str) -> Vec<(&Preset, i64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn reload(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn get_config_path(&self) -> &PathBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Task` is never constructed [INFO] [stdout] --> src/data/mod.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct Task { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DailyStats` is never constructed [INFO] [stdout] --> src/data/mod.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct DailyStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HistoryEntry` is never constructed [INFO] [stdout] --> src/data/mod.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct HistoryEntry { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `session_id`, `pid`, `cwd`, and `status` are never read [INFO] [stdout] --> src/process/adoption.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct OrphanSession { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 11 | pub session_id: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | pub pid: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 13 | pub cwd: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | pub status: String, // from state file: "working", "active", "idle" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OrphanSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_active_session_ids` is never used [INFO] [stdout] --> src/process/adoption.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn get_active_session_ids() -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_preset_name` is never used [INFO] [stdout] --> src/process/headless.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_alive` and `terminate` are never used [INFO] [stdout] --> src/process/headless.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl HeadlessTerminal { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn is_alive(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn terminate(mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_all_processes_mut`, `find_by_pid`, `find_by_session`, and `update_status` are never used [INFO] [stdout] --> src/process/registry.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl ProcessRegistry { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_all_processes_mut(&mut self) -> &mut Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn find_by_pid(&self, pid: u32) -> Option<&ManagedProcess> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn find_by_session(&self, session_id: &str) -> Option<&ManagedProcess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn update_status(&mut self, pid: u32, status: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_preset_detail` is never used [INFO] [stdout] --> src/ui/presets.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn draw_preset_detail(f: &mut Frame, app: &App, area: Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ui/mod.rs:448:28 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block { [INFO] [stdout] | ^^^^ ^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling scc v2.4.0 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling serial_test v3.3.1 [INFO] [stderr] Compiling lazychat v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> tests/config_tests.rs:292:9 [INFO] [stdout] | [INFO] [stdout] 292 | use super::*; [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: `super::*` [INFO] [stdout] --> tests/config_tests.rs:589:9 [INFO] [stdout] | [INFO] [stdout] 589 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PresetManager` and `Preset` [INFO] [stdout] --> src/config/mod.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | pub use presets::{Preset, PresetManager}; [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 imports: `OrphanSession` and `discover_orphan_sessions` [INFO] [stdout] --> src/process/mod.rs:7:20 [INFO] [stdout] | [INFO] [stdout] 7 | pub use adoption::{discover_orphan_sessions, OrphanSession}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `headless::HeadlessTerminal` [INFO] [stdout] --> src/process/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use headless::HeadlessTerminal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ManagedProcess` and `ProcessRegistry` [INFO] [stdout] --> src/process/mod.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | pub use registry::{ManagedProcess, ProcessRegistry}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_preset_name` is never used [INFO] [stdout] --> src/process/headless.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `registered_pids` [INFO] [stdout] --> tests/process_tests.rs:396:13 [INFO] [stdout] | [INFO] [stdout] 396 | let registered_pids: HashSet = HashSet::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_registered_pids` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `preset_filter` and `preset_filter_active` are never read [INFO] [stdout] --> src/app.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct App { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 75 | pub preset_filter: String, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 76 | pub preset_filter_active: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `preset_next`, `preset_prev`, and `managed_process_count` are never used [INFO] [stdout] --> src/app.rs:632:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl App { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 632 | pub fn preset_next(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 638 | pub fn preset_prev(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 766 | pub fn managed_process_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `config_path` and `matcher` are never read [INFO] [stdout] --> src/config/presets.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct PresetManager { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 43 | presets: Vec, [INFO] [stdout] 44 | config_path: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 45 | matcher: SkimMatcherV2, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `find_by_name`, `find_by_shortcut`, `fuzzy_search`, `reload`, and `get_config_path` are never used [INFO] [stdout] --> src/config/presets.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 48 | impl PresetManager { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn find_by_name(&self, name: &str) -> Option<&Preset> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn find_by_shortcut(&self, shortcut: &str) -> Option<&Preset> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn fuzzy_search(&self, query: &str) -> Vec<(&Preset, i64)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn reload(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn get_config_path(&self) -> &PathBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Task` is never constructed [INFO] [stdout] --> src/data/mod.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct Task { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DailyStats` is never constructed [INFO] [stdout] --> src/data/mod.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct DailyStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HistoryEntry` is never constructed [INFO] [stdout] --> src/data/mod.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct HistoryEntry { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `session_id`, `pid`, `cwd`, and `status` are never read [INFO] [stdout] --> src/process/adoption.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct OrphanSession { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 11 | pub session_id: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | pub pid: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 13 | pub cwd: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | pub status: String, // from state file: "working", "active", "idle" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OrphanSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_active_session_ids` is never used [INFO] [stdout] --> src/process/adoption.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn get_active_session_ids() -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_preset_name` is never used [INFO] [stdout] --> src/process/headless.rs:22:4 [INFO] [stdout] | [INFO] [stdout] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_alive` and `terminate` are never used [INFO] [stdout] --> src/process/headless.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl HeadlessTerminal { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn is_alive(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn terminate(mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_all_processes_mut`, `find_by_pid`, `find_by_session`, and `update_status` are never used [INFO] [stdout] --> src/process/registry.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl ProcessRegistry { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_all_processes_mut(&mut self) -> &mut Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn find_by_pid(&self, pid: u32) -> Option<&ManagedProcess> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn find_by_session(&self, session_id: &str) -> Option<&ManagedProcess> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn update_status(&mut self, pid: u32, status: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_preset_detail` is never used [INFO] [stdout] --> src/ui/presets.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn draw_preset_detail(f: &mut Frame, app: &App, area: Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ui/mod.rs:448:28 [INFO] [stdout] | [INFO] [stdout] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block { [INFO] [stdout] | ^^^^ ^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 8.36s [INFO] running `Command { std: "docker" "inspect" "bac0ddd7252b100faf4ab0c869ffd9ff44bfa9f43c442adbce23b02ddd0e25f8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bac0ddd7252b100faf4ab0c869ffd9ff44bfa9f43c442adbce23b02ddd0e25f8", kill_on_drop: false }` [INFO] [stdout] bac0ddd7252b100faf4ab0c869ffd9ff44bfa9f43c442adbce23b02ddd0e25f8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 351ccf4d761819384afdfb93769ef8f487ee7f19a21511e234a035634cd43ce1 [INFO] running `Command { std: "docker" "start" "-a" "351ccf4d761819384afdfb93769ef8f487ee7f19a21511e234a035634cd43ce1", kill_on_drop: false }` [INFO] [stderr] warning: function `validate_preset_name` is never used [INFO] [stderr] --> src/process/headless.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `lazychat` (lib) generated 1 warning [INFO] [stderr] warning: unused imports: `PresetManager` and `Preset` [INFO] [stderr] --> src/config/mod.rs:5:19 [INFO] [stderr] | [INFO] [stderr] 5 | pub use presets::{Preset, PresetManager}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `OrphanSession` and `discover_orphan_sessions` [INFO] [stderr] --> src/process/mod.rs:7:20 [INFO] [stderr] | [INFO] [stderr] 7 | pub use adoption::{discover_orphan_sessions, OrphanSession}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `headless::HeadlessTerminal` [INFO] [stderr] --> src/process/mod.rs:8:9 [INFO] [stderr] | [INFO] [stderr] 8 | pub use headless::HeadlessTerminal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ManagedProcess` and `ProcessRegistry` [INFO] [stderr] --> src/process/mod.rs:9:20 [INFO] [stderr] | [INFO] [stderr] 9 | pub use registry::{ManagedProcess, ProcessRegistry}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `preset_filter` and `preset_filter_active` are never read [INFO] [stderr] --> src/app.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct App { [INFO] [stderr] | --- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 75 | pub preset_filter: String, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 76 | pub preset_filter_active: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: methods `preset_next`, `preset_prev`, and `managed_process_count` are never used [INFO] [stderr] --> src/app.rs:632:12 [INFO] [stderr] | [INFO] [stderr] 82 | impl App { [INFO] [stderr] | -------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 632 | pub fn preset_next(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 638 | pub fn preset_prev(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 766 | pub fn managed_process_count(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `config_path` and `matcher` are never read [INFO] [stderr] --> src/config/presets.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub struct PresetManager { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 43 | presets: Vec, [INFO] [stderr] 44 | config_path: PathBuf, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 45 | matcher: SkimMatcherV2, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `find_by_name`, `find_by_shortcut`, `fuzzy_search`, `reload`, and `get_config_path` are never used [INFO] [stderr] --> src/config/presets.rs:127:12 [INFO] [stderr] | [INFO] [stderr] 48 | impl PresetManager { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 127 | pub fn find_by_name(&self, name: &str) -> Option<&Preset> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 132 | pub fn find_by_shortcut(&self, shortcut: &str) -> Option<&Preset> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 139 | pub fn fuzzy_search(&self, query: &str) -> Vec<(&Preset, i64)> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | pub fn reload(&mut self) -> Result<()> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | pub fn get_config_path(&self) -> &PathBuf { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Task` is never constructed [INFO] [stderr] --> src/data/mod.rs:45:12 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct Task { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DailyStats` is never constructed [INFO] [stderr] --> src/data/mod.rs:55:12 [INFO] [stderr] | [INFO] [stderr] 55 | pub struct DailyStats { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `HistoryEntry` is never constructed [INFO] [stderr] --> src/data/mod.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 63 | pub struct HistoryEntry { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `session_id`, `pid`, `cwd`, and `status` are never read [INFO] [stderr] --> src/process/adoption.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct OrphanSession { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 11 | pub session_id: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 12 | pub pid: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] 13 | pub cwd: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] 14 | pub status: String, // from state file: "working", "active", "idle" [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `OrphanSession` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `get_active_session_ids` is never used [INFO] [stderr] --> src/process/adoption.rs:145:8 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn get_active_session_ids() -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `validate_preset_name` is never used [INFO] [stderr] --> src/process/headless.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | fn validate_preset_name(name: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `is_alive` and `terminate` are never used [INFO] [stderr] --> src/process/headless.rs:99:12 [INFO] [stderr] | [INFO] [stderr] 41 | impl HeadlessTerminal { [INFO] [stderr] | --------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 99 | pub fn is_alive(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 107 | pub fn terminate(mut self) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_all_processes_mut`, `find_by_pid`, `find_by_session`, and `update_status` are never used [INFO] [stderr] --> src/process/registry.rs:113:12 [INFO] [stderr] | [INFO] [stderr] 33 | impl ProcessRegistry { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 113 | pub fn get_all_processes_mut(&mut self) -> &mut Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 118 | pub fn find_by_pid(&self, pid: u32) -> Option<&ManagedProcess> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 123 | pub fn find_by_session(&self, session_id: &str) -> Option<&ManagedProcess> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 157 | pub fn update_status(&mut self, pid: u32, status: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `draw_preset_detail` is never used [INFO] [stderr] --> src/ui/presets.rs:61:8 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn draw_preset_detail(f: &mut Frame, app: &App, area: Rect) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/ui/mod.rs:448:28 [INFO] [stderr] | [INFO] [stderr] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block { [INFO] [stderr] | ^^^^ ^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 448 | pub fn styled_block(title: &str, is_active: bool) -> Block<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `lazychat` (bin "lazychat") generated 18 warnings (run `cargo fix --bin "lazychat" -p lazychat` to apply 5 suggestions) [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/config_tests.rs:292:9 [INFO] [stderr] | [INFO] [stderr] 292 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> tests/config_tests.rs:589:9 [INFO] [stderr] | [INFO] [stderr] 589 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `registered_pids` [INFO] [stderr] --> tests/process_tests.rs:396:13 [INFO] [stderr] | [INFO] [stderr] 396 | let registered_pids: HashSet = HashSet::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_registered_pids` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `lazychat` (test "config_tests") generated 2 warnings (run `cargo fix --test "config_tests" -p lazychat` to apply 2 suggestions) [INFO] [stderr] warning: `lazychat` (bin "lazychat" test) generated 18 warnings (18 duplicates) [INFO] [stderr] warning: `lazychat` (test "process_tests") generated 1 warning (run `cargo fix --test "process_tests" -p lazychat` to apply 1 suggestion) [INFO] [stderr] warning: `lazychat` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.28s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lazychat-f2ce99fe3c0bf375) [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] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/lazychat-eae8b868511fb813) [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] Running tests/config_tests.rs (/opt/rustwide/target/debug/deps/config_tests-2e3cb109d4980865) [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test expand_tilde_tests::test_expand_tilde_relative_unchanged ... ok [INFO] [stdout] test expand_tilde_tests::test_expand_tilde_nested_path ... ok [INFO] [stdout] test expand_tilde_tests::test_expand_tilde_absolute_unchanged ... ok [INFO] [stdout] test expand_tilde_tests::test_expand_tilde_alone ... ok [INFO] [stdout] test expand_tilde_tests::test_expand_tilde_with_dot_files ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_empty_query_returns_all ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_matches_name ... ok [INFO] [stdout] test expand_tilde_tests::test_expand_tilde_with_path ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_matches_shortcut ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_no_matches ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_takes_best_score ... ok [INFO] [stdout] test preset_find_tests::test_find_by_name_case_sensitive ... ok [INFO] [stdout] test preset_find_tests::test_find_by_shortcut_exact_match ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_partial_match ... ok [INFO] [stdout] test preset_find_tests::test_find_by_name_exact_match ... ok [INFO] [stdout] test fuzzy_search_tests::test_fuzzy_search_sorted_by_score ... ok [INFO] [stdout] test preset_find_tests::test_find_by_shortcut_returns_none_when_missing ... ok [INFO] [stdout] test preset_manager_load_tests::test_expands_tilde_in_cwd ... ok [INFO] [stdout] test preset_struct_tests::test_preset_default_extra_args ... ok [INFO] [stdout] test preset_struct_tests::test_preset_struct_fields ... ok [INFO] [stdout] test preset_manager_load_tests::test_parses_toml_correctly ... ok [INFO] [stdout] test preset_find_tests::test_find_by_shortcut_handles_none ... ok [INFO] [stdout] test preset_manager_load_tests::test_expands_tilde_in_add_dirs ... ok [INFO] [stdout] test preset_struct_tests::test_preset_serialization ... ok [INFO] [stdout] test preset_struct_tests::test_preset_default_instances ... ok [INFO] [stdout] test preset_struct_tests::test_preset_default_add_dirs ... ok [INFO] [stdout] test preset_struct_tests::test_preset_optional_shortcut ... ok [INFO] [stdout] test preset_manager_load_tests::test_creates_config_if_missing ... ok [INFO] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-79dcbee4b235b49f) [INFO] [stdout] test test_full_preset_workflow ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test test_adoption_integration ... ok [INFO] [stdout] test test_preset_fuzzy_search_real ... ok [INFO] [stdout] test test_update_process_status ... ok [INFO] [stdout] test test_registry_persistence ... ok [INFO] [stdout] test test_full_phase1_phase2_integration ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.04s [INFO] [stdout] [INFO] [stderr] Running tests/process_tests.rs (/opt/rustwide/target/debug/deps/process_tests-5e75f51cc48053c2) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test adoption_tests::test_orphan_session_with_temp_state_files ... ok [INFO] [stdout] test headless_validation_tests::test_validate_path_accepts_valid_absolute_path ... ok [INFO] [stdout] test adoption_tests::test_get_active_session_ids ... ok [INFO] [stdout] test headless_validation_tests::test_validate_path_rejects_nested_parent_dir ... ok [INFO] [stdout] test headless_validation_tests::test_validate_path_rejects_parent_dir_traversal ... ok [INFO] [stdout] test headless_validation_tests::test_validate_preset_name_accepts_alphanumeric ... ok [INFO] [stdout] test headless_validation_tests::test_validate_preset_name_rejects_shell_injection ... ok [INFO] [stdout] test headless_validation_tests::test_validate_preset_name_rejects_spaces ... ok [INFO] [stdout] test headless_validation_tests::test_validate_preset_name_accepts_simple ... ok [INFO] [stdout] test adoption_tests::test_discover_orphan_sessions_runs_without_error ... ok [INFO] [stdout] test test_full_workflow_integration ... ok [INFO] [stdout] test headless_validation_tests::test_validate_preset_name_rejects_special_chars ... ok [INFO] [stdout] test headless_validation_tests::test_validate_path_accepts_valid_relative_path ... ok [INFO] [stdout] test registry_tests::test_registry_json_structure ... ok [INFO] [stdout] test registry_tests::test_registry_cleanup_dead_processes_simulation ... ok [INFO] [stdout] test registry_tests::test_registry_add_remove_operations ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Doc-tests lazychat [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" "351ccf4d761819384afdfb93769ef8f487ee7f19a21511e234a035634cd43ce1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "351ccf4d761819384afdfb93769ef8f487ee7f19a21511e234a035634cd43ce1", kill_on_drop: false }` [INFO] [stdout] 351ccf4d761819384afdfb93769ef8f487ee7f19a21511e234a035634cd43ce1