[INFO] cloning repository https://github.com/MitulShah1/ferroterm [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MitulShah1/ferroterm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMitulShah1%2Fferroterm", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMitulShah1%2Fferroterm'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 65a12c4ad8c55512a60ff558e0305fd53246e7a1 [INFO] testing MitulShah1/ferroterm against try#8da20828b6ea601dfd8e2448cb50ace88876bd78 for pr-150933 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMitulShah1%2Fferroterm" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/MitulShah1/ferroterm [INFO] finished tweaking git repo https://github.com/MitulShah1/ferroterm [INFO] tweaked toml for git repo https://github.com/MitulShah1/ferroterm written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/MitulShah1/ferroterm on toolchain 8da20828b6ea601dfd8e2448cb50ace88876bd78 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/MitulShah1/ferroterm 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" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8155b9d382c5699fee7d24b23be3ae29b8fddb1b30f415000831a4301d709c93 [INFO] running `Command { std: "docker" "start" "-a" "8155b9d382c5699fee7d24b23be3ae29b8fddb1b30f415000831a4301d709c93", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8155b9d382c5699fee7d24b23be3ae29b8fddb1b30f415000831a4301d709c93", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8155b9d382c5699fee7d24b23be3ae29b8fddb1b30f415000831a4301d709c93", kill_on_drop: false }` [INFO] [stdout] 8155b9d382c5699fee7d24b23be3ae29b8fddb1b30f415000831a4301d709c93 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1d8fd204111a9133486a5405f3d4389ab73a17a134665fb925fab2de6e5f6c16 [INFO] running `Command { std: "docker" "start" "-a" "1d8fd204111a9133486a5405f3d4389ab73a17a134665fb925fab2de6e5f6c16", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.23 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling libloading v0.8.9 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling wayland-client v0.31.12 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling dlib v0.5.2 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling drm-sys v0.8.0 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling linux-raw-sys v0.6.5 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling ttf-parser v0.25.1 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling drm-fourcc v2.2.0 [INFO] [stderr] Compiling zerocopy v0.8.39 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling cursor-icon v1.2.0 [INFO] [stderr] Compiling xcursor v0.3.10 [INFO] [stderr] Compiling smithay-client-toolkit v0.19.2 [INFO] [stderr] Compiling wayland-sys v0.31.8 [INFO] [stderr] Compiling tiny-xlib v0.2.4 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling x11rb-protocol v0.13.2 [INFO] [stderr] Compiling anyhow v1.0.101 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling ab_glyph_rasterizer v0.1.10 [INFO] [stderr] Compiling winit v0.30.12 [INFO] [stderr] Compiling syn v2.0.115 [INFO] [stderr] Compiling quick-xml v0.38.4 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling ctor-lite v0.1.1 [INFO] [stderr] Compiling vte_generate_state_changes v0.1.2 [INFO] [stderr] Compiling xkbcommon-dl v0.4.2 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling dpi v0.1.2 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling ttf-parser v0.21.1 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling vte v0.13.1 [INFO] [stderr] Compiling wayland-scanner v0.31.8 [INFO] [stderr] Compiling wayland-backend v0.3.12 [INFO] [stderr] Compiling memmap2 v0.9.9 [INFO] [stderr] Compiling ioctl-rs v0.1.6 [INFO] [stderr] Compiling termios v0.2.2 [INFO] [stderr] Compiling serial-core v0.4.0 [INFO] [stderr] Compiling nix v0.25.1 [INFO] [stderr] Compiling serial-unix v0.4.0 [INFO] [stderr] Compiling uuid v1.20.0 [INFO] [stderr] Compiling fontdue v0.9.3 [INFO] [stderr] Compiling serial v0.4.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling owned_ttf_parser v0.25.1 [INFO] [stderr] Compiling ab_glyph v0.2.32 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling filedescriptor v0.8.3 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling tiny-skia-path v0.11.4 [INFO] [stderr] Compiling drm-ffi v0.9.0 [INFO] [stderr] Compiling drm v0.14.1 [INFO] [stderr] Compiling tiny-skia v0.11.4 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling portable-pty v0.8.1 [INFO] [stderr] Compiling polling v3.11.0 [INFO] [stderr] Compiling gethostname v1.1.0 [INFO] [stderr] Compiling calloop v0.13.0 [INFO] [stderr] Compiling wayland-csd-frame v0.3.0 [INFO] [stderr] Compiling wayland-protocols v0.32.10 [INFO] [stderr] Compiling calloop-wayland-source v0.3.0 [INFO] [stderr] Compiling wayland-cursor v0.31.12 [INFO] [stderr] Compiling x11rb v0.13.2 [INFO] [stderr] Compiling softbuffer v0.4.8 [INFO] [stderr] Compiling wayland-protocols-wlr v0.3.10 [INFO] [stderr] Compiling wayland-protocols-plasma v0.3.10 [INFO] [stderr] Compiling sctk-adwaita v0.10.1 [INFO] [stderr] Compiling ferroterm v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: struct `EnvSnapshot` is never constructed [INFO] [stdout] --> src/agent.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct EnvSnapshot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AgentInput` is never constructed [INFO] [stdout] --> src/agent.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct AgentInput { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AgentMode` is never used [INFO] [stdout] --> src/agent.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum AgentMode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AgentOutput` is never used [INFO] [stdout] --> src/agent.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | pub enum AgentOutput { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Agent` is never used [INFO] [stdout] --> src/agent.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub trait Agent: Send { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FixAgent` is never constructed [INFO] [stdout] --> src/agent.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct FixAgent { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FixAgent { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 64 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExplainAgent` is never constructed [INFO] [stdout] --> src/agent.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct ExplainAgent { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl ExplainAgent { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 99 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanAgent` is never constructed [INFO] [stdout] --> src/agent.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct PlanAgent { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:124:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl PlanAgent { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 124 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecurityAgent` is never constructed [INFO] [stdout] --> src/agent.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct SecurityAgent { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl SecurityAgent { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 149 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AgentManager` is never constructed [INFO] [stdout] --> src/agent.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 176 | pub struct AgentManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add`, and `process` are never used [INFO] [stdout] --> src/agent.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 180 | impl AgentManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 181 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn add(&mut self, agent: Box) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn process(&mut self, input: AgentInput) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Timestamp` is never used [INFO] [stdout] --> src/block.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | pub type Timestamp = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `now_timestamp` is never used [INFO] [stdout] --> src/block.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn now_timestamp() -> Timestamp { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Block` is never constructed [INFO] [stdout] --> src/block.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct Block { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `append_output_line`, `set_exit_code`, and `is_failed` are never used [INFO] [stdout] --> src/block.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Block { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 31 | pub fn new(command: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn append_output_line(&mut self, line: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn set_exit_code(&mut self, code: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn is_failed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CurrentBlock` is never constructed [INFO] [stdout] --> src/block.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | struct CurrentBlock { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockRuntime` is never constructed [INFO] [stdout] --> src/block.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct BlockRuntime { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/block.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl BlockRuntime { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 73 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn feed_char(&mut self, c: char) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn start_command(&mut self, command: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn finish_current(&mut self, exit_code: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn append_output_line(&mut self, line: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn looks_like_prompt(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn on_newline(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn block_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn blocks(&self) -> &[Block] { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn current_block(&self) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn current_block_mut(&mut self) -> Option<&mut Block> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cell` is never constructed [INFO] [stdout] --> src/grid.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DEFAULT_FG`, `DEFAULT_BG`, `new`, and `with_colors` are never used [INFO] [stdout] --> src/grid.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl Cell { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 16 | pub const DEFAULT_FG: u32 = 0xE0_E0_E0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 17 | pub const DEFAULT_BG: u32 = 0x1E_1E_1E; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | [INFO] [stdout] 19 | pub fn new(c: char) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn with_colors(c: char, fg: u32, bg: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/grid.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl Row { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 39 | pub fn new(width: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn ensure_width(&mut self, width: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn get(&self, col: usize) -> Option<&Cell> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn get_mut(&mut self, col: usize) -> Option<&mut Cell> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn cells(&self) -> &[Cell] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn cells_mut(&mut self) -> &mut [Cell] { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cursor` is never constructed [INFO] [stdout] --> src/grid.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Cursor { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Terminal` is never constructed [INFO] [stdout] --> src/grid.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct Terminal { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TerminalView` is never constructed [INFO] [stdout] --> src/grid.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct TerminalView<'a> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 116 | impl Terminal { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 117 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn scroll_offset(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn scroll_up(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn scroll_down(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn reset_scroll(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn view(&self) -> TerminalView<'_> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn total_rows(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn scrollback_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn visible_grid(&self) -> &[Row] { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn visible_grid_mut(&mut self) -> &mut [Row] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn scrollback(&self) -> &[Row] { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn resize(&mut self, width: usize, height: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | fn clamp_cursor(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn row_mut(&mut self, visible_row: usize) -> Option<&mut Row> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn put_char(&mut self, c: char) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | pub fn advance_cursor(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn scroll_up_one(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn backspace(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | pub fn carriage_return(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn line_feed(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn tab(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn set_cursor(&mut self, row: usize, col: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub fn set_colors(&mut self, fg: u32, bg: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub fn set_fg(&mut self, fg: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn set_bg(&mut self, bg: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub fn clear_from_cursor_to_end_of_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | pub fn clear_from_cursor_to_end_of_line(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 341 | pub fn clear_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub fn clear_line(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 364 | pub fn current_line(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PtyEngine` is never constructed [INFO] [stdout] --> src/pty.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PtyEngine { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `try_recv`, `recv`, `send`, `resize`, and `size` are never used [INFO] [stdout] --> src/pty.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl PtyEngine { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 25 | /// Spawn default shell (bash, or SHELL env, or "sh") with given size. [INFO] [stdout] 26 | pub fn new(cols: u16, rows: u16) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn try_recv(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn recv(&self) -> Result, mpsc::RecvError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn send(&mut self, data: &[u8]) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn resize(&mut self, cols: u16, rows: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn size(&self) -> (u16, u16) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FONT_SIZE` is never used [INFO] [stdout] --> src/render.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const FONT_SIZE: f32 = 14.0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CELL_WIDTH` is never used [INFO] [stdout] --> src/render.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const CELL_WIDTH: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CELL_HEIGHT` is never used [INFO] [stdout] --> src/render.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const CELL_HEIGHT: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CpuRenderer` is never constructed [INFO] [stdout] --> src/render.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct CpuRenderer { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_default_font` is never used [INFO] [stdout] --> src/render.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn load_default_font() -> Font { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `window`, `set_size`, and `render` are never used [INFO] [stdout] --> src/render.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl CpuRenderer { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 47 | pub fn new(window: Window) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn window(&self) -> &Window { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn set_size(&mut self, width: u32, height: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn render(&mut self, term: &Terminal) -> Result<(), softbuffer::SoftBufferError> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `argb_to_u32` is never used [INFO] [stdout] --> src/render.rs:151:4 [INFO] [stdout] | [INFO] [stdout] 151 | fn argb_to_u32(a: u8, rgb: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u32_to_rgb` is never used [INFO] [stdout] --> src/render.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn u32_to_rgb(rgb: u32) -> (u8, u8, u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXIT_CODE_OSC_PREFIX` is never used [INFO] [stdout] --> src/shell_integration.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const EXIT_CODE_OSC_PREFIX: &[u8] = b"FERRO_EXIT"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bash_exit_code_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn bash_exit_code_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bash_prompt_command` is never used [INFO] [stdout] --> src/shell_integration.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn bash_prompt_command() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zsh_precmd_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn zsh_precmd_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zsh_precmd_set` is never used [INFO] [stdout] --> src/shell_integration.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn zsh_precmd_set() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fish_exit_code_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn fish_exit_code_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_name_from_path` is never used [INFO] [stdout] --> src/shell_integration.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn shell_name_from_path(path: &str) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `env_for_shell_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn env_for_shell_hook(shell_path: &str) -> Option<(&'static str, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OnExitCode` is never used [INFO] [stdout] --> src/terminal_perform.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub type OnExitCode = Box; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TerminalPerform` is never constructed [INFO] [stdout] --> src/terminal_perform.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct TerminalPerform { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_on_exit_code`, `terminal`, `terminal_mut`, and `param_one` are never used [INFO] [stdout] --> src/terminal_perform.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl TerminalPerform { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn set_on_exit_code(&mut self, f: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn terminal(&self) -> &Terminal { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn terminal_mut(&mut self) -> &mut Terminal { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn param_one(params: &Params, idx: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ANSI_COLORS_8` is never used [INFO] [stdout] --> src/terminal_perform.rs:170:7 [INFO] [stdout] | [INFO] [stdout] 170 | const ANSI_COLORS_8: [u32; 8] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 03s [INFO] running `Command { std: "docker" "inspect" "1d8fd204111a9133486a5405f3d4389ab73a17a134665fb925fab2de6e5f6c16", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d8fd204111a9133486a5405f3d4389ab73a17a134665fb925fab2de6e5f6c16", kill_on_drop: false }` [INFO] [stdout] 1d8fd204111a9133486a5405f3d4389ab73a17a134665fb925fab2de6e5f6c16 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 355847be7cfa24d7c0758217f2f91de166a2daff6274c757e48d0158dcc2d0e7 [INFO] running `Command { std: "docker" "start" "-a" "355847be7cfa24d7c0758217f2f91de166a2daff6274c757e48d0158dcc2d0e7", kill_on_drop: false }` [INFO] [stdout] warning: struct `EnvSnapshot` is never constructed [INFO] [stdout] --> src/agent.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct EnvSnapshot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AgentInput` is never constructed [INFO] [stdout] --> src/agent.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct AgentInput { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AgentMode` is never used [INFO] [stdout] --> src/agent.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum AgentMode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AgentOutput` is never used [INFO] [stdout] --> src/agent.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | pub enum AgentOutput { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Agent` is never used [INFO] [stdout] --> src/agent.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub trait Agent: Send { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FixAgent` is never constructed [INFO] [stdout] --> src/agent.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct FixAgent { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FixAgent { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 64 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExplainAgent` is never constructed [INFO] [stdout] --> src/agent.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct ExplainAgent { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl ExplainAgent { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 99 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanAgent` is never constructed [INFO] [stdout] --> src/agent.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct PlanAgent { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:124:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl PlanAgent { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 124 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecurityAgent` is never constructed [INFO] [stdout] --> src/agent.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct SecurityAgent { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl SecurityAgent { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 149 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AgentManager` is never constructed [INFO] [stdout] --> src/agent.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 176 | pub struct AgentManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add`, and `process` are never used [INFO] [stdout] --> src/agent.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 180 | impl AgentManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 181 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn add(&mut self, agent: Box) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn process(&mut self, input: AgentInput) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Timestamp` is never used [INFO] [stdout] --> src/block.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | pub type Timestamp = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `now_timestamp` is never used [INFO] [stdout] --> src/block.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn now_timestamp() -> Timestamp { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Block` is never constructed [INFO] [stdout] --> src/block.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct Block { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `append_output_line`, `set_exit_code`, and `is_failed` are never used [INFO] [stdout] --> src/block.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Block { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 31 | pub fn new(command: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn append_output_line(&mut self, line: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn set_exit_code(&mut self, code: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn is_failed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CurrentBlock` is never constructed [INFO] [stdout] --> src/block.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | struct CurrentBlock { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockRuntime` is never constructed [INFO] [stdout] --> src/block.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct BlockRuntime { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/block.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl BlockRuntime { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 73 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn feed_char(&mut self, c: char) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn start_command(&mut self, command: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn finish_current(&mut self, exit_code: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn append_output_line(&mut self, line: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn looks_like_prompt(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn on_newline(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn block_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn blocks(&self) -> &[Block] { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn current_block(&self) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn current_block_mut(&mut self) -> Option<&mut Block> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cell` is never constructed [INFO] [stdout] --> src/grid.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DEFAULT_FG`, `DEFAULT_BG`, `new`, and `with_colors` are never used [INFO] [stdout] --> src/grid.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl Cell { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 16 | pub const DEFAULT_FG: u32 = 0xE0_E0_E0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 17 | pub const DEFAULT_BG: u32 = 0x1E_1E_1E; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | [INFO] [stdout] 19 | pub fn new(c: char) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn with_colors(c: char, fg: u32, bg: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/grid.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl Row { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 39 | pub fn new(width: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn ensure_width(&mut self, width: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn get(&self, col: usize) -> Option<&Cell> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn get_mut(&mut self, col: usize) -> Option<&mut Cell> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn cells(&self) -> &[Cell] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn cells_mut(&mut self) -> &mut [Cell] { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling ferroterm v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: struct `Cursor` is never constructed [INFO] [stdout] --> src/grid.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Cursor { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Terminal` is never constructed [INFO] [stdout] --> src/grid.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct Terminal { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TerminalView` is never constructed [INFO] [stdout] --> src/grid.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct TerminalView<'a> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 116 | impl Terminal { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 117 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn scroll_offset(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn scroll_up(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn scroll_down(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn reset_scroll(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn view(&self) -> TerminalView<'_> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn total_rows(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn scrollback_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn visible_grid(&self) -> &[Row] { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn visible_grid_mut(&mut self) -> &mut [Row] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn scrollback(&self) -> &[Row] { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn resize(&mut self, width: usize, height: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | fn clamp_cursor(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn row_mut(&mut self, visible_row: usize) -> Option<&mut Row> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn put_char(&mut self, c: char) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | pub fn advance_cursor(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn scroll_up_one(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn backspace(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | pub fn carriage_return(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn line_feed(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn tab(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn set_cursor(&mut self, row: usize, col: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub fn set_colors(&mut self, fg: u32, bg: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub fn set_fg(&mut self, fg: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn set_bg(&mut self, bg: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub fn clear_from_cursor_to_end_of_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | pub fn clear_from_cursor_to_end_of_line(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 341 | pub fn clear_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub fn clear_line(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 364 | pub fn current_line(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PtyEngine` is never constructed [INFO] [stdout] --> src/pty.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PtyEngine { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `try_recv`, `recv`, `send`, `resize`, and `size` are never used [INFO] [stdout] --> src/pty.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl PtyEngine { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 25 | /// Spawn default shell (bash, or SHELL env, or "sh") with given size. [INFO] [stdout] 26 | pub fn new(cols: u16, rows: u16) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn try_recv(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn recv(&self) -> Result, mpsc::RecvError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn send(&mut self, data: &[u8]) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn resize(&mut self, cols: u16, rows: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn size(&self) -> (u16, u16) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FONT_SIZE` is never used [INFO] [stdout] --> src/render.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const FONT_SIZE: f32 = 14.0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CELL_WIDTH` is never used [INFO] [stdout] --> src/render.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const CELL_WIDTH: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CELL_HEIGHT` is never used [INFO] [stdout] --> src/render.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const CELL_HEIGHT: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CpuRenderer` is never constructed [INFO] [stdout] --> src/render.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct CpuRenderer { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_default_font` is never used [INFO] [stdout] --> src/render.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn load_default_font() -> Font { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `window`, `set_size`, and `render` are never used [INFO] [stdout] --> src/render.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl CpuRenderer { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 47 | pub fn new(window: Window) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn window(&self) -> &Window { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn set_size(&mut self, width: u32, height: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn render(&mut self, term: &Terminal) -> Result<(), softbuffer::SoftBufferError> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `argb_to_u32` is never used [INFO] [stdout] --> src/render.rs:151:4 [INFO] [stdout] | [INFO] [stdout] 151 | fn argb_to_u32(a: u8, rgb: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u32_to_rgb` is never used [INFO] [stdout] --> src/render.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn u32_to_rgb(rgb: u32) -> (u8, u8, u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXIT_CODE_OSC_PREFIX` is never used [INFO] [stdout] --> src/shell_integration.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const EXIT_CODE_OSC_PREFIX: &[u8] = b"FERRO_EXIT"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bash_exit_code_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn bash_exit_code_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bash_prompt_command` is never used [INFO] [stdout] --> src/shell_integration.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn bash_prompt_command() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zsh_precmd_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn zsh_precmd_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zsh_precmd_set` is never used [INFO] [stdout] --> src/shell_integration.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn zsh_precmd_set() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fish_exit_code_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn fish_exit_code_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_name_from_path` is never used [INFO] [stdout] --> src/shell_integration.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn shell_name_from_path(path: &str) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `env_for_shell_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn env_for_shell_hook(shell_path: &str) -> Option<(&'static str, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OnExitCode` is never used [INFO] [stdout] --> src/terminal_perform.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub type OnExitCode = Box; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TerminalPerform` is never constructed [INFO] [stdout] --> src/terminal_perform.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct TerminalPerform { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_on_exit_code`, `terminal`, `terminal_mut`, and `param_one` are never used [INFO] [stdout] --> src/terminal_perform.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl TerminalPerform { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn set_on_exit_code(&mut self, f: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn terminal(&self) -> &Terminal { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn terminal_mut(&mut self) -> &mut Terminal { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn param_one(params: &Params, idx: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ANSI_COLORS_8` is never used [INFO] [stdout] --> src/terminal_perform.rs:170:7 [INFO] [stdout] | [INFO] [stdout] 170 | const ANSI_COLORS_8: [u32; 8] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EnvSnapshot` is never constructed [INFO] [stdout] --> src/agent.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct EnvSnapshot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AgentInput` is never constructed [INFO] [stdout] --> src/agent.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct AgentInput { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AgentMode` is never used [INFO] [stdout] --> src/agent.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum AgentMode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AgentOutput` is never used [INFO] [stdout] --> src/agent.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | pub enum AgentOutput { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Agent` is never used [INFO] [stdout] --> src/agent.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub trait Agent: Send { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FixAgent` is never constructed [INFO] [stdout] --> src/agent.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct FixAgent { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl FixAgent { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 64 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExplainAgent` is never constructed [INFO] [stdout] --> src/agent.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct ExplainAgent { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl ExplainAgent { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 99 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanAgent` is never constructed [INFO] [stdout] --> src/agent.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct PlanAgent { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:124:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl PlanAgent { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 124 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecurityAgent` is never constructed [INFO] [stdout] --> src/agent.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct SecurityAgent { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/agent.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl SecurityAgent { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 149 | pub fn new(mode: AgentMode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AgentManager` is never constructed [INFO] [stdout] --> src/agent.rs:176:12 [INFO] [stdout] | [INFO] [stdout] 176 | pub struct AgentManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add`, and `process` are never used [INFO] [stdout] --> src/agent.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 180 | impl AgentManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 181 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn add(&mut self, agent: Box) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn process(&mut self, input: AgentInput) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Timestamp` is never used [INFO] [stdout] --> src/block.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | pub type Timestamp = u64; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `now_timestamp` is never used [INFO] [stdout] --> src/block.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn now_timestamp() -> Timestamp { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Block` is never constructed [INFO] [stdout] --> src/block.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct Block { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `append_output_line`, `set_exit_code`, and `is_failed` are never used [INFO] [stdout] --> src/block.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Block { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 31 | pub fn new(command: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn append_output_line(&mut self, line: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn set_exit_code(&mut self, code: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn is_failed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CurrentBlock` is never constructed [INFO] [stdout] --> src/block.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | struct CurrentBlock { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockRuntime` is never constructed [INFO] [stdout] --> src/block.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct BlockRuntime { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/block.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl BlockRuntime { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 73 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn feed_char(&mut self, c: char) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn start_command(&mut self, command: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn finish_current(&mut self, exit_code: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn append_output_line(&mut self, line: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn looks_like_prompt(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn on_newline(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn block_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn blocks(&self) -> &[Block] { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn current_block(&self) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn current_block_mut(&mut self) -> Option<&mut Block> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cell` is never constructed [INFO] [stdout] --> src/grid.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DEFAULT_FG`, `DEFAULT_BG`, `new`, and `with_colors` are never used [INFO] [stdout] --> src/grid.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl Cell { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 16 | pub const DEFAULT_FG: u32 = 0xE0_E0_E0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 17 | pub const DEFAULT_BG: u32 = 0x1E_1E_1E; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | [INFO] [stdout] 19 | pub fn new(c: char) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn with_colors(c: char, fg: u32, bg: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Row` is never constructed [INFO] [stdout] --> src/grid.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Row { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl Row { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 39 | pub fn new(width: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn ensure_width(&mut self, width: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn get(&self, col: usize) -> Option<&Cell> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn get_mut(&mut self, col: usize) -> Option<&mut Cell> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn cells(&self) -> &[Cell] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn cells_mut(&mut self) -> &mut [Cell] { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Cursor` is never constructed [INFO] [stdout] --> src/grid.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Cursor { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Terminal` is never constructed [INFO] [stdout] --> src/grid.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct Terminal { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TerminalView` is never constructed [INFO] [stdout] --> src/grid.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub struct TerminalView<'a> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/grid.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 116 | impl Terminal { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 117 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn scroll_offset(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn scroll_up(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn scroll_down(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn reset_scroll(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn view(&self) -> TerminalView<'_> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn total_rows(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn scrollback_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn visible_grid(&self) -> &[Row] { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn visible_grid_mut(&mut self) -> &mut [Row] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub fn scrollback(&self) -> &[Row] { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn resize(&mut self, width: usize, height: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | fn clamp_cursor(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn row_mut(&mut self, visible_row: usize) -> Option<&mut Row> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn put_char(&mut self, c: char) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 237 | pub fn advance_cursor(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn scroll_up_one(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn backspace(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | pub fn carriage_return(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn line_feed(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn tab(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn set_cursor(&mut self, row: usize, col: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub fn set_colors(&mut self, fg: u32, bg: u32) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub fn set_fg(&mut self, fg: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn set_bg(&mut self, bg: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub fn clear_from_cursor_to_end_of_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | pub fn clear_from_cursor_to_end_of_line(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 341 | pub fn clear_screen(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub fn clear_line(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 364 | pub fn current_line(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PtyEngine` is never constructed [INFO] [stdout] --> src/pty.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PtyEngine { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `try_recv`, `recv`, `send`, `resize`, and `size` are never used [INFO] [stdout] --> src/pty.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl PtyEngine { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 25 | /// Spawn default shell (bash, or SHELL env, or "sh") with given size. [INFO] [stdout] 26 | pub fn new(cols: u16, rows: u16) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn try_recv(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn recv(&self) -> Result, mpsc::RecvError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn send(&mut self, data: &[u8]) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn resize(&mut self, cols: u16, rows: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn size(&self) -> (u16, u16) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FONT_SIZE` is never used [INFO] [stdout] --> src/render.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const FONT_SIZE: f32 = 14.0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CELL_WIDTH` is never used [INFO] [stdout] --> src/render.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const CELL_WIDTH: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CELL_HEIGHT` is never used [INFO] [stdout] --> src/render.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const CELL_HEIGHT: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CpuRenderer` is never constructed [INFO] [stdout] --> src/render.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct CpuRenderer { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_default_font` is never used [INFO] [stdout] --> src/render.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn load_default_font() -> Font { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `window`, `set_size`, and `render` are never used [INFO] [stdout] --> src/render.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl CpuRenderer { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 47 | pub fn new(window: Window) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn window(&self) -> &Window { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn set_size(&mut self, width: u32, height: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn render(&mut self, term: &Terminal) -> Result<(), softbuffer::SoftBufferError> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `argb_to_u32` is never used [INFO] [stdout] --> src/render.rs:151:4 [INFO] [stdout] | [INFO] [stdout] 151 | fn argb_to_u32(a: u8, rgb: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `u32_to_rgb` is never used [INFO] [stdout] --> src/render.rs:158:4 [INFO] [stdout] | [INFO] [stdout] 158 | fn u32_to_rgb(rgb: u32) -> (u8, u8, u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXIT_CODE_OSC_PREFIX` is never used [INFO] [stdout] --> src/shell_integration.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const EXIT_CODE_OSC_PREFIX: &[u8] = b"FERRO_EXIT"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bash_exit_code_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn bash_exit_code_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bash_prompt_command` is never used [INFO] [stdout] --> src/shell_integration.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn bash_prompt_command() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zsh_precmd_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn zsh_precmd_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zsh_precmd_set` is never used [INFO] [stdout] --> src/shell_integration.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn zsh_precmd_set() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fish_exit_code_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn fish_exit_code_hook() -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_name_from_path` is never used [INFO] [stdout] --> src/shell_integration.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn shell_name_from_path(path: &str) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `env_for_shell_hook` is never used [INFO] [stdout] --> src/shell_integration.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn env_for_shell_hook(shell_path: &str) -> Option<(&'static str, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `OnExitCode` is never used [INFO] [stdout] --> src/terminal_perform.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub type OnExitCode = Box; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TerminalPerform` is never constructed [INFO] [stdout] --> src/terminal_perform.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct TerminalPerform { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_on_exit_code`, `terminal`, `terminal_mut`, and `param_one` are never used [INFO] [stdout] --> src/terminal_perform.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl TerminalPerform { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn set_on_exit_code(&mut self, f: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn terminal(&self) -> &Terminal { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn terminal_mut(&mut self) -> &mut Terminal { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn param_one(params: &Params, idx: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ANSI_COLORS_8` is never used [INFO] [stdout] --> src/terminal_perform.rs:170:7 [INFO] [stdout] | [INFO] [stdout] 170 | const ANSI_COLORS_8: [u32; 8] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.00s [INFO] running `Command { std: "docker" "inspect" "355847be7cfa24d7c0758217f2f91de166a2daff6274c757e48d0158dcc2d0e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "355847be7cfa24d7c0758217f2f91de166a2daff6274c757e48d0158dcc2d0e7", kill_on_drop: false }` [INFO] [stdout] 355847be7cfa24d7c0758217f2f91de166a2daff6274c757e48d0158dcc2d0e7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 593343c817ff4d4f1761184c20ea4fcad9ad491060fbbf83cd76aab09615b92f [INFO] running `Command { std: "docker" "start" "-a" "593343c817ff4d4f1761184c20ea4fcad9ad491060fbbf83cd76aab09615b92f", kill_on_drop: false }` [INFO] [stderr] warning: struct `EnvSnapshot` is never constructed [INFO] [stderr] --> src/agent.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct EnvSnapshot { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: struct `AgentInput` is never constructed [INFO] [stderr] --> src/agent.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct AgentInput { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `AgentMode` is never used [INFO] [stderr] --> src/agent.rs:29:10 [INFO] [stderr] | [INFO] [stderr] 29 | pub enum AgentMode { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `AgentOutput` is never used [INFO] [stderr] --> src/agent.rs:38:10 [INFO] [stderr] | [INFO] [stderr] 38 | pub enum AgentOutput { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `Agent` is never used [INFO] [stderr] --> src/agent.rs:47:11 [INFO] [stderr] | [INFO] [stderr] 47 | pub trait Agent: Send { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `FixAgent` is never constructed [INFO] [stderr] --> src/agent.rs:59:12 [INFO] [stderr] | [INFO] [stderr] 59 | pub struct FixAgent { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/agent.rs:64:12 [INFO] [stderr] | [INFO] [stderr] 63 | impl FixAgent { [INFO] [stderr] | ------------- associated function in this implementation [INFO] [stderr] 64 | pub fn new(mode: AgentMode) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ExplainAgent` is never constructed [INFO] [stderr] --> src/agent.rs:94:12 [INFO] [stderr] | [INFO] [stderr] 94 | pub struct ExplainAgent { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/agent.rs:99:12 [INFO] [stderr] | [INFO] [stderr] 98 | impl ExplainAgent { [INFO] [stderr] | ----------------- associated function in this implementation [INFO] [stderr] 99 | pub fn new(mode: AgentMode) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PlanAgent` is never constructed [INFO] [stderr] --> src/agent.rs:119:12 [INFO] [stderr] | [INFO] [stderr] 119 | pub struct PlanAgent { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/agent.rs:124:12 [INFO] [stderr] | [INFO] [stderr] 123 | impl PlanAgent { [INFO] [stderr] | -------------- associated function in this implementation [INFO] [stderr] 124 | pub fn new(mode: AgentMode) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `SecurityAgent` is never constructed [INFO] [stderr] --> src/agent.rs:144:12 [INFO] [stderr] | [INFO] [stderr] 144 | pub struct SecurityAgent { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/agent.rs:149:12 [INFO] [stderr] | [INFO] [stderr] 148 | impl SecurityAgent { [INFO] [stderr] | ------------------ associated function in this implementation [INFO] [stderr] 149 | pub fn new(mode: AgentMode) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `AgentManager` is never constructed [INFO] [stderr] --> src/agent.rs:176:12 [INFO] [stderr] | [INFO] [stderr] 176 | pub struct AgentManager { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `add`, and `process` are never used [INFO] [stderr] --> src/agent.rs:181:12 [INFO] [stderr] | [INFO] [stderr] 180 | impl AgentManager { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] 181 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 192 | pub fn add(&mut self, agent: Box) { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | pub fn process(&mut self, input: AgentInput) -> Vec { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias `Timestamp` is never used [INFO] [stderr] --> src/block.rs:10:10 [INFO] [stderr] | [INFO] [stderr] 10 | pub type Timestamp = u64; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `now_timestamp` is never used [INFO] [stderr] --> src/block.rs:12:4 [INFO] [stderr] | [INFO] [stderr] 12 | fn now_timestamp() -> Timestamp { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Block` is never constructed [INFO] [stderr] --> src/block.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct Block { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `append_output_line`, `set_exit_code`, and `is_failed` are never used [INFO] [stderr] --> src/block.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 30 | impl Block { [INFO] [stderr] | ---------- associated items in this implementation [INFO] [stderr] 31 | pub fn new(command: String) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | pub fn append_output_line(&mut self, line: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | pub fn set_exit_code(&mut self, code: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 52 | pub fn is_failed(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CurrentBlock` is never constructed [INFO] [stderr] --> src/block.rs:58:8 [INFO] [stderr] | [INFO] [stderr] 58 | struct CurrentBlock { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `BlockRuntime` is never constructed [INFO] [stderr] --> src/block.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 63 | pub struct BlockRuntime { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/block.rs:73:12 [INFO] [stderr] | [INFO] [stderr] 72 | impl BlockRuntime { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] 73 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 82 | pub fn feed_char(&mut self, c: char) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 95 | pub fn start_command(&mut self, command: String) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 102 | pub fn finish_current(&mut self, exit_code: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 111 | pub fn append_output_line(&mut self, line: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 118 | pub fn looks_like_prompt(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 132 | pub fn on_newline(&mut self) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 141 | pub fn block_count(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 146 | pub fn blocks(&self) -> &[Block] { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 151 | pub fn current_block(&self) -> Option<&Block> { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 155 | pub fn current_block_mut(&mut self) -> Option<&mut Block> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Cell` is never constructed [INFO] [stderr] --> src/grid.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Cell { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `DEFAULT_FG`, `DEFAULT_BG`, `new`, and `with_colors` are never used [INFO] [stderr] --> src/grid.rs:16:15 [INFO] [stderr] | [INFO] [stderr] 15 | impl Cell { [INFO] [stderr] | --------- associated items in this implementation [INFO] [stderr] 16 | pub const DEFAULT_FG: u32 = 0xE0_E0_E0; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 17 | pub const DEFAULT_BG: u32 = 0x1E_1E_1E; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 18 | [INFO] [stderr] 19 | pub fn new(c: char) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 27 | pub fn with_colors(c: char, fg: u32, bg: u32) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Row` is never constructed [INFO] [stderr] --> src/grid.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | pub struct Row { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/grid.rs:39:12 [INFO] [stderr] | [INFO] [stderr] 38 | impl Row { [INFO] [stderr] | -------- associated items in this implementation [INFO] [stderr] 39 | pub fn new(width: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 45 | pub fn len(&self) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 49 | pub fn ensure_width(&mut self, width: usize) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 55 | pub fn get(&self, col: usize) -> Option<&Cell> { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 59 | pub fn get_mut(&mut self, col: usize) -> Option<&mut Cell> { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn cells(&self) -> &[Cell] { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 67 | pub fn cells_mut(&mut self) -> &mut [Cell] { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Cursor` is never constructed [INFO] [stderr] --> src/grid.rs:88:12 [INFO] [stderr] | [INFO] [stderr] 88 | pub struct Cursor { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Terminal` is never constructed [INFO] [stderr] --> src/grid.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | pub struct Terminal { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TerminalView` is never constructed [INFO] [stderr] --> src/grid.rs:111:12 [INFO] [stderr] | [INFO] [stderr] 111 | pub struct TerminalView<'a> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/grid.rs:117:12 [INFO] [stderr] | [INFO] [stderr] 116 | impl Terminal { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] 117 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 132 | pub fn scroll_offset(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 137 | pub fn scroll_up(&mut self) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 145 | pub fn scroll_down(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 150 | pub fn reset_scroll(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 155 | pub fn view(&self) -> TerminalView<'_> { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 176 | pub fn total_rows(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 181 | pub fn scrollback_len(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 185 | pub fn visible_grid(&self) -> &[Row] { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 189 | pub fn visible_grid_mut(&mut self) -> &mut [Row] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 193 | pub fn scrollback(&self) -> &[Row] { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 198 | pub fn resize(&mut self, width: usize, height: usize) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 213 | fn clamp_cursor(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 219 | pub fn row_mut(&mut self, visible_row: usize) -> Option<&mut Row> { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 224 | pub fn put_char(&mut self, c: char) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 237 | pub fn advance_cursor(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 250 | pub fn scroll_up_one(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 260 | pub fn backspace(&mut self) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 274 | pub fn carriage_return(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 279 | pub fn line_feed(&mut self) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 288 | pub fn tab(&mut self) { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 298 | pub fn set_cursor(&mut self, row: usize, col: usize) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 304 | pub fn set_colors(&mut self, fg: u32, bg: u32) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 309 | pub fn set_fg(&mut self, fg: u32) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 313 | pub fn set_bg(&mut self, bg: u32) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 318 | pub fn clear_from_cursor_to_end_of_screen(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 330 | pub fn clear_from_cursor_to_end_of_line(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 341 | pub fn clear_screen(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 352 | pub fn clear_line(&mut self) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 364 | pub fn current_line(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PtyEngine` is never constructed [INFO] [stderr] --> src/pty.rs:15:12 [INFO] [stderr] | [INFO] [stderr] 15 | pub struct PtyEngine { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `try_recv`, `recv`, `send`, `resize`, and `size` are never used [INFO] [stderr] --> src/pty.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 24 | impl PtyEngine { [INFO] [stderr] | -------------- associated items in this implementation [INFO] [stderr] 25 | /// Spawn default shell (bash, or SHELL env, or "sh") with given size. [INFO] [stderr] 26 | pub fn new(cols: u16, rows: u16) -> Result { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 75 | pub fn try_recv(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 80 | pub fn recv(&self) -> Result, mpsc::RecvError> { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 85 | pub fn send(&mut self, data: &[u8]) -> Result<()> { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 94 | pub fn resize(&mut self, cols: u16, rows: u16) -> Result<()> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 106 | pub fn size(&self) -> (u16, u16) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FONT_SIZE` is never used [INFO] [stderr] --> src/render.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | const FONT_SIZE: f32 = 14.0; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CELL_WIDTH` is never used [INFO] [stderr] --> src/render.rs:13:11 [INFO] [stderr] | [INFO] [stderr] 13 | pub const CELL_WIDTH: u32 = 8; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CELL_HEIGHT` is never used [INFO] [stderr] --> src/render.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | pub const CELL_HEIGHT: u32 = 16; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CpuRenderer` is never constructed [INFO] [stderr] --> src/render.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 17 | pub struct CpuRenderer { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `load_default_font` is never used [INFO] [stderr] --> src/render.rs:24:4 [INFO] [stderr] | [INFO] [stderr] 24 | fn load_default_font() -> Font { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `window`, `set_size`, and `render` are never used [INFO] [stderr] --> src/render.rs:47:12 [INFO] [stderr] | [INFO] [stderr] 46 | impl CpuRenderer { [INFO] [stderr] | ---------------- associated items in this implementation [INFO] [stderr] 47 | pub fn new(window: Window) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 59 | pub fn window(&self) -> &Window { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn set_size(&mut self, width: u32, height: u32) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 69 | pub fn render(&mut self, term: &Terminal) -> Result<(), softbuffer::SoftBufferError> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `argb_to_u32` is never used [INFO] [stderr] --> src/render.rs:151:4 [INFO] [stderr] | [INFO] [stderr] 151 | fn argb_to_u32(a: u8, rgb: u32) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `u32_to_rgb` is never used [INFO] [stderr] --> src/render.rs:158:4 [INFO] [stderr] | [INFO] [stderr] 158 | fn u32_to_rgb(rgb: u32) -> (u8, u8, u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `EXIT_CODE_OSC_PREFIX` is never used [INFO] [stderr] --> src/shell_integration.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | pub const EXIT_CODE_OSC_PREFIX: &[u8] = b"FERRO_EXIT"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `bash_exit_code_hook` is never used [INFO] [stderr] --> src/shell_integration.rs:11:8 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn bash_exit_code_hook() -> &'static str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `bash_prompt_command` is never used [INFO] [stderr] --> src/shell_integration.rs:17:8 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn bash_prompt_command() -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `zsh_precmd_hook` is never used [INFO] [stderr] --> src/shell_integration.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn zsh_precmd_hook() -> &'static str { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `zsh_precmd_set` is never used [INFO] [stderr] --> src/shell_integration.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn zsh_precmd_set() -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `fish_exit_code_hook` is never used [INFO] [stderr] --> src/shell_integration.rs:31:8 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn fish_exit_code_hook() -> &'static str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shell_name_from_path` is never used [INFO] [stderr] --> src/shell_integration.rs:36:8 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn shell_name_from_path(path: &str) -> &'static str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `env_for_shell_hook` is never used [INFO] [stderr] --> src/shell_integration.rs:50:8 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn env_for_shell_hook(shell_path: &str) -> Option<(&'static str, String)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias `OnExitCode` is never used [INFO] [stderr] --> src/terminal_perform.rs:9:10 [INFO] [stderr] | [INFO] [stderr] 9 | pub type OnExitCode = Box; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TerminalPerform` is never constructed [INFO] [stderr] --> src/terminal_perform.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 12 | pub struct TerminalPerform { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `set_on_exit_code`, `terminal`, `terminal_mut`, and `param_one` are never used [INFO] [stderr] --> src/terminal_perform.rs:19:12 [INFO] [stderr] | [INFO] [stderr] 18 | impl TerminalPerform { [INFO] [stderr] | -------------------- associated items in this implementation [INFO] [stderr] 19 | pub fn new(width: usize, height: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 27 | pub fn set_on_exit_code(&mut self, f: Option) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn terminal(&self) -> &Terminal { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 35 | pub fn terminal_mut(&mut self) -> &mut Terminal { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 40 | fn param_one(params: &Params, idx: usize) -> usize { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ANSI_COLORS_8` is never used [INFO] [stderr] --> src/terminal_perform.rs:170:7 [INFO] [stderr] | [INFO] [stderr] 170 | const ANSI_COLORS_8: [u32; 8] = [ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `ferroterm` (lib) generated 52 warnings [INFO] [stderr] warning: `ferroterm` (lib test) generated 52 warnings (52 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ferroterm-25e804fcd0a6a1ba) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ferroterm-9ed9b17c6a9cef83) [INFO] [stderr] Doc-tests ferroterm [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "593343c817ff4d4f1761184c20ea4fcad9ad491060fbbf83cd76aab09615b92f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "593343c817ff4d4f1761184c20ea4fcad9ad491060fbbf83cd76aab09615b92f", kill_on_drop: false }` [INFO] [stdout] 593343c817ff4d4f1761184c20ea4fcad9ad491060fbbf83cd76aab09615b92f