[INFO] cloning repository https://github.com/eupraxia05/training_assistant
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/eupraxia05/training_assistant" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feupraxia05%2Ftraining_assistant", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feupraxia05%2Ftraining_assistant'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f3faa26f533dc5ed443696293addf99ea393dd9
[INFO] checking eupraxia05/training_assistant against master#683dd08db5808c41baceef49368fc82a6c4767bb for pr-149137
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feupraxia05%2Ftraining_assistant" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/eupraxia05/training_assistant
[INFO] finished tweaking git repo https://github.com/eupraxia05/training_assistant
[INFO] tweaked toml for git repo https://github.com/eupraxia05/training_assistant written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/eupraxia05/training_assistant on toolchain 683dd08db5808c41baceef49368fc82a6c4767bb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+683dd08db5808c41baceef49368fc82a6c4767bb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/eupraxia05/training_assistant 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" "+683dd08db5808c41baceef49368fc82a6c4767bb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ecolor v0.33.0
[INFO] [stderr]   Downloaded testing_table v0.3.0
[INFO] [stderr]   Downloaded emath v0.33.0
[INFO] [stderr]   Downloaded tabled_derive v0.11.0
[INFO] [stderr]   Downloaded egui_glow v0.33.0
[INFO] [stderr]   Downloaded bytecount v0.6.9
[INFO] [stderr]   Downloaded venial v0.6.1
[INFO] [stderr]   Downloaded papergrid v0.17.0
[INFO] [stderr]   Downloaded flate2 v1.1.4
[INFO] [stderr]   Downloaded epaint v0.33.0
[INFO] [stderr]   Downloaded egui-winit v0.33.0
[INFO] [stderr]   Downloaded moxcms v0.7.7
[INFO] [stderr]   Downloaded eframe v0.33.0
[INFO] [stderr]   Downloaded egui-wgpu v0.33.0
[INFO] [stderr]   Downloaded accesskit_macos v0.22.1
[INFO] [stderr]   Downloaded tabled v0.20.0
[INFO] [stderr]   Downloaded accesskit_atspi_common v0.14.1
[INFO] [stderr]   Downloaded accesskit_unix v0.17.1
[INFO] [stderr]   Downloaded accesskit_consumer v0.30.1
[INFO] [stderr]   Downloaded wgpu-core v27.0.1
[INFO] [stderr]   Downloaded accesskit_windows v0.29.1
[INFO] [stderr]   Downloaded wgpu-hal v27.0.2
[INFO] [stderr]   Downloaded egui v0.33.0
[INFO] [stderr]   Downloaded accesskit_winit v0.29.1
[INFO] [stderr]   Downloaded naga v27.0.0
[INFO] [stderr]   Downloaded latex v0.3.1
[INFO] [stderr]   Downloaded epaint_default_fonts v0.33.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+683dd08db5808c41baceef49368fc82a6c4767bb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5ab52e9bda78a34ffbe0ad298f296304bf5831a05d87b8abd78bd0e64541ac1d
[INFO] running `Command { std: "docker" "start" "-a" "5ab52e9bda78a34ffbe0ad298f296304bf5831a05d87b8abd78bd0e64541ac1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5ab52e9bda78a34ffbe0ad298f296304bf5831a05d87b8abd78bd0e64541ac1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5ab52e9bda78a34ffbe0ad298f296304bf5831a05d87b8abd78bd0e64541ac1d", kill_on_drop: false }`
[INFO] [stdout] 5ab52e9bda78a34ffbe0ad298f296304bf5831a05d87b8abd78bd0e64541ac1d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+683dd08db5808c41baceef49368fc82a6c4767bb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cfea836e7327582185fce401238cbb87d5a56f9ecea755c4b1bb2bb304bbf24b
[INFO] running `Command { std: "docker" "start" "-a" "cfea836e7327582185fce401238cbb87d5a56f9ecea755c4b1bb2bb304bbf24b", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling winnow v0.7.13
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling toml_datetime v0.7.3
[INFO] [stderr]     Checking libloading v0.8.9
[INFO] [stderr]     Checking hashbrown v0.15.4
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling wayland-sys v0.31.7
[INFO] [stderr]    Compiling cc v1.2.26
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]     Checking miniz_oxide v0.8.8
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling indexmap v2.12.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking syn v2.0.101
[INFO] [stderr]     Checking unicode-width v0.2.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.35.0
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]    Compiling convert_case v0.7.1
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]     Checking anstyle-query v1.1.3
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling wayland-scanner v0.31.7
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]    Compiling instability v0.3.9
[INFO] [stderr]     Checking anstyle v1.0.11
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking bytecount v0.6.9
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking anstream v0.6.19
[INFO] [stderr]     Checking papergrid v0.17.0
[INFO] [stderr]     Checking clap_builder v4.5.53
[INFO] [stderr]     Checking async-lock v3.4.1
[INFO] [stderr]     Checking testing_table v0.3.0
[INFO] [stderr]    Compiling venial v0.6.1
[INFO] [stderr]     Checking hashlink v0.10.0
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking mio v1.1.0
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking directories v6.0.0
[INFO] [stderr]     Checking rusqlite v0.37.0
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]    Compiling toml_parser v1.0.4
[INFO] [stderr]     Checking nix v0.30.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling wayland-backend v0.3.11
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]    Compiling xml-rs v0.8.27
[INFO] [stderr]    Compiling framework_derive_macros v0.1.0 (/opt/rustwide/workdir/crates/framework_derive_macros)
[INFO] [stderr]    Compiling toml_edit v0.23.7
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]     Checking shlex v1.3.0
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking getrandom v0.3.3
[INFO] [stderr]     Checking gimli v0.31.1
[INFO] [stderr]     Checking memmap2 v0.9.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking accesskit v0.21.1
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling winit v0.30.12
[INFO] [stderr]     Checking flate2 v1.1.4
[INFO] [stderr]     Checking accesskit_consumer v0.30.1
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking nohash-hasher v0.2.0
[INFO] [stderr]     Checking epaint_default_fonts v0.33.0
[INFO] [stderr]     Checking dpi v0.1.2
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]    Compiling glutin_glx_sys v0.6.1
[INFO] [stderr]    Compiling glutin_egl_sys v0.7.1
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]    Compiling glutin v0.32.3
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling owo-colors v4.2.3
[INFO] [stderr]    Compiling glutin-winit v0.5.0
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]     Checking pxfm v0.1.25
[INFO] [stderr]     Checking indenter v0.3.4
[INFO] [stderr]     Checking eyre v0.6.12
[INFO] [stderr]     Checking addr2line v0.24.2
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking backtrace v0.3.75
[INFO] [stderr]     Checking moxcms v0.7.7
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking async-signal v0.2.13
[INFO] [stderr]     Checking wayland-client v0.31.11
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling tabled_derive v0.11.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking wayland-protocols v0.32.9
[INFO] [stderr]     Checking wayland-cursor v0.31.11
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking tabled v0.20.0
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]     Checking latex v0.3.1
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking emath v0.33.0
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking documents v0.1.0 (/opt/rustwide/workdir/crates/documents)
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking clap v4.5.53
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking ecolor v0.33.0
[INFO] [stderr]     Checking tracing-error v0.2.1
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking epaint v0.33.0
[INFO] [stderr]     Checking color-eyre v0.6.5
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking image v0.25.8
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]    Compiling zvariant_utils v3.2.1
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling quick-xml v0.36.2
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]    Compiling zvariant_derive v5.8.0
[INFO] [stderr]     Checking egui v0.33.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]    Compiling zvariant v5.8.0
[INFO] [stderr]     Checking framework v0.1.0 (/opt/rustwide/workdir/crates/framework)
[INFO] [stdout] warning: unused imports: `CommandResponse` and `TuiState`
[INFO] [stdout]  --> crates/framework/src/db.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 |     context::{CommandResponse, Context, Plugin, TuiState, Resource},
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^                   ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArgMatches`, `Arg`, and `Command`
[INFO] [stdout]  --> crates/framework/src/db.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use clap::{Arg, ArgMatches, Command};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `framework_derive_macros::TableRow`
[INFO] [stdout]  --> crates/framework/src/db.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use framework_derive_macros::TableRow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `BorderType`, `Color`, `Paragraph`, `Style`, `Stylize`, and `text::Line`
[INFO] [stdout]   --> crates/framework/src/db.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |     style::{Style, Stylize, Color},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 16 |     text::Line,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 17 |     widgets::{Block, Paragraph, BorderType}
[INFO] [stdout]    |               ^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEventKind`, and `KeyEvent`
[INFO] [stdout]   --> crates/framework/src/db.rs:19:24
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crossterm::event::{Event, KeyEvent, KeyCode, KeyEventKind};
[INFO] [stdout]    |                        ^^^^^  ^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CommandResponse` and `TuiState`
[INFO] [stdout]  --> crates/framework/src/db.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 |     context::{CommandResponse, Context, Plugin, TuiState, Resource},
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^                   ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArgMatches`, `Arg`, and `Command`
[INFO] [stdout]  --> crates/framework/src/db.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use clap::{Arg, ArgMatches, Command};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `framework_derive_macros::TableRow`
[INFO] [stdout]  --> crates/framework/src/db.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use framework_derive_macros::TableRow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `BorderType`, `Color`, `Paragraph`, `Style`, `Stylize`, and `text::Line`
[INFO] [stdout]   --> crates/framework/src/db.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |     style::{Style, Stylize, Color},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 16 |     text::Line,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 17 |     widgets::{Block, Paragraph, BorderType}
[INFO] [stdout]    |               ^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEventKind`, and `KeyEvent`
[INFO] [stdout]   --> crates/framework/src/db.rs:19:24
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crossterm::event::{Event, KeyEvent, KeyCode, KeyEventKind};
[INFO] [stdout]    |                        ^^^^^  ^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_connection`
[INFO] [stdout]    --> crates/framework/src/context.rs:238:18
[INFO] [stdout]     |
[INFO] [stdout] 238 |         let Some(db_connection) = &mut self.db_connection else {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_connection`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `table` is never read
[INFO] [stdout]    --> crates/framework/src/db.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 356 | struct EditCommandTuiState {
[INFO] [stdout]     |        ------------------- field in this struct
[INFO] [stdout] 357 |     table: 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: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/db.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn tables(&self) -> &Vec<TableConfig> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 | /     pub fn add_resource<R>(&mut self, res: R)
[INFO] [stdout] 162 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | /     pub fn get_resource_mut<R>(&mut self) -> Option<&mut R>
[INFO] [stdout] 168 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 | /     pub fn get_resource<R>(&self) -> Option<&R>
[INFO] [stdout] 180 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 | /     pub fn has_resource<R>(&self) -> bool 
[INFO] [stdout] 192 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/framework/src/context.rs:302:1
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct TuiState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 |     pub fn should_quit(&self) -> bool {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     pub fn request_quit(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> crates/framework/src/context.rs:316:1
[INFO] [stdout]     |
[INFO] [stdout] 316 | pub type TuiRenderFn = fn (&mut Context, &mut ratatui::Frame);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> crates/framework/src/context.rs:318:1
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub type TuiUpdateFn = fn (&mut Context, &mut TuiState, &crossterm::event::Event);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]    --> crates/framework/src/context.rs:347:1
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub trait Resource: Any {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:348:5
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:349:5
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn as_any_mut(&mut self) -> &mut dyn Any;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tui v0.1.0 (/opt/rustwide/workdir/crates/tui)
[INFO] [stderr]     Checking training v0.1.0 (/opt/rustwide/workdir/crates/training)
[INFO] [stdout] warning: unused variable: `db_connection`
[INFO] [stdout]    --> crates/framework/src/context.rs:238:18
[INFO] [stdout]     |
[INFO] [stdout] 238 |         let Some(db_connection) = &mut self.db_connection else {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_connection`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `table` is never read
[INFO] [stdout]    --> crates/framework/src/db.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 356 | struct EditCommandTuiState {
[INFO] [stdout]     |        ------------------- field in this struct
[INFO] [stdout] 357 |     table: 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: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/db.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn tables(&self) -> &Vec<TableConfig> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 | /     pub fn add_resource<R>(&mut self, res: R)
[INFO] [stdout] 162 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | /     pub fn get_resource_mut<R>(&mut self) -> Option<&mut R>
[INFO] [stdout] 168 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 | /     pub fn get_resource<R>(&self) -> Option<&R>
[INFO] [stdout] 180 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 | /     pub fn has_resource<R>(&self) -> bool 
[INFO] [stdout] 192 | |         where R: Resource
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/framework/src/context.rs:302:1
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct TuiState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 |     pub fn should_quit(&self) -> bool {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     pub fn request_quit(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> crates/framework/src/context.rs:316:1
[INFO] [stdout]     |
[INFO] [stdout] 316 | pub type TuiRenderFn = fn (&mut Context, &mut ratatui::Frame);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> crates/framework/src/context.rs:318:1
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub type TuiUpdateFn = fn (&mut Context, &mut TuiState, &crossterm::event::Event);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]    --> crates/framework/src/context.rs:347:1
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub trait Resource: Any {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:348:5
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/framework/src/context.rs:349:5
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn as_any_mut(&mut self) -> &mut dyn Any;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyEvent`
[INFO] [stdout]  --> crates/tui/src/lib.rs:5:59
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crossterm::event::{Event, KeyModifiers, KeyEventKind, KeyEvent, KeyCode};
[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: `Text`
[INFO] [stdout]  --> crates/tui/src/lib.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ratatui::text::{Line, Text, Span};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::Frame`
[INFO] [stdout]   --> crates/tui/src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ratatui::Frame;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> crates/tui/src/lib.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 366 |         for i in (0..keybind_line.len()) {
[INFO] [stdout]     |                  ^                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 366 -         for i in (0..keybind_line.len()) {
[INFO] [stdout] 366 +         for i in 0..keybind_line.len() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> crates/training/src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct TrainingPlugin;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> crates/training/src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct TrainingPlugin;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header_area`
[INFO] [stdout]    --> crates/tui/src/lib.rs:348:10
[INFO] [stdout]     |
[INFO] [stdout] 348 |     let [header_area, content_area, footer_area] = vertical_layout.areas(frame.area());
[INFO] [stdout]     |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_area`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg_matches`
[INFO] [stdout]    --> crates/tui/src/lib.rs:433:47
[INFO] [stdout]     |
[INFO] [stdout] 433 | fn process_tui_command(context: &mut Context, arg_matches: &ArgMatches) -> Result<CommandResponse> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arg_matches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_db_info_command` is never used
[INFO] [stdout]    --> crates/tui/src/lib.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn process_db_info_command(
[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 `title_fn` is never read
[INFO] [stdout]    --> crates/tui/src/lib.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 201 | struct TabFuncs {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] 202 |    title_fn: TabTitleFn,
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TabFuncs` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/tui/src/lib.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TuiPlugin;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/tui/src/lib.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Tui {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> crates/tui/src/lib.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn request_quit(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> crates/tui/src/lib.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn should_quit(&self) -> bool {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> crates/tui/src/lib.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn add_tab(tab: Tab, context: &mut Context) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> crates/tui/src/lib.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn set_tab(tab_id: usize, tab: Tab, context: &mut Context) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/tui/src/lib.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct TuiNewTabTypes {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> crates/tui/src/lib.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | /     pub fn register_new_tab_type<T>(&mut self, name: impl Into<String>)
[INFO] [stdout] 91 | |         where T: TabImpl
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct TabState<T>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/tui/src/lib.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     pub fn get_state_mut(&mut self, tab_id: usize) -> Option<&mut T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/tui/src/lib.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn get_state(&mut self, tab_id: usize) -> Option<&T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:153:1
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct Tab {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | /     pub fn new<T>(title: impl Into<String>) -> Self 
[INFO] [stdout] 160 | |         where T : TabImpl
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn new_empty(title: impl Into<String>) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]    --> crates/tui/src/lib.rs:176:1
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub trait TabImpl {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated type
[INFO] [stdout]    --> crates/tui/src/lib.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     type State: Default + 'static;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn title() -> String;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     fn render(context: &mut Context, buffer: &mut Buffer, area: Rect, block: Block, tab_id: usize);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn keybinds() -> Vec<KeyBind>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:224:1
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub struct KeyBind {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:241:1
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub struct TuiStyle {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> crates/tui/src/lib.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub fn run_tui(context: &mut Context) -> std::result::Result<(), ()> { 
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking billing v0.1.0 (/opt/rustwide/workdir/crates/billing)
[INFO] [stdout] warning: unused import: `KeyEvent`
[INFO] [stdout]  --> crates/tui/src/lib.rs:5:59
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crossterm::event::{Event, KeyModifiers, KeyEventKind, KeyEvent, KeyCode};
[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: `Text`
[INFO] [stdout]  --> crates/tui/src/lib.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ratatui::text::{Line, Text, Span};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::Frame`
[INFO] [stdout]   --> crates/tui/src/lib.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ratatui::Frame;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> crates/tui/src/lib.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 366 |         for i in (0..keybind_line.len()) {
[INFO] [stdout]     |                  ^                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 366 -         for i in (0..keybind_line.len()) {
[INFO] [stdout] 366 +         for i in 0..keybind_line.len() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header_area`
[INFO] [stdout]    --> crates/tui/src/lib.rs:348:10
[INFO] [stdout]     |
[INFO] [stdout] 348 |     let [header_area, content_area, footer_area] = vertical_layout.areas(frame.area());
[INFO] [stdout]     |          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_area`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg_matches`
[INFO] [stdout]    --> crates/tui/src/lib.rs:433:47
[INFO] [stdout]     |
[INFO] [stdout] 433 | fn process_tui_command(context: &mut Context, arg_matches: &ArgMatches) -> Result<CommandResponse> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arg_matches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_db_info_command` is never used
[INFO] [stdout]    --> crates/tui/src/lib.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn process_db_info_command(
[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 `title_fn` is never read
[INFO] [stdout]    --> crates/tui/src/lib.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 201 | struct TabFuncs {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] 202 |    title_fn: TabTitleFn,
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TabFuncs` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/tui/src/lib.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TuiPlugin;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/tui/src/lib.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Tui {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> crates/tui/src/lib.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn request_quit(&mut self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> crates/tui/src/lib.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn should_quit(&self) -> bool {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> crates/tui/src/lib.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn add_tab(tab: Tab, context: &mut Context) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> crates/tui/src/lib.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn set_tab(tab_id: usize, tab: Tab, context: &mut Context) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/tui/src/lib.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct TuiNewTabTypes {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> crates/tui/src/lib.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | /     pub fn register_new_tab_type<T>(&mut self, name: impl Into<String>)
[INFO] [stdout] 91 | |         where T: TabImpl
[INFO] [stdout]    | |________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct TabState<T>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/tui/src/lib.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     pub fn get_state_mut(&mut self, tab_id: usize) -> Option<&mut T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> crates/tui/src/lib.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn get_state(&mut self, tab_id: usize) -> Option<&T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:153:1
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct Tab {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | /     pub fn new<T>(title: impl Into<String>) -> Self 
[INFO] [stdout] 160 | |         where T : TabImpl
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn new_empty(title: impl Into<String>) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]    --> crates/tui/src/lib.rs:176:1
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub trait TabImpl {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated type
[INFO] [stdout]    --> crates/tui/src/lib.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     type State: Default + 'static;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn title() -> String;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     fn render(context: &mut Context, buffer: &mut Buffer, area: Rect, block: Block, tab_id: usize);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn keybinds() -> Vec<KeyBind>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> crates/tui/src/lib.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:224:1
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub struct KeyBind {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> crates/tui/src/lib.rs:241:1
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub struct TuiStyle {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> crates/tui/src/lib.rs:256:1
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub fn run_tui(context: &mut Context) -> std::result::Result<(), ()> { 
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking db_commands v0.1.0 (/opt/rustwide/workdir/crates/db_commands)
[INFO] [stdout] warning: unused imports: `Tab` and `Tui`
[INFO] [stdout]  --> crates/db_commands/src/lib.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tui::{Tui, KeyBind, Tab, TabImpl, TuiNewTabTypes};
[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: `text::Line`
[INFO] [stdout]  --> crates/db_commands/src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     text::Line,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Tab` and `Tui`
[INFO] [stdout]  --> crates/db_commands/src/lib.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tui::{Tui, KeyBind, Tab, TabImpl, TuiNewTabTypes};
[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: `text::Line`
[INFO] [stdout]  --> crates/db_commands/src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     text::Line,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tab_id`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:297:35
[INFO] [stdout]     |
[INFO] [stdout] 297 |         rect: Rect, block: Block, tab_id: usize
[INFO] [stdout]     |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tab_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:325:15
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn render(context: &mut Context, buffer: &mut Buffer,
[INFO] [stdout]     |               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tab_id`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:326:35
[INFO] [stdout]     |
[INFO] [stdout] 326 |         rect: Rect, block: Block, tab_id: usize
[INFO] [stdout]     |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tab_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:349:19
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize) {
[INFO] [stdout]     |                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bind_name`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:349:42
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize) {
[INFO] [stdout]     |                                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bind_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tab_idx`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:349:59
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize) {
[INFO] [stdout]     |                                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tab_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditTabState` is never constructed
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:316:8
[INFO] [stdout]     |
[INFO] [stdout] 316 | struct EditTabState;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/db_commands/src/lib.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DbCommandsPlugin;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tab_id`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:297:35
[INFO] [stdout]     |
[INFO] [stdout] 297 |         rect: Rect, block: Block, tab_id: usize
[INFO] [stdout]     |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tab_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:325:15
[INFO] [stdout]     |
[INFO] [stdout] 325 |     fn render(context: &mut Context, buffer: &mut Buffer,
[INFO] [stdout]     |               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tab_id`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:326:35
[INFO] [stdout]     |
[INFO] [stdout] 326 |         rect: Rect, block: Block, tab_id: usize
[INFO] [stdout]     |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tab_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:349:19
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize) {
[INFO] [stdout]     |                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bind_name`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:349:42
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize) {
[INFO] [stdout]     |                                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bind_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tab_idx`
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:349:59
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn handle_key(context: &mut Context, bind_name: &str, tab_idx: usize) {
[INFO] [stdout]     |                                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tab_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditTabState` is never constructed
[INFO] [stdout]    --> crates/db_commands/src/lib.rs:316:8
[INFO] [stdout]     |
[INFO] [stdout] 316 | struct EditTabState;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> crates/db_commands/src/lib.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DbCommandsPlugin;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tacl v0.1.0 (/opt/rustwide/workdir/crates/tacl)
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> crates/tacl/src/main.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | /         loop {
[INFO] [stdout] 69 | |             terminal.draw(render).map_err(|_| ())?;
[INFO] [stdout] 70 | |             let ev = crossterm::event::read().map_err(|_| ())?; 
[INFO] [stdout] 71 | |             /*(update_fn)(context, &mut tui_state, &ev);
[INFO] [stdout] ...  |
[INFO] [stdout] 74 | |             }*/
[INFO] [stdout] 75 | |         }
[INFO] [stdout]    | |_________- any code following this expression is unreachable
[INFO] [stdout] 76 |       };
[INFO] [stdout] 77 |       ratatui::restore();
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tui`
[INFO] [stdout]   --> crates/tacl/src/main.rs:46:45
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let tui_requested = if let Some(tui) = context.get_resource_mut::<Tui>() {
[INFO] [stdout]    |                                             ^^^ help: if this is intentional, prefix it with an underscore: `_tui`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> crates/tacl/src/main.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let mut tui_state = TuiState::default();
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> crates/tacl/src/main.rs:62:16
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn tui_session(context: &mut Context) -> std::result::Result<(), ()> {
[INFO] [stdout]    |                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tui_state`
[INFO] [stdout]   --> crates/tacl/src/main.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let mut tui_state = TuiState::default();
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tui_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> crates/tacl/src/main.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let result = {
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ev`
[INFO] [stdout]   --> crates/tacl/src/main.rs:70:17
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let ev = crossterm::event::read().map_err(|_| ())?; 
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_ev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tui_session` is never used
[INFO] [stdout]   --> crates/tacl/src/main.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn tui_session(context: &mut Context) -> std::result::Result<(), ()> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render` is never used
[INFO] [stdout]   --> crates/tacl/src/main.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn render(frame: &mut ratatui::Frame) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> crates/tacl/src/main.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | /         loop {
[INFO] [stdout] 69 | |             terminal.draw(render).map_err(|_| ())?;
[INFO] [stdout] 70 | |             let ev = crossterm::event::read().map_err(|_| ())?; 
[INFO] [stdout] 71 | |             /*(update_fn)(context, &mut tui_state, &ev);
[INFO] [stdout] ...  |
[INFO] [stdout] 74 | |             }*/
[INFO] [stdout] 75 | |         }
[INFO] [stdout]    | |_________- any code following this expression is unreachable
[INFO] [stdout] 76 |       };
[INFO] [stdout] 77 |       ratatui::restore();
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tui`
[INFO] [stdout]   --> crates/tacl/src/main.rs:46:45
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let tui_requested = if let Some(tui) = context.get_resource_mut::<Tui>() {
[INFO] [stdout]    |                                             ^^^ help: if this is intentional, prefix it with an underscore: `_tui`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> crates/tacl/src/main.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let mut tui_state = TuiState::default();
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> crates/tacl/src/main.rs:62:16
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn tui_session(context: &mut Context) -> std::result::Result<(), ()> {
[INFO] [stdout]    |                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tui_state`
[INFO] [stdout]   --> crates/tacl/src/main.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let mut tui_state = TuiState::default();
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tui_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> crates/tacl/src/main.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let result = {
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ev`
[INFO] [stdout]   --> crates/tacl/src/main.rs:70:17
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let ev = crossterm::event::read().map_err(|_| ())?; 
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_ev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tui_session` is never used
[INFO] [stdout]   --> crates/tacl/src/main.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn tui_session(context: &mut Context) -> std::result::Result<(), ()> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render` is never used
[INFO] [stdout]   --> crates/tacl/src/main.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn render(frame: &mut ratatui::Frame) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking webbrowser v1.0.6
[INFO] [stderr]     Checking egui_glow v0.33.0
[INFO] [stderr]     Checking zbus_names v4.2.0
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.9
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.9
[INFO] [stderr]     Checking zbus_xml v5.0.2
[INFO] [stderr]    Compiling zbus_macros v5.12.0
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]    Compiling zbus-lockstep v0.5.1
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]    Compiling zbus-lockstep-macros v0.5.1
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking smithay-clipboard v0.7.2
[INFO] [stderr]     Checking zbus v5.12.0
[INFO] [stderr]     Checking atspi-common v0.9.0
[INFO] [stderr]     Checking atspi-proxies v0.9.0
[INFO] [stderr]     Checking accesskit_atspi_common v0.14.1
[INFO] [stderr]     Checking atspi-connection v0.9.0
[INFO] [stderr]     Checking atspi v0.25.0
[INFO] [stderr]     Checking accesskit_unix v0.17.1
[INFO] [stderr]     Checking accesskit_winit v0.29.1
[INFO] [stderr]     Checking egui-winit v0.33.0
[INFO] [stderr]     Checking eframe v0.33.0
[INFO] [stderr]     Checking tagui v0.1.0 (/opt/rustwide/workdir/crates/tagui)
[INFO] [stdout] warning: missing documentation for the crate
[INFO] [stdout]   --> crates/tagui/src/main.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | / fn main() -> eframe::Result {
[INFO] [stdout]  2 | |     let options = eframe::NativeOptions {
[INFO] [stdout]  3 | |         viewport: egui::ViewportBuilder::default()
[INFO] [stdout]  4 | |             .with_inner_size([320.0, 240.0]),
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for the crate
[INFO] [stdout]   --> crates/tagui/src/main.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | / fn main() -> eframe::Result {
[INFO] [stdout]  2 | |     let options = eframe::NativeOptions {
[INFO] [stdout]  3 | |         viewport: egui::ViewportBuilder::default()
[INFO] [stdout]  4 | |             .with_inner_size([320.0, 240.0]),
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 04s
[INFO] running `Command { std: "docker" "inspect" "cfea836e7327582185fce401238cbb87d5a56f9ecea755c4b1bb2bb304bbf24b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cfea836e7327582185fce401238cbb87d5a56f9ecea755c4b1bb2bb304bbf24b", kill_on_drop: false }`
[INFO] [stdout] cfea836e7327582185fce401238cbb87d5a56f9ecea755c4b1bb2bb304bbf24b
