[INFO] cloning repository https://github.com/wagner-rafael-eu/Bible_multi_language
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wagner-rafael-eu/Bible_multi_language" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwagner-rafael-eu%2FBible_multi_language", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwagner-rafael-eu%2FBible_multi_language'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 48fd2e57f045208c7efe65d617d37200c00516fb
[INFO] checking wagner-rafael-eu/Bible_multi_language against 6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa for pr-159356
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwagner-rafael-eu%2FBible_multi_language" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/wagner-rafael-eu/Bible_multi_language
[INFO] finished tweaking git repo https://github.com/wagner-rafael-eu/Bible_multi_language
[INFO] tweaked toml for git repo https://github.com/wagner-rafael-eu/Bible_multi_language written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/wagner-rafael-eu/Bible_multi_language on toolchain 6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/wagner-rafael-eu/Bible_multi_language 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" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc
[INFO] running `Command { std: "docker" "start" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc" "/opt/rustwide/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc" "/opt/rustwide/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling cc v1.2.45
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling libsqlite3-sys v0.26.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking rusqlite v0.29.0
[INFO] [stderr]     Checking bible-app v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Book`, `ParallelVerse`, `SearchResult`, and `Verse`
[INFO] [stdout]  --> src/bible_gui.rs:1:44
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::bible_database::{BibleDatabase, Verse, Book, SearchResult, ParallelVerse};
[INFO] [stdout]   |                                            ^^^^^  ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bible_gui.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Book`, `ParallelVerse`, `SearchResult`, and `Verse`
[INFO] [stdout]  --> src/bible_gui.rs:1:44
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::bible_database::{BibleDatabase, Verse, Book, SearchResult, ParallelVerse};
[INFO] [stdout]   |                                            ^^^^^  ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/bible_gui.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bible_database.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let mut stmt = self.conn.prepare(sql)?;
[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: `stmt`
[INFO] [stdout]    --> src/bible_database.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let mut stmt = self.conn.prepare(sql)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stmt`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UIState` is never constructed
[INFO] [stdout]  --> src/ui.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct UIState {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ViewState` is never used
[INFO] [stdout]   --> src/ui.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ViewState {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/ui.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl UIState {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 28 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BibleReader` is never constructed
[INFO] [stdout]   --> src/ui.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct BibleReader {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/ui.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl BibleReader {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 47 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn load_chapter(&mut self, app: &BibleApp, book: &str, chapter: u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn get_visible_verses(&self) -> &[BibleVerse] {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn scroll_up(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn scroll_down(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn next_chapter(&mut self, app: &BibleApp) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97 |     pub fn previous_chapter(&mut self, app: &BibleApp) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WordSearcher` is never constructed
[INFO] [stdout]    --> src/ui.rs:111:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub struct WordSearcher {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `search`, `select_word`, `select_reference`, and `get_selected_reference` are never used
[INFO] [stdout]    --> src/ui.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl WordSearcher {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 118 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn search(&mut self, app: &BibleApp, search_term: &str) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn select_word(&mut self, index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn select_reference(&mut self, index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_selected_reference(&self) -> Option<(String, u32, u32)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bible_books` is never used
[INFO] [stdout]    --> src/ui.rs:163:8
[INFO] [stdout]     |
[INFO] [stdout] 163 | pub fn get_bible_books() -> HashMap<&'static str, Vec<&'static str>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_language_display_name` is never used
[INFO] [stdout]    --> src/ui.rs:189:8
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub fn get_language_display_name(lang_code: &str) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_verse_reference` is never used
[INFO] [stdout]    --> src/ui.rs:201:8
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub fn format_verse_reference(book: &str, chapter: u32, verse: u32) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_prize_money` is never used
[INFO] [stdout]    --> src/ui.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn format_prize_money(amount: u64) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Navigation` is never constructed
[INFO] [stdout]    --> src/ui.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub struct Navigation {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_back_action`, `set_forward_action`, and `clear` are never used
[INFO] [stdout]    --> src/ui.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | impl Navigation {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 223 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn set_back_action(&mut self, action: ViewState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn set_forward_action(&mut self, action: ViewState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_console_interface` is never used
[INFO] [stdout]    --> src/ui.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn run_console_interface(app: &mut crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_bible_reader` is never used
[INFO] [stdout]    --> src/ui.rs:280:4
[INFO] [stdout]     |
[INFO] [stdout] 280 | fn run_bible_reader(app: &mut crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_word_index` is never used
[INFO] [stdout]    --> src/ui.rs:353:4
[INFO] [stdout]     |
[INFO] [stdout] 353 | fn run_word_index(app: &crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_quiz_game` is never used
[INFO] [stdout]    --> src/ui.rs:412:4
[INFO] [stdout]     |
[INFO] [stdout] 412 | fn run_quiz_game(app: &mut crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_quiz_answer` is never used
[INFO] [stdout]    --> src/ui.rs:501:4
[INFO] [stdout]     |
[INFO] [stdout] 501 | fn handle_quiz_answer(quiz: &crate::quiz::QuizGame, correct: bool) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_word_references` is never used
[INFO] [stdout]    --> src/indexer.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub fn search_word_references<'a>(word_indices: &'a [WordReference], search_term: &str) -> Vec<&'a WordReference> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `search_by_topic` is never used
[INFO] [stdout]    --> src/bible_database.rs:299:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl BibleDatabase {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 299 |     pub fn search_by_topic(&self, topic: &str, language: Option<&str>, limit: i32) -> Result<Vec<SearchResult>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bible_database.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let mut stmt = self.conn.prepare(sql)?;
[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: `stmt`
[INFO] [stdout]    --> src/bible_database.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let mut stmt = self.conn.prepare(sql)?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stmt`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UIState` is never constructed
[INFO] [stdout]  --> src/ui.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct UIState {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ViewState` is never used
[INFO] [stdout]   --> src/ui.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum ViewState {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/ui.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl UIState {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 28 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BibleReader` is never constructed
[INFO] [stdout]   --> src/ui.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct BibleReader {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/ui.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl BibleReader {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 47 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn load_chapter(&mut self, app: &BibleApp, book: &str, chapter: u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn get_visible_verses(&self) -> &[BibleVerse] {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn scroll_up(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn scroll_down(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn next_chapter(&mut self, app: &BibleApp) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97 |     pub fn previous_chapter(&mut self, app: &BibleApp) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WordSearcher` is never constructed
[INFO] [stdout]    --> src/ui.rs:111:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub struct WordSearcher {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `search`, `select_word`, `select_reference`, and `get_selected_reference` are never used
[INFO] [stdout]    --> src/ui.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl WordSearcher {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 118 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn search(&mut self, app: &BibleApp, search_term: &str) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn select_word(&mut self, index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn select_reference(&mut self, index: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_selected_reference(&self) -> Option<(String, u32, u32)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bible_books` is never used
[INFO] [stdout]    --> src/ui.rs:163:8
[INFO] [stdout]     |
[INFO] [stdout] 163 | pub fn get_bible_books() -> HashMap<&'static str, Vec<&'static str>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_language_display_name` is never used
[INFO] [stdout]    --> src/ui.rs:189:8
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub fn get_language_display_name(lang_code: &str) -> &'static str {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_verse_reference` is never used
[INFO] [stdout]    --> src/ui.rs:201:8
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub fn format_verse_reference(book: &str, chapter: u32, verse: u32) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_prize_money` is never used
[INFO] [stdout]    --> src/ui.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn format_prize_money(amount: u64) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Navigation` is never constructed
[INFO] [stdout]    --> src/ui.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub struct Navigation {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_back_action`, `set_forward_action`, and `clear` are never used
[INFO] [stdout]    --> src/ui.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 222 | impl Navigation {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 223 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn set_back_action(&mut self, action: ViewState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn set_forward_action(&mut self, action: ViewState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_console_interface` is never used
[INFO] [stdout]    --> src/ui.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn run_console_interface(app: &mut crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_bible_reader` is never used
[INFO] [stdout]    --> src/ui.rs:280:4
[INFO] [stdout]     |
[INFO] [stdout] 280 | fn run_bible_reader(app: &mut crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_word_index` is never used
[INFO] [stdout]    --> src/ui.rs:353:4
[INFO] [stdout]     |
[INFO] [stdout] 353 | fn run_word_index(app: &crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_quiz_game` is never used
[INFO] [stdout]    --> src/ui.rs:412:4
[INFO] [stdout]     |
[INFO] [stdout] 412 | fn run_quiz_game(app: &mut crate::BibleApp) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_quiz_answer` is never used
[INFO] [stdout]    --> src/ui.rs:501:4
[INFO] [stdout]     |
[INFO] [stdout] 501 | fn handle_quiz_answer(quiz: &crate::quiz::QuizGame, correct: bool) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_word_references` is never used
[INFO] [stdout]    --> src/indexer.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub fn search_word_references<'a>(word_indices: &'a [WordReference], search_term: &str) -> Vec<&'a WordReference> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `search_by_topic` is never used
[INFO] [stdout]    --> src/bible_database.rs:299:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl BibleDatabase {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 299 |     pub fn search_by_topic(&self, topic: &str, language: Option<&str>, limit: i32) -> Result<Vec<SearchResult>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.81s
[INFO] running `Command { std: "docker" "inspect" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc", kill_on_drop: false }`
[INFO] [stdout] c4f411bf37b1de6f9f1372750297378af2947d65ab475f2250c55cd9718fdcfc
