[INFO] cloning repository https://github.com/0x01d/rbn-dev-code
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/0x01d/rbn-dev-code" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0x01d%2Frbn-dev-code", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0x01d%2Frbn-dev-code'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7856f6bd45c26bf865fb7bb7657bcdb37b8cd2c7
[INFO] checking 0x01d/rbn-dev-code against try#95813608313bff49cfc1afc393a946a3c085b772 for pr-148946
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0x01d%2Frbn-dev-code" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/0x01d/rbn-dev-code
[INFO] finished tweaking git repo https://github.com/0x01d/rbn-dev-code
[INFO] tweaked toml for git repo https://github.com/0x01d/rbn-dev-code written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/0x01d/rbn-dev-code on toolchain 95813608313bff49cfc1afc393a946a3c085b772
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/0x01d/rbn-dev-code 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" "+95813608313bff49cfc1afc393a946a3c085b772" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] error: invalid character `{` in package name: `{{project-name}}`, the first character must be a Unicode XID start character (most letters or `_`)
[INFO] [stderr]  --> ../../../cargo-home/git/checkouts/ratzilla-2a32382e04d0efe9/a6777cb/templates/simple/Cargo.toml:2:8
[INFO] [stderr]   |
[INFO] [stderr] 2 | name = "{{project-name}}"
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6deacfa002a70aaf0476100dfd88bed8d32511bfc4c3d490f898113b3a488d76
[INFO] running `Command { std: "docker" "start" "-a" "6deacfa002a70aaf0476100dfd88bed8d32511bfc4c3d490f898113b3a488d76", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6deacfa002a70aaf0476100dfd88bed8d32511bfc4c3d490f898113b3a488d76", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6deacfa002a70aaf0476100dfd88bed8d32511bfc4c3d490f898113b3a488d76", kill_on_drop: false }`
[INFO] [stdout] 6deacfa002a70aaf0476100dfd88bed8d32511bfc4c3d490f898113b3a488d76
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+95813608313bff49cfc1afc393a946a3c085b772" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9489bcce6305854e482eb7921843c7fa5ef6d159fd2a86741b3a8117ba046969
[INFO] running `Command { std: "docker" "start" "-a" "9489bcce6305854e482eb7921843c7fa5ef6d159fd2a86741b3a8117ba046969", kill_on_drop: false }`
[INFO] [stderr] error: invalid character `{` in package name: `{{project-name}}`, the first character must be a Unicode XID start character (most letters or `_`)
[INFO] [stderr]  --> ../cargo-home/git/checkouts/ratzilla-2a32382e04d0efe9/a6777cb/templates/simple/Cargo.toml:2:8
[INFO] [stderr]   |
[INFO] [stderr] 2 | name = "{{project-name}}"
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]    Compiling thiserror v2.0.15
[INFO] [stderr]    Compiling instability v0.3.9
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking deranged v0.4.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking time-core v0.1.4
[INFO] [stderr]    Compiling indoc v2.0.6
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking bitflags v2.9.2
[INFO] [stderr]     Checking unicode-width v0.2.0
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking beamterm-data v0.1.1
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking web-time v1.1.0
[INFO] [stderr]     Checking matchit v0.8.6
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]     Checking flume v0.11.1
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling thiserror-impl v2.0.15
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking js-sys v0.3.77
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking web-sys v0.3.77
[INFO] [stderr]     Checking beamterm-renderer v0.1.1
[INFO] [stderr]     Checking gloo-events v0.2.0
[INFO] [stderr]     Checking gloo v0.11.0
[INFO] [stderr]     Checking ratzilla v0.1.0 (https://github.com/junkdog/ratzilla.git?branch=mouse-grid-coords#a6777cb7)
[INFO] [stderr]     Checking rbn-dev v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Match`
[INFO] [stdout]  --> src/app/router.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use matchit::{Match, Router as MatchitRouter};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Window`
[INFO] [stdout]  --> src/app/router.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use web_sys::{window, Window, History, Location};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `prelude::*` and `widgets::Paragraph`
[INFO] [stdout]  --> src/app/models/intro.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     prelude::*,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 3 |     widgets::Paragraph,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Match`
[INFO] [stdout]  --> src/app/router.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use matchit::{Match, Router as MatchitRouter};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Window`
[INFO] [stdout]  --> src/app/router.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use web_sys::{window, Window, History, Location};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `prelude::*` and `widgets::Paragraph`
[INFO] [stdout]  --> src/app/models/intro.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     prelude::*,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 3 |     widgets::Paragraph,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta`
[INFO] [stdout]    --> src/app.rs:281:33
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn handle_scroll(&mut self, delta: i16) {
[INFO] [stdout]     |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_delta`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LoadingError` is never constructed
[INFO] [stdout]   --> src/app.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum Msg {
[INFO] [stdout]    |          --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     LoadingError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `intro` is never read
[INFO] [stdout]   --> src/app.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 50 |     intro: IntroModel,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `params`, `query`, and `fragment` are never read
[INFO] [stdout]   --> src/app/router.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct RouteParams {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 10 |     pub params: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 11 |     pub query: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 12 |     pub fragment: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RouteParams` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]   --> src/app/router.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Route {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 18 |     pub path: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Route` 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: variant `NotFound` is never constructed
[INFO] [stdout]   --> src/app/router.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum View {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     NotFound,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `View` 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 `requires_data` is never used
[INFO] [stdout]   --> src/app/router.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl View {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn requires_data(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `location` is never read
[INFO] [stdout]   --> src/app/router.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct Router {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     location: Location,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `go_forward`, `replace_state`, `handle_popstate`, `current`, `params`, and `would_match` are never used
[INFO] [stdout]    --> src/app/router.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl Router {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn go_forward(&self) -> Result<(), RouterError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn replace_state(&self, path: &str) -> Result<(), RouterError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn handle_popstate(&mut self) -> Result<NavigationResult, RouterError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn current(&self) -> Option<&Route> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn params(&self) -> &RouteParams {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn would_match(&self, path: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `params` and `previous_view` are never read
[INFO] [stdout]    --> src/app/router.rs:277:9
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct NavigationResult {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 276 |     pub view: View,
[INFO] [stdout] 277 |     pub params: RouteParams,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 278 |     pub previous_view: Option<View>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NavigationResult` 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: variant `InvalidPath` is never constructed
[INFO] [stdout]    --> src/app/router.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub enum RouterError {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] 284 |     NotFound(String),
[INFO] [stdout] 285 |     InvalidPath,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RouterError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `INTRO_ASCII` is never used
[INFO] [stdout]  --> src/app/models/intro.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | static INTRO_ASCII: &'static str = r"                                 _____          
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pulse_effect` is never read
[INFO] [stdout]   --> src/app/models/intro.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct IntroModel {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pulse_effect: patterns::GeometricPulse,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]   --> src/app/models/intro.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl IntroModel {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn update(&mut self, _msg: crate::app::Msg) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `duration_ms` and `elapsed_ms` are never read
[INFO] [stdout]    --> src/app/models/intro.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     pub struct GeometricPulse {
[INFO] [stdout]     |                -------------- fields in this struct
[INFO] [stdout] 195 |         duration_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 196 |         elapsed_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update`, `apply`, `draw_hexagon`, `draw_corner_accents`, and `draw_line` are never used
[INFO] [stdout]    --> src/app/models/intro.rs:207:16
[INFO] [stdout]     |
[INFO] [stdout] 199 |     impl GeometricPulse {
[INFO] [stdout]     |     ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 207 |         pub fn update(&mut self, elapsed: Duration) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |         pub fn apply(&self, buffer: &mut ratatui::buffer::Buffer, area: Rect) {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |         fn draw_hexagon(&self, buffer: &mut ratatui::buffer::Buffer, cx: u16, cy: u16, pulse: f32, area: Rect) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |         fn draw_corner_accents(&self, buffer: &mut ratatui::buffer::Buffer, area: Rect, pulse: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |         fn draw_line(&self, buffer: &mut ratatui::buffer::Buffer, x1: f32, y1: f32, x2: f32, y2: f32, area: Rect, char: char) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     run();
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]   = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let _ = run();
[INFO] [stdout]   |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | /     terminal.on_key_event(move |key_event| {
[INFO] [stdout] 26 | |         let _ = tx_keys.send(app::Msg::KeyPress(key_event));
[INFO] [stdout] 27 | |     });
[INFO] [stdout]    | |______^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let _ = terminal.on_key_event(move |key_event| {
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | /     terminal.on_mouse_event(move |mouse_event| {
[INFO] [stdout] 31 | |         match mouse_event.kind {
[INFO] [stdout] 32 | |             MouseEventKind::Moved => {
[INFO] [stdout] 33 | |                 let _ = tx_mouse.send(app::Msg::MouseMove((mouse_event.col, mouse_event.row)));
[INFO] [stdout] ...  |
[INFO] [stdout] 43 | |     });
[INFO] [stdout]    | |______^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let _ = terminal.on_mouse_event(move |mouse_event| {
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta`
[INFO] [stdout]    --> src/app.rs:281:33
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn handle_scroll(&mut self, delta: i16) {
[INFO] [stdout]     |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_delta`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LoadingError` is never constructed
[INFO] [stdout]   --> src/app.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum Msg {
[INFO] [stdout]    |          --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     LoadingError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `intro` is never read
[INFO] [stdout]   --> src/app.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 50 |     intro: IntroModel,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `params`, `query`, and `fragment` are never read
[INFO] [stdout]   --> src/app/router.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct RouteParams {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 10 |     pub params: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 11 |     pub query: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 12 |     pub fragment: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RouteParams` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]   --> src/app/router.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Route {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 18 |     pub path: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Route` 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: variant `NotFound` is never constructed
[INFO] [stdout]   --> src/app/router.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum View {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     NotFound,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `View` 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 `requires_data` is never used
[INFO] [stdout]   --> src/app/router.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl View {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn requires_data(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `location` is never read
[INFO] [stdout]   --> src/app/router.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct Router {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     location: Location,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `go_forward`, `replace_state`, `handle_popstate`, `current`, `params`, and `would_match` are never used
[INFO] [stdout]    --> src/app/router.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl Router {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn go_forward(&self) -> Result<(), RouterError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn replace_state(&self, path: &str) -> Result<(), RouterError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn handle_popstate(&mut self) -> Result<NavigationResult, RouterError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn current(&self) -> Option<&Route> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn params(&self) -> &RouteParams {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn would_match(&self, path: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `params` and `previous_view` are never read
[INFO] [stdout]    --> src/app/router.rs:277:9
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct NavigationResult {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 276 |     pub view: View,
[INFO] [stdout] 277 |     pub params: RouteParams,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 278 |     pub previous_view: Option<View>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NavigationResult` 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: variant `InvalidPath` is never constructed
[INFO] [stdout]    --> src/app/router.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub enum RouterError {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] 284 |     NotFound(String),
[INFO] [stdout] 285 |     InvalidPath,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RouterError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `INTRO_ASCII` is never used
[INFO] [stdout]  --> src/app/models/intro.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | static INTRO_ASCII: &'static str = r"                                 _____          
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pulse_effect` is never read
[INFO] [stdout]   --> src/app/models/intro.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct IntroModel {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pulse_effect: patterns::GeometricPulse,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]   --> src/app/models/intro.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl IntroModel {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn update(&mut self, _msg: crate::app::Msg) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `duration_ms` and `elapsed_ms` are never read
[INFO] [stdout]    --> src/app/models/intro.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     pub struct GeometricPulse {
[INFO] [stdout]     |                -------------- fields in this struct
[INFO] [stdout] 195 |         duration_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 196 |         elapsed_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update`, `apply`, `draw_hexagon`, `draw_corner_accents`, and `draw_line` are never used
[INFO] [stdout]    --> src/app/models/intro.rs:207:16
[INFO] [stdout]     |
[INFO] [stdout] 199 |     impl GeometricPulse {
[INFO] [stdout]     |     ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 207 |         pub fn update(&mut self, elapsed: Duration) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |         pub fn apply(&self, buffer: &mut ratatui::buffer::Buffer, area: Rect) {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |         fn draw_hexagon(&self, buffer: &mut ratatui::buffer::Buffer, cx: u16, cy: u16, pulse: f32, area: Rect) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |         fn draw_corner_accents(&self, buffer: &mut ratatui::buffer::Buffer, area: Rect, pulse: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |         fn draw_line(&self, buffer: &mut ratatui::buffer::Buffer, x1: f32, y1: f32, x2: f32, y2: f32, area: Rect, char: char) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     run();
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]   = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let _ = run();
[INFO] [stdout]   |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | /     terminal.on_key_event(move |key_event| {
[INFO] [stdout] 26 | |         let _ = tx_keys.send(app::Msg::KeyPress(key_event));
[INFO] [stdout] 27 | |     });
[INFO] [stdout]    | |______^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let _ = terminal.on_key_event(move |key_event| {
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | /     terminal.on_mouse_event(move |mouse_event| {
[INFO] [stdout] 31 | |         match mouse_event.kind {
[INFO] [stdout] 32 | |             MouseEventKind::Moved => {
[INFO] [stdout] 33 | |                 let _ = tx_mouse.send(app::Msg::MouseMove((mouse_event.col, mouse_event.row)));
[INFO] [stdout] ...  |
[INFO] [stdout] 43 | |     });
[INFO] [stdout]    | |______^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let _ = terminal.on_mouse_event(move |mouse_event| {
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.70s
[INFO] running `Command { std: "docker" "inspect" "9489bcce6305854e482eb7921843c7fa5ef6d159fd2a86741b3a8117ba046969", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9489bcce6305854e482eb7921843c7fa5ef6d159fd2a86741b3a8117ba046969", kill_on_drop: false }`
[INFO] [stdout] 9489bcce6305854e482eb7921843c7fa5ef6d159fd2a86741b3a8117ba046969
