[INFO] cloning repository https://github.com/schani/git-lineage [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/schani/git-lineage" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fschani%2Fgit-lineage", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fschani%2Fgit-lineage'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 819c41ec0211d2504c500b9de03187bf5fbee003 [INFO] testing schani/git-lineage against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fschani%2Fgit-lineage" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/schani/git-lineage [INFO] finished tweaking git repo https://github.com/schani/git-lineage [INFO] tweaked toml for git repo https://github.com/schani/git-lineage written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/schani/git-lineage on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/schani/git-lineage 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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tokio-test v0.4.4 [INFO] [stderr] Downloaded gix-shallow v0.4.0 [INFO] [stderr] Downloaded gix-prompt v0.11.0 [INFO] [stderr] Downloaded gix-negotiate v0.20.1 [INFO] [stderr] Downloaded fuzzy-matcher v0.3.7 [INFO] [stderr] Downloaded gix-dir v0.14.1 [INFO] [stderr] Downloaded uluru v3.1.0 [INFO] [stderr] Downloaded gix-credentials v0.29.0 [INFO] [stderr] Downloaded gix-mailmap v0.27.1 [INFO] [stderr] Downloaded gix-archive v0.21.2 [INFO] [stderr] Downloaded gix-status v0.19.1 [INFO] [stderr] Downloaded gix-odb v0.69.1 [INFO] [stderr] Downloaded gix-diff v0.52.1 [INFO] [stderr] Downloaded gix-object v0.49.1 [INFO] [stderr] Downloaded fake v2.10.0 [INFO] [stderr] Downloaded gix-pack v0.59.1 [INFO] [stderr] Downloaded gix-transport v0.47.0 [INFO] [stderr] Downloaded prodash v29.0.2 [INFO] [stderr] Downloaded imara-diff v0.1.8 [INFO] [stderr] Downloaded syntect v5.2.0 [INFO] [stderr] Downloaded onig_sys v69.9.1 [INFO] [stderr] Downloaded gix-refspec v0.30.1 [INFO] [stderr] Downloaded gix-index v0.40.1 [INFO] [stderr] Downloaded gix-commitgraph v0.28.0 [INFO] [stderr] Downloaded gix-path v0.10.18 [INFO] [stderr] Downloaded gix-validate v0.10.0 [INFO] [stderr] Downloaded gix-revwalk v0.20.1 [INFO] [stderr] Downloaded gix-traverse v0.46.2 [INFO] [stderr] Downloaded mockall_derive v0.12.1 [INFO] [stderr] Downloaded gix v0.72.1 [INFO] [stderr] Downloaded rand_xorshift v0.4.0 [INFO] [stderr] Downloaded gix-ignore v0.15.0 [INFO] [stderr] Downloaded gix-worktree-state v0.19.0 [INFO] [stderr] Downloaded gix-glob v0.20.1 [INFO] [stderr] Downloaded gix-packetline-blocking v0.19.0 [INFO] [stderr] Downloaded gix-fs v0.15.0 [INFO] [stderr] Downloaded gix-chunk v0.4.11 [INFO] [stderr] Downloaded gix-actor v0.35.1 [INFO] [stderr] Downloaded faster-hex v0.10.0 [INFO] [stderr] Downloaded human_format v1.1.0 [INFO] [stderr] Downloaded gix-hash v0.18.0 [INFO] [stderr] Downloaded gix-trace v0.1.12 [INFO] [stderr] Downloaded ratatui v0.28.1 [INFO] [stderr] Downloaded gix-discover v0.40.1 [INFO] [stderr] Downloaded gix-quote v0.6.0 [INFO] [stderr] Downloaded gix-utils v0.3.0 [INFO] [stderr] Downloaded clru v0.6.2 [INFO] [stderr] Downloaded gix-packetline v0.19.0 [INFO] [stderr] Downloaded gix-command v0.6.1 [INFO] [stderr] Downloaded gix-hashtable v0.8.1 [INFO] [stderr] Downloaded gix-protocol v0.50.1 [INFO] [stderr] Downloaded gix-ref v0.52.1 [INFO] [stderr] Downloaded gix-sec v0.11.0 [INFO] [stderr] Downloaded gix-config-value v0.15.0 [INFO] [stderr] Downloaded gix-revision v0.34.1 [INFO] [stderr] Downloaded gix-submodule v0.19.1 [INFO] [stderr] Downloaded gix-url v0.31.0 [INFO] [stderr] Downloaded filetime v0.2.25 [INFO] [stderr] Downloaded gix-lock v17.1.0 [INFO] [stderr] Downloaded kstring v2.0.2 [INFO] [stderr] Downloaded unicode-bom v2.0.3 [INFO] [stderr] Downloaded bytesize v2.0.1 [INFO] [stderr] Downloaded mockall v0.12.1 [INFO] [stderr] Downloaded proptest v1.7.0 [INFO] [stderr] Downloaded zlib-rs v0.5.1 [INFO] [stderr] Downloaded plist v1.7.2 [INFO] [stderr] Downloaded libredox v0.1.4 [INFO] [stderr] Downloaded gix-tempfile v17.1.0 [INFO] [stderr] Downloaded gix-worktree v0.41.0 [INFO] [stderr] Downloaded gix-config v0.45.1 [INFO] [stderr] Downloaded gix-pathspec v0.11.0 [INFO] [stderr] Downloaded gix-attributes v0.26.1 [INFO] [stderr] Downloaded gix-filter v0.19.2 [INFO] [stderr] Downloaded gix-features v0.42.1 [INFO] [stderr] Downloaded gix-worktree-stream v0.21.2 [INFO] [stderr] Downloaded onig v6.5.1 [INFO] [stderr] Downloaded tui-tree-widget v0.22.0 [INFO] [stderr] Downloaded io-close v0.3.7 [INFO] [stderr] Downloaded gix-date v0.10.2 [INFO] [stderr] Downloaded libz-rs-sys v0.5.1 [INFO] [stderr] Downloaded gix-bitmap v0.2.14 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1f41fed94b782a4207bf98784b2784c86b3a31fc06c18f804c2fd19a1ea3a506 [INFO] running `Command { std: "docker" "start" "-a" "1f41fed94b782a4207bf98784b2784c86b3a31fc06c18f804c2fd19a1ea3a506", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1f41fed94b782a4207bf98784b2784c86b3a31fc06c18f804c2fd19a1ea3a506", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f41fed94b782a4207bf98784b2784c86b3a31fc06c18f804c2fd19a1ea3a506", kill_on_drop: false }` [INFO] [stdout] 1f41fed94b782a4207bf98784b2784c86b3a31fc06c18f804c2fd19a1ea3a506 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a00ad4b970275d498888220aa9aed35648824882571ca62b3ee10964af7c7d49 [INFO] running `Command { std: "docker" "start" "-a" "a00ad4b970275d498888220aa9aed35648824882571ca62b3ee10964af7c7d49", kill_on_drop: false }` [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling tinyvec v1.9.0 [INFO] [stderr] Compiling gix-trace v0.1.12 [INFO] [stderr] Compiling zlib-rs v0.5.1 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling bytesize v2.0.1 [INFO] [stderr] Compiling human_format v1.1.0 [INFO] [stderr] Compiling heapless v0.8.0 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling jiff v0.2.15 [INFO] [stderr] Compiling winnow v0.7.11 [INFO] [stderr] Compiling memmap2 v0.9.5 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling rustix v1.0.7 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling linux-raw-sys v0.9.4 [INFO] [stderr] Compiling hash32 v0.3.1 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling sha1-checked v0.10.0 [INFO] [stderr] Compiling gix-chunk v0.4.11 [INFO] [stderr] Compiling zerovec v0.11.2 [INFO] [stderr] Compiling unicode-bom v2.0.3 [INFO] [stderr] Compiling kstring v2.0.2 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling shell-words v1.1.0 [INFO] [stderr] Compiling gix-sec v0.11.0 [INFO] [stderr] Compiling form_urlencoded v1.2.1 [INFO] [stderr] Compiling gix-bitmap v0.2.14 [INFO] [stderr] Compiling filetime v0.2.25 [INFO] [stderr] Compiling prodash v29.0.2 [INFO] [stderr] Compiling faster-hex v0.10.0 [INFO] [stderr] Compiling mio v1.0.4 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling unicode-normalization v0.1.24 [INFO] [stderr] Compiling cc v1.2.27 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling uluru v3.1.0 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling imara-diff v0.1.8 [INFO] [stderr] Compiling indoc v2.0.6 [INFO] [stderr] Compiling clru v0.6.2 [INFO] [stderr] Compiling anstream v0.6.19 [INFO] [stderr] Compiling signal-hook-mio v0.2.4 [INFO] [stderr] Compiling time v0.3.41 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling maybe-async v0.2.10 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tinystr v0.8.1 [INFO] [stderr] Compiling potential_utf v0.1.2 [INFO] [stderr] Compiling icu_collections v2.0.0 [INFO] [stderr] Compiling io-close v0.3.7 [INFO] [stderr] Compiling icu_locale_core v2.0.0 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling yaml-rust v0.4.5 [INFO] [stderr] Compiling tokio v1.45.1 [INFO] [stderr] Compiling onig_sys v69.9.1 [INFO] [stderr] Compiling tempfile v3.20.0 [INFO] [stderr] Compiling icu_provider v2.0.0 [INFO] [stderr] Compiling bstr v1.12.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling icu_properties v2.0.1 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling plist v1.7.2 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling clap_builder v4.5.40 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling clap_derive v4.5.40 [INFO] [stderr] Compiling gix-utils v0.3.0 [INFO] [stderr] Compiling gix-validate v0.10.0 [INFO] [stderr] Compiling gix-quote v0.6.0 [INFO] [stderr] Compiling gix-path v0.10.18 [INFO] [stderr] Compiling gix-packetline-blocking v0.19.0 [INFO] [stderr] Compiling gix-packetline v0.19.0 [INFO] [stderr] Compiling gix-date v0.10.2 [INFO] [stderr] Compiling gix-command v0.6.1 [INFO] [stderr] Compiling gix-config-value v0.15.0 [INFO] [stderr] Compiling globset v0.4.16 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling gix-actor v0.35.1 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling libz-rs-sys v0.5.1 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling gix-prompt v0.11.0 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling flate2 v1.1.2 [INFO] [stderr] Compiling instability v0.3.7 [INFO] [stderr] Compiling gix-mailmap v0.27.1 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling humantime v2.2.0 [INFO] [stderr] Compiling gix-features v0.42.1 [INFO] [stderr] Compiling env_logger v0.10.2 [INFO] [stderr] Compiling fuzzy-matcher v0.3.7 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling ratatui v0.28.1 [INFO] [stderr] Compiling ignore v0.4.23 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling clap v4.5.40 [INFO] [stderr] Compiling gix-hash v0.18.0 [INFO] [stderr] Compiling gix-fs v0.15.0 [INFO] [stderr] Compiling gix-glob v0.20.1 [INFO] [stderr] Compiling gix-url v0.31.0 [INFO] [stderr] Compiling gix-hashtable v0.8.1 [INFO] [stderr] Compiling gix-commitgraph v0.28.0 [INFO] [stderr] Compiling gix-tempfile v17.1.0 [INFO] [stderr] Compiling gix-object v0.49.1 [INFO] [stderr] Compiling gix-attributes v0.26.1 [INFO] [stderr] Compiling gix-ignore v0.15.0 [INFO] [stderr] Compiling gix-transport v0.47.0 [INFO] [stderr] Compiling gix-credentials v0.29.0 [INFO] [stderr] Compiling gix-lock v17.1.0 [INFO] [stderr] Compiling gix-pathspec v0.11.0 [INFO] [stderr] Compiling gix-shallow v0.4.0 [INFO] [stderr] Compiling onig v6.5.1 [INFO] [stderr] Compiling tokio-util v0.7.15 [INFO] [stderr] Compiling tui-tree-widget v0.22.0 [INFO] [stderr] Compiling syntect v5.2.0 [INFO] [stderr] Compiling gix-revwalk v0.20.1 [INFO] [stderr] Compiling gix-ref v0.52.1 [INFO] [stderr] Compiling gix-filter v0.19.2 [INFO] [stderr] Compiling gix-pack v0.59.1 [INFO] [stderr] Compiling gix-traverse v0.46.2 [INFO] [stderr] Compiling gix-revision v0.34.1 [INFO] [stderr] Compiling gix-negotiate v0.20.1 [INFO] [stderr] Compiling gix-index v0.40.1 [INFO] [stderr] Compiling gix-worktree-stream v0.21.2 [INFO] [stderr] Compiling gix-archive v0.21.2 [INFO] [stderr] Compiling gix-odb v0.69.1 [INFO] [stderr] Compiling gix-refspec v0.30.1 [INFO] [stderr] Compiling gix-discover v0.40.1 [INFO] [stderr] Compiling gix-config v0.45.1 [INFO] [stderr] Compiling gix-protocol v0.50.1 [INFO] [stderr] Compiling gix-worktree v0.41.0 [INFO] [stderr] Compiling gix-diff v0.52.1 [INFO] [stderr] Compiling gix-dir v0.14.1 [INFO] [stderr] Compiling gix-worktree-state v0.19.0 [INFO] [stderr] Compiling gix-submodule v0.19.1 [INFO] [stderr] Compiling gix-status v0.19.1 [INFO] [stderr] Compiling gix v0.72.1 [INFO] [stderr] Compiling git-lineage v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `cancellation_token_for_callback` [INFO] [stdout] --> src/async_task.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cancellation_token_for_callback` [INFO] [stdout] --> src/async_task.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Modified` is never constructed [INFO] [stdout] --> src/app.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub enum DiffLineType { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 42 | Modified, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiffLineType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `current_blame` is never read [INFO] [stdout] --> src/app.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct InspectorState { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 56 | pub current_content: Vec, [INFO] [stdout] 57 | pub current_blame: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InspectorState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/app.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 94 | impl App { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn navigate_tree_up(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn navigate_tree_down(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn expand_selected_node(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn collapse_selected_node(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn toggle_selected_node(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | pub fn get_selected_file_path(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn get_navigator_search_query(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn is_navigator_searching(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn load_inspector_content(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn set_selected_commit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn load_commit_history_for_selected_file( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LoadCommitHistory` is never constructed [INFO] [stdout] --> src/async_task.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Task { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] 7 | LoadFileTree, [INFO] [stdout] 8 | LoadCommitHistory { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Task` 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: method `to_string` is never used [INFO] [stdout] --> src/command.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl Command { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_blame_at_commit` is never used [INFO] [stdout] --> src/git_utils.rs:423:8 [INFO] [stdout] | [INFO] [stdout] 423 | pub fn get_blame_at_commit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_file_content_at_head` is never used [INFO] [stdout] --> src/git_utils.rs:467:8 [INFO] [stdout] | [INFO] [stdout] 467 | pub fn get_file_content_at_head( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_next_change_for_line` is never used [INFO] [stdout] --> src/git_utils.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 530 | pub fn find_next_change_for_line( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_buffer`, `contains_text`, `get_cursor`, and `resize` are never used [INFO] [stdout] --> src/headless_backend.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl HeadlessBackend { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_buffer(&self) -> &Buffer { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn contains_text(&self, text: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn get_cursor(&self) -> (Option<(u16, u16)>, bool) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn resize(&mut self, width: u16, height: u16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `reverse_map_line`, `find_nearest_mapped_line`, and `find_nearest_mapped_line_with_content_fallback` are never used [INFO] [stdout] --> src/line_mapping.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl LineMapping { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn reverse_map_line(&self, new_line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn find_nearest_mapped_line(&self, old_line: usize, search_radius: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | pub fn find_nearest_mapped_line_with_content_fallback( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Git` is never constructed [INFO] [stdout] --> src/line_mapping.rs:306:5 [INFO] [stdout] | [INFO] [stdout] 304 | pub enum LineMappingError { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] 305 | #[error("Git error: {0}")] [INFO] [stdout] 306 | Git(String), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LineMappingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SelectFile` is never constructed [INFO] [stdout] --> src/navigator.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum NavigatorEvent { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 13 | SelectFile(PathBuf), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NavigatorEvent` 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: field `scroll_offset` is never read [INFO] [stdout] --> src/navigator.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct NavigatorViewModel { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 41 | pub items: Vec, [INFO] [stdout] 42 | pub scroll_offset: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NavigatorViewModel` 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: method `is_view_model_dirty` is never used [INFO] [stdout] --> src/navigator.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl NavigatorState { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 354 | pub fn is_view_model_dirty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save_to_file` is never used [INFO] [stdout] --> src/test_config.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl TestConfig { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn save_to_file(&self, path: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/test_runner.rs:607:12 [INFO] [stdout] | [INFO] [stdout] 606 | impl TestRunner { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 607 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `search_text` and `text_default` are never read [INFO] [stdout] --> src/theme.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Theme { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub search_text: Color, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub text_default: Color, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Theme` 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: multiple methods are never used [INFO] [stdout] --> src/tree.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TreeNode { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn remove_child(&mut self, path: &Path) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn find_child(&self, path: &Path) -> Option<&TreeNode> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn find_child_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn collapse(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn toggle_expansion(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn has_children(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn depth(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tree.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl FileTree { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn set_git_status(&mut self, status_map: HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | fn apply_git_status_to_tree(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 347 | fn apply_git_status_to_node_static( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 371 | pub fn find_node_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | fn find_node_recursive_mut_static<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 414 | pub fn expand_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | pub fn collapse_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn toggle_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 447 | pub fn get_visible_nodes(&self) -> Vec<&TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn get_visible_nodes_with_depth(&self) -> Vec<(&TreeNode, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 465 | fn collect_visible_nodes<'a>(&self, node: &'a TreeNode, visible: &mut Vec<&'a TreeNode>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 476 | fn collect_visible_nodes_with_depth<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 492 | pub fn get_stats(&self) -> TreeStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 501 | fn collect_stats(&self, node: &TreeNode, stats: &mut TreeStats) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TreeStats` is never constructed [INFO] [stdout] --> src/tree.rs:526:12 [INFO] [stdout] | [INFO] [stdout] 526 | pub struct TreeStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 16s [INFO] running `Command { std: "docker" "inspect" "a00ad4b970275d498888220aa9aed35648824882571ca62b3ee10964af7c7d49", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a00ad4b970275d498888220aa9aed35648824882571ca62b3ee10964af7c7d49", kill_on_drop: false }` [INFO] [stdout] a00ad4b970275d498888220aa9aed35648824882571ca62b3ee10964af7c7d49 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 54b7dee4fe73658b78262cbbf2a177762fa48b594723f5fd2838af6c151fe3f3 [INFO] running `Command { std: "docker" "start" "-a" "54b7dee4fe73658b78262cbbf2a177762fa48b594723f5fd2838af6c151fe3f3", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling tokio v1.45.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling sdd v3.0.8 [INFO] [stderr] Compiling predicates v3.1.3 [INFO] [stderr] Compiling mockall_derive v0.12.1 [INFO] [stderr] Compiling serial_test_derive v3.2.0 [INFO] [stderr] Compiling fragile v2.0.1 [INFO] [stderr] Compiling deunicode v1.6.2 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling downcast v0.11.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling tempfile v3.20.0 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling rand v0.9.1 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling gix-tempfile v17.1.0 [INFO] [stderr] Compiling gix-odb v0.69.1 [INFO] [stderr] Compiling scc v2.3.4 [INFO] [stderr] Compiling rusty-fork v0.3.0 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling gix-lock v17.1.0 [INFO] [stderr] Compiling async-stream v0.3.6 [INFO] [stderr] Compiling gix-ref v0.52.1 [INFO] [stderr] Compiling gix-index v0.40.1 [INFO] [stderr] Compiling gix-shallow v0.4.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling proptest v1.7.0 [INFO] [stderr] Compiling fake v2.10.0 [INFO] [stderr] Compiling gix-worktree v0.41.0 [INFO] [stderr] Compiling gix-discover v0.40.1 [INFO] [stderr] Compiling gix-config v0.45.1 [INFO] [stderr] Compiling gix-protocol v0.50.1 [INFO] [stderr] Compiling gix-diff v0.52.1 [INFO] [stderr] Compiling gix-dir v0.14.1 [INFO] [stderr] Compiling gix-worktree-state v0.19.0 [INFO] [stderr] Compiling mockall v0.12.1 [INFO] [stderr] Compiling gix-submodule v0.19.1 [INFO] [stderr] Compiling gix-status v0.19.1 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling serial_test v3.2.0 [INFO] [stderr] Compiling gix v0.72.1 [INFO] [stderr] Compiling tokio-util v0.7.15 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling tokio-test v0.4.4 [INFO] [stderr] Compiling git-lineage v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `cancellation_token_for_callback` [INFO] [stdout] --> src/async_task.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/app.rs:1011:13 [INFO] [stdout] | [INFO] [stdout] 1011 | 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: `std::path::PathBuf` [INFO] [stdout] --> src/async_task.rs:520:9 [INFO] [stdout] | [INFO] [stdout] 520 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/app.rs:1011:13 [INFO] [stdout] | [INFO] [stdout] 1011 | 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: `std::path::PathBuf` [INFO] [stdout] --> src/async_task.rs:520:9 [INFO] [stdout] | [INFO] [stdout] 520 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> tests/main_tests.rs:801:13 [INFO] [stdout] | [INFO] [stdout] 801 | let temp_dir = TempDir::new().unwrap(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> tests/main_tests.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | / app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stdout] 265 | | std::path::PathBuf::from("test_file.rs") [INFO] [stdout] 266 | | )); [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] 264 | let _ = app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> tests/main_tests.rs:308:9 [INFO] [stdout] | [INFO] [stdout] 308 | / app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stdout] 309 | | std::path::PathBuf::from("empty_file.rs") [INFO] [stdout] 310 | | )); [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] 308 | let _ = app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> tests/main_tests.rs:361:9 [INFO] [stdout] | [INFO] [stdout] 361 | / app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stdout] 362 | | std::path::PathBuf::from("current_file.rs") [INFO] [stdout] 363 | | )); [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] 361 | let _ = app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:227:38 [INFO] [stdout] | [INFO] [stdout] 227 | f.render_widget(block, f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:227:38 [INFO] [stdout] | [INFO] [stdout] 227 | f.render_widget(block, f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:247:42 [INFO] [stdout] | [INFO] [stdout] 247 | f.render_widget(paragraph, f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:247:42 [INFO] [stdout] | [INFO] [stdout] 247 | f.render_widget(paragraph, f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:263:26 [INFO] [stdout] | [INFO] [stdout] 263 | .split(f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:263:26 [INFO] [stdout] | [INFO] [stdout] 263 | .split(f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:284:42 [INFO] [stdout] | [INFO] [stdout] 284 | f.render_widget(paragraph, f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stdout] --> src/headless_backend.rs:284:42 [INFO] [stdout] | [INFO] [stdout] 284 | f.render_widget(paragraph, f.size()); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cancellation_token_for_callback` [INFO] [stdout] --> src/async_task.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cancellation_token_for_callback` [INFO] [stdout] --> src/async_task.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/headless_backend.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | let mut backend = HeadlessBackend::new(20, 5); [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: unused variable: `cancellation_token_for_callback` [INFO] [stdout] --> src/async_task.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/headless_backend.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | let mut backend = HeadlessBackend::new(20, 5); [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/headless_backend.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | let mut backend = HeadlessBackend::new(30, 10); [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/headless_backend.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut backend = HeadlessBackend::new(60, 20); [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/headless_backend.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | let mut backend = HeadlessBackend::new(30, 10); [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/headless_backend.rs:279:13 [INFO] [stdout] | [INFO] [stdout] 279 | let mut backend = HeadlessBackend::new(10, 3); [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/headless_backend.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut backend = HeadlessBackend::new(60, 20); [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/headless_backend.rs:279:13 [INFO] [stdout] | [INFO] [stdout] 279 | let mut backend = HeadlessBackend::new(10, 3); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Modified` is never constructed [INFO] [stdout] --> src/app.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub enum DiffLineType { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 42 | Modified, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiffLineType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_navigator_search_query`, `is_navigator_searching`, `load_inspector_content`, `set_selected_commit`, and `load_commit_history_for_selected_file` are never used [INFO] [stdout] --> src/app.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 94 | impl App { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn get_navigator_search_query(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn is_navigator_searching(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn load_inspector_content(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn set_selected_commit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn load_commit_history_for_selected_file( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_test_commit_info` is never used [INFO] [stdout] --> src/async_task.rs:526:8 [INFO] [stdout] | [INFO] [stdout] 526 | fn create_test_commit_info(hash: &str, subject: &str) -> CommitInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_blame_at_commit` is never used [INFO] [stdout] --> src/git_utils.rs:423:8 [INFO] [stdout] | [INFO] [stdout] 423 | pub fn get_blame_at_commit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_file_content_at_head` is never used [INFO] [stdout] --> src/git_utils.rs:467:8 [INFO] [stdout] | [INFO] [stdout] 467 | pub fn get_file_content_at_head( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_next_change_for_line` is never used [INFO] [stdout] --> src/git_utils.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 530 | pub fn find_next_change_for_line( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_test_commit_info` is never used [INFO] [stdout] --> src/async_task.rs:526:8 [INFO] [stdout] | [INFO] [stdout] 526 | fn create_test_commit_info(hash: &str, subject: &str) -> CommitInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Git` is never constructed [INFO] [stdout] --> src/line_mapping.rs:306:5 [INFO] [stdout] | [INFO] [stdout] 304 | pub enum LineMappingError { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] 305 | #[error("Git error: {0}")] [INFO] [stdout] 306 | Git(String), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LineMappingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `scroll_offset` is never read [INFO] [stdout] --> src/navigator.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct NavigatorViewModel { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 41 | pub items: Vec, [INFO] [stdout] 42 | pub scroll_offset: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NavigatorViewModel` 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: method `is_view_model_dirty` is never used [INFO] [stdout] --> src/navigator.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl NavigatorState { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 354 | pub fn is_view_model_dirty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save_to_file` is never used [INFO] [stdout] --> src/test_config.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl TestConfig { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn save_to_file(&self, path: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `search_text` and `text_default` are never read [INFO] [stdout] --> src/theme.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Theme { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub search_text: Color, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub text_default: Color, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Theme` 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: methods `find_child_mut` and `has_children` are never used [INFO] [stdout] --> src/tree.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TreeNode { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn find_child_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn has_children(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Modified` is never constructed [INFO] [stdout] --> src/app.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub enum DiffLineType { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 42 | Modified, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiffLineType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `current_blame` is never read [INFO] [stdout] --> src/app.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 55 | pub struct InspectorState { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 56 | pub current_content: Vec, [INFO] [stdout] 57 | pub current_blame: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InspectorState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/app.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 94 | impl App { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn navigate_tree_up(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn navigate_tree_down(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn expand_selected_node(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn collapse_selected_node(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn toggle_selected_node(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | pub fn get_selected_file_path(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn get_navigator_search_query(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn is_navigator_searching(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn load_inspector_content(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn set_selected_commit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn load_commit_history_for_selected_file( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LoadCommitHistory` is never constructed [INFO] [stdout] --> src/async_task.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Task { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] 7 | LoadFileTree, [INFO] [stdout] 8 | LoadCommitHistory { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Task` 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: method `to_string` is never used [INFO] [stdout] --> src/command.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl Command { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_blame_at_commit` is never used [INFO] [stdout] --> src/git_utils.rs:423:8 [INFO] [stdout] | [INFO] [stdout] 423 | pub fn get_blame_at_commit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_file_content_at_head` is never used [INFO] [stdout] --> src/git_utils.rs:467:8 [INFO] [stdout] | [INFO] [stdout] 467 | pub fn get_file_content_at_head( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_next_change_for_line` is never used [INFO] [stdout] --> src/git_utils.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 530 | pub fn find_next_change_for_line( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_buffer`, `contains_text`, `get_cursor`, and `resize` are never used [INFO] [stdout] --> src/headless_backend.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl HeadlessBackend { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_buffer(&self) -> &Buffer { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn contains_text(&self, text: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn get_cursor(&self) -> (Option<(u16, u16)>, bool) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn resize(&mut self, width: u16, height: u16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `reverse_map_line`, `find_nearest_mapped_line`, and `find_nearest_mapped_line_with_content_fallback` are never used [INFO] [stdout] --> src/line_mapping.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl LineMapping { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn reverse_map_line(&self, new_line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn find_nearest_mapped_line(&self, old_line: usize, search_radius: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | pub fn find_nearest_mapped_line_with_content_fallback( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Git` is never constructed [INFO] [stdout] --> src/line_mapping.rs:306:5 [INFO] [stdout] | [INFO] [stdout] 304 | pub enum LineMappingError { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] 305 | #[error("Git error: {0}")] [INFO] [stdout] 306 | Git(String), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LineMappingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SelectFile` is never constructed [INFO] [stdout] --> src/navigator.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum NavigatorEvent { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 13 | SelectFile(PathBuf), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NavigatorEvent` 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: field `scroll_offset` is never read [INFO] [stdout] --> src/navigator.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct NavigatorViewModel { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 41 | pub items: Vec, [INFO] [stdout] 42 | pub scroll_offset: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NavigatorViewModel` 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: method `is_view_model_dirty` is never used [INFO] [stdout] --> src/navigator.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl NavigatorState { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 354 | pub fn is_view_model_dirty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save_to_file` is never used [INFO] [stdout] --> src/test_config.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl TestConfig { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn save_to_file(&self, path: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/test_runner.rs:607:12 [INFO] [stdout] | [INFO] [stdout] 606 | impl TestRunner { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 607 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `search_text` and `text_default` are never read [INFO] [stdout] --> src/theme.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Theme { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub search_text: Color, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub text_default: Color, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Theme` 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: multiple methods are never used [INFO] [stdout] --> src/tree.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TreeNode { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn remove_child(&mut self, path: &Path) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn find_child(&self, path: &Path) -> Option<&TreeNode> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn find_child_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn collapse(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn toggle_expansion(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn has_children(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn depth(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tree.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl FileTree { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn set_git_status(&mut self, status_map: HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | fn apply_git_status_to_tree(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 347 | fn apply_git_status_to_node_static( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 371 | pub fn find_node_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | fn find_node_recursive_mut_static<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 414 | pub fn expand_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | pub fn collapse_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn toggle_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 447 | pub fn get_visible_nodes(&self) -> Vec<&TreeNode> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn get_visible_nodes_with_depth(&self) -> Vec<(&TreeNode, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 465 | fn collect_visible_nodes<'a>(&self, node: &'a TreeNode, visible: &mut Vec<&'a TreeNode>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 476 | fn collect_visible_nodes_with_depth<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 492 | pub fn get_stats(&self) -> TreeStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 501 | fn collect_stats(&self, node: &TreeNode, stats: &mut TreeStats) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TreeStats` is never constructed [INFO] [stdout] --> src/tree.rs:526:12 [INFO] [stdout] | [INFO] [stdout] 526 | pub struct TreeStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `toggle_node`, `get_visible_nodes_with_depth`, and `collect_visible_nodes_with_depth` are never used [INFO] [stdout] --> src/tree.rs:436:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl FileTree { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn toggle_node(&mut self, path: &Path) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn get_visible_nodes_with_depth(&self) -> Vec<(&TreeNode, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 476 | fn collect_visible_nodes_with_depth<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 39.79s [INFO] running `Command { std: "docker" "inspect" "54b7dee4fe73658b78262cbbf2a177762fa48b594723f5fd2838af6c151fe3f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "54b7dee4fe73658b78262cbbf2a177762fa48b594723f5fd2838af6c151fe3f3", kill_on_drop: false }` [INFO] [stdout] 54b7dee4fe73658b78262cbbf2a177762fa48b594723f5fd2838af6c151fe3f3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0d83cc5de5fe4619ea728b1a2199b1bb26f70c0724f8037a3d2c8f0f39273bc3 [INFO] running `Command { std: "docker" "start" "-a" "0d83cc5de5fe4619ea728b1a2199b1bb26f70c0724f8037a3d2c8f0f39273bc3", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `cancellation_token_for_callback` [INFO] [stderr] --> src/async_task.rs:333:13 [INFO] [stderr] | [INFO] [stderr] 333 | let cancellation_token_for_callback = cancellation_token.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cancellation_token_for_callback` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `git-lineage` (lib) generated 1 warning (run `cargo fix --lib -p git-lineage` to apply 1 suggestion) [INFO] [stderr] warning: variant `Modified` is never constructed [INFO] [stderr] --> src/app.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 39 | pub enum DiffLineType { [INFO] [stderr] | ------------ variant in this enum [INFO] [stderr] ... [INFO] [stderr] 42 | Modified, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DiffLineType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: field `current_blame` is never read [INFO] [stderr] --> src/app.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 55 | pub struct InspectorState { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 56 | pub current_content: Vec, [INFO] [stderr] 57 | pub current_blame: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `InspectorState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/app.rs:129:12 [INFO] [stderr] | [INFO] [stderr] 94 | impl App { [INFO] [stderr] | -------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 129 | pub fn navigate_tree_up(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 133 | pub fn navigate_tree_down(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 137 | pub fn expand_selected_node(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 141 | pub fn collapse_selected_node(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 145 | pub fn toggle_selected_node(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 153 | pub fn get_selected_file_path(&self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 173 | pub fn get_navigator_search_query(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 178 | pub fn is_navigator_searching(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 188 | pub fn load_inspector_content(&mut self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 241 | pub fn set_selected_commit( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 282 | pub fn load_commit_history_for_selected_file( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `LoadCommitHistory` is never constructed [INFO] [stderr] --> src/async_task.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 6 | pub enum Task { [INFO] [stderr] | ---- variant in this enum [INFO] [stderr] 7 | LoadFileTree, [INFO] [stderr] 8 | LoadCommitHistory { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Task` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `to_string` is never used [INFO] [stderr] --> src/command.rs:122:12 [INFO] [stderr] | [INFO] [stderr] 46 | impl Command { [INFO] [stderr] | ------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 122 | pub fn to_string(&self) -> String { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_blame_at_commit` is never used [INFO] [stderr] --> src/git_utils.rs:423:8 [INFO] [stderr] | [INFO] [stderr] 423 | pub fn get_blame_at_commit( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_file_content_at_head` is never used [INFO] [stderr] --> src/git_utils.rs:467:8 [INFO] [stderr] | [INFO] [stderr] 467 | pub fn get_file_content_at_head( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `find_next_change_for_line` is never used [INFO] [stderr] --> src/git_utils.rs:530:8 [INFO] [stderr] | [INFO] [stderr] 530 | pub fn find_next_change_for_line( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_buffer`, `contains_text`, `get_cursor`, and `resize` are never used [INFO] [stderr] --> src/headless_backend.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 16 | impl HeadlessBackend { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 34 | pub fn get_buffer(&self) -> &Buffer { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 66 | pub fn contains_text(&self, text: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | pub fn get_cursor(&self) -> (Option<(u16, u16)>, bool) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 76 | pub fn resize(&mut self, width: u16, height: u16) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `reverse_map_line`, `find_nearest_mapped_line`, and `find_nearest_mapped_line_with_content_fallback` are never used [INFO] [stderr] --> src/line_mapping.rs:54:12 [INFO] [stderr] | [INFO] [stderr] 24 | impl LineMapping { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 54 | pub fn reverse_map_line(&self, new_line: usize) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 59 | pub fn find_nearest_mapped_line(&self, old_line: usize, search_radius: usize) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 283 | pub fn find_nearest_mapped_line_with_content_fallback( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Git` is never constructed [INFO] [stderr] --> src/line_mapping.rs:306:5 [INFO] [stderr] | [INFO] [stderr] 304 | pub enum LineMappingError { [INFO] [stderr] | ---------------- variant in this enum [INFO] [stderr] 305 | #[error("Git error: {0}")] [INFO] [stderr] 306 | Git(String), [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `LineMappingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `SelectFile` is never constructed [INFO] [stderr] --> src/navigator.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 12 | pub enum NavigatorEvent { [INFO] [stderr] | -------------- variant in this enum [INFO] [stderr] 13 | SelectFile(PathBuf), [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `NavigatorEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `scroll_offset` is never read [INFO] [stderr] --> src/navigator.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 40 | pub struct NavigatorViewModel { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] 41 | pub items: Vec, [INFO] [stderr] 42 | pub scroll_offset: usize, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `NavigatorViewModel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `is_view_model_dirty` is never used [INFO] [stderr] --> src/navigator.rs:354:12 [INFO] [stderr] | [INFO] [stderr] 68 | impl NavigatorState { [INFO] [stderr] | ------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 354 | pub fn is_view_model_dirty(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `save_to_file` is never used [INFO] [stderr] --> src/test_config.rs:109:12 [INFO] [stderr] | [INFO] [stderr] 102 | impl TestConfig { [INFO] [stderr] | --------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 109 | pub fn save_to_file(&self, path: &str) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/test_runner.rs:607:12 [INFO] [stderr] | [INFO] [stderr] 606 | impl TestRunner { [INFO] [stderr] | --------------- associated function in this implementation [INFO] [stderr] 607 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `search_text` and `text_default` are never read [INFO] [stderr] --> src/theme.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct Theme { [INFO] [stderr] | ----- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 19 | pub search_text: Color, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 53 | pub text_default: Color, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Theme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/tree.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 19 | impl TreeNode { [INFO] [stderr] | ------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn remove_child(&mut self, path: &Path) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 72 | pub fn find_child(&self, path: &Path) -> Option<&TreeNode> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 77 | pub fn find_child_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 89 | pub fn collapse(&mut self) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 96 | pub fn toggle_expansion(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 103 | pub fn has_children(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 108 | pub fn depth(&self) -> usize { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/tree.rs:333:12 [INFO] [stderr] | [INFO] [stderr] 148 | impl FileTree { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 333 | pub fn set_git_status(&mut self, status_map: HashMap) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 339 | fn apply_git_status_to_tree(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 347 | fn apply_git_status_to_node_static( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 371 | pub fn find_node_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 396 | fn find_node_recursive_mut_static<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 414 | pub fn expand_node(&mut self, path: &Path) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 425 | pub fn collapse_node(&mut self, path: &Path) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 436 | pub fn toggle_node(&mut self, path: &Path) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 447 | pub fn get_visible_nodes(&self) -> Vec<&TreeNode> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 456 | pub fn get_visible_nodes_with_depth(&self) -> Vec<(&TreeNode, usize)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 465 | fn collect_visible_nodes<'a>(&self, node: &'a TreeNode, visible: &mut Vec<&'a TreeNode>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 476 | fn collect_visible_nodes_with_depth<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 492 | pub fn get_stats(&self) -> TreeStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 501 | fn collect_stats(&self, node: &TreeNode, stats: &mut TreeStats) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TreeStats` is never constructed [INFO] [stderr] --> src/tree.rs:526:12 [INFO] [stderr] | [INFO] [stderr] 526 | pub struct TreeStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `git-lineage` (bin "git-lineage") generated 21 warnings (1 duplicate) [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/app.rs:1011:13 [INFO] [stderr] | [INFO] [stderr] 1011 | 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: `std::path::PathBuf` [INFO] [stderr] --> src/async_task.rs:520:9 [INFO] [stderr] | [INFO] [stderr] 520 | use std::path::PathBuf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stderr] --> src/headless_backend.rs:227:38 [INFO] [stderr] | [INFO] [stderr] 227 | f.render_widget(block, f.size()); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stderr] --> src/headless_backend.rs:247:42 [INFO] [stderr] | [INFO] [stderr] 247 | f.render_widget(paragraph, f.size()); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stderr] --> src/headless_backend.rs:263:26 [INFO] [stderr] | [INFO] [stderr] 263 | .split(f.size()); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name [INFO] [stderr] --> src/headless_backend.rs:284:42 [INFO] [stderr] | [INFO] [stderr] 284 | f.render_widget(paragraph, f.size()); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/headless_backend.rs:222:13 [INFO] [stderr] | [INFO] [stderr] 222 | let mut backend = HeadlessBackend::new(20, 5); [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/headless_backend.rs:242:13 [INFO] [stderr] | [INFO] [stderr] 242 | let mut backend = HeadlessBackend::new(30, 10); [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/headless_backend.rs:256:13 [INFO] [stderr] | [INFO] [stderr] 256 | let mut backend = HeadlessBackend::new(60, 20); [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/headless_backend.rs:279:13 [INFO] [stderr] | [INFO] [stderr] 279 | let mut backend = HeadlessBackend::new(10, 3); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function `create_test_commit_info` is never used [INFO] [stderr] --> src/async_task.rs:526:8 [INFO] [stderr] | [INFO] [stderr] 526 | fn create_test_commit_info(hash: &str, subject: &str) -> CommitInfo { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> tests/main_tests.rs:801:13 [INFO] [stderr] | [INFO] [stderr] 801 | let temp_dir = TempDir::new().unwrap(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> tests/main_tests.rs:264:9 [INFO] [stderr] | [INFO] [stderr] 264 | / app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stderr] 265 | | std::path::PathBuf::from("test_file.rs") [INFO] [stderr] 266 | | )); [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] 264 | let _ = app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> tests/main_tests.rs:308:9 [INFO] [stderr] | [INFO] [stderr] 308 | / app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stderr] 309 | | std::path::PathBuf::from("empty_file.rs") [INFO] [stderr] 310 | | )); [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] 308 | let _ = app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> tests/main_tests.rs:361:9 [INFO] [stderr] | [INFO] [stderr] 361 | / app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stderr] 362 | | std::path::PathBuf::from("current_file.rs") [INFO] [stderr] 363 | | )); [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] 361 | let _ = app.navigator.handle_event(git_lineage::navigator::NavigatorEvent::SelectFile( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: methods `get_navigator_search_query`, `is_navigator_searching`, `load_inspector_content`, `set_selected_commit`, and `load_commit_history_for_selected_file` are never used [INFO] [stderr] --> src/app.rs:173:12 [INFO] [stderr] | [INFO] [stderr] 94 | impl App { [INFO] [stderr] | -------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 173 | pub fn get_navigator_search_query(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 178 | pub fn is_navigator_searching(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 188 | pub fn load_inspector_content(&mut self) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 241 | pub fn set_selected_commit( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 282 | pub fn load_commit_history_for_selected_file( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_test_commit_info` is never used [INFO] [stderr] --> src/async_task.rs:526:8 [INFO] [stderr] | [INFO] [stderr] 526 | fn create_test_commit_info(hash: &str, subject: &str) -> CommitInfo { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `find_child_mut` and `has_children` are never used [INFO] [stderr] --> src/tree.rs:77:12 [INFO] [stderr] | [INFO] [stderr] 19 | impl TreeNode { [INFO] [stderr] | ------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 77 | pub fn find_child_mut(&mut self, path: &Path) -> Option<&mut TreeNode> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 103 | pub fn has_children(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `toggle_node`, `get_visible_nodes_with_depth`, and `collect_visible_nodes_with_depth` are never used [INFO] [stderr] --> src/tree.rs:436:12 [INFO] [stderr] | [INFO] [stderr] 148 | impl FileTree { [INFO] [stderr] | ------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 436 | pub fn toggle_node(&mut self, path: &Path) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 456 | pub fn get_visible_nodes_with_depth(&self) -> Vec<(&TreeNode, usize)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 476 | fn collect_visible_nodes_with_depth<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `git-lineage` (lib test) generated 12 warnings (1 duplicate) (run `cargo fix --lib -p git-lineage --tests` to apply 6 suggestions) [INFO] [stderr] warning: `git-lineage` (test "main_tests") generated 4 warnings (run `cargo fix --test "main_tests" -p git-lineage` to apply 1 suggestion) [INFO] [stderr] warning: `git-lineage` (bin "git-lineage" test) generated 24 warnings (20 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.54s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/git_lineage-df8d3230eb45dbe9) [INFO] [stdout] [INFO] [stdout] running 139 tests [INFO] [stdout] test app::tests::file_tree_navigation::test_expand_selected_node ... ok [INFO] [stdout] test app::tests::app_construction::test_new_app_default_state ... ok [INFO] [stdout] test app::tests::edge_cases::test_from_test_config_with_empty_commit_list ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_content ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_navigate_tree_down ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_navigate_tree_up ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_get_selected_file_path ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_commits ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_file_navigator_selection ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_collapse_selected_node ... ok [INFO] [stdout] test app::tests::panel_navigation::test_next_panel_from_inspector ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_file_tree ... ok [INFO] [stdout] test app::tests::panel_navigation::test_next_panel_from_history ... ok [INFO] [stdout] test app::tests::panel_navigation::test_previous_panel_from_navigator ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_large_file_simulation ... ok [INFO] [stdout] test app::tests::panel_navigation::test_previous_panel_from_history ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_invalid_commit_index ... ok [INFO] [stdout] test app::tests::panel_navigation::test_next_panel_from_navigator ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_manual_proportional_fallback_calculation ... ok [INFO] [stdout] test app::tests::panel_navigation::test_previous_panel_from_inspector ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_load_file_tree_with_nonexistent_path ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_git_error_handling_in_load_commit_history ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_worker_handles_result_send_failure ... ok [INFO] [stdout] test app::tests::position_tracking::test_apply_smart_cursor_positioning_with_saved_position ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_mock_file_tree_structure ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_zero_line_input ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_task_and_result_serialization ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_manual_proportional_fallback_empty_content ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_proportional_fallback_bounds ... ok [INFO] [stdout] test app::tests::position_tracking::test_apply_smart_cursor_positioning_no_previous_commit ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_load_commit_history_with_permission_denied ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_worker_handles_git_errors ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_worker_error_propagation ... ok [INFO] [stdout] test app::tests::position_tracking::test_apply_smart_cursor_positioning_bounds_checking ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_with_empty_file ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_with_single_line_file ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_basic ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_file_tree_nonexistent_path ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_exits_when_task_channel_closed ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_boundary_conditions ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_same_commit ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_commit_history_invalid_repo ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_handles_channel_close ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_toggle_selected_node ... ok [INFO] [stdout] test app::tests::position_tracking::test_save_and_restore_cursor_position ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_commit_history_invalid_file ... ok [INFO] [stdout] test command::tests::test_command_parsing ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_concurrent_workers ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_very_long_file_paths ... ok [INFO] [stdout] test command::tests::test_command_to_string ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_load_file_tree ... ok [INFO] [stdout] test git_utils::tests::test_open_repository ... ok [INFO] [stdout] test headless_backend::tests::test_buffer_access ... ok [INFO] [stdout] test headless_backend::tests::test_buffer_operations ... ok [INFO] [stdout] test headless_backend::tests::test_complex_layout ... ok [INFO] [stdout] test headless_backend::tests::test_cursor_operations ... ok [INFO] [stdout] test headless_backend::tests::test_headless_backend_creation ... ok [INFO] [stdout] test headless_backend::tests::test_headless_backend_size ... ok [INFO] [stdout] test headless_backend::tests::test_rendering_simple_content ... ok [INFO] [stdout] test headless_backend::tests::test_rendering_text_widget ... ok [INFO] [stdout] test headless_backend::tests::test_resize ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_file_tree_success ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_multiple_tasks ... ok [INFO] [stdout] test git_utils::tests::test_gix_author_time_parsing ... ok [INFO] [stdout] test git_utils::tests::test_get_file_content_at_commit ... ok [INFO] [stdout] test git_utils::tests::test_get_commit_history_for_file ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_commit_history_success ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_nearest_neighbor_rejects_wrong_content ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_find_next_change_not_found_path ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_vs_standard_nearest_neighbor ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_worker_processes_tasks_with_errors ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_load_commit_history ... ok [INFO] [stdout] test async_task::tests::task_processing::test_find_next_change_returns_mock ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_find_next_change ... ok [INFO] [stdout] test git_utils::tests::test_commit_history_only_shows_modifications ... ok [INFO] [stdout] test line_mapping::tests::test_identity_mapping ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_integration ... ok [INFO] [stdout] test line_mapping::tests::test_nearest_mapped_line ... ok [INFO] [stdout] test line_mapping::tests::test_proportional_mapping ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_nearest_neighbor_success ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_whitespace_sensitivity ... ok [INFO] [stdout] test navigator::tests::test_browsing_navigation ... ok [INFO] [stdout] test navigator::tests::test_direct_file_selection ... ok [INFO] [stdout] test navigator::tests::test_directory_expansion ... ok [INFO] [stdout] test navigator::tests::test_navigator_state_creation ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_exact_mapping_verification ... ok [INFO] [stdout] test navigator::tests::test_nested_directory_expansion ... ok [INFO] [stdout] test navigator::tests::test_search_empty_query ... ok [INFO] [stdout] test navigator::tests::test_search_mode_basic ... ok [INFO] [stdout] test navigator::tests::test_search_navigation ... ok [INFO] [stdout] test navigator::tests::test_search_preserves_browsing_context ... ok [INFO] [stdout] test navigator::tests::test_start_search_shows_browsing_items ... ok [INFO] [stdout] test navigator::tests::test_search_no_results ... ok [INFO] [stdout] test line_mapping::tests::test_empty_file_handling ... ok [INFO] [stdout] test navigator::tests::test_toggle_expansion ... ok [INFO] [stdout] test screenshot::tests::test_buffer_to_string ... ok [INFO] [stdout] test test_runner::tests::test_parse_immediate_mode ... ok [INFO] [stdout] test navigator::tests::test_view_model_structure ... ok [INFO] [stdout] test test_runner::tests::test_parse_key_events ... ok [INFO] [stdout] test test_runner::tests::test_parse_simple_script ... ok [INFO] [stdout] test theme::tests::test_get_theme_returns_valid_theme ... ok [INFO] [stdout] test theme::tests::test_theme_clone ... ok [INFO] [stdout] test line_mapping::tests::test_end_to_end_content_aware_fallback_integration ... ok [INFO] [stdout] test theme::tests::test_theme_default ... ok [INFO] [stdout] test tree::tests::test_file_tree_creation ... ok [INFO] [stdout] test tree::tests::test_file_tree_expansion ... ok [INFO] [stdout] test tree::tests::test_file_tree_git_status ... ok [INFO] [stdout] test tree::tests::test_file_tree_navigation ... ok [INFO] [stdout] test test_runner::tests::test_assertion_evaluation ... ok [INFO] [stdout] test tree::tests::test_file_tree_stats ... ok [INFO] [stdout] test tree::tests::test_fuzzy_filtered_visible_nodes ... ok [INFO] [stdout] test tree::tests::test_fuzzy_search_sorting_debug ... ok [INFO] [stdout] test line_mapping::tests::test_line_deletion ... ok [INFO] [stdout] test tree::tests::test_file_tree_search ... ok [INFO] [stdout] test tree::tests::test_find_node ... ok [INFO] [stdout] test line_mapping::tests::test_file_not_found_error ... ok [INFO] [stdout] test tree::tests::test_tree_node_add_child ... ok [INFO] [stdout] test tree::tests::test_tree_node_creation ... ok [INFO] [stdout] test tree::tests::test_tree_node_depth ... ok [INFO] [stdout] test tree::tests::test_tree_node_expansion ... ok [INFO] [stdout] test tree::tests::test_tree_node_find_child ... ok [INFO] [stdout] test tree::tests::test_tree_node_remove_child ... ok [INFO] [stdout] test tree::tests::test_tree_node_with_git_status ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_no_match ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_multiple_matches ... ok [INFO] [stdout] test git_utils::tests::test_commit_history_for_nonexistent_file ... ok [INFO] [stdout] test tree::tests::test_tree_hierarchy_structure ... ok [INFO] [stdout] test tree::tests::test_tree_loading_git_tracked_files_only ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_nearest_neighbor_finds_correct_nearby_match ... ok [INFO] [stdout] test line_mapping::tests::test_same_commit_mapping ... ok [INFO] [stdout] test tree::tests::test_tree_loading_determinism ... ok [INFO] [stdout] test line_mapping::tests::test_find_nearest_with_exact_content_fallback_integration ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_empty_file_paths ... ok [INFO] [stdout] test line_mapping::tests::test_simple_line_addition ... ok [INFO] [stdout] test tree::tests::test_tree_sorting_consistency ... ok [INFO] [stdout] test tree::tests::test_tree_loading_edge_cases ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_special_characters_in_paths ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_single_match ... ok [INFO] [stdout] test tree::tests::test_tree_loading_performance ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 139 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.30s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 139 tests [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/git_lineage-d63218cdba002a6c) [INFO] [stdout] test app::tests::file_tree_navigation::test_expand_selected_node ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_content ... ok [INFO] [stdout] test app::tests::panel_navigation::test_next_panel_from_inspector ... ok [INFO] [stdout] test app::tests::edge_cases::test_from_test_config_with_empty_commit_list ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_file_tree ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_file_navigator_selection ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_navigate_tree_down ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_basic ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_invalid_commit_index ... ok [INFO] [stdout] test app::tests::app_construction::test_new_app_default_state ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_navigate_tree_up ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_get_selected_file_path ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_toggle_selected_node ... ok [INFO] [stdout] test app::tests::panel_navigation::test_previous_panel_from_inspector ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_manual_proportional_fallback_calculation ... ok [INFO] [stdout] test app::tests::app_construction::test_from_test_config_with_commits ... ok [INFO] [stdout] test app::tests::panel_navigation::test_previous_panel_from_history ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_proportional_fallback_bounds ... ok [INFO] [stdout] test app::tests::position_tracking::test_apply_smart_cursor_positioning_bounds_checking ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_boundary_conditions ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_git_error_handling_in_load_commit_history ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_load_file_tree_with_nonexistent_path ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_manual_proportional_fallback_empty_content ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_large_file_simulation ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_mock_file_tree_structure ... ok [INFO] [stdout] test app::tests::position_tracking::test_apply_smart_cursor_positioning_with_saved_position ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_task_and_result_serialization ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_worker_handles_result_send_failure ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_with_single_line_file ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_load_commit_history_with_permission_denied ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_with_empty_file ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_worker_handles_git_errors ... ok [INFO] [stdout] test app::tests::position_tracking::test_apply_smart_cursor_positioning_no_previous_commit ... ok [INFO] [stdout] test app::tests::panel_navigation::test_previous_panel_from_navigator ... ok [INFO] [stdout] test app::tests::panel_navigation::test_next_panel_from_navigator ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_commit_history_invalid_repo ... ok [INFO] [stdout] test app::tests::file_tree_navigation::test_collapse_selected_node ... ok [INFO] [stdout] test app::tests::panel_navigation::test_next_panel_from_history ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_file_tree_nonexistent_path ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_exits_when_task_channel_closed ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_worker_error_propagation ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_handles_channel_close ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_load_file_tree ... ok [INFO] [stdout] test app::tests::position_tracking::test_save_and_restore_cursor_position ... ok [INFO] [stdout] test command::tests::test_command_parsing ... ok [INFO] [stdout] test command::tests::test_command_to_string ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_same_commit ... ok [INFO] [stdout] test app::tests::position_tracking::test_get_mapped_line_zero_line_input ... ok [INFO] [stdout] test async_task::tests::error_scenarios::test_concurrent_workers ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_multiple_tasks ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_commit_history_invalid_file ... ok [INFO] [stdout] test git_utils::tests::test_open_repository ... ok [INFO] [stdout] test headless_backend::tests::test_buffer_access ... ok [INFO] [stdout] test headless_backend::tests::test_buffer_operations ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_empty_file_paths ... ok [INFO] [stdout] test headless_backend::tests::test_cursor_operations ... ok [INFO] [stdout] test headless_backend::tests::test_headless_backend_creation ... ok [INFO] [stdout] test headless_backend::tests::test_headless_backend_size ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_load_commit_history ... ok [INFO] [stdout] test headless_backend::tests::test_rendering_text_widget ... ok [INFO] [stdout] test headless_backend::tests::test_resize ... ok [INFO] [stdout] test headless_backend::tests::test_rendering_simple_content ... ok [INFO] [stdout] test headless_backend::tests::test_complex_layout ... ok [INFO] [stdout] test git_utils::tests::test_get_file_content_at_commit ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_file_tree_success ... ok [INFO] [stdout] test git_utils::tests::test_get_commit_history_for_file ... ok [INFO] [stdout] test git_utils::tests::test_commit_history_only_shows_modifications ... ok [INFO] [stdout] test git_utils::tests::test_commit_history_for_nonexistent_file ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_nearest_neighbor_success ... ok [INFO] [stdout] test async_task::tests::task_processing::test_load_commit_history_success ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_very_long_file_paths ... ok [INFO] [stdout] test git_utils::tests::test_gix_author_time_parsing ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_nearest_neighbor_rejects_wrong_content ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_vs_standard_nearest_neighbor ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_find_next_change_not_found_path ... ok [INFO] [stdout] test line_mapping::tests::test_identity_mapping ... ok [INFO] [stdout] test async_task::tests::coverage_completion::test_worker_processes_tasks_with_errors ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_exact_mapping_verification ... ok [INFO] [stdout] test line_mapping::tests::test_proportional_mapping ... ok [INFO] [stdout] test line_mapping::tests::test_nearest_mapped_line ... ok [INFO] [stdout] test line_mapping::tests::test_end_to_end_content_aware_fallback_integration ... ok [INFO] [stdout] test navigator::tests::test_browsing_navigation ... ok [INFO] [stdout] test navigator::tests::test_direct_file_selection ... ok [INFO] [stdout] test navigator::tests::test_directory_expansion ... ok [INFO] [stdout] test navigator::tests::test_navigator_state_creation ... ok [INFO] [stdout] test navigator::tests::test_nested_directory_expansion ... ok [INFO] [stdout] test navigator::tests::test_search_empty_query ... ok [INFO] [stdout] test navigator::tests::test_search_mode_basic ... ok [INFO] [stdout] test navigator::tests::test_search_navigation ... ok [INFO] [stdout] test async_task::tests::task_processing::test_find_next_change_returns_mock ... ok [INFO] [stdout] test navigator::tests::test_search_no_results ... ok [INFO] [stdout] test navigator::tests::test_search_preserves_browsing_context ... ok [INFO] [stdout] test navigator::tests::test_start_search_shows_browsing_items ... ok [INFO] [stdout] test navigator::tests::test_view_model_structure ... ok [INFO] [stdout] test screenshot::tests::test_buffer_to_string ... ok [INFO] [stdout] test line_mapping::tests::test_empty_file_handling ... ok [INFO] [stdout] test test_runner::tests::test_parse_immediate_mode ... ok [INFO] [stdout] test test_runner::tests::test_parse_key_events ... ok [INFO] [stdout] test test_runner::tests::test_parse_simple_script ... ok [INFO] [stdout] test theme::tests::test_get_theme_returns_valid_theme ... ok [INFO] [stdout] test theme::tests::test_theme_clone ... ok [INFO] [stdout] test theme::tests::test_theme_default ... ok [INFO] [stdout] test test_runner::tests::test_assertion_evaluation ... ok [INFO] [stdout] test navigator::tests::test_toggle_expansion ... ok [INFO] [stdout] test tree::tests::test_file_tree_creation ... ok [INFO] [stdout] test tree::tests::test_file_tree_expansion ... ok [INFO] [stdout] test tree::tests::test_file_tree_git_status ... ok [INFO] [stdout] test tree::tests::test_file_tree_navigation ... ok [INFO] [stdout] test tree::tests::test_file_tree_search ... ok [INFO] [stdout] test tree::tests::test_file_tree_stats ... ok [INFO] [stdout] test tree::tests::test_find_node ... ok [INFO] [stdout] test tree::tests::test_fuzzy_filtered_visible_nodes ... ok [INFO] [stdout] test tree::tests::test_fuzzy_search_sorting_debug ... ok [INFO] [stdout] test async_task::tests::worker_lifecycle::test_worker_processes_find_next_change ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_integration ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_multiple_matches ... ok [INFO] [stdout] test tree::tests::test_tree_node_add_child ... ok [INFO] [stdout] test tree::tests::test_tree_node_creation ... ok [INFO] [stdout] test tree::tests::test_tree_node_depth ... ok [INFO] [stdout] test line_mapping::tests::test_find_nearest_with_exact_content_fallback_integration ... ok [INFO] [stdout] test tree::tests::test_tree_node_find_child ... ok [INFO] [stdout] test tree::tests::test_tree_node_remove_child ... ok [INFO] [stdout] test tree::tests::test_tree_node_with_git_status ... ok [INFO] [stdout] test tree::tests::test_tree_node_expansion ... ok [INFO] [stdout] test line_mapping::tests::test_file_not_found_error ... ok [INFO] [stdout] test line_mapping::tests::test_line_deletion ... ok [INFO] [stdout] test tree::tests::test_tree_loading_git_tracked_files_only ... ok [INFO] [stdout] test line_mapping::tests::test_same_commit_mapping ... ok [INFO] [stdout] test tree::tests::test_tree_loading_edge_cases ... ok [INFO] [stdout] test line_mapping::tests::test_content_aware_nearest_neighbor_finds_correct_nearby_match ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_no_match ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_single_match ... ok [INFO] [stdout] test tree::tests::test_tree_hierarchy_structure ... ok [INFO] [stdout] test line_mapping::tests::test_exact_content_fallback_whitespace_sensitivity ... ok [INFO] [stdout] test tree::tests::test_tree_sorting_consistency ... ok [INFO] [stdout] test line_mapping::tests::test_simple_line_addition ... ok [INFO] [stdout] test tree::tests::test_tree_loading_performance ... ok [INFO] [stdout] test tree::tests::test_tree_loading_determinism ... ok [INFO] [stdout] test async_task::tests::edge_cases::test_special_characters_in_paths ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 139 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.96s [INFO] [stdout] [INFO] [stderr] Running tests/cancellation_tests.rs (/opt/rustwide/target/debug/deps/cancellation_tests-bfe2988e5b8881c6) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_async_worker_streaming_task_cancellation ... ok [INFO] [stdout] test test_streaming_task_cancellation_during_processing ... ok [INFO] [stdout] test test_streaming_task_cancellation_immediate ... ok [INFO] [stdout] test test_cancellation_stops_processing_non_matching_commits ... ok [INFO] [stdout] test test_multiple_rapid_file_switches ... ok [INFO] [stdout] test test_app_state_cancellation_on_file_switch ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 8.17s [INFO] [stdout] [INFO] [stderr] Running tests/main_tests.rs (/opt/rustwide/target/debug/deps/main_tests-a6f7c971061d70b6) [INFO] [stdout] [INFO] [stdout] running 31 tests [INFO] [stdout] test cli_integration::test_cli_parsing_run_command ... ok [INFO] [stdout] test cli_integration::test_cli_parsing_screenshot_command ... ok [INFO] [stdout] test cli_integration::test_cli_parsing_save_state_command ... ok [INFO] [stdout] test cli_integration::test_cli_parsing_execute_command ... ok [INFO] [stdout] test integration_scenarios::test_error_handling_chain ... ok [INFO] [stdout] test edge_cases::test_zero_dimensions ... ok [INFO] [stdout] test edge_cases::test_screenshot_path_generation ... FAILED [INFO] [stdout] test edge_cases::test_save_state_permission_denied ... FAILED [INFO] [stdout] test edge_cases::test_very_large_dimensions ... ok [INFO] [stdout] test edge_cases::test_empty_command_string ... ok [INFO] [stdout] test task_result_handling::test_handle_commit_history_loaded_empty ... ok [INFO] [stdout] test task_result_handling::test_handle_commit_history_loaded_race_condition_protection ... ok [INFO] [stdout] test task_result_handling::test_handle_commit_history_loaded_with_commits ... ok [INFO] [stdout] test task_result_handling::test_handle_error_result ... ok [INFO] [stdout] test task_result_handling::test_handle_file_tree_loaded ... ok [INFO] [stdout] test task_result_handling::test_handle_next_change_found ... ok [INFO] [stdout] test task_result_handling::test_handle_next_change_found_commit_not_in_history ... ok [INFO] [stdout] test task_result_handling::test_handle_next_change_not_found ... ok [INFO] [stdout] test edge_cases::test_very_long_command_string ... ok [INFO] [stdout] test integration_scenarios::test_state_serialization_roundtrip ... ok [INFO] [stdout] test state_management::test_save_current_state_to_stdout ... ok [INFO] [stdout] test command_execution::test_execute_command_invalid_config ... ok [INFO] [stdout] test command_execution::test_execute_command_complex_sequence ... ok [INFO] [stdout] test integration_scenarios::test_temp_file_cleanup ... FAILED [INFO] [stdout] test state_management::test_save_current_state_file_tree_error ... ok [INFO] [stdout] test command_execution::test_execute_command_with_output_file ... ok [INFO] [stdout] test command_execution::test_execute_command_invalid_command ... ok [INFO] [stdout] test integration_scenarios::test_command_execution_output_formats ... FAILED [INFO] [stdout] test command_execution::test_execute_command_with_screenshot ... ok [INFO] [stdout] test state_management::test_save_current_state_invalid_repo ... ok [INFO] [stdout] test state_management::test_save_current_state_to_file ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- edge_cases::test_screenshot_path_generation stdout ---- [INFO] [stdout] { [INFO] [stdout] "active_panel": "Navigator", [INFO] [stdout] "file_tree": { [INFO] [stdout] "root": [ [INFO] [stdout] { [INFO] [stdout] "name": "src", [INFO] [stdout] "path": "src", [INFO] [stdout] "is_dir": true, [INFO] [stdout] "git_status": null, [INFO] [stdout] "is_expanded": true, [INFO] [stdout] "children": [ [INFO] [stdout] { [INFO] [stdout] "name": "lib.rs", [INFO] [stdout] "path": "src/lib.rs", [INFO] [stdout] "is_dir": false, [INFO] [stdout] "git_status": "A", [INFO] [stdout] "is_expanded": false, [INFO] [stdout] "children": [], [INFO] [stdout] "parent_path": "src" [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] "name": "main.rs", [INFO] [stdout] "path": "src/main.rs", [INFO] [stdout] "is_dir": false, [INFO] [stdout] "git_status": "M", [INFO] [stdout] "is_expanded": false, [INFO] [stdout] "children": [], [INFO] [stdout] "parent_path": "src" [INFO] [stdout] } [INFO] [stdout] ], [INFO] [stdout] "parent_path": "" [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] "name": "Cargo.toml", [INFO] [stdout] "path": "Cargo.toml", [INFO] [stdout] "is_dir": false, [INFO] [stdout] "git_status": "M", [INFO] [stdout] "is_expanded": false, [INFO] [stdout] "children": [], [INFO] [stdout] "parent_path": "" [INFO] [stdout] } [INFO] [stdout] ], [INFO] [stdout] "git_status_map": {} [INFO] [stdout] }, [INFO] [stdout] "selected_file_navigator_index": 0, [INFO] [stdout] "search_query": "", [INFO] [stdout] "in_search_mode": false, [INFO] [stdout] "commit_list": [ [INFO] [stdout] { [INFO] [stdout] "hash": "a1b2c3d4e5f6789012345678901234567890abcd", [INFO] [stdout] "short_hash": "a1b2c3d", [INFO] [stdout] "author": "John Doe", [INFO] [stdout] "date": "2 hours ago", [INFO] [stdout] "subject": "Add new feature" [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] "hash": "b2c3d4e5f6789012345678901234567890abcdef", [INFO] [stdout] "short_hash": "b2c3d4e", [INFO] [stdout] "author": "Jane Smith", [INFO] [stdout] "date": "1 day ago", [INFO] [stdout] "subject": "Fix bug in parser" [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] "hash": "c3d4e5f6789012345678901234567890abcdef01", [INFO] [stdout] "short_hash": "c3d4e5f", [INFO] [stdout] "author": "Bob Johnson", [INFO] [stdout] "date": "3 days ago", [INFO] [stdout] "subject": "Initial commit" [INFO] [stdout] } [INFO] [stdout] ], [INFO] [stdout] "selected_commit_index": 0, [INFO] [stdout] "current_content": [ [INFO] [stdout] "use std::io;", [INFO] [stdout] "", [INFO] [stdout] "fn main() {", [INFO] [stdout] " println!(\"Hello, world!\");", [INFO] [stdout] " let mut input = String::new();", [INFO] [stdout] " io::stdin().read_line(&mut input).expect(\"Failed to read line\");", [INFO] [stdout] " println!(\"You entered: {}\", input.trim());", [INFO] [stdout] "}" [INFO] [stdout] ], [INFO] [stdout] "cursor_line": 3, [INFO] [stdout] "cursor_column": 4, [INFO] [stdout] "inspector_scroll_vertical": 0, [INFO] [stdout] "inspector_scroll_horizontal": 0, [INFO] [stdout] "show_diff_view": false, [INFO] [stdout] "status_message": "Goodbye!", [INFO] [stdout] "is_loading": false, [INFO] [stdout] "selected_commit_hash": "a1b2c3d4e5f6789012345678901234567890abcd" [INFO] [stdout] } [INFO] [stdout] Status: Goodbye! [INFO] [stdout] Command resulted in quit [INFO] [stdout] [INFO] [stdout] thread 'edge_cases::test_screenshot_path_generation' (2627) panicked at tests/main_tests.rs:939:9: [INFO] [stdout] assertion failed: Err(Io(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" })) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x612ff5068652 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x612ff5068652 - <::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x612ff507f4ea - ::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x612ff507f4ea - core[c5ed12ab89cc536a]::fmt::write [INFO] [stdout] 6: 0x612ff506da36 - std[716c9a7a72e5c14e]::io::default_write_fmt::> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x612ff506da36 - as std[716c9a7a72e5c14e]::io::Write>::write_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x612ff5042e9f - ::print [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x612ff5042e9f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x612ff505f339 - std[716c9a7a72e5c14e]::panicking::default_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x612ff49dcfde - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x612ff49dcfde - test[64760d2bdea328cc]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x612ff505f5a2 - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x612ff505f5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x612ff5042f58 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x612ff503a5f9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x612ff5043dad - __rustc[4f0b026143eab78e]::rust_begin_unwind [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x612ff507fcdc - core[c5ed12ab89cc536a]::panicking::panic_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x612ff49b9c65 - main_tests[e363c79e4245cba5]::edge_cases::test_screenshot_path_generation::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:939:9 [INFO] [stdout] 20: 0x612ff49c78be - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 21: 0x612ff4a13b3e - serial_test[2b7aa5b88951f529]::serial_code_lock::local_serial_core [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.2.0/src/serial_code_lock.rs:36:5 [INFO] [stdout] 22: 0x612ff49bab6a - main_tests[e363c79e4245cba5]::edge_cases::test_screenshot_path_generation [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:922:5 [INFO] [stdout] 23: 0x612ff49b8257 - main_tests[e363c79e4245cba5]::edge_cases::test_screenshot_path_generation::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:923:41 [INFO] [stdout] 24: 0x612ff49c7786 - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x612ff49d138b - core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x612ff49d138b - test[64760d2bdea328cc]::__rust_begin_short_backtrace::, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18 [INFO] [stdout] 27: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74 [INFO] [stdout] 28: 0x612ff49ddbea - as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 29: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 30: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 31: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panic::catch_unwind::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 32: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27 [INFO] [stdout] 33: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43 [INFO] [stdout] 34: 0x612ff49d80b4 - test[64760d2bdea328cc]::run_test::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41 [INFO] [stdout] 35: 0x612ff49d80b4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 36: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 37: 0x612ff49e06e2 - ::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 38: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 39: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 40: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 41: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 42: 0x612ff49e06e2 - ::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 43: 0x612ff506761f - + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 44: 0x612ff506761f - ::new::thread_start [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 45: 0x7f90aa29aaa4 - [INFO] [stdout] 46: 0x7f90aa327a64 - clone [INFO] [stdout] 47: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- edge_cases::test_save_state_permission_denied stdout ---- [INFO] [stdout] Current state saved to: /root/forbidden.json [INFO] [stdout] [INFO] [stdout] thread 'edge_cases::test_save_state_permission_denied' (2626) panicked at tests/main_tests.rs:918:9: [INFO] [stdout] assertion failed: Ok(()) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x612ff5068652 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x612ff5068652 - <::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x612ff507f4ea - ::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x612ff507f4ea - core[c5ed12ab89cc536a]::fmt::write [INFO] [stdout] 6: 0x612ff506da36 - std[716c9a7a72e5c14e]::io::default_write_fmt::> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x612ff506da36 - as std[716c9a7a72e5c14e]::io::Write>::write_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x612ff5042e9f - ::print [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x612ff5042e9f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x612ff505f339 - std[716c9a7a72e5c14e]::panicking::default_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x612ff49dcfde - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x612ff49dcfde - test[64760d2bdea328cc]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x612ff505f5a2 - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x612ff505f5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x612ff5042f58 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x612ff503a5f9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x612ff5043dad - __rustc[4f0b026143eab78e]::rust_begin_unwind [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x612ff507fcdc - core[c5ed12ab89cc536a]::panicking::panic_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x612ff49b9fec - main_tests[e363c79e4245cba5]::edge_cases::test_save_state_permission_denied::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:918:9 [INFO] [stdout] 20: 0x612ff49d1282 - > as core[c5ed12ab89cc536a]::future::future::Future>::poll [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/future/future.rs:133:9 [INFO] [stdout] 21: 0x612ff49d12fd - >> as core[c5ed12ab89cc536a]::future::future::Future>::poll [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/future/future.rs:133:9 [INFO] [stdout] 22: 0x612ff49b52bd - ::block_on::>>>::{closure#0}::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:733:70 [INFO] [stdout] 23: 0x612ff49b51bb - tokio[2bc850e7191735b0]::task::coop::with_budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/task/coop/mod.rs:167:5 [INFO] [stdout] 24: 0x612ff49b51bb - tokio[2bc850e7191735b0]::task::coop::budget::, ::block_on>>>::{closure#0}::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/task/coop/mod.rs:133:5 [INFO] [stdout] 25: 0x612ff49b51bb - ::block_on::>>>::{closure#0}::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:733:25 [INFO] [stdout] 26: 0x612ff49b08f0 - ::enter::, ::block_on>>>::{closure#0}::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:432:19 [INFO] [stdout] 27: 0x612ff49b458d - ::block_on::>>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:732:44 [INFO] [stdout] 28: 0x612ff49b3884 - ::enter::<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:820:68 [INFO] [stdout] 29: 0x612ff49c116b - >::set::<::enter<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>>::{closure#0}, (alloc[9c68fdf4f4f29218]::boxed::Box, core[c5ed12ab89cc536a]::option::Option<()>)> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/context/scoped.rs:40:9 [INFO] [stdout] 30: 0x612ff49c88c9 - tokio[2bc850e7191735b0]::runtime::context::set_scheduler::<(alloc[9c68fdf4f4f29218]::boxed::Box, core[c5ed12ab89cc536a]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>>::{closure#0}>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/context.rs:176:38 [INFO] [stdout] 31: 0x612ff49b1872 - >::try_with::, core[c5ed12ab89cc536a]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[9c68fdf4f4f29218]::boxed::Box, core[c5ed12ab89cc536a]::option::Option<()>)> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/local.rs:513:12 [INFO] [stdout] 32: 0x612ff49b13fe - >::with::, core[c5ed12ab89cc536a]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[9c68fdf4f4f29218]::boxed::Box, core[c5ed12ab89cc536a]::option::Option<()>)> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/local.rs:477:20 [INFO] [stdout] 33: 0x612ff49c841d - tokio[2bc850e7191735b0]::runtime::context::set_scheduler::<(alloc[9c68fdf4f4f29218]::boxed::Box, core[c5ed12ab89cc536a]::option::Option<()>), ::enter<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>>::{closure#0}> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/context.rs:176:17 [INFO] [stdout] 34: 0x612ff49b2bd0 - ::enter::<::block_on>>>::{closure#0}, core[c5ed12ab89cc536a]::option::Option<()>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:820:27 [INFO] [stdout] 35: 0x612ff49b2ec6 - ::block_on::>>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:720:24 [INFO] [stdout] 36: 0x612ff49b3490 - ::block_on::>>::{closure#0} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:200:33 [INFO] [stdout] 37: 0x612ff49c34d3 - tokio[2bc850e7191735b0]::runtime::context::runtime::enter_runtime::<::block_on>>::{closure#0}, ()> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/context/runtime.rs:65:16 [INFO] [stdout] 38: 0x612ff49b0421 - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/scheduler/current_thread/mod.rs:188:9 [INFO] [stdout] 39: 0x612ff49c0564 - ::block_on_inner::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/runtime.rs:356:52 [INFO] [stdout] 40: 0x612ff49c0727 - ::block_on::>> [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/runtime/runtime.rs:330:18 [INFO] [stdout] 41: 0x612ff49baccc - main_tests[e363c79e4245cba5]::edge_cases::test_save_state_permission_denied [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:918:29 [INFO] [stdout] 42: 0x612ff49b8287 - main_tests[e363c79e4245cba5]::edge_cases::test_save_state_permission_denied::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:913:49 [INFO] [stdout] 43: 0x612ff49c77c6 - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x612ff49d138b - core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 45: 0x612ff49d138b - test[64760d2bdea328cc]::__rust_begin_short_backtrace::, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18 [INFO] [stdout] 46: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74 [INFO] [stdout] 47: 0x612ff49ddbea - as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 48: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 49: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 50: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panic::catch_unwind::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 51: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27 [INFO] [stdout] 52: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43 [INFO] [stdout] 53: 0x612ff49d80b4 - test[64760d2bdea328cc]::run_test::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41 [INFO] [stdout] 54: 0x612ff49d80b4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 55: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 56: 0x612ff49e06e2 - ::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 57: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 58: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 59: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 60: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 61: 0x612ff49e06e2 - ::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 62: 0x612ff506761f - + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 63: 0x612ff506761f - ::new::thread_start [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 64: 0x7f90aa29aaa4 - [INFO] [stdout] 65: 0x7f90aa327a64 - clone [INFO] [stdout] 66: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- integration_scenarios::test_temp_file_cleanup stdout ---- [INFO] [stdout] Result saved to: /tmp/.tmpD9bJAI/result.json [INFO] [stdout] Status: Goodbye! [INFO] [stdout] Command resulted in quit [INFO] [stdout] [INFO] [stdout] thread 'integration_scenarios::test_temp_file_cleanup' (2634) panicked at tests/main_tests.rs:756:9: [INFO] [stdout] assertion failed: Err(Io(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" })) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x612ff5068652 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x612ff5068652 - <::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x612ff507f4ea - ::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x612ff507f4ea - core[c5ed12ab89cc536a]::fmt::write [INFO] [stdout] 6: 0x612ff506da36 - std[716c9a7a72e5c14e]::io::default_write_fmt::> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x612ff506da36 - as std[716c9a7a72e5c14e]::io::Write>::write_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x612ff5042e9f - ::print [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x612ff5042e9f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x612ff505f339 - std[716c9a7a72e5c14e]::panicking::default_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x612ff49dcfde - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x612ff49dcfde - test[64760d2bdea328cc]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x612ff505f5a2 - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x612ff505f5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x612ff5042f58 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x612ff503a5f9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x612ff5043dad - __rustc[4f0b026143eab78e]::rust_begin_unwind [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x612ff507fcdc - core[c5ed12ab89cc536a]::panicking::panic_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14 [INFO] [stderr] error: test failed, to rerun pass `--test main_tests` [INFO] [stdout] 19: 0x612ff49cc69b - main_tests[e363c79e4245cba5]::integration_scenarios::test_temp_file_cleanup::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:756:9 [INFO] [stdout] 20: 0x612ff49c80de - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 21: 0x612ff4a13b3e - serial_test[2b7aa5b88951f529]::serial_code_lock::local_serial_core [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.2.0/src/serial_code_lock.rs:36:5 [INFO] [stdout] 22: 0x612ff49cfcca - main_tests[e363c79e4245cba5]::integration_scenarios::test_temp_file_cleanup [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:737:5 [INFO] [stdout] 23: 0x612ff49cbd77 - main_tests[e363c79e4245cba5]::integration_scenarios::test_temp_file_cleanup::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:738:32 [INFO] [stdout] 24: 0x612ff49c7fe6 - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x612ff49d138b - core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x612ff49d138b - test[64760d2bdea328cc]::__rust_begin_short_backtrace::, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18 [INFO] [stdout] 27: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74 [INFO] [stdout] 28: 0x612ff49ddbea - as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 29: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 30: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 31: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panic::catch_unwind::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 32: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27 [INFO] [stdout] 33: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43 [INFO] [stdout] 34: 0x612ff49d80b4 - test[64760d2bdea328cc]::run_test::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41 [INFO] [stdout] 35: 0x612ff49d80b4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 36: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 37: 0x612ff49e06e2 - ::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 38: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 39: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 40: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 41: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 42: 0x612ff49e06e2 - ::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 43: 0x612ff506761f - + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 44: 0x612ff506761f - ::new::thread_start [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 45: 0x7f90aa29aaa4 - [INFO] [stdout] 46: 0x7f90aa327a64 - clone [INFO] [stdout] 47: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- integration_scenarios::test_command_execution_output_formats stdout ---- [INFO] [stdout] Result saved to: /tmp/.tmp9m7aEW/result.json [INFO] [stdout] Status: Goodbye! [INFO] [stdout] Command resulted in quit [INFO] [stdout] Result saved to: /tmp/.tmp9m7aEW/result.txt [INFO] [stdout] Status: Goodbye! [INFO] [stdout] Command resulted in quit [INFO] [stdout] [INFO] [stdout] thread 'integration_scenarios::test_command_execution_output_formats' (2631) panicked at tests/main_tests.rs:726:13: [INFO] [stdout] assertion failed: Err(Io(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" })) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x612ff5068652 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x612ff5068652 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x612ff5068652 - <::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x612ff507f4ea - ::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x612ff507f4ea - core[c5ed12ab89cc536a]::fmt::write [INFO] [stdout] 6: 0x612ff506da36 - std[716c9a7a72e5c14e]::io::default_write_fmt::> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x612ff506da36 - as std[716c9a7a72e5c14e]::io::Write>::write_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x612ff5042e9f - ::print [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x612ff5042e9f - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x612ff505f339 - std[716c9a7a72e5c14e]::panicking::default_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x612ff49dcfde - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x612ff49dcfde - test[64760d2bdea328cc]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x612ff505f5a2 - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x612ff505f5a2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x612ff5042f58 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x612ff503a5f9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x612ff5043dad - __rustc[4f0b026143eab78e]::rust_begin_unwind [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x612ff507fcdc - core[c5ed12ab89cc536a]::panicking::panic_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x612ff49cd27f - main_tests[e363c79e4245cba5]::integration_scenarios::test_command_execution_output_formats::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:726:13 [INFO] [stdout] 20: 0x612ff49c813e - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 21: 0x612ff4a13b3e - serial_test[2b7aa5b88951f529]::serial_code_lock::local_serial_core [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.2.0/src/serial_code_lock.rs:36:5 [INFO] [stdout] 22: 0x612ff49d025a - main_tests[e363c79e4245cba5]::integration_scenarios::test_command_execution_output_formats [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:700:5 [INFO] [stdout] 23: 0x612ff49cbe07 - main_tests[e363c79e4245cba5]::integration_scenarios::test_command_execution_output_formats::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/main_tests.rs:701:47 [INFO] [stdout] 24: 0x612ff49c80a6 - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x612ff49d138b - core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x612ff49d138b - test[64760d2bdea328cc]::__rust_begin_short_backtrace::, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18 [INFO] [stdout] 27: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74 [INFO] [stdout] 28: 0x612ff49ddbea - as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 29: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 30: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panicking::catch_unwind::, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 31: 0x612ff49ddbea - std[716c9a7a72e5c14e]::panic::catch_unwind::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 32: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test_in_process [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27 [INFO] [stdout] 33: 0x612ff49ddbea - test[64760d2bdea328cc]::run_test::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43 [INFO] [stdout] 34: 0x612ff49d80b4 - test[64760d2bdea328cc]::run_test::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41 [INFO] [stdout] 35: 0x612ff49d80b4 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 36: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 37: 0x612ff49e06e2 - ::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 38: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 39: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 40: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 41: 0x612ff49e06e2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 42: 0x612ff49e06e2 - ::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 43: 0x612ff506761f - + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 44: 0x612ff506761f - ::new::thread_start [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 45: 0x7f90aa29aaa4 - [INFO] [stdout] 46: 0x7f90aa327a64 - clone [INFO] [stdout] 47: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] edge_cases::test_save_state_permission_denied [INFO] [stdout] edge_cases::test_screenshot_path_generation [INFO] [stdout] integration_scenarios::test_command_execution_output_formats [INFO] [stdout] integration_scenarios::test_temp_file_cleanup [INFO] [stdout] [INFO] [stdout] test result: FAILED. 27 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.12s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "0d83cc5de5fe4619ea728b1a2199b1bb26f70c0724f8037a3d2c8f0f39273bc3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d83cc5de5fe4619ea728b1a2199b1bb26f70c0724f8037a3d2c8f0f39273bc3", kill_on_drop: false }` [INFO] [stdout] 0d83cc5de5fe4619ea728b1a2199b1bb26f70c0724f8037a3d2c8f0f39273bc3