[INFO] cloning repository https://github.com/billyb2/lichess-zoom-client
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/billyb2/lichess-zoom-client" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbillyb2%2Flichess-zoom-client", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbillyb2%2Flichess-zoom-client'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a7a1a5a97063f80d93aa9dcb97a0b21354c73c4c
[INFO] checking billyb2/lichess-zoom-client against try#fa4dd1f19bfeb3fd235dc7f1406c42404436bef5 for pr-145108-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbillyb2%2Flichess-zoom-client" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/billyb2/lichess-zoom-client
[INFO] finished tweaking git repo https://github.com/billyb2/lichess-zoom-client
[INFO] tweaked toml for git repo https://github.com/billyb2/lichess-zoom-client written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/billyb2/lichess-zoom-client on toolchain fa4dd1f19bfeb3fd235dc7f1406c42404436bef5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/billyb2/lichess-zoom-client 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" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking billyb2/lichess-zoom-client against try#fa4dd1f19bfeb3fd235dc7f1406c42404436bef5 for pr-145108-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbillyb2%2Flichess-zoom-client" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/billyb2/lichess-zoom-client
[INFO] finished tweaking git repo https://github.com/billyb2/lichess-zoom-client
[INFO] tweaked toml for git repo https://github.com/billyb2/lichess-zoom-client written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/billyb2/lichess-zoom-client on toolchain fa4dd1f19bfeb3fd235dc7f1406c42404436bef5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/billyb2/lichess-zoom-client 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" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "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] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded webpki-roots v1.0.6
[INFO] [stderr]   Downloaded shakmaty v0.27.3
[INFO] [stderr]   Downloaded libc v0.2.181
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 071ee08aba32fbf34efaca29927b00519d19a60e79893dafc511e47155a1f235
[INFO] running `Command { std: "docker" "start" "-a" "071ee08aba32fbf34efaca29927b00519d19a60e79893dafc511e47155a1f235", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "071ee08aba32fbf34efaca29927b00519d19a60e79893dafc511e47155a1f235", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "071ee08aba32fbf34efaca29927b00519d19a60e79893dafc511e47155a1f235", kill_on_drop: false }`
[INFO] [stdout] 071ee08aba32fbf34efaca29927b00519d19a60e79893dafc511e47155a1f235
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+fa4dd1f19bfeb3fd235dc7f1406c42404436bef5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 90293551c6e1963f30156e14f19f259517bf2ee0ad681791c32ad65e0bed4fd0
[INFO] running `Command { std: "docker" "start" "-a" "90293551c6e1963f30156e14f19f259517bf2ee0ad681791c32ad65e0bed4fd0", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.181
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]     Checking simd-adler32 v0.3.8
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking crc32fast v1.5.0
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking zune-core v0.5.1
[INFO] [stderr]     Checking iri-string v0.7.10
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking byteorder-lite v0.1.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking zune-jpeg v0.5.12
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking webpki-roots v1.0.6
[INFO] [stderr]     Checking pxfm v0.1.27
[INFO] [stderr]     Checking btoi v0.4.3
[INFO] [stderr]     Checking flate2 v1.1.8
[INFO] [stderr]     Checking shakmaty v0.27.3
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling syn v2.0.115
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking moxcms v0.7.11
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking image v0.25.9
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking hackathon v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `LichessGameUpdate` is never constructed
[INFO] [stdout]   --> src/lichess.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct LichessGameUpdate {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `signature` is never used
[INFO] [stdout]   --> src/lichess.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl LichessGameUpdate {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] 44 |     pub fn signature(&self) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `reconnect_delay` is never read
[INFO] [stdout]   --> src/lichess.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct LichessClient {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 64 |     reconnect_delay: Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LichessClient` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `reconnect_delay`, `stream_updates`, `stream_url`, and `get_stream_response` are never used
[INFO] [stdout]    --> src/lichess.rs:267:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl LichessClient {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn reconnect_delay(&self) -> Duration {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub async fn stream_updates<F, Fut>(&self, mut on_update: F) -> Result<(), LichessApiError>
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     fn stream_url(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     async fn get_stream_response(&self, url: &str) -> Result<reqwest::Response, LichessApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chess_from_uci_moves` is never used
[INFO] [stdout]    --> src/lichess.rs:373:8
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub fn chess_from_uci_moves(moves: &str) -> Result<Chess, LichessApiError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chess_from_fen` is never used
[INFO] [stdout]    --> src/lichess.rs:387:8
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn chess_from_fen(fen_text: &str) -> Result<Chess, LichessApiError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_game_update` is never used
[INFO] [stdout]    --> src/lichess.rs:398:4
[INFO] [stdout]     |
[INFO] [stdout] 398 | fn parse_game_update(value: &JsonValue, mode: LichessStreamMode) -> Option<LichessGameUpdate> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_no_such_game` is never used
[INFO] [stdout]    --> src/lichess.rs:592:12
[INFO] [stdout]     |
[INFO] [stdout] 591 | impl LichessApiError {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 592 |     pub fn is_no_such_game(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_millis` is never used
[INFO] [stdout]    --> src/lichess.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn now_millis() -> u128 {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_text` is never used
[INFO] [stdout]   --> src/openai.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl OpenAiClient {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub async fn generate_text(&self, input: &str) -> Result<String, OpenAiApiError> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALL_WEBHOOK_EVENTS` is never used
[INFO] [stdout]   --> src/recall.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ALL_WEBHOOK_EVENTS: [&str; 13] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_base_url`, `list_bots`, `list_bots_filtered`, `list_bots_from_url`, `get_with_retry`, and `get_absolute_with_retry` are never used
[INFO] [stdout]    --> src/recall.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl RecallClient {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn with_base_url(api_key: impl Into<String>, base_url: impl AsRef<str>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub async fn list_bots(&self) -> Result<Vec<Bot>, RecallApiError> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub async fn list_bots_filtered(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     async fn list_bots_from_url(&self, initial_url: String) -> Result<Vec<Bot>, RecallApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     async fn get_with_retry(&self, path: &str) -> Result<reqwest::Response, RecallApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     async fn get_absolute_with_retry(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_bot_list_response` is never used
[INFO] [stdout]    --> src/recall.rs:428:4
[INFO] [stdout]     |
[INFO] [stdout] 428 | fn parse_bot_list_response(body: &str) -> Result<(Vec<Bot>, Option<String>), RecallApiError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_bot_from_value` is never used
[INFO] [stdout]    --> src/recall.rs:465:4
[INFO] [stdout]     |
[INFO] [stdout] 465 | fn parse_bot_from_value(value: &JsonValue) -> Option<Bot> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `webhook_realtime_endpoint` is never used
[INFO] [stdout]    --> src/recall.rs:525:8
[INFO] [stdout]     |
[INFO] [stdout] 525 | pub fn webhook_realtime_endpoint(url: impl AsRef<str>) -> JsonValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_with_all_webhook_events` is never used
[INFO] [stdout]    --> src/recall.rs:537:8
[INFO] [stdout]     |
[INFO] [stdout] 537 | pub fn recording_config_with_all_webhook_events(url: impl AsRef<str>) -> JsonValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_for_voice_command_transcripts` is never used
[INFO] [stdout]    --> src/recall.rs:549:8
[INFO] [stdout]     |
[INFO] [stdout] 549 | pub fn recording_config_for_voice_command_transcripts(url: impl AsRef<str>) -> JsonValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_for_voice_command_transcripts_with_mode` is never used
[INFO] [stdout]    --> src/recall.rs:556:8
[INFO] [stdout]     |
[INFO] [stdout] 556 | pub fn recording_config_for_voice_command_transcripts_with_mode(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_for_voice_command_transcripts_with_provider` is never used
[INFO] [stdout]    --> src/recall.rs:566:8
[INFO] [stdout]     |
[INFO] [stdout] 566 | pub fn recording_config_for_voice_command_transcripts_with_provider(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `realtime_endpoint`, `participant_events`, `recording`, and `bot` are never read
[INFO] [stdout]    --> src/recall.rs:628:9
[INFO] [stdout]     |
[INFO] [stdout] 626 | pub struct ParticipantEventWebhookPayload {
[INFO] [stdout]     |            ------------------------------ fields in this struct
[INFO] [stdout] 627 |     pub data: ParticipantEventData,
[INFO] [stdout] 628 |     pub realtime_endpoint: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 629 |     #[serde(default)]
[INFO] [stdout] 630 |     pub participant_events: Option<RecallResourceRef>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 631 |     pub recording: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 632 |     #[serde(default)]
[INFO] [stdout] 633 |     pub bot: Option<RecallResourceRef>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantEventWebhookPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `timestamp` is never read
[INFO] [stdout]    --> src/recall.rs:639:9
[INFO] [stdout]     |
[INFO] [stdout] 637 | pub struct ParticipantEventData {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] 638 |     pub participant: ParticipantIdentity,
[INFO] [stdout] 639 |     pub timestamp: EventTimestamp,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantEventData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_host`, `platform`, `extra_data`, and `email` are never read
[INFO] [stdout]    --> src/recall.rs:650:9
[INFO] [stdout]     |
[INFO] [stdout] 645 | pub struct ParticipantIdentity {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 650 |     pub is_host: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 651 |     #[serde(default)]
[INFO] [stdout] 652 |     pub platform: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 653 |     #[serde(default)]
[INFO] [stdout] 654 |     pub extra_data: JsonValue,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 655 |     #[serde(default)]
[INFO] [stdout] 656 |     pub email: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantIdentity` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `absolute` and `relative` are never read
[INFO] [stdout]    --> src/recall.rs:662:9
[INFO] [stdout]     |
[INFO] [stdout] 660 | pub struct EventTimestamp {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 661 |     #[serde(default)]
[INFO] [stdout] 662 |     pub absolute: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 663 |     pub relative: f64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EventTimestamp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `to` is never read
[INFO] [stdout]    --> src/recall.rs:671:9
[INFO] [stdout]     |
[INFO] [stdout] 667 | pub struct ParticipantChatData {
[INFO] [stdout]     |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 671 |     pub to: Option<String>,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantChatData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `realtime_endpoint`, `transcript`, and `recording` are never read
[INFO] [stdout]    --> src/recall.rs:677:9
[INFO] [stdout]     |
[INFO] [stdout] 675 | pub struct TranscriptWebhookPayload {
[INFO] [stdout]     |            ------------------------ fields in this struct
[INFO] [stdout] 676 |     pub data: TranscriptEventData,
[INFO] [stdout] 677 |     pub realtime_endpoint: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 678 |     pub transcript: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 679 |     pub recording: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TranscriptWebhookPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_timestamp` and `end_timestamp` are never read
[INFO] [stdout]    --> src/recall.rs:696:9
[INFO] [stdout]     |
[INFO] [stdout] 693 | pub struct TranscriptWord {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 696 |     pub start_timestamp: Option<RelativeTimestamp>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 697 |     #[serde(default)]
[INFO] [stdout] 698 |     pub end_timestamp: Option<RelativeTimestamp>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TranscriptWord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative` is never read
[INFO] [stdout]    --> src/recall.rs:703:9
[INFO] [stdout]     |
[INFO] [stdout] 702 | pub struct RelativeTimestamp {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 703 |     pub relative: f64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RelativeTimestamp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `metadata` is never read
[INFO] [stdout]    --> src/recall.rs:710:9
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub struct RecallResourceRef {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 710 |     pub metadata: JsonValue,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RecallResourceRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_all_webhook_events`, `configure_all_webhook_events`, and `configure_voice_command_transcript_webhooks` are never used
[INFO] [stdout]    --> src/recall.rs:772:12
[INFO] [stdout]     |
[INFO] [stdout] 751 | impl CreateBotRequest {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 772 |     pub fn with_all_webhook_events(mut self, webhook_url: impl AsRef<str>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 777 |     pub fn configure_all_webhook_events(&mut self, webhook_url: impl AsRef<str>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 816 |     pub fn configure_voice_command_transcript_webhooks(&mut self, webhook_url: impl AsRef<str>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_SQUARE_SIZE` is never used
[INFO] [stdout]   --> src/render.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const DEFAULT_SQUARE_SIZE: u32 = 128;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OUTPUT_TILE_SQUARE_SIZE` is never used
[INFO] [stdout]   --> src/render.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const OUTPUT_TILE_SQUARE_SIZE: u32 = OUTPUT_FRAME_HEIGHT / TILE_DIMENSION_SQUARES;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `OUTPUT_FRAME_BACKGROUND_CACHE` is never used
[INFO] [stdout]   --> src/render.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | static OUTPUT_FRAME_BACKGROUND_CACHE: OnceLock<Arc<RgbaImage>> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_default_empty_board_jpeg` is never used
[INFO] [stdout]   --> src/render.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn render_default_empty_board_jpeg() -> Result<Vec<u8>, image::ImageError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_empty_board_jpeg` is never used
[INFO] [stdout]   --> src/render.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn render_empty_board_jpeg(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_default_board_tile_jpeg` is never used
[INFO] [stdout]   --> src/render.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn render_default_board_tile_jpeg(tile_index: usize) -> Result<Vec<u8>, image::ImageError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_current_board_tile_jpeg` is never used
[INFO] [stdout]    --> src/render.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn render_current_board_tile_jpeg(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_board_tile_jpeg` is never used
[INFO] [stdout]    --> src/render.rs:376:8
[INFO] [stdout]     |
[INFO] [stdout] 376 | pub fn render_board_tile_jpeg(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `piece_sprite` is never used
[INFO] [stdout]    --> src/render.rs:581:4
[INFO] [stdout]     |
[INFO] [stdout] 581 | fn piece_sprite(piece: shakmaty::Piece) -> Result<RgbaImage, image::ImageError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `paint_square_rgb` is never used
[INFO] [stdout]     --> src/render.rs:1061:4
[INFO] [stdout]      |
[INFO] [stdout] 1061 | fn paint_square_rgb(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compose_output_video_frame` is never used
[INFO] [stdout]     --> src/render.rs:1128:4
[INFO] [stdout]      |
[INFO] [stdout] 1128 | fn compose_output_video_frame(tile: &RgbaImage) -> RgbImage {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cached_output_frame_background` is never used
[INFO] [stdout]     --> src/render.rs:1199:4
[INFO] [stdout]      |
[INFO] [stdout] 1199 | fn cached_output_frame_background() -> Arc<RgbaImage> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bot_id` is never read
[INFO] [stdout]   --> src/voice_commands.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct TranscriptChunk {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 12 |     pub sequence: u64,
[INFO] [stdout] 13 |     pub bot_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TranscriptChunk` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LichessGameUpdate` is never constructed
[INFO] [stdout]   --> src/lichess.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct LichessGameUpdate {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `signature` is never used
[INFO] [stdout]   --> src/lichess.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl LichessGameUpdate {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] 44 |     pub fn signature(&self) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `reconnect_delay` is never read
[INFO] [stdout]   --> src/lichess.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct LichessClient {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 64 |     reconnect_delay: Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LichessClient` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `reconnect_delay`, `stream_updates`, `stream_url`, and `get_stream_response` are never used
[INFO] [stdout]    --> src/lichess.rs:267:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl LichessClient {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn reconnect_delay(&self) -> Duration {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub async fn stream_updates<F, Fut>(&self, mut on_update: F) -> Result<(), LichessApiError>
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     fn stream_url(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     async fn get_stream_response(&self, url: &str) -> Result<reqwest::Response, LichessApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chess_from_uci_moves` is never used
[INFO] [stdout]    --> src/lichess.rs:373:8
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub fn chess_from_uci_moves(moves: &str) -> Result<Chess, LichessApiError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chess_from_fen` is never used
[INFO] [stdout]    --> src/lichess.rs:387:8
[INFO] [stdout]     |
[INFO] [stdout] 387 | pub fn chess_from_fen(fen_text: &str) -> Result<Chess, LichessApiError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_game_update` is never used
[INFO] [stdout]    --> src/lichess.rs:398:4
[INFO] [stdout]     |
[INFO] [stdout] 398 | fn parse_game_update(value: &JsonValue, mode: LichessStreamMode) -> Option<LichessGameUpdate> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_no_such_game` is never used
[INFO] [stdout]    --> src/lichess.rs:592:12
[INFO] [stdout]     |
[INFO] [stdout] 591 | impl LichessApiError {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 592 |     pub fn is_no_such_game(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_millis` is never used
[INFO] [stdout]    --> src/lichess.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn now_millis() -> u128 {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_text` is never used
[INFO] [stdout]   --> src/openai.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl OpenAiClient {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub async fn generate_text(&self, input: &str) -> Result<String, OpenAiApiError> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALL_WEBHOOK_EVENTS` is never used
[INFO] [stdout]   --> src/recall.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ALL_WEBHOOK_EVENTS: [&str; 13] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_base_url`, `list_bots`, `list_bots_filtered`, `list_bots_from_url`, `get_with_retry`, and `get_absolute_with_retry` are never used
[INFO] [stdout]    --> src/recall.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl RecallClient {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn with_base_url(api_key: impl Into<String>, base_url: impl AsRef<str>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub async fn list_bots(&self) -> Result<Vec<Bot>, RecallApiError> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub async fn list_bots_filtered(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     async fn list_bots_from_url(&self, initial_url: String) -> Result<Vec<Bot>, RecallApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     async fn get_with_retry(&self, path: &str) -> Result<reqwest::Response, RecallApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     async fn get_absolute_with_retry(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_bot_list_response` is never used
[INFO] [stdout]    --> src/recall.rs:428:4
[INFO] [stdout]     |
[INFO] [stdout] 428 | fn parse_bot_list_response(body: &str) -> Result<(Vec<Bot>, Option<String>), RecallApiError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_bot_from_value` is never used
[INFO] [stdout]    --> src/recall.rs:465:4
[INFO] [stdout]     |
[INFO] [stdout] 465 | fn parse_bot_from_value(value: &JsonValue) -> Option<Bot> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `webhook_realtime_endpoint` is never used
[INFO] [stdout]    --> src/recall.rs:525:8
[INFO] [stdout]     |
[INFO] [stdout] 525 | pub fn webhook_realtime_endpoint(url: impl AsRef<str>) -> JsonValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_with_all_webhook_events` is never used
[INFO] [stdout]    --> src/recall.rs:537:8
[INFO] [stdout]     |
[INFO] [stdout] 537 | pub fn recording_config_with_all_webhook_events(url: impl AsRef<str>) -> JsonValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_for_voice_command_transcripts` is never used
[INFO] [stdout]    --> src/recall.rs:549:8
[INFO] [stdout]     |
[INFO] [stdout] 549 | pub fn recording_config_for_voice_command_transcripts(url: impl AsRef<str>) -> JsonValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_for_voice_command_transcripts_with_mode` is never used
[INFO] [stdout]    --> src/recall.rs:556:8
[INFO] [stdout]     |
[INFO] [stdout] 556 | pub fn recording_config_for_voice_command_transcripts_with_mode(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recording_config_for_voice_command_transcripts_with_provider` is never used
[INFO] [stdout]    --> src/recall.rs:566:8
[INFO] [stdout]     |
[INFO] [stdout] 566 | pub fn recording_config_for_voice_command_transcripts_with_provider(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `realtime_endpoint`, `participant_events`, `recording`, and `bot` are never read
[INFO] [stdout]    --> src/recall.rs:628:9
[INFO] [stdout]     |
[INFO] [stdout] 626 | pub struct ParticipantEventWebhookPayload {
[INFO] [stdout]     |            ------------------------------ fields in this struct
[INFO] [stdout] 627 |     pub data: ParticipantEventData,
[INFO] [stdout] 628 |     pub realtime_endpoint: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 629 |     #[serde(default)]
[INFO] [stdout] 630 |     pub participant_events: Option<RecallResourceRef>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 631 |     pub recording: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 632 |     #[serde(default)]
[INFO] [stdout] 633 |     pub bot: Option<RecallResourceRef>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantEventWebhookPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `timestamp` is never read
[INFO] [stdout]    --> src/recall.rs:639:9
[INFO] [stdout]     |
[INFO] [stdout] 637 | pub struct ParticipantEventData {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] 638 |     pub participant: ParticipantIdentity,
[INFO] [stdout] 639 |     pub timestamp: EventTimestamp,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantEventData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_host`, `platform`, `extra_data`, and `email` are never read
[INFO] [stdout]    --> src/recall.rs:650:9
[INFO] [stdout]     |
[INFO] [stdout] 645 | pub struct ParticipantIdentity {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 650 |     pub is_host: Option<bool>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 651 |     #[serde(default)]
[INFO] [stdout] 652 |     pub platform: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 653 |     #[serde(default)]
[INFO] [stdout] 654 |     pub extra_data: JsonValue,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 655 |     #[serde(default)]
[INFO] [stdout] 656 |     pub email: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantIdentity` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `absolute` and `relative` are never read
[INFO] [stdout]    --> src/recall.rs:662:9
[INFO] [stdout]     |
[INFO] [stdout] 660 | pub struct EventTimestamp {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 661 |     #[serde(default)]
[INFO] [stdout] 662 |     pub absolute: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 663 |     pub relative: f64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EventTimestamp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `to` is never read
[INFO] [stdout]    --> src/recall.rs:671:9
[INFO] [stdout]     |
[INFO] [stdout] 667 | pub struct ParticipantChatData {
[INFO] [stdout]     |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 671 |     pub to: Option<String>,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParticipantChatData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `realtime_endpoint`, `transcript`, and `recording` are never read
[INFO] [stdout]    --> src/recall.rs:677:9
[INFO] [stdout]     |
[INFO] [stdout] 675 | pub struct TranscriptWebhookPayload {
[INFO] [stdout]     |            ------------------------ fields in this struct
[INFO] [stdout] 676 |     pub data: TranscriptEventData,
[INFO] [stdout] 677 |     pub realtime_endpoint: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 678 |     pub transcript: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 679 |     pub recording: RecallResourceRef,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TranscriptWebhookPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_timestamp` and `end_timestamp` are never read
[INFO] [stdout]    --> src/recall.rs:696:9
[INFO] [stdout]     |
[INFO] [stdout] 693 | pub struct TranscriptWord {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 696 |     pub start_timestamp: Option<RelativeTimestamp>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 697 |     #[serde(default)]
[INFO] [stdout] 698 |     pub end_timestamp: Option<RelativeTimestamp>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TranscriptWord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative` is never read
[INFO] [stdout]    --> src/recall.rs:703:9
[INFO] [stdout]     |
[INFO] [stdout] 702 | pub struct RelativeTimestamp {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 703 |     pub relative: f64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RelativeTimestamp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `metadata` is never read
[INFO] [stdout]    --> src/recall.rs:710:9
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub struct RecallResourceRef {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 710 |     pub metadata: JsonValue,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RecallResourceRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_all_webhook_events`, `configure_all_webhook_events`, and `configure_voice_command_transcript_webhooks` are never used
[INFO] [stdout]    --> src/recall.rs:772:12
[INFO] [stdout]     |
[INFO] [stdout] 751 | impl CreateBotRequest {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 772 |     pub fn with_all_webhook_events(mut self, webhook_url: impl AsRef<str>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 777 |     pub fn configure_all_webhook_events(&mut self, webhook_url: impl AsRef<str>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 816 |     pub fn configure_voice_command_transcript_webhooks(&mut self, webhook_url: impl AsRef<str>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_SQUARE_SIZE` is never used
[INFO] [stdout]   --> src/render.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const DEFAULT_SQUARE_SIZE: u32 = 128;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OUTPUT_TILE_SQUARE_SIZE` is never used
[INFO] [stdout]   --> src/render.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const OUTPUT_TILE_SQUARE_SIZE: u32 = OUTPUT_FRAME_HEIGHT / TILE_DIMENSION_SQUARES;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `OUTPUT_FRAME_BACKGROUND_CACHE` is never used
[INFO] [stdout]   --> src/render.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | static OUTPUT_FRAME_BACKGROUND_CACHE: OnceLock<Arc<RgbaImage>> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_default_empty_board_jpeg` is never used
[INFO] [stdout]   --> src/render.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn render_default_empty_board_jpeg() -> Result<Vec<u8>, image::ImageError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_empty_board_jpeg` is never used
[INFO] [stdout]   --> src/render.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn render_empty_board_jpeg(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_default_board_tile_jpeg` is never used
[INFO] [stdout]   --> src/render.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn render_default_board_tile_jpeg(tile_index: usize) -> Result<Vec<u8>, image::ImageError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_current_board_tile_jpeg` is never used
[INFO] [stdout]    --> src/render.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub fn render_current_board_tile_jpeg(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_board_tile_jpeg` is never used
[INFO] [stdout]    --> src/render.rs:376:8
[INFO] [stdout]     |
[INFO] [stdout] 376 | pub fn render_board_tile_jpeg(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `piece_sprite` is never used
[INFO] [stdout]    --> src/render.rs:581:4
[INFO] [stdout]     |
[INFO] [stdout] 581 | fn piece_sprite(piece: shakmaty::Piece) -> Result<RgbaImage, image::ImageError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `paint_square_rgb` is never used
[INFO] [stdout]     --> src/render.rs:1061:4
[INFO] [stdout]      |
[INFO] [stdout] 1061 | fn paint_square_rgb(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compose_output_video_frame` is never used
[INFO] [stdout]     --> src/render.rs:1128:4
[INFO] [stdout]      |
[INFO] [stdout] 1128 | fn compose_output_video_frame(tile: &RgbaImage) -> RgbImage {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cached_output_frame_background` is never used
[INFO] [stdout]     --> src/render.rs:1199:4
[INFO] [stdout]      |
[INFO] [stdout] 1199 | fn cached_output_frame_background() -> Arc<RgbaImage> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bot_id` is never read
[INFO] [stdout]   --> src/voice_commands.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct TranscriptChunk {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 12 |     pub sequence: u64,
[INFO] [stdout] 13 |     pub bot_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TranscriptChunk` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 40.88s
[INFO] running `Command { std: "docker" "inspect" "90293551c6e1963f30156e14f19f259517bf2ee0ad681791c32ad65e0bed4fd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90293551c6e1963f30156e14f19f259517bf2ee0ad681791c32ad65e0bed4fd0", kill_on_drop: false }`
[INFO] [stdout] 90293551c6e1963f30156e14f19f259517bf2ee0ad681791c32ad65e0bed4fd0
