[INFO] cloning repository https://github.com/Melesar/ghterm [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Melesar/ghterm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMelesar%2Fghterm", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMelesar%2Fghterm'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 60cc4f5c5885c54623b2d0e6334e3c4ffe63ff3b [INFO] checking Melesar/ghterm/60cc4f5c5885c54623b2d0e6334e3c4ffe63ff3b against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMelesar%2Fghterm" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Melesar/ghterm on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Melesar/ghterm [INFO] finished tweaking git repo https://github.com/Melesar/ghterm [INFO] tweaked toml for git repo https://github.com/Melesar/ghterm written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Melesar/ghterm 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded signal-hook-mio v0.2.1 [INFO] [stderr] Downloaded args v2.2.0 [INFO] [stderr] Downloaded tui v0.16.0 [INFO] [stderr] Downloaded crossterm_winapi v0.8.0 [INFO] [stderr] Downloaded signal-hook v0.3.10 [INFO] [stderr] Downloaded json v0.12.4 [INFO] [stderr] Downloaded crossterm v0.20.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f3e19b4f4e5afae90ed62cf25896f21b7da023027777e8b98305957a9e909795 [INFO] running `Command { std: "docker" "start" "-a" "f3e19b4f4e5afae90ed62cf25896f21b7da023027777e8b98305957a9e909795", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f3e19b4f4e5afae90ed62cf25896f21b7da023027777e8b98305957a9e909795", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f3e19b4f4e5afae90ed62cf25896f21b7da023027777e8b98305957a9e909795", kill_on_drop: false }` [INFO] [stdout] f3e19b4f4e5afae90ed62cf25896f21b7da023027777e8b98305957a9e909795 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4aeeb11f22cdbb6831b7e10b2ec7b6c194a99af3cc05caca5757c58c67a767a1 [INFO] running `Command { std: "docker" "start" "-a" "4aeeb11f22cdbb6831b7e10b2ec7b6c194a99af3cc05caca5757c58c67a767a1", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.106 [INFO] [stderr] Compiling signal-hook v0.3.10 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Checking smallvec v1.7.0 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Checking numtoa v0.1.0 [INFO] [stderr] Checking unicode-segmentation v1.8.0 [INFO] [stderr] Checking getopts v0.2.21 [INFO] [stderr] Checking json v0.12.4 [INFO] [stderr] Checking if_chain v1.0.2 [INFO] [stderr] Checking args v2.2.0 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking mio v0.7.14 [INFO] [stderr] Checking parking_lot_core v0.8.5 [INFO] [stderr] Checking time v0.1.44 [INFO] [stderr] Checking termion v1.5.6 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Checking chrono v0.4.19 [INFO] [stderr] Checking signal-hook-mio v0.2.1 [INFO] [stderr] Checking crossterm v0.20.0 [INFO] [stderr] Checking tui v0.16.0 [INFO] [stderr] Checking ghterm v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `PrHeader` [INFO] [stdout] --> src/frontend/repo_selection_handler.rs:3:32 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::backend::pr::{self, PrHeader}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `Borders`, `Color`, `Modifier`, `Span`, and `Style` [INFO] [stdout] --> src/frontend/main_screen.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | widgets::{Block, Borders, Tabs}, [INFO] [stdout] | ^^^^^ ^^^^^^^ [INFO] [stdout] 9 | style::{Style, Modifier, Color}, [INFO] [stdout] | ^^^^^ ^^^^^^^^ ^^^^^ [INFO] [stdout] 10 | text::{Spans, Span}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Rect` [INFO] [stdout] --> src/frontend/main_screen_handler.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | use super::screen::{Rect, ApplicationScreen, DrawableScreen, InteractableScreen, ScreenHandler}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Borders` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | widgets::{Widget, StatefulWidget, Block, Borders}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree_state.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ScreenWriter` and `Screen` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree_state.rs:5:31 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::frontend::screen::{ScreenWriter, Screen}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Alignment` and `BorderType` [INFO] [stdout] --> src/frontend/conversation_tab.rs:25:28 [INFO] [stdout] | [INFO] [stdout] 25 | layout::{Rect, Layout, Alignment, Direction, Constraint}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 26 | widgets::{Block, Borders, BorderType}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Backend` [INFO] [stdout] --> src/main.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | use tui::backend::{Backend, CrosstermBackend}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PrHeader` [INFO] [stdout] --> src/frontend/repo_selection_handler.rs:3:32 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::backend::pr::{self, PrHeader}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `Borders`, `Color`, `Modifier`, `Span`, and `Style` [INFO] [stdout] --> src/frontend/main_screen.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | widgets::{Block, Borders, Tabs}, [INFO] [stdout] | ^^^^^ ^^^^^^^ [INFO] [stdout] 9 | style::{Style, Modifier, Color}, [INFO] [stdout] | ^^^^^ ^^^^^^^^ ^^^^^ [INFO] [stdout] 10 | text::{Spans, Span}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Rect` [INFO] [stdout] --> src/frontend/main_screen_handler.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | use super::screen::{Rect, ApplicationScreen, DrawableScreen, InteractableScreen, ScreenHandler}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Borders` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | widgets::{Widget, StatefulWidget, Block, Borders}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree_state.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ScreenWriter` and `Screen` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree_state.rs:5:31 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::frontend::screen::{ScreenWriter, Screen}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Alignment` and `BorderType` [INFO] [stdout] --> src/frontend/conversation_tab.rs:25:28 [INFO] [stdout] | [INFO] [stdout] 25 | layout::{Rect, Layout, Alignment, Direction, Constraint}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 26 | widgets::{Block, Borders, BorderType}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Backend` [INFO] [stdout] --> src/main.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | use tui::backend::{Backend, CrosstermBackend}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 28 | MainScreenTab::Conversation(_) => "Conversation", [INFO] [stdout] | ------------------------------ matches all the relevant values [INFO] [stdout] 29 | _ => "", [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 38 | MainScreenTab::Conversation(ct) => ct.validate_input(input), [INFO] [stdout] | ------------------------------- matches all the relevant values [INFO] [stdout] 39 | _ => false, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 28 | MainScreenTab::Conversation(_) => "Conversation", [INFO] [stdout] | ------------------------------ matches all the relevant values [INFO] [stdout] 29 | _ => "", [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 38 | MainScreenTab::Conversation(ct) => ct.validate_input(input), [INFO] [stdout] | ------------------------------- matches all the relevant values [INFO] [stdout] 39 | _ => false, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 45 | MainScreenTab::Conversation(ct) => ct.process_input(input), [INFO] [stdout] | ------------------------------- matches all the relevant values [INFO] [stdout] 46 | _ => (), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/frontend/main_screen.rs:67:16 [INFO] [stdout] | [INFO] [stdout] 67 | if let MainScreenTab::Conversation(ct) = tab { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/frontend/main_screen.rs:78:16 [INFO] [stdout] | [INFO] [stdout] 78 | if let MainScreenTab::Conversation(ct) = tab { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 45 | MainScreenTab::Conversation(ct) => ct.process_input(input), [INFO] [stdout] | ------------------------------- matches all the relevant values [INFO] [stdout] 46 | _ => (), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/frontend/main_screen.rs:67:16 [INFO] [stdout] | [INFO] [stdout] 67 | if let MainScreenTab::Conversation(ct) = tab { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/frontend/main_screen.rs:78:16 [INFO] [stdout] | [INFO] [stdout] 78 | if let MainScreenTab::Conversation(ct) = tab { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen_handler.rs:55:16 [INFO] [stdout] | [INFO] [stdout] 55 | if let Some(evt) = self.screen_events_receiver.try_recv().ok() { [INFO] [stdout] | ^^^^^^^^^ matches no values because `MainScreenEvent` is uninhabited [INFO] [stdout] | [INFO] [stdout] = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `evt` [INFO] [stdout] --> src/frontend/main_screen_handler.rs:55:21 [INFO] [stdout] | [INFO] [stdout] 55 | if let Some(evt) = self.screen_events_receiver.try_recv().ok() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_evt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/frontend/main_screen_handler.rs:55:16 [INFO] [stdout] | [INFO] [stdout] 55 | if let Some(evt) = self.screen_events_receiver.try_recv().ok() { [INFO] [stdout] | ^^^^^^^^^ matches no values because `MainScreenEvent` is uninhabited [INFO] [stdout] | [INFO] [stdout] = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `evt` [INFO] [stdout] --> src/frontend/main_screen_handler.rs:55:21 [INFO] [stdout] | [INFO] [stdout] 55 | if let Some(evt) = self.screen_events_receiver.try_recv().ok() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_evt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `style` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_draw.rs:70:53 [INFO] [stdout] | [INFO] [stdout] 70 | fn draw(&self, area: Rect, buffer: &mut Buffer, style: Style, changelist: &Option>) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_style` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `style` [INFO] [stdout] --> src/frontend/conversation_tab/conversation_draw.rs:70:53 [INFO] [stdout] | [INFO] [stdout] 70 | fn draw(&self, area: Rect, buffer: &mut Buffer, style: Style, changelist: &Option>) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_style` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `horizontal_offset` [INFO] [stdout] --> src/frontend/conversation_tab.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let horizontal_offset = match input { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_horizontal_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `horizontal_offset` [INFO] [stdout] --> src/frontend/conversation_tab.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let horizontal_offset = match input { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_horizontal_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PrInfo` is never constructed [INFO] [stdout] --> src/backend/pr.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct PrInfo { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PrInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `timestamp` are never read [INFO] [stdout] --> src/backend/pr.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct PrComment { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 24 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PrComment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_string_param` is never used [INFO] [stdout] --> src/backend/gh.rs:158:8 [INFO] [stdout] | [INFO] [stdout] 141 | impl GqlQueryBuilder { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 158 | fn add_string_param(&mut self, param_name: &str, param_value: &str) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `line_index` is never read [INFO] [stdout] --> src/backend/diff.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 42 | struct DiffReadingState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 43 | pub line_index: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rect` is never constructed [INFO] [stdout] --> src/frontend/screen.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Rect { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rect` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `screen` is never used [INFO] [stdout] --> src/frontend/screen.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Rect { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 17 | pub fn screen(&self) -> Screen { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Screen` is never constructed [INFO] [stdout] --> src/frontend/screen.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct Screen { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/frontend/screen.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 42 | impl Screen { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 43 | pub fn new(rect: Rect) -> Screen { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn draw_border(&self, buffer: &mut dyn Write) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn merge_vertically(top: Screen, bottom: Screen) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn merge_horizontally(left: Screen, right: Screen) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn split_vertically(&mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn split_horizontally(&mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn get_writer(&self) -> ScreenWriter { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn get_full_rect(&self) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn get_content_rect(&self) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScreenWriter` is never constructed [INFO] [stdout] --> src/frontend/screen.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 113 | pub struct ScreenWriter { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/frontend/screen.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 120 | impl ScreenWriter { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 121 | fn available_width(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn left_padding(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | fn draw_selection(&self, buffer: &mut dyn Write, y_pos: u16) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn write_line(&mut self, buffer: &mut dyn Write, message: &str) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn write_line_truncated(&mut self, buffer: &mut dyn Write, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn set_selection(&mut self, is_selected: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub fn set_indent(&mut self, indent: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn separator(&mut self, buffer: &mut dyn Write) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `task_manager` and `client` are never read [INFO] [stdout] --> src/frontend/main_screen_handler.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct MainScreenHandler<'a> { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | task_manager: TaskManager, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 26 | client: &'a GhClient, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `screen_event_sender` is never read [INFO] [stdout] --> src/frontend/conversation_tab.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct ConversationTab { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 32 | screen_event_sender: mpsc::Sender, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `style` is never used [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl<'a> ConversationTree<'a> { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `style` is never used [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree_content.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl<'a> ConversationTreeContent<'a> { [INFO] [stdout] | ------------------------------------ method in this implementation [INFO] [stdout] 31 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TabsState` is never constructed [INFO] [stdout] --> src/frontend/util.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TabsState<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `next`, and `previous` are never used [INFO] [stdout] --> src/frontend/util.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'a> TabsState<'a> { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new(titles: Vec<&'a str>) -> TabsState { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn next(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn previous(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_items` and `unselect` are never used [INFO] [stdout] --> src/frontend/util.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl StatefulList { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn with_items(items: Vec) -> StatefulList { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn unselect(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PrInfo` is never constructed [INFO] [stdout] --> src/backend/pr.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct PrInfo { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PrInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `timestamp` are never read [INFO] [stdout] --> src/backend/pr.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct PrComment { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 24 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub timestamp: DateTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PrComment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_string_param` is never used [INFO] [stdout] --> src/backend/gh.rs:158:8 [INFO] [stdout] | [INFO] [stdout] 141 | impl GqlQueryBuilder { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 158 | fn add_string_param(&mut self, param_name: &str, param_value: &str) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `line_index` is never read [INFO] [stdout] --> src/backend/diff.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 42 | struct DiffReadingState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 43 | pub line_index: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rect` is never constructed [INFO] [stdout] --> src/frontend/screen.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Rect { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rect` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `screen` is never used [INFO] [stdout] --> src/frontend/screen.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Rect { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 17 | pub fn screen(&self) -> Screen { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Screen` is never constructed [INFO] [stdout] --> src/frontend/screen.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct Screen { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/frontend/screen.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 42 | impl Screen { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 43 | pub fn new(rect: Rect) -> Screen { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn draw_border(&self, buffer: &mut dyn Write) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn merge_vertically(top: Screen, bottom: Screen) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn merge_horizontally(left: Screen, right: Screen) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn split_vertically(&mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn split_horizontally(&mut self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn get_writer(&self) -> ScreenWriter { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn get_full_rect(&self) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn get_content_rect(&self) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScreenWriter` is never constructed [INFO] [stdout] --> src/frontend/screen.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 113 | pub struct ScreenWriter { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/frontend/screen.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 120 | impl ScreenWriter { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 121 | fn available_width(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn left_padding(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | fn draw_selection(&self, buffer: &mut dyn Write, y_pos: u16) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn write_line(&mut self, buffer: &mut dyn Write, message: &str) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn write_line_truncated(&mut self, buffer: &mut dyn Write, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn set_selection(&mut self, is_selected: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub fn set_indent(&mut self, indent: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn separator(&mut self, buffer: &mut dyn Write) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `task_manager` and `client` are never read [INFO] [stdout] --> src/frontend/main_screen_handler.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct MainScreenHandler<'a> { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | task_manager: TaskManager, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 26 | client: &'a GhClient, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `screen_event_sender` is never read [INFO] [stdout] --> src/frontend/conversation_tab.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct ConversationTab { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 32 | screen_event_sender: mpsc::Sender, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `style` is never used [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl<'a> ConversationTree<'a> { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `style` is never used [INFO] [stdout] --> src/frontend/conversation_tab/conversation_tree_content.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl<'a> ConversationTreeContent<'a> { [INFO] [stdout] | ------------------------------------ method in this implementation [INFO] [stdout] 31 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TabsState` is never constructed [INFO] [stdout] --> src/frontend/util.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TabsState<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `next`, and `previous` are never used [INFO] [stdout] --> src/frontend/util.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'a> TabsState<'a> { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new(titles: Vec<&'a str>) -> TabsState { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn next(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn previous(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_items` and `unselect` are never used [INFO] [stdout] --> src/frontend/util.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl StatefulList { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn with_items(items: Vec) -> StatefulList { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn unselect(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 34 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 34 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.92s [INFO] running `Command { std: "docker" "inspect" "4aeeb11f22cdbb6831b7e10b2ec7b6c194a99af3cc05caca5757c58c67a767a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4aeeb11f22cdbb6831b7e10b2ec7b6c194a99af3cc05caca5757c58c67a767a1", kill_on_drop: false }` [INFO] [stdout] 4aeeb11f22cdbb6831b7e10b2ec7b6c194a99af3cc05caca5757c58c67a767a1