[INFO] cloning repository https://github.com/imaviso/jellyfin-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/imaviso/jellyfin-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fimaviso%2Fjellyfin-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fimaviso%2Fjellyfin-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e354f4a4f8c8a1614affed39e094e1fa793a404d [INFO] testing imaviso/jellyfin-rust against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fimaviso%2Fjellyfin-rust" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/imaviso/jellyfin-rust [INFO] finished tweaking git repo https://github.com/imaviso/jellyfin-rust [INFO] tweaked toml for git repo https://github.com/imaviso/jellyfin-rust written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/imaviso/jellyfin-rust on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/imaviso/jellyfin-rust 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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6b98d1b52afea6c515060e2e950b8b302705caa4ae413437dec9dac828c52b14 [INFO] running `Command { std: "docker" "start" "-a" "6b98d1b52afea6c515060e2e950b8b302705caa4ae413437dec9dac828c52b14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6b98d1b52afea6c515060e2e950b8b302705caa4ae413437dec9dac828c52b14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6b98d1b52afea6c515060e2e950b8b302705caa4ae413437dec9dac828c52b14", kill_on_drop: false }` [INFO] [stdout] 6b98d1b52afea6c515060e2e950b8b302705caa4ae413437dec9dac828c52b14 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9d454472d54d5969d824f282b4290ea47c9f2a82ca4de43836991ca84559daa8 [INFO] running `Command { std: "docker" "start" "-a" "9d454472d54d5969d824f282b4290ea47c9f2a82ca4de43836991ca84559daa8", kill_on_drop: false }` [INFO] [stderr] Compiling bytes v1.11.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling find-msvc-tools v0.1.7 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling zmij v1.0.12 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling zerocopy v0.8.33 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling cc v1.2.52 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling crc v3.4.0 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling futures-intrusive v0.5.0 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling uuid v1.19.0 [INFO] [stderr] Compiling flume v0.11.1 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.27.0 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling sqlformat v0.2.6 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling base64ct v1.8.2 [INFO] [stderr] Compiling hashlink v0.8.4 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling password-hash v0.5.0 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling argon2 v0.5.3 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling sct v0.7.1 [INFO] [stderr] Compiling rustls-webpki v0.101.7 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling axum-macros v0.4.2 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling axum-core v0.4.5 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling sqlx-core v0.7.4 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling tokio-rustls v0.24.1 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling h2 v0.3.27 [INFO] [stderr] Compiling tower-http v0.5.2 [INFO] [stderr] Compiling hyper-util v0.1.19 [INFO] [stderr] Compiling axum v0.7.9 [INFO] [stderr] Compiling sqlx-sqlite v0.7.4 [INFO] [stderr] Compiling sqlx-macros-core v0.7.4 [INFO] [stderr] Compiling sqlx-macros v0.7.4 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling sqlx v0.7.4 [INFO] [stderr] Compiling hyper-rustls v0.24.2 [INFO] [stderr] Compiling reqwest v0.11.27 [INFO] [stderr] Compiling jellyfin-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `response::IntoResponse` [INFO] [stdout] --> src/api/favorites.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | response::IntoResponse, [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: `ImageTags` [INFO] [stdout] --> src/api/filters.rs:14:33 [INFO] [stdout] | [INFO] [stdout] 14 | use super::items::{BaseItemDto, ImageTags, UserItemDataDto}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_user_item_data` [INFO] [stdout] --> src/api/home.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use super::items::{get_user_item_data, BaseItemDto, ImageTags, ItemsResponse, UserItemDataDto}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ImageTags` [INFO] [stdout] --> src/api/sessions.rs:14:33 [INFO] [stdout] | [INFO] [stdout] 14 | use super::items::{BaseItemDto, ImageTags, UserItemDataDto}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serialize` [INFO] [stdout] --> src/api/shows.rs:9:26 [INFO] [stdout] | [INFO] [stdout] 9 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/api/system.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DateTime` and `Utc` [INFO] [stdout] --> src/models/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use chrono::{DateTime, Utc}; [INFO] [stdout] | ^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/models/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/services/anidb.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serialize` [INFO] [stdout] --> src/services/tmdb.rs:6:26 [INFO] [stdout] | [INFO] [stdout] 6 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `item` [INFO] [stdout] --> src/api/items.rs:2793:9 [INFO] [stdout] | [INFO] [stdout] 2793 | let item: MediaItem = sqlx::query_as("SELECT * FROM media_items WHERE id = ?") [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_item` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> src/api/library.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | body: Option>, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_body` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/api/subtitles.rs:600:5 [INFO] [stdout] | [INFO] [stdout] 600 | state: &AppState, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `year` [INFO] [stdout] --> src/services/anilist.rs:422:68 [INFO] [stdout] | [INFO] [stdout] 422 | fn is_title_match(&self, query_clean: &str, media: &MediaData, year: Option) -> bool { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_year` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/collections.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct CollectionsQuery { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 31 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CollectionsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `parent_id` and `is_locked` are never read [INFO] [stdout] --> src/api/collections.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct CreateCollectionRequest { [INFO] [stdout] | ----------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 41 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 42 | pub is_locked: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CreateCollectionRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_favorite` is never used [INFO] [stdout] --> src/api/favorites.rs:146:14 [INFO] [stdout] | [INFO] [stdout] 146 | pub async fn is_favorite(pool: &sqlx::SqlitePool, user_id: &str, item_id: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `is_favorite`, and `sort_by` are never read [INFO] [stdout] --> src/api/filters.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct FilterQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 36 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | pub is_favorite: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 38 | pub sort_by: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FilterQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `fields`, `image_type_limit`, and `enable_image_types` are never read [INFO] [stdout] --> src/api/home.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct LatestQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 66 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 67 | pub image_type_limit: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 68 | pub enable_image_types: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LatestQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/home.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct ResumeQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 86 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 87 | pub limit: Option, [INFO] [stdout] 88 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 89 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 90 | pub media_types: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 91 | pub enable_image_types: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 92 | pub enable_total_record_count: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 93 | pub enable_user_data: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResumeQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/home.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 114 | pub struct NextUpQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 115 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 116 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 117 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 118 | pub limit: Option, [INFO] [stdout] 119 | pub image_type_limit: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 120 | pub next_up_date_cutoff: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 121 | pub disable_first_episode: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 122 | pub enable_resumable: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 123 | pub enable_rewatching: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NextUpQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/images.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct ImageQuery { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 157 | pub max_width: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 158 | pub max_height: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 159 | pub width: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 160 | pub height: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 161 | pub quality: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 162 | pub fill_width: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 163 | pub fill_height: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 164 | pub tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImageQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/api/images.rs:182:5 [INFO] [stdout] | [INFO] [stdout] 177 | pub struct ImagePathIndexed { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 182 | index: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImagePathIndexed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_image` is never used [INFO] [stdout] --> src/api/images.rs:355:14 [INFO] [stdout] | [INFO] [stdout] 355 | pub async fn store_image( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/items.rs:387:9 [INFO] [stdout] | [INFO] [stdout] 386 | pub struct FiltersQuery { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 387 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 388 | pub parent_id: Option, [INFO] [stdout] 389 | pub include_item_types: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 390 | pub is_airing: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 391 | pub is_movie: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 392 | pub is_sports: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 393 | pub is_kids: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 394 | pub is_news: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 395 | pub is_series: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 396 | pub recursive: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FiltersQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `exclude_item_types`, `fields`, `genres`, `genre_ids`, and `media_types` are never read [INFO] [stdout] --> src/api/items.rs:634:9 [INFO] [stdout] | [INFO] [stdout] 631 | pub struct GetItemsQuery { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 634 | pub exclude_item_types: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 640 | pub fields: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 645 | pub genres: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 646 | pub genre_ids: Option>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 647 | pub media_types: Option>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetItemsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/items.rs:1651:9 [INFO] [stdout] | [INFO] [stdout] 1646 | pub struct SearchHintsQuery { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 1651 | pub media_types: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 1652 | pub is_movie: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1653 | pub is_series: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1654 | pub is_news: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 1655 | pub is_kids: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 1656 | pub is_sports: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1657 | #[serde(rename = "userId")] [INFO] [stdout] 1658 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SearchHintsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `regenerate_trickplay` is never read [INFO] [stdout] --> src/api/items.rs:1978:9 [INFO] [stdout] | [INFO] [stdout] 1968 | pub struct RefreshQuery { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 1978 | pub regenerate_trickplay: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RefreshQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_index`, `limit`, and `include_all_languages` are never read [INFO] [stdout] --> src/api/items.rs:2563:9 [INFO] [stdout] | [INFO] [stdout] 2560 | pub struct RemoteImagesQuery { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 2563 | pub start_index: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 2564 | pub limit: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 2565 | pub include_all_languages: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RemoteImagesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `include_disabled_providers` is never read [INFO] [stdout] --> src/api/items.rs:3141:9 [INFO] [stdout] | [INFO] [stdout] 3136 | pub struct SeriesInfoRemoteSearchQuery { [INFO] [stdout] | --------------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3141 | pub include_disabled_providers: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeriesInfoRemoteSearchQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `provider_ids` is never read [INFO] [stdout] --> src/api/items.rs:3149:9 [INFO] [stdout] | [INFO] [stdout] 3146 | pub struct SeriesSearchInfo { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3149 | pub provider_ids: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeriesSearchInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `include_disabled_providers` is never read [INFO] [stdout] --> src/api/items.rs:3159:9 [INFO] [stdout] | [INFO] [stdout] 3154 | pub struct MovieInfoRemoteSearchQuery { [INFO] [stdout] | -------------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3159 | pub include_disabled_providers: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieInfoRemoteSearchQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `provider_ids` is never read [INFO] [stdout] --> src/api/items.rs:3167:9 [INFO] [stdout] | [INFO] [stdout] 3164 | pub struct MovieSearchInfo { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3167 | pub provider_ids: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieSearchInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `library_options` is never read [INFO] [stdout] --> src/api/library.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 92 | pub struct AddVirtualFolderBody { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] 93 | pub library_options: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AddVirtualFolderBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `library_options` are never read [INFO] [stdout] --> src/api/library.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 247 | pub struct UpdateLibraryOptionsRequest { [INFO] [stdout] | --------------------------- fields in this struct [INFO] [stdout] 248 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] 249 | pub library_options: LibraryOptions, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UpdateLibraryOptionsRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `parent_id`, and `fields` are never read [INFO] [stdout] --> src/api/movies.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct RecommendationsQuery { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 24 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 25 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 26 | pub fields: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RecommendationsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `person_types` and `user_id` are never read [INFO] [stdout] --> src/api/persons.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct PersonsQuery { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 33 | pub search_term: Option, [INFO] [stdout] 34 | pub person_types: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PersonsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `image_type` is never read [INFO] [stdout] --> src/api/persons.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub struct PersonImagePath { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 221 | image_type: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PersonImagePath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `max_width`, `max_height`, and `tag` are never read [INFO] [stdout] --> src/api/persons.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 235 | pub struct ImageQuery { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 236 | pub max_width: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 237 | pub max_height: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 238 | pub tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImageQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `media_source_id`, `audio_stream_index`, `subtitle_stream_index`, `play_method`, and `play_session_id` are never read [INFO] [stdout] --> src/api/playback.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct PlaybackStartInfo { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 50 | pub audio_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 51 | pub subtitle_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 52 | pub play_method: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 53 | pub play_session_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackStartInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `is_muted`, `volume_level`, `play_method`, `play_session_id`, and `repeat_mode` are never read [INFO] [stdout] --> src/api/playback.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct PlaybackProgressInfo { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 63 | pub is_muted: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 64 | pub volume_level: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 65 | pub play_method: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 66 | pub play_session_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 67 | pub repeat_mode: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackProgressInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `media_source_id` and `play_session_id` are never read [INFO] [stdout] --> src/api/playback.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct PlaybackStopInfo { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 76 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 77 | pub play_session_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackStopInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_playback_progress` is never used [INFO] [stdout] --> src/api/playback.rs:433:14 [INFO] [stdout] | [INFO] [stdout] 433 | pub async fn get_playback_progress( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/playbackinfo.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct PlaybackInfoQuery { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 29 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 30 | pub max_streaming_bitrate: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 31 | pub start_time_ticks: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 32 | pub audio_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | pub subtitle_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 34 | pub max_audio_channels: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | pub live_stream_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 37 | pub auto_open_live_stream: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 38 | pub enable_direct_play: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 39 | pub enable_direct_stream: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 40 | pub enable_transcoding: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | pub allow_video_stream_copy: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | pub allow_audio_stream_copy: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackInfoQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/playlists.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct PlaylistsQuery { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 29 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaylistsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/playlists.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct CreatePlaylistRequest { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 39 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CreatePlaylistRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/playlists.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 64 | struct PlaylistRow { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 67 | user_id: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaylistRow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/api/segments.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl MediaSegmentType { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 34 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_edl_file` is never used [INFO] [stdout] --> src/api/segments.rs:235:14 [INFO] [stdout] | [INFO] [stdout] 235 | pub async fn import_edl_file( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_intro` is never used [INFO] [stdout] --> src/api/segments.rs:283:14 [INFO] [stdout] | [INFO] [stdout] 283 | pub async fn has_intro(pool: &sqlx::SqlitePool, item_id: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_intro` is never used [INFO] [stdout] --> src/api/segments.rs:296:14 [INFO] [stdout] | [INFO] [stdout] 296 | pub async fn get_intro(pool: &sqlx::SqlitePool, item_id: &str) -> Option<(i64, i64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_outro` is never used [INFO] [stdout] --> src/api/segments.rs:310:14 [INFO] [stdout] | [INFO] [stdout] 310 | pub async fn get_outro(pool: &sqlx::SqlitePool, item_id: &str) -> Option<(i64, i64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `controlling_user_id` is never read [INFO] [stdout] --> src/api/sessions.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct PlaybackCommandBody { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 74 | pub seek_position_ticks: Option, [INFO] [stdout] 75 | pub controlling_user_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackCommandBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `timeout_ms` is never read [INFO] [stdout] --> src/api/sessions.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct MessageBody { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 83 | pub timeout_ms: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MessageBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `play_state` is never read [INFO] [stdout] --> src/api/sessions.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 87 | struct SessionRow { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 100 | play_state: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SessionRow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `fields`, `is_special_season`, `is_missing`, and `adjacent_to` are never read [INFO] [stdout] --> src/api/shows.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct SeasonsQuery { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 26 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 27 | pub fields: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | pub is_special_season: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 29 | pub is_missing: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 30 | pub adjacent_to: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeasonsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `fields`, `is_missing`, `adjacent_to`, and `start_item_id` are never read [INFO] [stdout] --> src/api/shows.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct EpisodesQuery { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 36 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | pub fields: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub is_missing: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 41 | pub adjacent_to: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub start_item_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EpisodesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `is_perfect_match` and `is_forced` are never read [INFO] [stdout] --> src/api/subtitles.rs:357:9 [INFO] [stdout] | [INFO] [stdout] 356 | pub struct SearchSubtitlesQuery { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 357 | pub is_perfect_match: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 358 | pub is_forced: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SearchSubtitlesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `static_stream`, `media_source_id`, `device_id`, `audio_codec`, `video_codec`, and `container` are never read [INFO] [stdout] --> src/api/videos.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct StreamQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 37 | pub static_stream: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 38 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 39 | pub device_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 40 | pub audio_codec: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 41 | pub video_codec: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 42 | pub container: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StreamQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `container` is never read [INFO] [stdout] --> src/api/videos.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 230 | pub struct VideoPath { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 233 | container: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VideoPath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `media_source_id` is never read [INFO] [stdout] --> src/api/videos.rs:256:9 [INFO] [stdout] | [INFO] [stdout] 255 | pub struct TrickplayQuery { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 256 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrickplayQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `include_external_content`, and `include_hidden` are never read [INFO] [stdout] --> src/api/views.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct UserViewsQuery { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 23 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 24 | pub include_external_content: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 25 | pub include_hidden: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UserViewsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_connection` is never used [INFO] [stdout] --> src/db/mod.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub async fn configure_connection(pool: &SqlitePool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optimize` is never used [INFO] [stdout] --> src/db/mod.rs:492:14 [INFO] [stdout] | [INFO] [stdout] 492 | pub async fn optimize(pool: &SqlitePool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pending_image_count` is never used [INFO] [stdout] --> src/db/mod.rs:581:14 [INFO] [stdout] | [INFO] [stdout] 581 | pub async fn get_pending_image_count(pool: &SqlitePool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attempts` is never read [INFO] [stdout] --> src/db/mod.rs:594:9 [INFO] [stdout] | [INFO] [stdout] 589 | pub struct PendingImage { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 594 | pub attempts: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PendingImage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pending_thumbnail_count` is never used [INFO] [stdout] --> src/db/mod.rs:674:14 [INFO] [stdout] | [INFO] [stdout] 674 | pub async fn get_pending_thumbnail_count(pool: &SqlitePool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attempts` is never read [INFO] [stdout] --> src/db/mod.rs:731:9 [INFO] [stdout] | [INFO] [stdout] 727 | pub struct PendingThumbnail { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 731 | pub attempts: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PendingThumbnail` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `update_fts_item` is never used [INFO] [stdout] --> src/db/mod.rs:793:14 [INFO] [stdout] | [INFO] [stdout] 793 | pub async fn update_fts_item(pool: &SqlitePool, item_id: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `search_items_fts` is never used [INFO] [stdout] --> src/db/mod.rs:824:14 [INFO] [stdout] | [INFO] [stdout] 824 | pub async fn search_items_fts(pool: &SqlitePool, query: &str, limit: i32) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `prepare_fts_query` is never used [INFO] [stdout] --> src/db/mod.rs:853:4 [INFO] [stdout] | [INFO] [stdout] 853 | fn prepare_fts_query(query: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LibraryType` is never used [INFO] [stdout] --> src/models/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | pub enum LibraryType { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ItemType` is never used [INFO] [stdout] --> src/models/mod.rs:70:10 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum ItemType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Image` is never constructed [INFO] [stdout] --> src/models/mod.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Image { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ImageType` is never used [INFO] [stdout] --> src/models/mod.rs:89:10 [INFO] [stdout] | [INFO] [stdout] 89 | pub enum ImageType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlaybackProgress` is never constructed [INFO] [stdout] --> src/models/mod.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct PlaybackProgress { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_BATCH_SIZE` is never used [INFO] [stdout] --> src/scanner/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const DB_BATCH_SIZE: usize = 50; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DiscoveredEpisode` is never constructed [INFO] [stdout] --> src/scanner/mod.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | struct DiscoveredEpisode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DiscoveredMovie` is never constructed [INFO] [stdout] --> src/scanner/mod.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct DiscoveredMovie { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `scan_library` is never used [INFO] [stdout] --> src/scanner/mod.rs:344:14 [INFO] [stdout] | [INFO] [stdout] 344 | pub async fn scan_library( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `by_path` is never read [INFO] [stdout] --> src/scanner/mod.rs:500:5 [INFO] [stdout] | [INFO] [stdout] 498 | struct SeriesCache { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 499 | /// Map of folder path -> (series_id, metadata) [INFO] [stdout] 500 | by_path: std::collections::HashMap)>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeriesCache` 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: function `scan_tv_library` is never used [INFO] [stdout] --> src/scanner/mod.rs:696:10 [INFO] [stdout] | [INFO] [stdout] 696 | async fn scan_tv_library( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_unmatched_series_for_retry` is never used [INFO] [stdout] --> src/scanner/mod.rs:1344:10 [INFO] [stdout] | [INFO] [stdout] 1344 | async fn get_unmatched_series_for_retry( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_unmatched_tracking` is never used [INFO] [stdout] --> src/scanner/mod.rs:1372:10 [INFO] [stdout] | [INFO] [stdout] 1372 | async fn clear_unmatched_tracking(pool: &SqlitePool, series_id: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `revoke_session` is never used [INFO] [stdout] --> src/services/auth.rs:173:14 [INFO] [stdout] | [INFO] [stdout] 173 | pub async fn revoke_session(pool: &SqlitePool, token: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `revoke_all_user_sessions` is never used [INFO] [stdout] --> src/services/auth.rs:183:14 [INFO] [stdout] | [INFO] [stdout] 183 | pub async fn revoke_all_user_sessions(pool: &SqlitePool, user_id: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_duration` is never used [INFO] [stdout] --> src/services/mediainfo.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | pub fn format_duration(ticks: i64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `image_cache_dir` is never read [INFO] [stdout] --> src/services/anidb.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct AniDBClient { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 24 | client: Client, [INFO] [stdout] 25 | image_cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AniDBAnime` is never constructed [INFO] [stdout] --> src/services/anidb.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct AniDBAnime { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title_romaji` and `rating` are never read [INFO] [stdout] --> src/services/anidb.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 47 | pub struct AniDBEpisode { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 51 | pub title_romaji: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub rating: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AniDBEpisode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `download_image` is never used [INFO] [stdout] --> src/services/anidb.rs:272:18 [INFO] [stdout] | [INFO] [stdout] 73 | impl AniDBClient { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 272 | pub async fn download_image( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `end_date`, `format`, and `status` are never read [INFO] [stdout] --> src/services/anilist.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct MediaData { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 50 | pub end_date: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 65 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MediaData` 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 `role` is never read [INFO] [stdout] --> src/services/anilist.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 110 | pub struct CharacterEdge { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 111 | pub node: Option, [INFO] [stdout] 112 | pub role: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharacterEdge` 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 `id` and `image` are never read [INFO] [stdout] --> src/services/anilist.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Character { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 119 | pub id: i64, [INFO] [stdout] | ^^ [INFO] [stdout] 120 | pub name: Option, [INFO] [stdout] 121 | pub image: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Character` 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 `native` is never read [INFO] [stdout] --> src/services/anilist.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 125 | pub struct CharacterName { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 126 | pub full: Option, [INFO] [stdout] 127 | pub native: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharacterName` 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 `large` and `medium` are never read [INFO] [stdout] --> src/services/anilist.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct CharacterImage { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 132 | pub large: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 133 | pub medium: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharacterImage` 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 `native` is never read [INFO] [stdout] --> src/services/anilist.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct StaffName { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 146 | pub full: Option, [INFO] [stdout] 147 | pub native: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StaffName` 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 `anime_type`, `episodes`, `status`, `picture`, `thumbnail`, and `tags` are never read [INFO] [stdout] --> src/services/anime_db.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct AnimeEntry { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | pub anime_type: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 26 | pub episodes: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 27 | pub status: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub picture: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 31 | pub thumbnail: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub tags: Vec, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnimeEntry` 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 `season` is never read [INFO] [stdout] --> src/services/anime_db.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct AnimeSeason { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 39 | pub season: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnimeSeason` 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 `find_by_anidb_id` and `find_by_mal_id` are never used [INFO] [stdout] --> src/services/anime_db.rs:319:18 [INFO] [stdout] | [INFO] [stdout] 106 | impl AnimeOfflineDatabase { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 319 | pub async fn find_by_anidb_id(&self, anidb_id: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | pub async fn find_by_mal_id(&self, mal_id: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pagination` is never read [INFO] [stdout] --> src/services/jikan.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct JikanSearchResponse { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 29 | pub data: Vec, [INFO] [stdout] 30 | pub pagination: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanSearchResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `last_visible_page` and `has_next_page` are never read [INFO] [stdout] --> src/services/jikan.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct JikanPagination { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 35 | pub last_visible_page: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | pub has_next_page: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanPagination` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/services/jikan.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct JikanAnime { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 41 | pub mal_id: i64, [INFO] [stdout] 42 | pub url: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub source: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub airing: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 54 | pub aired: Option, [INFO] [stdout] 55 | pub duration: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 56 | pub rating: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 57 | pub score: Option, [INFO] [stdout] 58 | pub scored_by: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 59 | pub rank: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 60 | pub popularity: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 61 | pub members: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 62 | pub favorites: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 63 | pub synopsis: Option, [INFO] [stdout] 64 | pub background: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 65 | pub season: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub demographics: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanAnime` 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 `small_image_url` is never read [INFO] [stdout] --> src/services/jikan.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct JikanImageSet { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 81 | pub image_url: Option, [INFO] [stdout] 82 | pub small_image_url: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanImageSet` 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 `to` and `string` are never read [INFO] [stdout] --> src/services/jikan.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 87 | pub struct JikanAired { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 88 | pub from: Option, [INFO] [stdout] 89 | pub to: Option, [INFO] [stdout] | ^^ [INFO] [stdout] 90 | pub string: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanAired` 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 `mal_id` is never read [INFO] [stdout] --> src/services/jikan.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct JikanStudio { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 95 | pub mal_id: i64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanStudio` 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 `mal_id` is never read [INFO] [stdout] --> src/services/jikan.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct JikanGenre { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 101 | pub mal_id: i64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanGenre` 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 `JikanAnimeFull` is never constructed [INFO] [stdout] --> src/services/jikan.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct JikanAnimeFull { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanRelation` is never constructed [INFO] [stdout] --> src/services/jikan.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | pub struct JikanRelation { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanRelationEntry` is never constructed [INFO] [stdout] --> src/services/jikan.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct JikanRelationEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanExternal` is never constructed [INFO] [stdout] --> src/services/jikan.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct JikanExternal { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanStreaming` is never constructed [INFO] [stdout] --> src/services/jikan.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | pub struct JikanStreaming { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `status` is never read [INFO] [stdout] --> src/services/jikan.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct JikanMetadata { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 159 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_anime_full` is never used [INFO] [stdout] --> src/services/jikan.rs:261:18 [INFO] [stdout] | [INFO] [stdout] 162 | impl JikanClient { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 261 | pub async fn get_anime_full(&self, mal_id: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name_original`, `episode_count`, and `runtime_minutes` are never read [INFO] [stdout] --> src/services/metadata.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct UnifiedMetadata { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub name_original: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub episode_count: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 27 | pub runtime_minutes: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnifiedMetadata` 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 `runtime_minutes` and `still_url` are never read [INFO] [stdout] --> src/services/metadata.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct EpisodeMetadata { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 63 | pub runtime_minutes: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 64 | pub still_url: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EpisodeMetadata` 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 `image_cache_dir` is never read [INFO] [stdout] --> src/services/metadata.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct MetadataService { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 73 | image_cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_available`, `get_smart_metadata`, `cache_images`, and `download_image` are never used [INFO] [stdout] --> src/services/metadata.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl MetadataService { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn is_available(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 687 | pub async fn get_smart_metadata( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 760 | pub async fn cache_images( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 785 | async fn download_image(&self, url: &str, item_id: &str, image_type: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TMDB_IMAGE_BASE` is never used [INFO] [stdout] --> src/services/tmdb.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const TMDB_IMAGE_BASE: &str = "https://image.tmdb.org/t/p"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `image_cache_dir` is never read [INFO] [stdout] --> src/services/tmdb.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct TmdbClient { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | image_cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `total_results` is never read [INFO] [stdout] --> src/services/tmdb.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct TvSearchResults { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 23 | pub results: Vec, [INFO] [stdout] 24 | pub total_results: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TvSearchResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `backdrop_path`, `vote_average`, and `vote_count` are never read [INFO] [stdout] --> src/services/tmdb.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct TvSearchResult { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 35 | pub backdrop_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 36 | pub vote_average: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 37 | pub vote_count: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TvSearchResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `total_results` is never read [INFO] [stdout] --> src/services/tmdb.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct MovieSearchResults { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 43 | pub results: Vec, [INFO] [stdout] 44 | pub total_results: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieSearchResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `backdrop_path`, `vote_average`, and `vote_count` are never read [INFO] [stdout] --> src/services/tmdb.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct MovieSearchResult { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 55 | pub backdrop_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 56 | pub vote_average: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 57 | pub vote_count: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieSearchResult` 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 `original_name`, `last_air_date`, `number_of_seasons`, `number_of_episodes`, and `status` are never read [INFO] [stdout] --> src/services/tmdb.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct TvDetails { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 65 | pub original_name: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub last_air_date: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub number_of_seasons: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 73 | pub number_of_episodes: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 74 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TvDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `original_title` and `status` are never read [INFO] [stdout] --> src/services/tmdb.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct MovieDetails { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | pub original_title: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `name`, `overview`, `poster_path`, `season_number`, and `air_date` are never read [INFO] [stdout] --> src/services/tmdb.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct SeasonDetails { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 101 | pub id: i64, [INFO] [stdout] | ^^ [INFO] [stdout] 102 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 103 | pub overview: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 104 | pub poster_path: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 105 | pub season_number: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 106 | pub air_date: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeasonDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `season_number` is never read [INFO] [stdout] --> src/services/tmdb.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 112 | pub struct EpisodeInfo { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 117 | pub season_number: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EpisodeInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `id` is never read [INFO] [stdout] --> src/services/tmdb.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 125 | pub struct Genre { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 126 | pub id: i64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `Genre` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tvdb_id` is never read [INFO] [stdout] --> src/services/tmdb.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct ExternalIds { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 132 | pub imdb_id: Option, [INFO] [stdout] 133 | pub tvdb_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExternalIds` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `order` is never read [INFO] [stdout] --> src/services/tmdb.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct CastMember { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 150 | pub order: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CastMember` 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 `department` is never read [INFO] [stdout] --> src/services/tmdb.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct CrewMember { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 159 | pub department: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CrewMember` 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: enum `ImageSize` is never used [INFO] [stdout] --> src/services/tmdb.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | pub enum ImageSize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/services/tmdb.rs:210:8 [INFO] [stdout] | [INFO] [stdout] 209 | impl ImageSize { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 210 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `download_image` and `cache_item_images` are never used [INFO] [stdout] --> src/services/tmdb.rs:361:18 [INFO] [stdout] | [INFO] [stdout] 223 | impl TmdbClient { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 361 | pub async fn download_image( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 671 | pub async fn cache_item_images( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 10s [INFO] running `Command { std: "docker" "inspect" "9d454472d54d5969d824f282b4290ea47c9f2a82ca4de43836991ca84559daa8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9d454472d54d5969d824f282b4290ea47c9f2a82ca4de43836991ca84559daa8", kill_on_drop: false }` [INFO] [stdout] 9d454472d54d5969d824f282b4290ea47c9f2a82ca4de43836991ca84559daa8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2f4100d47793318dfe82f78711e10c47db23525d1a5ab71746d64c8ade3505c0 [INFO] running `Command { std: "docker" "start" "-a" "2f4100d47793318dfe82f78711e10c47db23525d1a5ab71746d64c8ade3505c0", kill_on_drop: false }` [INFO] [stderr] Compiling jellyfin-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `response::IntoResponse` [INFO] [stdout] --> src/api/favorites.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | response::IntoResponse, [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: `ImageTags` [INFO] [stdout] --> src/api/filters.rs:14:33 [INFO] [stdout] | [INFO] [stdout] 14 | use super::items::{BaseItemDto, ImageTags, UserItemDataDto}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_user_item_data` [INFO] [stdout] --> src/api/home.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use super::items::{get_user_item_data, BaseItemDto, ImageTags, ItemsResponse, UserItemDataDto}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ImageTags` [INFO] [stdout] --> src/api/sessions.rs:14:33 [INFO] [stdout] | [INFO] [stdout] 14 | use super::items::{BaseItemDto, ImageTags, UserItemDataDto}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serialize` [INFO] [stdout] --> src/api/shows.rs:9:26 [INFO] [stdout] | [INFO] [stdout] 9 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/api/system.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DateTime` and `Utc` [INFO] [stdout] --> src/models/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use chrono::{DateTime, Utc}; [INFO] [stdout] | ^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/models/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/services/anidb.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Serialize` [INFO] [stdout] --> src/services/tmdb.rs:6:26 [INFO] [stdout] | [INFO] [stdout] 6 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `item` [INFO] [stdout] --> src/api/items.rs:2793:9 [INFO] [stdout] | [INFO] [stdout] 2793 | let item: MediaItem = sqlx::query_as("SELECT * FROM media_items WHERE id = ?") [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_item` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> src/api/library.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | body: Option>, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_body` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/api/subtitles.rs:600:5 [INFO] [stdout] | [INFO] [stdout] 600 | state: &AppState, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `year` [INFO] [stdout] --> src/services/anilist.rs:422:68 [INFO] [stdout] | [INFO] [stdout] 422 | fn is_title_match(&self, query_clean: &str, media: &MediaData, year: Option) -> bool { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_year` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/collections.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct CollectionsQuery { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 31 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CollectionsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `parent_id` and `is_locked` are never read [INFO] [stdout] --> src/api/collections.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct CreateCollectionRequest { [INFO] [stdout] | ----------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 41 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 42 | pub is_locked: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CreateCollectionRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_favorite` is never used [INFO] [stdout] --> src/api/favorites.rs:146:14 [INFO] [stdout] | [INFO] [stdout] 146 | pub async fn is_favorite(pool: &sqlx::SqlitePool, user_id: &str, item_id: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `is_favorite`, and `sort_by` are never read [INFO] [stdout] --> src/api/filters.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct FilterQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 36 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | pub is_favorite: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 38 | pub sort_by: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FilterQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `fields`, `image_type_limit`, and `enable_image_types` are never read [INFO] [stdout] --> src/api/home.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct LatestQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 66 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 67 | pub image_type_limit: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 68 | pub enable_image_types: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LatestQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/home.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct ResumeQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 86 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 87 | pub limit: Option, [INFO] [stdout] 88 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 89 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 90 | pub media_types: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 91 | pub enable_image_types: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 92 | pub enable_total_record_count: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 93 | pub enable_user_data: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResumeQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/home.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 114 | pub struct NextUpQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 115 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 116 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 117 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 118 | pub limit: Option, [INFO] [stdout] 119 | pub image_type_limit: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 120 | pub next_up_date_cutoff: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 121 | pub disable_first_episode: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 122 | pub enable_resumable: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 123 | pub enable_rewatching: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NextUpQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/images.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct ImageQuery { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 157 | pub max_width: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 158 | pub max_height: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 159 | pub width: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 160 | pub height: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 161 | pub quality: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 162 | pub fill_width: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 163 | pub fill_height: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 164 | pub tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImageQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/api/images.rs:182:5 [INFO] [stdout] | [INFO] [stdout] 177 | pub struct ImagePathIndexed { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 182 | index: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImagePathIndexed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_image` is never used [INFO] [stdout] --> src/api/images.rs:355:14 [INFO] [stdout] | [INFO] [stdout] 355 | pub async fn store_image( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/items.rs:387:9 [INFO] [stdout] | [INFO] [stdout] 386 | pub struct FiltersQuery { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 387 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 388 | pub parent_id: Option, [INFO] [stdout] 389 | pub include_item_types: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 390 | pub is_airing: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 391 | pub is_movie: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 392 | pub is_sports: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 393 | pub is_kids: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 394 | pub is_news: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 395 | pub is_series: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 396 | pub recursive: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FiltersQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `exclude_item_types`, `fields`, `genres`, `genre_ids`, and `media_types` are never read [INFO] [stdout] --> src/api/items.rs:634:9 [INFO] [stdout] | [INFO] [stdout] 631 | pub struct GetItemsQuery { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 634 | pub exclude_item_types: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 640 | pub fields: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 645 | pub genres: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 646 | pub genre_ids: Option>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 647 | pub media_types: Option>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GetItemsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/items.rs:1651:9 [INFO] [stdout] | [INFO] [stdout] 1646 | pub struct SearchHintsQuery { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 1651 | pub media_types: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 1652 | pub is_movie: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1653 | pub is_series: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1654 | pub is_news: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 1655 | pub is_kids: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 1656 | pub is_sports: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1657 | #[serde(rename = "userId")] [INFO] [stdout] 1658 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SearchHintsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `regenerate_trickplay` is never read [INFO] [stdout] --> src/api/items.rs:1978:9 [INFO] [stdout] | [INFO] [stdout] 1968 | pub struct RefreshQuery { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 1978 | pub regenerate_trickplay: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RefreshQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_index`, `limit`, and `include_all_languages` are never read [INFO] [stdout] --> src/api/items.rs:2563:9 [INFO] [stdout] | [INFO] [stdout] 2560 | pub struct RemoteImagesQuery { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 2563 | pub start_index: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 2564 | pub limit: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 2565 | pub include_all_languages: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RemoteImagesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `include_disabled_providers` is never read [INFO] [stdout] --> src/api/items.rs:3141:9 [INFO] [stdout] | [INFO] [stdout] 3136 | pub struct SeriesInfoRemoteSearchQuery { [INFO] [stdout] | --------------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3141 | pub include_disabled_providers: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeriesInfoRemoteSearchQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `provider_ids` is never read [INFO] [stdout] --> src/api/items.rs:3149:9 [INFO] [stdout] | [INFO] [stdout] 3146 | pub struct SeriesSearchInfo { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3149 | pub provider_ids: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeriesSearchInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `include_disabled_providers` is never read [INFO] [stdout] --> src/api/items.rs:3159:9 [INFO] [stdout] | [INFO] [stdout] 3154 | pub struct MovieInfoRemoteSearchQuery { [INFO] [stdout] | -------------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3159 | pub include_disabled_providers: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieInfoRemoteSearchQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `provider_ids` is never read [INFO] [stdout] --> src/api/items.rs:3167:9 [INFO] [stdout] | [INFO] [stdout] 3164 | pub struct MovieSearchInfo { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 3167 | pub provider_ids: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieSearchInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `library_options` is never read [INFO] [stdout] --> src/api/library.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 92 | pub struct AddVirtualFolderBody { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] 93 | pub library_options: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AddVirtualFolderBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `library_options` are never read [INFO] [stdout] --> src/api/library.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 247 | pub struct UpdateLibraryOptionsRequest { [INFO] [stdout] | --------------------------- fields in this struct [INFO] [stdout] 248 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] 249 | pub library_options: LibraryOptions, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UpdateLibraryOptionsRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `parent_id`, and `fields` are never read [INFO] [stdout] --> src/api/movies.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct RecommendationsQuery { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 24 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 25 | pub parent_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 26 | pub fields: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RecommendationsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `person_types` and `user_id` are never read [INFO] [stdout] --> src/api/persons.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct PersonsQuery { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 33 | pub search_term: Option, [INFO] [stdout] 34 | pub person_types: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PersonsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `image_type` is never read [INFO] [stdout] --> src/api/persons.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub struct PersonImagePath { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 221 | image_type: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PersonImagePath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `max_width`, `max_height`, and `tag` are never read [INFO] [stdout] --> src/api/persons.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 235 | pub struct ImageQuery { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 236 | pub max_width: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 237 | pub max_height: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 238 | pub tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImageQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `media_source_id`, `audio_stream_index`, `subtitle_stream_index`, `play_method`, and `play_session_id` are never read [INFO] [stdout] --> src/api/playback.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct PlaybackStartInfo { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 50 | pub audio_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 51 | pub subtitle_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 52 | pub play_method: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 53 | pub play_session_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackStartInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `is_muted`, `volume_level`, `play_method`, `play_session_id`, and `repeat_mode` are never read [INFO] [stdout] --> src/api/playback.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct PlaybackProgressInfo { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 63 | pub is_muted: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 64 | pub volume_level: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 65 | pub play_method: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 66 | pub play_session_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 67 | pub repeat_mode: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackProgressInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `media_source_id` and `play_session_id` are never read [INFO] [stdout] --> src/api/playback.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct PlaybackStopInfo { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 76 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 77 | pub play_session_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackStopInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_playback_progress` is never used [INFO] [stdout] --> src/api/playback.rs:433:14 [INFO] [stdout] | [INFO] [stdout] 433 | pub async fn get_playback_progress( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/api/playbackinfo.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct PlaybackInfoQuery { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 29 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 30 | pub max_streaming_bitrate: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 31 | pub start_time_ticks: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 32 | pub audio_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 33 | pub subtitle_stream_index: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 34 | pub max_audio_channels: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | pub live_stream_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 37 | pub auto_open_live_stream: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 38 | pub enable_direct_play: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 39 | pub enable_direct_stream: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 40 | pub enable_transcoding: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 41 | pub allow_video_stream_copy: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | pub allow_audio_stream_copy: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackInfoQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/playlists.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct PlaylistsQuery { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 29 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaylistsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/playlists.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct CreatePlaylistRequest { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 39 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CreatePlaylistRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_id` is never read [INFO] [stdout] --> src/api/playlists.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 64 | struct PlaylistRow { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 67 | user_id: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaylistRow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/api/segments.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl MediaSegmentType { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 34 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_edl_file` is never used [INFO] [stdout] --> src/api/segments.rs:235:14 [INFO] [stdout] | [INFO] [stdout] 235 | pub async fn import_edl_file( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_intro` is never used [INFO] [stdout] --> src/api/segments.rs:283:14 [INFO] [stdout] | [INFO] [stdout] 283 | pub async fn has_intro(pool: &sqlx::SqlitePool, item_id: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_intro` is never used [INFO] [stdout] --> src/api/segments.rs:296:14 [INFO] [stdout] | [INFO] [stdout] 296 | pub async fn get_intro(pool: &sqlx::SqlitePool, item_id: &str) -> Option<(i64, i64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_outro` is never used [INFO] [stdout] --> src/api/segments.rs:310:14 [INFO] [stdout] | [INFO] [stdout] 310 | pub async fn get_outro(pool: &sqlx::SqlitePool, item_id: &str) -> Option<(i64, i64)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `controlling_user_id` is never read [INFO] [stdout] --> src/api/sessions.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct PlaybackCommandBody { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 74 | pub seek_position_ticks: Option, [INFO] [stdout] 75 | pub controlling_user_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlaybackCommandBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `timeout_ms` is never read [INFO] [stdout] --> src/api/sessions.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct MessageBody { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 83 | pub timeout_ms: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MessageBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `play_state` is never read [INFO] [stdout] --> src/api/sessions.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 87 | struct SessionRow { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 100 | play_state: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SessionRow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `fields`, `is_special_season`, `is_missing`, and `adjacent_to` are never read [INFO] [stdout] --> src/api/shows.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct SeasonsQuery { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 26 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 27 | pub fields: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | pub is_special_season: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 29 | pub is_missing: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 30 | pub adjacent_to: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeasonsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `fields`, `is_missing`, `adjacent_to`, and `start_item_id` are never read [INFO] [stdout] --> src/api/shows.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct EpisodesQuery { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 36 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | pub fields: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub is_missing: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 41 | pub adjacent_to: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub start_item_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EpisodesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `is_perfect_match` and `is_forced` are never read [INFO] [stdout] --> src/api/subtitles.rs:357:9 [INFO] [stdout] | [INFO] [stdout] 356 | pub struct SearchSubtitlesQuery { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 357 | pub is_perfect_match: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 358 | pub is_forced: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SearchSubtitlesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `static_stream`, `media_source_id`, `device_id`, `audio_codec`, `video_codec`, and `container` are never read [INFO] [stdout] --> src/api/videos.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct StreamQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 37 | pub static_stream: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 38 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 39 | pub device_id: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 40 | pub audio_codec: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 41 | pub video_codec: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 42 | pub container: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StreamQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `container` is never read [INFO] [stdout] --> src/api/videos.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 230 | pub struct VideoPath { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 233 | container: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VideoPath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `media_source_id` is never read [INFO] [stdout] --> src/api/videos.rs:256:9 [INFO] [stdout] | [INFO] [stdout] 255 | pub struct TrickplayQuery { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 256 | pub media_source_id: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrickplayQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `include_external_content`, and `include_hidden` are never read [INFO] [stdout] --> src/api/views.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct UserViewsQuery { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 23 | pub user_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 24 | pub include_external_content: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 25 | pub include_hidden: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UserViewsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_connection` is never used [INFO] [stdout] --> src/db/mod.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub async fn configure_connection(pool: &SqlitePool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `optimize` is never used [INFO] [stdout] --> src/db/mod.rs:492:14 [INFO] [stdout] | [INFO] [stdout] 492 | pub async fn optimize(pool: &SqlitePool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pending_image_count` is never used [INFO] [stdout] --> src/db/mod.rs:581:14 [INFO] [stdout] | [INFO] [stdout] 581 | pub async fn get_pending_image_count(pool: &SqlitePool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attempts` is never read [INFO] [stdout] --> src/db/mod.rs:594:9 [INFO] [stdout] | [INFO] [stdout] 589 | pub struct PendingImage { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 594 | pub attempts: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PendingImage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pending_thumbnail_count` is never used [INFO] [stdout] --> src/db/mod.rs:674:14 [INFO] [stdout] | [INFO] [stdout] 674 | pub async fn get_pending_thumbnail_count(pool: &SqlitePool) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attempts` is never read [INFO] [stdout] --> src/db/mod.rs:731:9 [INFO] [stdout] | [INFO] [stdout] 727 | pub struct PendingThumbnail { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 731 | pub attempts: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PendingThumbnail` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `update_fts_item` is never used [INFO] [stdout] --> src/db/mod.rs:793:14 [INFO] [stdout] | [INFO] [stdout] 793 | pub async fn update_fts_item(pool: &SqlitePool, item_id: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `search_items_fts` is never used [INFO] [stdout] --> src/db/mod.rs:824:14 [INFO] [stdout] | [INFO] [stdout] 824 | pub async fn search_items_fts(pool: &SqlitePool, query: &str, limit: i32) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `prepare_fts_query` is never used [INFO] [stdout] --> src/db/mod.rs:853:4 [INFO] [stdout] | [INFO] [stdout] 853 | fn prepare_fts_query(query: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LibraryType` is never used [INFO] [stdout] --> src/models/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | pub enum LibraryType { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ItemType` is never used [INFO] [stdout] --> src/models/mod.rs:70:10 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum ItemType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Image` is never constructed [INFO] [stdout] --> src/models/mod.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Image { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ImageType` is never used [INFO] [stdout] --> src/models/mod.rs:89:10 [INFO] [stdout] | [INFO] [stdout] 89 | pub enum ImageType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlaybackProgress` is never constructed [INFO] [stdout] --> src/models/mod.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct PlaybackProgress { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DB_BATCH_SIZE` is never used [INFO] [stdout] --> src/scanner/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const DB_BATCH_SIZE: usize = 50; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DiscoveredEpisode` is never constructed [INFO] [stdout] --> src/scanner/mod.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | struct DiscoveredEpisode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DiscoveredMovie` is never constructed [INFO] [stdout] --> src/scanner/mod.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct DiscoveredMovie { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `scan_library` is never used [INFO] [stdout] --> src/scanner/mod.rs:344:14 [INFO] [stdout] | [INFO] [stdout] 344 | pub async fn scan_library( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `by_path` is never read [INFO] [stdout] --> src/scanner/mod.rs:500:5 [INFO] [stdout] | [INFO] [stdout] 498 | struct SeriesCache { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 499 | /// Map of folder path -> (series_id, metadata) [INFO] [stdout] 500 | by_path: std::collections::HashMap)>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeriesCache` 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: function `scan_tv_library` is never used [INFO] [stdout] --> src/scanner/mod.rs:696:10 [INFO] [stdout] | [INFO] [stdout] 696 | async fn scan_tv_library( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_unmatched_series_for_retry` is never used [INFO] [stdout] --> src/scanner/mod.rs:1344:10 [INFO] [stdout] | [INFO] [stdout] 1344 | async fn get_unmatched_series_for_retry( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_unmatched_tracking` is never used [INFO] [stdout] --> src/scanner/mod.rs:1372:10 [INFO] [stdout] | [INFO] [stdout] 1372 | async fn clear_unmatched_tracking(pool: &SqlitePool, series_id: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `revoke_session` is never used [INFO] [stdout] --> src/services/auth.rs:173:14 [INFO] [stdout] | [INFO] [stdout] 173 | pub async fn revoke_session(pool: &SqlitePool, token: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `revoke_all_user_sessions` is never used [INFO] [stdout] --> src/services/auth.rs:183:14 [INFO] [stdout] | [INFO] [stdout] 183 | pub async fn revoke_all_user_sessions(pool: &SqlitePool, user_id: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `image_cache_dir` is never read [INFO] [stdout] --> src/services/anidb.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct AniDBClient { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 24 | client: Client, [INFO] [stdout] 25 | image_cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AniDBAnime` is never constructed [INFO] [stdout] --> src/services/anidb.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct AniDBAnime { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title_romaji` and `rating` are never read [INFO] [stdout] --> src/services/anidb.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 47 | pub struct AniDBEpisode { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 51 | pub title_romaji: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub rating: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AniDBEpisode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `download_image` is never used [INFO] [stdout] --> src/services/anidb.rs:272:18 [INFO] [stdout] | [INFO] [stdout] 73 | impl AniDBClient { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 272 | pub async fn download_image( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `end_date`, `format`, and `status` are never read [INFO] [stdout] --> src/services/anilist.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct MediaData { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 50 | pub end_date: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub format: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 65 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MediaData` 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 `role` is never read [INFO] [stdout] --> src/services/anilist.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 110 | pub struct CharacterEdge { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 111 | pub node: Option, [INFO] [stdout] 112 | pub role: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharacterEdge` 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 `id` and `image` are never read [INFO] [stdout] --> src/services/anilist.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Character { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 119 | pub id: i64, [INFO] [stdout] | ^^ [INFO] [stdout] 120 | pub name: Option, [INFO] [stdout] 121 | pub image: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Character` 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 `native` is never read [INFO] [stdout] --> src/services/anilist.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 125 | pub struct CharacterName { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 126 | pub full: Option, [INFO] [stdout] 127 | pub native: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharacterName` 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 `large` and `medium` are never read [INFO] [stdout] --> src/services/anilist.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct CharacterImage { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 132 | pub large: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 133 | pub medium: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CharacterImage` 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 `native` is never read [INFO] [stdout] --> src/services/anilist.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct StaffName { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 146 | pub full: Option, [INFO] [stdout] 147 | pub native: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StaffName` 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 `anime_type`, `episodes`, `status`, `picture`, `thumbnail`, and `tags` are never read [INFO] [stdout] --> src/services/anime_db.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct AnimeEntry { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | pub anime_type: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 26 | pub episodes: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 27 | pub status: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub picture: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 31 | pub thumbnail: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub tags: Vec, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnimeEntry` 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 `season` is never read [INFO] [stdout] --> src/services/anime_db.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct AnimeSeason { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 39 | pub season: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnimeSeason` 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 `find_by_anidb_id` and `find_by_mal_id` are never used [INFO] [stdout] --> src/services/anime_db.rs:319:18 [INFO] [stdout] | [INFO] [stdout] 106 | impl AnimeOfflineDatabase { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 319 | pub async fn find_by_anidb_id(&self, anidb_id: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | pub async fn find_by_mal_id(&self, mal_id: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pagination` is never read [INFO] [stdout] --> src/services/jikan.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct JikanSearchResponse { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 29 | pub data: Vec, [INFO] [stdout] 30 | pub pagination: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanSearchResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `last_visible_page` and `has_next_page` are never read [INFO] [stdout] --> src/services/jikan.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct JikanPagination { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 35 | pub last_visible_page: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | pub has_next_page: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanPagination` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/services/jikan.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct JikanAnime { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 41 | pub mal_id: i64, [INFO] [stdout] 42 | pub url: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub source: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub airing: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 54 | pub aired: Option, [INFO] [stdout] 55 | pub duration: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 56 | pub rating: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 57 | pub score: Option, [INFO] [stdout] 58 | pub scored_by: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 59 | pub rank: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 60 | pub popularity: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 61 | pub members: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 62 | pub favorites: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 63 | pub synopsis: Option, [INFO] [stdout] 64 | pub background: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 65 | pub season: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub demographics: Option>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanAnime` 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 `small_image_url` is never read [INFO] [stdout] --> src/services/jikan.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct JikanImageSet { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 81 | pub image_url: Option, [INFO] [stdout] 82 | pub small_image_url: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanImageSet` 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 `to` and `string` are never read [INFO] [stdout] --> src/services/jikan.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 87 | pub struct JikanAired { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 88 | pub from: Option, [INFO] [stdout] 89 | pub to: Option, [INFO] [stdout] | ^^ [INFO] [stdout] 90 | pub string: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanAired` 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 `mal_id` is never read [INFO] [stdout] --> src/services/jikan.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct JikanStudio { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 95 | pub mal_id: i64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanStudio` 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 `mal_id` is never read [INFO] [stdout] --> src/services/jikan.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct JikanGenre { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 101 | pub mal_id: i64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanGenre` 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 `JikanAnimeFull` is never constructed [INFO] [stdout] --> src/services/jikan.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct JikanAnimeFull { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanRelation` is never constructed [INFO] [stdout] --> src/services/jikan.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | pub struct JikanRelation { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanRelationEntry` is never constructed [INFO] [stdout] --> src/services/jikan.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct JikanRelationEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanExternal` is never constructed [INFO] [stdout] --> src/services/jikan.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct JikanExternal { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JikanStreaming` is never constructed [INFO] [stdout] --> src/services/jikan.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | pub struct JikanStreaming { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `status` is never read [INFO] [stdout] --> src/services/jikan.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct JikanMetadata { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 159 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JikanMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_anime_full` is never used [INFO] [stdout] --> src/services/jikan.rs:261:18 [INFO] [stdout] | [INFO] [stdout] 162 | impl JikanClient { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 261 | pub async fn get_anime_full(&self, mal_id: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name_original`, `episode_count`, and `runtime_minutes` are never read [INFO] [stdout] --> src/services/metadata.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct UnifiedMetadata { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | pub name_original: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub episode_count: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 27 | pub runtime_minutes: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnifiedMetadata` 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 `runtime_minutes` and `still_url` are never read [INFO] [stdout] --> src/services/metadata.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct EpisodeMetadata { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 63 | pub runtime_minutes: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 64 | pub still_url: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EpisodeMetadata` 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 `image_cache_dir` is never read [INFO] [stdout] --> src/services/metadata.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct MetadataService { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 73 | image_cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_available`, `get_smart_metadata`, `cache_images`, and `download_image` are never used [INFO] [stdout] --> src/services/metadata.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl MetadataService { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn is_available(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 687 | pub async fn get_smart_metadata( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 760 | pub async fn cache_images( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 785 | async fn download_image(&self, url: &str, item_id: &str, image_type: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TMDB_IMAGE_BASE` is never used [INFO] [stdout] --> src/services/tmdb.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const TMDB_IMAGE_BASE: &str = "https://image.tmdb.org/t/p"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `image_cache_dir` is never read [INFO] [stdout] --> src/services/tmdb.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct TmdbClient { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | image_cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `total_results` is never read [INFO] [stdout] --> src/services/tmdb.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct TvSearchResults { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 23 | pub results: Vec, [INFO] [stdout] 24 | pub total_results: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TvSearchResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `backdrop_path`, `vote_average`, and `vote_count` are never read [INFO] [stdout] --> src/services/tmdb.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct TvSearchResult { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 35 | pub backdrop_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 36 | pub vote_average: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 37 | pub vote_count: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TvSearchResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `total_results` is never read [INFO] [stdout] --> src/services/tmdb.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct MovieSearchResults { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 43 | pub results: Vec, [INFO] [stdout] 44 | pub total_results: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieSearchResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `backdrop_path`, `vote_average`, and `vote_count` are never read [INFO] [stdout] --> src/services/tmdb.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct MovieSearchResult { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 55 | pub backdrop_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 56 | pub vote_average: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 57 | pub vote_count: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieSearchResult` 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 `original_name`, `last_air_date`, `number_of_seasons`, `number_of_episodes`, and `status` are never read [INFO] [stdout] --> src/services/tmdb.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct TvDetails { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 65 | pub original_name: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub last_air_date: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub number_of_seasons: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 73 | pub number_of_episodes: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 74 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TvDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `original_title` and `status` are never read [INFO] [stdout] --> src/services/tmdb.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct MovieDetails { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | pub original_title: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub status: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `name`, `overview`, `poster_path`, `season_number`, and `air_date` are never read [INFO] [stdout] --> src/services/tmdb.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct SeasonDetails { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 101 | pub id: i64, [INFO] [stdout] | ^^ [INFO] [stdout] 102 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 103 | pub overview: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 104 | pub poster_path: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 105 | pub season_number: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 106 | pub air_date: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SeasonDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `season_number` is never read [INFO] [stdout] --> src/services/tmdb.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 112 | pub struct EpisodeInfo { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 117 | pub season_number: i32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EpisodeInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `id` is never read [INFO] [stdout] --> src/services/tmdb.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 125 | pub struct Genre { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 126 | pub id: i64, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `Genre` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tvdb_id` is never read [INFO] [stdout] --> src/services/tmdb.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct ExternalIds { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 132 | pub imdb_id: Option, [INFO] [stdout] 133 | pub tvdb_id: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExternalIds` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `order` is never read [INFO] [stdout] --> src/services/tmdb.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct CastMember { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 150 | pub order: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CastMember` 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 `department` is never read [INFO] [stdout] --> src/services/tmdb.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct CrewMember { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 159 | pub department: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CrewMember` 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: variants `PosterSmall`, `PosterMedium`, `PosterOriginal`, `Backdrop`, and `BackdropOriginal` are never constructed [INFO] [stdout] --> src/services/tmdb.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 192 | pub enum ImageSize { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 193 | /// w185 - small poster [INFO] [stdout] 194 | PosterSmall, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 195 | /// w342 - medium poster [INFO] [stdout] 196 | PosterMedium, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | PosterOriginal, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 201 | /// w780 - backdrop [INFO] [stdout] 202 | Backdrop, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | BackdropOriginal, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImageSize` 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 `download_image` and `cache_item_images` are never used [INFO] [stdout] --> src/services/tmdb.rs:361:18 [INFO] [stdout] | [INFO] [stdout] 223 | impl TmdbClient { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 361 | pub async fn download_image( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 671 | pub async fn cache_item_images( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 26.23s [INFO] running `Command { std: "docker" "inspect" "2f4100d47793318dfe82f78711e10c47db23525d1a5ab71746d64c8ade3505c0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2f4100d47793318dfe82f78711e10c47db23525d1a5ab71746d64c8ade3505c0", kill_on_drop: false }` [INFO] [stdout] 2f4100d47793318dfe82f78711e10c47db23525d1a5ab71746d64c8ade3505c0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 9db20c84aa90e4f00bfadc69fe9cbc62f460b09af785c74f62ec7639bbeddd29 [INFO] running `Command { std: "docker" "start" "-a" "9db20c84aa90e4f00bfadc69fe9cbc62f460b09af785c74f62ec7639bbeddd29", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `response::IntoResponse` [INFO] [stderr] --> src/api/favorites.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | response::IntoResponse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ImageTags` [INFO] [stderr] --> src/api/filters.rs:14:33 [INFO] [stderr] | [INFO] [stderr] 14 | use super::items::{BaseItemDto, ImageTags, UserItemDataDto}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `get_user_item_data` [INFO] [stderr] --> src/api/home.rs:13:20 [INFO] [stderr] | [INFO] [stderr] 13 | use super::items::{get_user_item_data, BaseItemDto, ImageTags, ItemsResponse, UserItemDataDto}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ImageTags` [INFO] [stderr] --> src/api/sessions.rs:14:33 [INFO] [stderr] | [INFO] [stderr] 14 | use super::items::{BaseItemDto, ImageTags, UserItemDataDto}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Serialize` [INFO] [stderr] --> src/api/shows.rs:9:26 [INFO] [stderr] | [INFO] [stderr] 9 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Deserialize` [INFO] [stderr] --> src/api/system.rs:7:13 [INFO] [stderr] | [INFO] [stderr] 7 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DateTime` and `Utc` [INFO] [stderr] --> src/models/mod.rs:1:14 [INFO] [stderr] | [INFO] [stderr] 1 | use chrono::{DateTime, Utc}; [INFO] [stderr] | ^^^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `uuid::Uuid` [INFO] [stderr] --> src/models/mod.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use uuid::Uuid; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Deserialize` [INFO] [stderr] --> src/services/anidb.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use serde::Deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Serialize` [INFO] [stderr] --> src/services/tmdb.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `item` [INFO] [stderr] --> src/api/items.rs:2793:9 [INFO] [stderr] | [INFO] [stderr] 2793 | let item: MediaItem = sqlx::query_as("SELECT * FROM media_items WHERE id = ?") [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_item` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `body` [INFO] [stderr] --> src/api/library.rs:152:5 [INFO] [stderr] | [INFO] [stderr] 152 | body: Option>, [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_body` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `state` [INFO] [stderr] --> src/api/subtitles.rs:600:5 [INFO] [stderr] | [INFO] [stderr] 600 | state: &AppState, [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `year` [INFO] [stderr] --> src/services/anilist.rs:422:68 [INFO] [stderr] | [INFO] [stderr] 422 | fn is_title_match(&self, query_clean: &str, media: &MediaData, year: Option) -> bool { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_year` [INFO] [stderr] [INFO] [stderr] warning: field `user_id` is never read [INFO] [stderr] --> src/api/collections.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 30 | pub struct CollectionsQuery { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] 31 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CollectionsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: fields `parent_id` and `is_locked` are never read [INFO] [stderr] --> src/api/collections.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 38 | pub struct CreateCollectionRequest { [INFO] [stderr] | ----------------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 41 | pub parent_id: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 42 | pub is_locked: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CreateCollectionRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `is_favorite` is never used [INFO] [stderr] --> src/api/favorites.rs:146:14 [INFO] [stderr] | [INFO] [stderr] 146 | pub async fn is_favorite(pool: &sqlx::SqlitePool, user_id: &str, item_id: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `user_id`, `is_favorite`, and `sort_by` are never read [INFO] [stderr] --> src/api/filters.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 31 | pub struct FilterQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 36 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 37 | pub is_favorite: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 38 | pub sort_by: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FilterQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `fields`, `image_type_limit`, and `enable_image_types` are never read [INFO] [stderr] --> src/api/home.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 63 | pub struct LatestQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 66 | pub fields: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 67 | pub image_type_limit: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 68 | pub enable_image_types: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `LatestQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/api/home.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 85 | pub struct ResumeQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 86 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 87 | pub limit: Option, [INFO] [stderr] 88 | pub parent_id: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 89 | pub fields: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 90 | pub media_types: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 91 | pub enable_image_types: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 92 | pub enable_total_record_count: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 93 | pub enable_user_data: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ResumeQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/api/home.rs:115:9 [INFO] [stderr] | [INFO] [stderr] 114 | pub struct NextUpQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 115 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 116 | pub parent_id: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 117 | pub fields: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 118 | pub limit: Option, [INFO] [stderr] 119 | pub image_type_limit: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 120 | pub next_up_date_cutoff: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 121 | pub disable_first_episode: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 122 | pub enable_resumable: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 123 | pub enable_rewatching: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `NextUpQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/api/images.rs:157:9 [INFO] [stderr] | [INFO] [stderr] 156 | pub struct ImageQuery { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 157 | pub max_width: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 158 | pub max_height: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 159 | pub width: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 160 | pub height: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 161 | pub quality: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 162 | pub fill_width: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 163 | pub fill_height: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 164 | pub tag: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ImageQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `index` is never read [INFO] [stderr] --> src/api/images.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 177 | pub struct ImagePathIndexed { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 182 | index: u32, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ImagePathIndexed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `store_image` is never used [INFO] [stderr] --> src/api/images.rs:355:14 [INFO] [stderr] | [INFO] [stderr] 355 | pub async fn store_image( [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/api/items.rs:387:9 [INFO] [stderr] | [INFO] [stderr] 386 | pub struct FiltersQuery { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 387 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 388 | pub parent_id: Option, [INFO] [stderr] 389 | pub include_item_types: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 390 | pub is_airing: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 391 | pub is_movie: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 392 | pub is_sports: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 393 | pub is_kids: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 394 | pub is_news: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 395 | pub is_series: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 396 | pub recursive: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FiltersQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `exclude_item_types`, `fields`, `genres`, `genre_ids`, and `media_types` are never read [INFO] [stderr] --> src/api/items.rs:634:9 [INFO] [stderr] | [INFO] [stderr] 631 | pub struct GetItemsQuery { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 634 | pub exclude_item_types: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 640 | pub fields: Option>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 645 | pub genres: Option>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 646 | pub genre_ids: Option>, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 647 | pub media_types: Option>, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GetItemsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/api/items.rs:1651:9 [INFO] [stderr] | [INFO] [stderr] 1646 | pub struct SearchHintsQuery { [INFO] [stderr] | ---------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 1651 | pub media_types: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 1652 | pub is_movie: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 1653 | pub is_series: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 1654 | pub is_news: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 1655 | pub is_kids: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 1656 | pub is_sports: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 1657 | #[serde(rename = "userId")] [INFO] [stderr] 1658 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SearchHintsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `regenerate_trickplay` is never read [INFO] [stderr] --> src/api/items.rs:1978:9 [INFO] [stderr] | [INFO] [stderr] 1968 | pub struct RefreshQuery { [INFO] [stderr] | ------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 1978 | pub regenerate_trickplay: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RefreshQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `start_index`, `limit`, and `include_all_languages` are never read [INFO] [stderr] --> src/api/items.rs:2563:9 [INFO] [stderr] | [INFO] [stderr] 2560 | pub struct RemoteImagesQuery { [INFO] [stderr] | ----------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 2563 | pub start_index: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 2564 | pub limit: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 2565 | pub include_all_languages: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RemoteImagesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `include_disabled_providers` is never read [INFO] [stderr] --> src/api/items.rs:3141:9 [INFO] [stderr] | [INFO] [stderr] 3136 | pub struct SeriesInfoRemoteSearchQuery { [INFO] [stderr] | --------------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 3141 | pub include_disabled_providers: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SeriesInfoRemoteSearchQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `provider_ids` is never read [INFO] [stderr] --> src/api/items.rs:3149:9 [INFO] [stderr] | [INFO] [stderr] 3146 | pub struct SeriesSearchInfo { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 3149 | pub provider_ids: Option>, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SeriesSearchInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `include_disabled_providers` is never read [INFO] [stderr] --> src/api/items.rs:3159:9 [INFO] [stderr] | [INFO] [stderr] 3154 | pub struct MovieInfoRemoteSearchQuery { [INFO] [stderr] | -------------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 3159 | pub include_disabled_providers: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MovieInfoRemoteSearchQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `provider_ids` is never read [INFO] [stderr] --> src/api/items.rs:3167:9 [INFO] [stderr] | [INFO] [stderr] 3164 | pub struct MovieSearchInfo { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 3167 | pub provider_ids: Option>, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MovieSearchInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `library_options` is never read [INFO] [stderr] --> src/api/library.rs:93:9 [INFO] [stderr] | [INFO] [stderr] 92 | pub struct AddVirtualFolderBody { [INFO] [stderr] | -------------------- field in this struct [INFO] [stderr] 93 | pub library_options: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AddVirtualFolderBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `id` and `library_options` are never read [INFO] [stderr] --> src/api/library.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 247 | pub struct UpdateLibraryOptionsRequest { [INFO] [stderr] | --------------------------- fields in this struct [INFO] [stderr] 248 | pub id: String, [INFO] [stderr] | ^^ [INFO] [stderr] 249 | pub library_options: LibraryOptions, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `UpdateLibraryOptionsRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `user_id`, `parent_id`, and `fields` are never read [INFO] [stderr] --> src/api/movies.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 23 | pub struct RecommendationsQuery { [INFO] [stderr] | -------------------- fields in this struct [INFO] [stderr] 24 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 25 | pub parent_id: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 26 | pub fields: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RecommendationsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `person_types` and `user_id` are never read [INFO] [stderr] --> src/api/persons.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 32 | pub struct PersonsQuery { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 33 | pub search_term: Option, [INFO] [stderr] 34 | pub person_types: Option, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 37 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PersonsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `image_type` is never read [INFO] [stderr] --> src/api/persons.rs:221:5 [INFO] [stderr] | [INFO] [stderr] 218 | pub struct PersonImagePath { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 221 | image_type: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PersonImagePath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `max_width`, `max_height`, and `tag` are never read [INFO] [stderr] --> src/api/persons.rs:236:9 [INFO] [stderr] | [INFO] [stderr] 235 | pub struct ImageQuery { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 236 | pub max_width: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 237 | pub max_height: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 238 | pub tag: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ImageQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `media_source_id`, `audio_stream_index`, `subtitle_stream_index`, `play_method`, and `play_session_id` are never read [INFO] [stderr] --> src/api/playback.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct PlaybackStartInfo { [INFO] [stderr] | ----------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 49 | pub media_source_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 50 | pub audio_stream_index: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 51 | pub subtitle_stream_index: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 52 | pub play_method: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 53 | pub play_session_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaybackStartInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `is_muted`, `volume_level`, `play_method`, `play_session_id`, and `repeat_mode` are never read [INFO] [stderr] --> src/api/playback.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 58 | pub struct PlaybackProgressInfo { [INFO] [stderr] | -------------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 63 | pub is_muted: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 64 | pub volume_level: Option, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 65 | pub play_method: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 66 | pub play_session_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 67 | pub repeat_mode: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaybackProgressInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `media_source_id` and `play_session_id` are never read [INFO] [stderr] --> src/api/playback.rs:76:9 [INFO] [stderr] | [INFO] [stderr] 72 | pub struct PlaybackStopInfo { [INFO] [stderr] | ---------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 76 | pub media_source_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 77 | pub play_session_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaybackStopInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `get_playback_progress` is never used [INFO] [stderr] --> src/api/playback.rs:433:14 [INFO] [stderr] | [INFO] [stderr] 433 | pub async fn get_playback_progress( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/api/playbackinfo.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct PlaybackInfoQuery { [INFO] [stderr] | ----------------- fields in this struct [INFO] [stderr] 29 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 30 | pub max_streaming_bitrate: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 31 | pub start_time_ticks: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 32 | pub audio_stream_index: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 33 | pub subtitle_stream_index: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 34 | pub max_audio_channels: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 35 | pub media_source_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 36 | pub live_stream_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 37 | pub auto_open_live_stream: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 38 | pub enable_direct_play: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 39 | pub enable_direct_stream: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 40 | pub enable_transcoding: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 41 | pub allow_video_stream_copy: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | pub allow_audio_stream_copy: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaybackInfoQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `user_id` is never read [INFO] [stderr] --> src/api/playlists.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct PlaylistsQuery { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 29 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaylistsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `user_id` is never read [INFO] [stderr] --> src/api/playlists.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 36 | pub struct CreatePlaylistRequest { [INFO] [stderr] | --------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 39 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CreatePlaylistRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `user_id` is never read [INFO] [stderr] --> src/api/playlists.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 64 | struct PlaylistRow { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 67 | user_id: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaylistRow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `as_str` is never used [INFO] [stderr] --> src/api/segments.rs:34:8 [INFO] [stderr] | [INFO] [stderr] 33 | impl MediaSegmentType { [INFO] [stderr] | --------------------- method in this implementation [INFO] [stderr] 34 | fn as_str(&self) -> &'static str { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `import_edl_file` is never used [INFO] [stderr] --> src/api/segments.rs:235:14 [INFO] [stderr] | [INFO] [stderr] 235 | pub async fn import_edl_file( [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `has_intro` is never used [INFO] [stderr] --> src/api/segments.rs:283:14 [INFO] [stderr] | [INFO] [stderr] 283 | pub async fn has_intro(pool: &sqlx::SqlitePool, item_id: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_intro` is never used [INFO] [stderr] --> src/api/segments.rs:296:14 [INFO] [stderr] | [INFO] [stderr] 296 | pub async fn get_intro(pool: &sqlx::SqlitePool, item_id: &str) -> Option<(i64, i64)> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_outro` is never used [INFO] [stderr] --> src/api/segments.rs:310:14 [INFO] [stderr] | [INFO] [stderr] 310 | pub async fn get_outro(pool: &sqlx::SqlitePool, item_id: &str) -> Option<(i64, i64)> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `controlling_user_id` is never read [INFO] [stderr] --> src/api/sessions.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 73 | pub struct PlaybackCommandBody { [INFO] [stderr] | ------------------- field in this struct [INFO] [stderr] 74 | pub seek_position_ticks: Option, [INFO] [stderr] 75 | pub controlling_user_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PlaybackCommandBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `timeout_ms` is never read [INFO] [stderr] --> src/api/sessions.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 80 | pub struct MessageBody { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 83 | pub timeout_ms: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MessageBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `play_state` is never read [INFO] [stderr] --> src/api/sessions.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 87 | struct SessionRow { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 100 | play_state: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SessionRow` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `user_id`, `fields`, `is_special_season`, `is_missing`, and `adjacent_to` are never read [INFO] [stderr] --> src/api/shows.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 25 | pub struct SeasonsQuery { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 26 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 27 | pub fields: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 28 | pub is_special_season: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 29 | pub is_missing: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 30 | pub adjacent_to: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SeasonsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `user_id`, `fields`, `is_missing`, `adjacent_to`, and `start_item_id` are never read [INFO] [stderr] --> src/api/shows.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 35 | pub struct EpisodesQuery { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 36 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 37 | pub fields: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 40 | pub is_missing: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 41 | pub adjacent_to: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 44 | pub start_item_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EpisodesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `is_perfect_match` and `is_forced` are never read [INFO] [stderr] --> src/api/subtitles.rs:357:9 [INFO] [stderr] | [INFO] [stderr] 356 | pub struct SearchSubtitlesQuery { [INFO] [stderr] | -------------------- fields in this struct [INFO] [stderr] 357 | pub is_perfect_match: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 358 | pub is_forced: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SearchSubtitlesQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `static_stream`, `media_source_id`, `device_id`, `audio_codec`, `video_codec`, and `container` are never read [INFO] [stderr] --> src/api/videos.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 36 | pub struct StreamQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 37 | pub static_stream: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 38 | pub media_source_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 39 | pub device_id: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 40 | pub audio_codec: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 41 | pub video_codec: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 42 | pub container: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `StreamQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `container` is never read [INFO] [stderr] --> src/api/videos.rs:233:5 [INFO] [stderr] | [INFO] [stderr] 230 | pub struct VideoPath { [INFO] [stderr] | --------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 233 | container: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `VideoPath` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `media_source_id` is never read [INFO] [stderr] --> src/api/videos.rs:256:9 [INFO] [stderr] | [INFO] [stderr] 255 | pub struct TrickplayQuery { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 256 | pub media_source_id: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TrickplayQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `user_id`, `include_external_content`, and `include_hidden` are never read [INFO] [stderr] --> src/api/views.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct UserViewsQuery { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] 23 | pub user_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 24 | pub include_external_content: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 25 | pub include_hidden: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `UserViewsQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `configure_connection` is never used [INFO] [stderr] --> src/db/mod.rs:11:14 [INFO] [stderr] | [INFO] [stderr] 11 | pub async fn configure_connection(pool: &SqlitePool) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `optimize` is never used [INFO] [stderr] --> src/db/mod.rs:492:14 [INFO] [stderr] | [INFO] [stderr] 492 | pub async fn optimize(pool: &SqlitePool) -> Result<()> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_pending_image_count` is never used [INFO] [stderr] --> src/db/mod.rs:581:14 [INFO] [stderr] | [INFO] [stderr] 581 | pub async fn get_pending_image_count(pool: &SqlitePool) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `attempts` is never read [INFO] [stderr] --> src/db/mod.rs:594:9 [INFO] [stderr] | [INFO] [stderr] 589 | pub struct PendingImage { [INFO] [stderr] | ------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 594 | pub attempts: i32, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PendingImage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `get_pending_thumbnail_count` is never used [INFO] [stderr] --> src/db/mod.rs:674:14 [INFO] [stderr] | [INFO] [stderr] 674 | pub async fn get_pending_thumbnail_count(pool: &SqlitePool) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `attempts` is never read [INFO] [stderr] --> src/db/mod.rs:731:9 [INFO] [stderr] | [INFO] [stderr] 727 | pub struct PendingThumbnail { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 731 | pub attempts: i32, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PendingThumbnail` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `update_fts_item` is never used [INFO] [stderr] --> src/db/mod.rs:793:14 [INFO] [stderr] | [INFO] [stderr] 793 | pub async fn update_fts_item(pool: &SqlitePool, item_id: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `search_items_fts` is never used [INFO] [stderr] --> src/db/mod.rs:824:14 [INFO] [stderr] | [INFO] [stderr] 824 | pub async fn search_items_fts(pool: &SqlitePool, query: &str, limit: i32) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `prepare_fts_query` is never used [INFO] [stderr] --> src/db/mod.rs:853:4 [INFO] [stderr] | [INFO] [stderr] 853 | fn prepare_fts_query(query: &str) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `LibraryType` is never used [INFO] [stderr] --> src/models/mod.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | pub enum LibraryType { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `ItemType` is never used [INFO] [stderr] --> src/models/mod.rs:70:10 [INFO] [stderr] | [INFO] [stderr] 70 | pub enum ItemType { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Image` is never constructed [INFO] [stderr] --> src/models/mod.rs:81:12 [INFO] [stderr] | [INFO] [stderr] 81 | pub struct Image { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `ImageType` is never used [INFO] [stderr] --> src/models/mod.rs:89:10 [INFO] [stderr] | [INFO] [stderr] 89 | pub enum ImageType { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PlaybackProgress` is never constructed [INFO] [stderr] --> src/models/mod.rs:97:12 [INFO] [stderr] | [INFO] [stderr] 97 | pub struct PlaybackProgress { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `DB_BATCH_SIZE` is never used [INFO] [stderr] --> src/scanner/mod.rs:22:7 [INFO] [stderr] | [INFO] [stderr] 22 | const DB_BATCH_SIZE: usize = 50; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DiscoveredEpisode` is never constructed [INFO] [stderr] --> src/scanner/mod.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 26 | struct DiscoveredEpisode { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DiscoveredMovie` is never constructed [INFO] [stderr] --> src/scanner/mod.rs:33:8 [INFO] [stderr] | [INFO] [stderr] 33 | struct DiscoveredMovie { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `scan_library` is never used [INFO] [stderr] --> src/scanner/mod.rs:344:14 [INFO] [stderr] | [INFO] [stderr] 344 | pub async fn scan_library( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `by_path` is never read [INFO] [stderr] --> src/scanner/mod.rs:500:5 [INFO] [stderr] | [INFO] [stderr] 498 | struct SeriesCache { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 499 | /// Map of folder path -> (series_id, metadata) [INFO] [stderr] 500 | by_path: std::collections::HashMap)>, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SeriesCache` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `scan_tv_library` is never used [INFO] [stderr] --> src/scanner/mod.rs:696:10 [INFO] [stderr] | [INFO] [stderr] 696 | async fn scan_tv_library( [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_unmatched_series_for_retry` is never used [INFO] [stderr] --> src/scanner/mod.rs:1344:10 [INFO] [stderr] | [INFO] [stderr] 1344 | async fn get_unmatched_series_for_retry( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `clear_unmatched_tracking` is never used [INFO] [stderr] --> src/scanner/mod.rs:1372:10 [INFO] [stderr] | [INFO] [stderr] 1372 | async fn clear_unmatched_tracking(pool: &SqlitePool, series_id: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `revoke_session` is never used [INFO] [stderr] --> src/services/auth.rs:173:14 [INFO] [stderr] | [INFO] [stderr] 173 | pub async fn revoke_session(pool: &SqlitePool, token: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `revoke_all_user_sessions` is never used [INFO] [stderr] --> src/services/auth.rs:183:14 [INFO] [stderr] | [INFO] [stderr] 183 | pub async fn revoke_all_user_sessions(pool: &SqlitePool, user_id: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `image_cache_dir` is never read [INFO] [stderr] --> src/services/anidb.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 23 | pub struct AniDBClient { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 24 | client: Client, [INFO] [stderr] 25 | image_cache_dir: PathBuf, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `AniDBAnime` is never constructed [INFO] [stderr] --> src/services/anidb.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 31 | pub struct AniDBAnime { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `title_romaji` and `rating` are never read [INFO] [stderr] --> src/services/anidb.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 47 | pub struct AniDBEpisode { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] ... [INFO] [stderr] 51 | pub title_romaji: Option, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 54 | pub rating: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AniDBEpisode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `download_image` is never used [INFO] [stderr] --> src/services/anidb.rs:272:18 [INFO] [stderr] | [INFO] [stderr] 73 | impl AniDBClient { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 272 | pub async fn download_image( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `end_date`, `format`, and `status` are never read [INFO] [stderr] --> src/services/anilist.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 43 | pub struct MediaData { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 50 | pub end_date: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 64 | pub format: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 65 | pub status: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MediaData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `role` is never read [INFO] [stderr] --> src/services/anilist.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 110 | pub struct CharacterEdge { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] 111 | pub node: Option, [INFO] [stderr] 112 | pub role: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CharacterEdge` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `id` and `image` are never read [INFO] [stderr] --> src/services/anilist.rs:119:9 [INFO] [stderr] | [INFO] [stderr] 118 | pub struct Character { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 119 | pub id: i64, [INFO] [stderr] | ^^ [INFO] [stderr] 120 | pub name: Option, [INFO] [stderr] 121 | pub image: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Character` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `native` is never read [INFO] [stderr] --> src/services/anilist.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 125 | pub struct CharacterName { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] 126 | pub full: Option, [INFO] [stderr] 127 | pub native: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CharacterName` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `large` and `medium` are never read [INFO] [stderr] --> src/services/anilist.rs:132:9 [INFO] [stderr] | [INFO] [stderr] 131 | pub struct CharacterImage { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] 132 | pub large: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 133 | pub medium: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CharacterImage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `native` is never read [INFO] [stderr] --> src/services/anilist.rs:147:9 [INFO] [stderr] | [INFO] [stderr] 145 | pub struct StaffName { [INFO] [stderr] | --------- field in this struct [INFO] [stderr] 146 | pub full: Option, [INFO] [stderr] 147 | pub native: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `StaffName` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `anime_type`, `episodes`, `status`, `picture`, `thumbnail`, and `tags` are never read [INFO] [stderr] --> src/services/anime_db.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct AnimeEntry { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 25 | pub anime_type: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 26 | pub episodes: i32, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 27 | pub status: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 30 | pub picture: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 31 | pub thumbnail: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 34 | pub tags: Vec, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AnimeEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `season` is never read [INFO] [stderr] --> src/services/anime_db.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 38 | pub struct AnimeSeason { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 39 | pub season: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AnimeSeason` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `find_by_anidb_id` and `find_by_mal_id` are never used [INFO] [stderr] --> src/services/anime_db.rs:319:18 [INFO] [stderr] | [INFO] [stderr] 106 | impl AnimeOfflineDatabase { [INFO] [stderr] | ------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 319 | pub async fn find_by_anidb_id(&self, anidb_id: i64) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 335 | pub async fn find_by_mal_id(&self, mal_id: i64) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `pagination` is never read [INFO] [stderr] --> src/services/jikan.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct JikanSearchResponse { [INFO] [stderr] | ------------------- field in this struct [INFO] [stderr] 29 | pub data: Vec, [INFO] [stderr] 30 | pub pagination: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanSearchResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `last_visible_page` and `has_next_page` are never read [INFO] [stderr] --> src/services/jikan.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 34 | pub struct JikanPagination { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] 35 | pub last_visible_page: i32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 36 | pub has_next_page: bool, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanPagination` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/services/jikan.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 40 | pub struct JikanAnime { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 41 | pub mal_id: i64, [INFO] [stderr] 42 | pub url: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 50 | pub source: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 53 | pub airing: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 54 | pub aired: Option, [INFO] [stderr] 55 | pub duration: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 56 | pub rating: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 57 | pub score: Option, [INFO] [stderr] 58 | pub scored_by: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 59 | pub rank: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] 60 | pub popularity: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 61 | pub members: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 62 | pub favorites: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 63 | pub synopsis: Option, [INFO] [stderr] 64 | pub background: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 65 | pub season: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 70 | pub demographics: Option>, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanAnime` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `small_image_url` is never read [INFO] [stderr] --> src/services/jikan.rs:82:9 [INFO] [stderr] | [INFO] [stderr] 80 | pub struct JikanImageSet { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] 81 | pub image_url: Option, [INFO] [stderr] 82 | pub small_image_url: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanImageSet` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `to` and `string` are never read [INFO] [stderr] --> src/services/jikan.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 87 | pub struct JikanAired { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 88 | pub from: Option, [INFO] [stderr] 89 | pub to: Option, [INFO] [stderr] | ^^ [INFO] [stderr] 90 | pub string: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanAired` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `mal_id` is never read [INFO] [stderr] --> src/services/jikan.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 94 | pub struct JikanStudio { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 95 | pub mal_id: i64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanStudio` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `mal_id` is never read [INFO] [stderr] --> src/services/jikan.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 100 | pub struct JikanGenre { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] 101 | pub mal_id: i64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanGenre` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `JikanAnimeFull` is never constructed [INFO] [stderr] --> src/services/jikan.rs:108:12 [INFO] [stderr] | [INFO] [stderr] 108 | pub struct JikanAnimeFull { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `JikanRelation` is never constructed [INFO] [stderr] --> src/services/jikan.rs:117:12 [INFO] [stderr] | [INFO] [stderr] 117 | pub struct JikanRelation { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `JikanRelationEntry` is never constructed [INFO] [stderr] --> src/services/jikan.rs:123:12 [INFO] [stderr] | [INFO] [stderr] 123 | pub struct JikanRelationEntry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `JikanExternal` is never constructed [INFO] [stderr] --> src/services/jikan.rs:131:12 [INFO] [stderr] | [INFO] [stderr] 131 | pub struct JikanExternal { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `JikanStreaming` is never constructed [INFO] [stderr] --> src/services/jikan.rs:137:12 [INFO] [stderr] | [INFO] [stderr] 137 | pub struct JikanStreaming { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `status` is never read [INFO] [stderr] --> src/services/jikan.rs:159:9 [INFO] [stderr] | [INFO] [stderr] 145 | pub struct JikanMetadata { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 159 | pub status: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `JikanMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `get_anime_full` is never used [INFO] [stderr] --> src/services/jikan.rs:261:18 [INFO] [stderr] | [INFO] [stderr] 162 | impl JikanClient { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 261 | pub async fn get_anime_full(&self, mal_id: i64) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `name_original`, `episode_count`, and `runtime_minutes` are never read [INFO] [stderr] --> src/services/metadata.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct UnifiedMetadata { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 19 | pub name_original: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 26 | pub episode_count: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 27 | pub runtime_minutes: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `UnifiedMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `runtime_minutes` and `still_url` are never read [INFO] [stderr] --> src/services/metadata.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 58 | pub struct EpisodeMetadata { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 63 | pub runtime_minutes: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 64 | pub still_url: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EpisodeMetadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `image_cache_dir` is never read [INFO] [stderr] --> src/services/metadata.rs:73:5 [INFO] [stderr] | [INFO] [stderr] 67 | pub struct MetadataService { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 73 | image_cache_dir: PathBuf, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `is_available`, `get_smart_metadata`, `cache_images`, and `download_image` are never used [INFO] [stderr] --> src/services/metadata.rs:101:12 [INFO] [stderr] | [INFO] [stderr] 76 | impl MetadataService { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 101 | pub fn is_available(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 687 | pub async fn get_smart_metadata( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 760 | pub async fn cache_images( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 785 | async fn download_image(&self, url: &str, item_id: &str, image_type: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `TMDB_IMAGE_BASE` is never used [INFO] [stderr] --> src/services/tmdb.rs:11:7 [INFO] [stderr] | [INFO] [stderr] 11 | const TMDB_IMAGE_BASE: &str = "https://image.tmdb.org/t/p"; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `image_cache_dir` is never read [INFO] [stderr] --> src/services/tmdb.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct TmdbClient { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 17 | image_cache_dir: PathBuf, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `total_results` is never read [INFO] [stderr] --> src/services/tmdb.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct TvSearchResults { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] 23 | pub results: Vec, [INFO] [stderr] 24 | pub total_results: i32, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TvSearchResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `backdrop_path`, `vote_average`, and `vote_count` are never read [INFO] [stderr] --> src/services/tmdb.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct TvSearchResult { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 35 | pub backdrop_path: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 36 | pub vote_average: Option, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 37 | pub vote_count: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TvSearchResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `total_results` is never read [INFO] [stderr] --> src/services/tmdb.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 42 | pub struct MovieSearchResults { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] 43 | pub results: Vec, [INFO] [stderr] 44 | pub total_results: i32, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MovieSearchResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `backdrop_path`, `vote_average`, and `vote_count` are never read [INFO] [stderr] --> src/services/tmdb.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 48 | pub struct MovieSearchResult { [INFO] [stderr] | ----------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 55 | pub backdrop_path: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 56 | pub vote_average: Option, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 57 | pub vote_count: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MovieSearchResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `original_name`, `last_air_date`, `number_of_seasons`, `number_of_episodes`, and `status` are never read [INFO] [stderr] --> src/services/tmdb.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 62 | pub struct TvDetails { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 65 | pub original_name: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 68 | pub last_air_date: Option, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 72 | pub number_of_seasons: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 73 | pub number_of_episodes: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 74 | pub status: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TvDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `original_title` and `status` are never read [INFO] [stderr] --> src/services/tmdb.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 82 | pub struct MovieDetails { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] ... [INFO] [stderr] 85 | pub original_title: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 92 | pub status: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MovieDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `id`, `name`, `overview`, `poster_path`, `season_number`, and `air_date` are never read [INFO] [stderr] --> src/services/tmdb.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 100 | pub struct SeasonDetails { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 101 | pub id: i64, [INFO] [stderr] | ^^ [INFO] [stderr] 102 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 103 | pub overview: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 104 | pub poster_path: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 105 | pub season_number: i32, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 106 | pub air_date: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SeasonDetails` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `season_number` is never read [INFO] [stderr] --> src/services/tmdb.rs:117:9 [INFO] [stderr] | [INFO] [stderr] 112 | pub struct EpisodeInfo { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 117 | pub season_number: i32, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EpisodeInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `id` is never read [INFO] [stderr] --> src/services/tmdb.rs:126:9 [INFO] [stderr] | [INFO] [stderr] 125 | pub struct Genre { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 126 | pub id: i64, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `Genre` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `tvdb_id` is never read [INFO] [stderr] --> src/services/tmdb.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 131 | pub struct ExternalIds { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 132 | pub imdb_id: Option, [INFO] [stderr] 133 | pub tvdb_id: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ExternalIds` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `order` is never read [INFO] [stderr] --> src/services/tmdb.rs:150:9 [INFO] [stderr] | [INFO] [stderr] 145 | pub struct CastMember { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 150 | pub order: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CastMember` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `department` is never read [INFO] [stderr] --> src/services/tmdb.rs:159:9 [INFO] [stderr] | [INFO] [stderr] 155 | pub struct CrewMember { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 159 | pub department: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CrewMember` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `PosterSmall`, `PosterMedium`, `PosterOriginal`, `Backdrop`, and `BackdropOriginal` are never constructed [INFO] [stderr] --> src/services/tmdb.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 192 | pub enum ImageSize { [INFO] [stderr] | --------- variants in this enum [INFO] [stderr] 193 | /// w185 - small poster [INFO] [stderr] 194 | PosterSmall, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 195 | /// w342 - medium poster [INFO] [stderr] 196 | PosterMedium, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 200 | PosterOriginal, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 201 | /// w780 - backdrop [INFO] [stderr] 202 | Backdrop, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | BackdropOriginal, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ImageSize` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `download_image` and `cache_item_images` are never used [INFO] [stderr] --> src/services/tmdb.rs:361:18 [INFO] [stderr] | [INFO] [stderr] 223 | impl TmdbClient { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 361 | pub async fn download_image( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 671 | pub async fn cache_item_images( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `jellyfin-rust` (bin "jellyfin-rust" test) generated 133 warnings (run `cargo fix --bin "jellyfin-rust" -p jellyfin-rust --tests` to apply 14 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.59s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/jellyfin_rust-610a653841ddaa0b) [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test config::tests::test_current_dir_paths ... ok [INFO] [stdout] test config::tests::test_database_url_format ... ok [INFO] [stdout] test config::tests::test_default_config_file ... ok [INFO] [stdout] test config::tests::test_parse_config_toml ... ok [INFO] [stdout] test config::tests::test_partial_config_toml ... ok [INFO] [stdout] test scanner::tests::test_should_skip_folder ... ok [INFO] [stdout] test services::anidb::tests::test_html_decode ... ok [INFO] [stdout] test services::anime_db::tests::test_extract_id_from_url ... ok [INFO] [stdout] test services::anime_db::tests::test_string_similarity ... ok [INFO] [stdout] test services::mediainfo::tests::test_calculate_thumbnail_timestamp ... ok [INFO] [stdout] test services::metadata::tests::test_is_likely_anime ... ok [INFO] [stdout] test services::anidb::tests::test_extract_xml_content ... ok [INFO] [stdout] test services::tmdb::tests::test_image_size_str ... ok [INFO] [stdout] test scanner::tests::test_parse_movie ... ok [INFO] [stdout] test scanner::tests::test_parse_standard_episode ... ok [INFO] [stdout] test scanner::tests::test_parse_anime_episode ... ok [INFO] [stdout] test scanner::tests::test_normalize_series_name ... ok [INFO] [stdout] test services::anilist::tests::test_media_to_metadata ... ok [INFO] [stdout] test scanner::tests::test_clean_folder_name ... ok [INFO] [stdout] test scanner::tests::test_extract_year_from_name ... ok [INFO] [stdout] test scanner::tests::test_folder_name_parsing ... ok [INFO] [stdout] test services::mediainfo::tests::test_format_duration ... ok [INFO] [stdout] test services::jikan::tests::test_jikan_best_match ... ok [INFO] [stdout] test services::jikan::tests::test_jikan_search ... ok [INFO] [stdout] test services::jikan::tests::test_jikan_get_by_id ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.53s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "9db20c84aa90e4f00bfadc69fe9cbc62f460b09af785c74f62ec7639bbeddd29", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9db20c84aa90e4f00bfadc69fe9cbc62f460b09af785c74f62ec7639bbeddd29", kill_on_drop: false }` [INFO] [stdout] 9db20c84aa90e4f00bfadc69fe9cbc62f460b09af785c74f62ec7639bbeddd29