[INFO] cloning repository https://github.com/Domipoke/Yomi
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Domipoke/Yomi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDomipoke%2FYomi", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDomipoke%2FYomi'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6ad5b31e3375fc4f9e8ed3aa1207f5567108b097
[INFO] checking Domipoke/Yomi against 846e51f66b1e7b49ba9e3988c58ccfe5817ce0a9 for pr-160391-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDomipoke%2FYomi" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Domipoke/Yomi
[INFO] finished tweaking git repo https://github.com/Domipoke/Yomi
[INFO] tweaked toml for git repo https://github.com/Domipoke/Yomi written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Domipoke/Yomi on toolchain 846e51f66b1e7b49ba9e3988c58ccfe5817ce0a9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+846e51f66b1e7b49ba9e3988c58ccfe5817ce0a9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Domipoke/Yomi 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" "+846e51f66b1e7b49ba9e3988c58ccfe5817ce0a9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zip v8.5.0
[INFO] [stderr]   Downloaded libbz2-rs-sys v0.2.2
[INFO] [stderr]   Downloaded toml v1.0.4+spec-1.1.0
[INFO] [stderr]   Downloaded ssh2 v0.9.6
[INFO] [stderr]   Downloaded lzma-rust2 v0.16.2
[INFO] [stderr]   Downloaded libssh2-sys v0.3.3
[INFO] [stderr]   Downloaded curl v0.4.49
[INFO] [stderr]   Downloaded hybrid-array v0.4.10
[INFO] [stderr]   Downloaded cipher v0.5.1
[INFO] [stderr]   Downloaded curl-sys v0.4.85+curl-8.18.0
[INFO] [stderr]   Downloaded thin-vec v0.2.16
[INFO] [stderr]   Downloaded boa_engine v0.21.1
[INFO] [stderr]   Downloaded boa_interner v0.21.1
[INFO] [stderr]   Downloaded boa_string v0.21.1
[INFO] [stderr]   Downloaded boa_macros v0.21.1
[INFO] [stderr]   Downloaded boa_gc v0.21.1
[INFO] [stderr]   Downloaded boa_parser v0.21.1
[INFO] [stderr]   Downloaded boa_ast v0.21.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c0af3998e971868164375a7dfb646c9933ddd1a3bdb00fa2041266763dc1eeab" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5
[INFO] running `Command { std: "docker" "start" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5" "/opt/rustwide/cargo-home/bin/cargo" "+846e51f66b1e7b49ba9e3988c58ccfe5817ce0a9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5" "/opt/rustwide/cargo-home/bin/cargo" "+846e51f66b1e7b49ba9e3988c58ccfe5817ce0a9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]     Checking pin-project-lite v0.2.17
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]    Compiling phf_shared v0.13.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]    Compiling phf_generator v0.13.1
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking new_debug_unreachable v1.0.6
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]    Compiling phf_macros v0.13.1
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling zerocopy v0.8.40
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling phf_codegen v0.13.1
[INFO] [stderr]    Compiling zerocopy-derive v0.8.40
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling aws-lc-rs v1.16.1
[INFO] [stderr]     Checking num-conv v0.2.0
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking time-core v0.1.8
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking phf v0.13.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking utf16_iter v1.0.5
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking write16 v1.0.0
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]    Compiling string_cache_codegen v0.6.1
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking fast-float2 v0.2.3
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling openssl-src v300.5.5+3.5.5
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]     Checking ryu-js v1.0.2
[INFO] [stderr]    Compiling cow-utils v0.1.3
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking unicode-truncate v2.0.1
[INFO] [stderr]    Compiling web_atoms v0.2.3
[INFO] [stderr]    Compiling boa_macros v0.21.1
[INFO] [stderr]     Checking boa_string v0.21.1
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking block-padding v0.3.3
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking v_frame v0.3.9
[INFO] [stderr]     Checking kasuari v0.4.11
[INFO] [stderr]    Compiling aws-lc-sys v0.38.0
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]    Compiling libz-sys v1.1.25
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking lru v0.16.3
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking as-slice v0.2.1
[INFO] [stderr]     Checking utf8_iter v1.0.4
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]    Compiling toml_datetime v1.0.0+spec-1.1.0
[INFO] [stderr]     Checking mac v0.1.1
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking thin-vec v0.2.16
[INFO] [stderr]     Checking zlib-rs v0.6.3
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling av-scenechange v0.14.1
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]    Compiling toml_edit v0.25.4+spec-1.1.0
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking ratatui-core v0.1.0
[INFO] [stderr]     Checking aligned v0.4.3
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking icu_properties v2.0.2
[INFO] [stderr]     Checking icu_normalizer v2.0.1
[INFO] [stderr]     Checking boa_gc v0.21.1
[INFO] [stderr]    Compiling rquickjs-sys v0.11.0
[INFO] [stderr]    Compiling curl-sys v0.4.85+curl-8.18.0
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking string_cache v0.9.0
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking hybrid-array v0.4.10
[INFO] [stderr]     Checking nom v8.0.0
[INFO] [stderr]     Checking no_std_io2 v0.9.3
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking quick-error v2.0.1
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking y4m v0.8.0
[INFO] [stderr]     Checking dtoa v1.0.11
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking boa_interner v0.21.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking bitstream-io v4.10.0
[INFO] [stderr]     Checking dtoa-short v0.3.5
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking maybe-rayon v0.1.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling float16 v0.1.5
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]    Compiling libssh2-sys v0.3.3
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]    Compiling selectors v0.33.0
[INFO] [stderr]     Checking line-clipping v0.3.5
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]     Checking zune-core v0.5.1
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking psl-types v2.0.11
[INFO] [stderr]     Checking imgref v1.12.0
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]     Checking loop9 v0.1.5
[INFO] [stderr]     Checking tracing-error v0.2.1
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]     Checking zune-jpeg v0.5.15
[INFO] [stderr]     Checking publicsuffix v2.3.0
[INFO] [stderr]     Checking markup5ever v0.36.1
[INFO] [stderr]     Checking fax v0.2.6
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]     Checking cssparser v0.36.0
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling num_enum_derive v0.7.6
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking pin-project v1.1.11
[INFO] [stderr]     Checking block-padding v0.4.2
[INFO] [stderr]     Checking boa_ast v0.21.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking avif-serialize v0.8.8
[INFO] [stderr]     Checking regress v0.10.5
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking servo_arc v0.4.3
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]    Compiling dynify-macros v0.1.2
[INFO] [stderr]     Checking byteorder-lite v0.1.0
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking bumpalo v3.20.2
[INFO] [stderr]     Checking rustc-demangle v0.1.27
[INFO] [stderr]    Compiling curl v0.4.49
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking winnow v0.7.14
[INFO] [stderr]     Checking libbz2-rs-sys v0.2.2
[INFO] [stderr]     Checking lebe v0.5.3
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]     Checking bit_field v0.10.3
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]     Checking iri-string v0.7.10
[INFO] [stderr]     Checking pxfm v0.1.29
[INFO] [stderr]     Checking indenter v0.3.4
[INFO] [stderr]     Checking dynify v0.1.2
[INFO] [stderr]     Checking av1-grain v0.2.5
[INFO] [stderr]     Checking exr v1.74.0
[INFO] [stderr]     Checking bzip2 v0.6.1
[INFO] [stderr]     Checking futures-concurrency v7.7.1
[INFO] [stderr]     Checking zopfli v0.8.3
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking boa_parser v0.21.1
[INFO] [stderr]     Checking gif v0.14.2
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]     Checking image-webp v0.2.4
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking toml_parser v1.0.9+spec-1.1.0
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking tiff v0.11.3
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking ratatui-macros v0.7.0
[INFO] [stderr]     Checking lzma-rust2 v0.16.2
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking num_enum v0.7.6
[INFO] [stderr]     Checking cookie_store v0.22.1
[INFO] [stderr]     Checking ratatui-crossterm v0.1.0
[INFO] [stderr]     Checking intrusive-collections v0.9.7
[INFO] [stderr]     Checking inout v0.2.2
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking html5ever v0.36.1
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking crypto-common v0.2.1
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking serde_spanned v1.0.4
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking small_btree v0.1.0
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking typed-path v0.12.3
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking tag_ptr v0.1.0
[INFO] [stderr]     Checking ego-tree v0.10.0
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]     Checking ppmd-rust v1.4.0
[INFO] [stderr]     Checking toml_writer v1.0.6+spec-1.1.0
[INFO] [stderr]     Checking deflate64 v0.1.12
[INFO] [stderr]     Checking xsum v0.1.6
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]     Checking toml v1.0.4+spec-1.1.0
[INFO] [stderr]     Checking scraper v0.25.0
[INFO] [stderr]     Checking cipher v0.5.1
[INFO] [stderr]     Checking ratatui v0.30.0
[INFO] [stderr]     Checking color-eyre v0.6.5
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking cbc v0.1.2
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking strum v0.28.0
[INFO] [stderr]     Checking ravif v0.13.0
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking boa_engine v0.21.1
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking zip v8.5.0
[INFO] [stderr]     Checking rquickjs-core v0.11.0
[INFO] [stderr]     Checking rquickjs v0.11.0
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking reqwest v0.13.2
[INFO] [stderr]     Checking ssh2 v0.9.6
[INFO] [stderr]     Checking Yomi v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `vec`
[INFO] [stdout]  --> src/extension.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{format, fs, vec};
[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: `crate::components::Library`
[INFO] [stdout]  --> src/extension.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::components::Library;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::library::LibraryItem`
[INFO] [stdout]  --> src/extension.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::library::LibraryItem;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Episode`
[INFO] [stdout]   --> src/extension.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::source::{AnimeSource, Episode, MangaSource, SourceType};
[INFO] [stdout]    |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::ser::Error`
[INFO] [stdout]  --> src/player.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use serde::ser::Error;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `sleep`, and `time::Duration`
[INFO] [stdout]  --> src/player.rs:6:107
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...g}, Arc, mpsc::{self, Sender}}, thread::{sleep, spawn}, time::Duration, format, io::{Read, Write}, path::Path };
[INFO] [stdout]   |                                             ^^^^^          ^^^^^^^^^^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `rand_bytes` and `self`
[INFO] [stdout]  --> src/player.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use openssl::rand::{self, rand_bytes};
[INFO] [stdout]   |                         ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `List` and `crossterm::event::KeyEvent`
[INFO] [stdout]  --> src/settings.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::{crossterm::event::KeyEvent, style::Style, widgets::{List, StatefulWidget, Widget}};
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^^^^^                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App` and `load_config`
[INFO] [stdout]  --> src/settings.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...::{App, AppState, appmessages::MessageType, components::ListOption::{Item, ListOption, ListOptionState, Section}, config::{getConfig, getDevice, load_config, s...
[INFO] [stdout]   |       ^^^                                                                                                                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/settings.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 |         if (cfg!(feature = "remote")) {
[INFO] [stdout]    |            ^                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 62 -         if (cfg!(feature = "remote")) {
[INFO] [stdout] 62 +         if cfg!(feature = "remote") {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/settings.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 if (v.to_lowercase() == "none") {
[INFO] [stdout]    |                    ^                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 74 -                 if (v.to_lowercase() == "none") {
[INFO] [stdout] 74 +                 if v.to_lowercase() == "none" {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `builtins::boolean` and `object::Ref`
[INFO] [stdout]  --> src/main.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use boa_engine::{builtins::boolean, object::Ref};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toml::value::Time`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use toml::value::Time;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `default`
[INFO] [stdout]  --> src/config.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{default, fs, sync::{LazyLock, Mutex, RwLock}};
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils::utils::ColorPickerOption`
[INFO] [stdout]  --> src/config.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{player::Player::{AnimePlayer, Vlc}, utils::utils::ColorPickerOption};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::clone`
[INFO] [stdout]  --> src/components.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::clone;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `boa_engine::builtins::boolean`
[INFO] [stdout]  --> src/components.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use boa_engine::builtins::boolean;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `Borders`, `ListItem`, `ListState`, and `List`
[INFO] [stdout]  --> src/components.rs:4:94
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...{Constraint, Layout}, text::Text, widgets::{Block, Borders, List, ListItem, ListState, StatefulWidget, Widget}};
[INFO] [stdout]   |                                                ^^^^^  ^^^^^^^  ^^^^  ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash::Hash` and `sync::Arc`
[INFO] [stdout]    --> src/components.rs:332:52
[INFO] [stdout]     |
[INFO] [stdout] 332 |     use std::{cmp::Ordering, collections::HashMap, hash::Hash, sync::Arc};
[INFO] [stdout]     |                                                    ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils::utils::hash_sort`
[INFO] [stdout]    --> src/components.rs:336:113
[INFO] [stdout]     |
[INFO] [stdout] 336 | ...braryItem}, source::{EpisodeListItem, MangaSource}, utils::utils::hash_sort};
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/components.rs:508:101
[INFO] [stdout]     |
[INFO] [stdout] 508 |             let lay = Layout::default().direction(ratatui::layout::Direction::Vertical).constraints(([
[INFO] [stdout]     |                                                                                                     ^
[INFO] [stdout] ...
[INFO] [stdout] 511 |             ])).margin(0).spacing(0).split(hor[0]);
[INFO] [stdout]     |              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 508 ~             let lay = Layout::default().direction(ratatui::layout::Direction::Vertical).constraints([
[INFO] [stdout] 509 |                 Constraint::Percentage(100),
[INFO] [stdout] 510 |                 Constraint::Length(2)
[INFO] [stdout] 511 ~             ]).margin(0).spacing(0).split(hor[0]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/components.rs:574:95
[INFO] [stdout]     |
[INFO] [stdout] 574 |                         let list_ep = List::new(eps).block(block_eps).highlight_symbol(">> ");;
[INFO] [stdout]     |                                                                                               ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/components.rs:566:28
[INFO] [stdout]     |
[INFO] [stdout] 566 |                         if (state.flag_reverse) {
[INFO] [stdout]     |                            ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 566 -                         if (state.flag_reverse) {
[INFO] [stdout] 566 +                         if state.flag_reverse {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `ops::Index`
[INFO] [stdout]    --> src/components.rs:694:30
[INFO] [stdout]     |
[INFO] [stdout] 694 |     use std::{cell::RefCell, collections::HashMap, ops::Index, rc::Rc};
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `boa_engine::ast::expression::Optional`
[INFO] [stdout]    --> src/components.rs:696:9
[INFO] [stdout]     |
[INFO] [stdout] 696 |     use boa_engine::ast::expression::Optional;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `List`, `Rows`, `Table`, and `symbols::line`
[INFO] [stdout]    --> src/components.rs:697:93
[INFO] [stdout]     |
[INFO] [stdout] 697 | ...ct, Rows}, style::{Style}, symbols::line, text::{Line, Span, Text}, widgets::{Block, BorderType, List, StatefulWidget, Table, Wi...
[INFO] [stdout]     |        ^^^^                   ^^^^^^^^^^^^^                                                         ^^^^                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/components.rs:776:25
[INFO] [stdout]     |
[INFO] [stdout] 776 |                     k @ (KeyCode::Enter) => {
[INFO] [stdout]     |                         ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 776 -                     k @ (KeyCode::Enter) => {
[INFO] [stdout] 776 +                     k @ KeyCode::Enter => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/components.rs:777:28
[INFO] [stdout]     |
[INFO] [stdout] 777 |                         if (self.edit_option){
[INFO] [stdout]     |                            ^                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 777 -                         if (self.edit_option){
[INFO] [stdout] 777 +                         if self.edit_option {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/components.rs:1257:20
[INFO] [stdout]      |
[INFO] [stdout] 1257 |                 if (c.is_ascii()) {
[INFO] [stdout]      |                    ^            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1257 -                 if (c.is_ascii()) {
[INFO] [stdout] 1257 +                 if c.is_ascii() {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash::Hash` and `sync::Arc`
[INFO] [stdout]     --> src/components.rs:1296:52
[INFO] [stdout]      |
[INFO] [stdout] 1296 |     use std::{cmp::Ordering, collections::HashMap, hash::Hash, sync::Arc};
[INFO] [stdout]      |                                                    ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `openssl::derive`
[INFO] [stdout]     --> src/components.rs:1298:9
[INFO] [stdout]      |
[INFO] [stdout] 1298 |     use openssl::derive;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canvas::Label` and `text::Text`
[INFO] [stdout]     --> src/components.rs:1299:81
[INFO] [stdout]      |
[INFO] [stdout] 1299 | ...e, text::Text, widgets::{Block, BorderType, Borders, List, ListItem, ListState, Paragraph, StatefulWidget, Widget, canvas::Label}};
[INFO] [stdout]      |       ^^^^^^^^^^                                                                                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LibraryItem`, `ListOption::Item`, `config::getConfig`, `self`, `settings::ApplySettingsChange`, and `utils::utils::hash_sort`
[INFO] [stdout]     --> src/components.rs:1301:56
[INFO] [stdout]      |
[INFO] [stdout] 1301 | ...::{ListOption::Item, TextInputState}, config::getConfig, library::{self, LibraryItem}, settings::ApplySettingsChange, source::{AnimeSource, Episode, EpisodeListItem, MangaSource}, utils::utils::hash_sort};
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^                   ^^^^^^^^^^^^^^^^^            ^^^^  ^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/components.rs:1415:93
[INFO] [stdout]      |
[INFO] [stdout] 1415 |             let list_res = List::new(keys).block(block_eps.clone()).highlight_symbol(">> ");;
[INFO] [stdout]      |                                                                                             ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/components.rs:1431:88
[INFO] [stdout]      |
[INFO] [stdout] 1431 |                 let list_eps = List::new(eps).block(block_eps).highlight_symbol(">> ");;
[INFO] [stdout]      |                                                                                        ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/components.rs:1423:20
[INFO] [stdout]      |
[INFO] [stdout] 1423 |                 if (state.flag_reverse) {
[INFO] [stdout]      |                    ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1423 -                 if (state.flag_reverse) {
[INFO] [stdout] 1423 +                 if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Stdio`
[INFO] [stdout]  --> src/source/animeworld.rs:2:60
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, format, process::{Command, Stdio}};
[INFO] [stdout]   |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `f64::consts::E` and `sync::Arc`
[INFO] [stdout]  --> src/source/mangaworld.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, format, io::Read, sync::Arc};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElementRef`
[INFO] [stdout]  --> src/source/mangaworld.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use scraper::{ElementRef, Html, Selector};
[INFO] [stdout]   |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zip::write::SimpleFileOptions`
[INFO] [stdout]  --> src/source/mangaworld.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use zip::write::SimpleFileOptions;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `openManga`
[INFO] [stdout]  --> src/source/mangaworld.rs:7:88
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{source::{Episode, EpisodeListItem, MangaMetadata, MangaSource, SourceType, openManga}, utils::utils::{AsyncError, MangaCb...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `f64::consts::E`, `fmt::format`, and `iter::Once`
[INFO] [stdout]  --> src/source/mangago.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, fmt::format, format, io::Read, iter::Once, sync::OnceLock};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^  ^^^^^^^^^^^                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine` and `engine::general_purpose`
[INFO] [stdout]  --> src/source/mangago.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use base64::{Engine, engine::general_purpose};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hex::decode`
[INFO] [stdout]  --> src/source/mangago.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex::decode;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]  --> src/source/mangago.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use regex::Regex;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HeaderMap`, `HeaderValue`, `Response`, and `get`
[INFO] [stdout]  --> src/source/mangago.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use reqwest::{Client, Response, get, header::{HeaderMap, HeaderValue}};
[INFO] [stdout]   |                       ^^^^^^^^  ^^^           ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Context`
[INFO] [stdout]  --> src/source/mangago.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use anyhow::{Context, Result};
[INFO] [stdout]   |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zip::write::SimpleFileOptions`
[INFO] [stdout]  --> src/source/mangago.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use zip::write::SimpleFileOptions;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/source/mangago.rs:120:24
[INFO] [stdout]     |
[INFO] [stdout] 120 |                     if (retu.len()> 2) {
[INFO] [stdout]     |                        ^             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 120 -                     if (retu.len()> 2) {
[INFO] [stdout] 120 +                     if retu.len()> 2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/source/mangago.rs:123:31
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     } else if (retu.len() == 2) {
[INFO] [stdout]     |                               ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 123 -                     } else if (retu.len() == 2) {
[INFO] [stdout] 123 +                     } else if retu.len() == 2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/test.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/source/mangago.rs:125:31
[INFO] [stdout]     |
[INFO] [stdout] 125 |                     } else if (retu.len() > 0) {
[INFO] [stdout]     |                               ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 125 -                     } else if (retu.len() > 0) {
[INFO] [stdout] 125 +                     } else if retu.len() > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImage`
[INFO] [stdout]    --> src/source/mangago.rs:476:31
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImage`
[INFO] [stdout]    --> src/source/mangago.rs:937:31
[INFO] [stdout]     |
[INFO] [stdout] 937 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `block_padding::ZeroPadding`
[INFO] [stdout]  --> src/utils.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use block_padding::ZeroPadding;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::style::palette::tailwind`
[INFO] [stdout]  --> src/utils.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use ratatui::style::palette::tailwind;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]  --> src/utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use regex::Regex;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Aes128` and `cipher::BlockDecryptMut`
[INFO] [stdout]  --> src/utils.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use aes::{Aes128, cipher::BlockDecryptMut}; // Use Aes256 if your key is 32 bytes
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Decryptor`
[INFO] [stdout]  --> src/utils.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use cbc::{Decryptor, cipher::KeyIvInit};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::panic`
[INFO] [stdout]  --> src/utils.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use std::panic;
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::OpenOptions`
[INFO] [stdout]   --> src/utils.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     use std::fs::OpenOptions;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/utils.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::backtrace::Backtrace`
[INFO] [stdout]   --> src/utils.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use std::backtrace::Backtrace;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command`, `Stdio`, and `format`
[INFO] [stdout]   --> src/main.rs:18:48
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::{cell::RefCell, collections::HashMap, format, process::{Command, Stdio}, rc::Rc, sync::Arc, time::Duration, vec};
[INFO] [stdout]    |                                                ^^^^^^            ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ListItem`, `ListState`, `List`, `StatefulWidget`, and `Text`
[INFO] [stdout]   --> src/main.rs:21:200
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...Line, Span, Text}, widgets::{Block, BorderType, Borders, Clear, List, ListItem, ListState, Paragraph, StatefulWidget}
[INFO] [stdout]    |                ^^^^                                                ^^^^  ^^^^^^^^  ^^^^^^^^^             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EpisodeListItem`
[INFO] [stdout]   --> src/main.rs:23:547
[INFO] [stdout]    |
[INFO] [stdout] 23 | ...sChange, Settings, SettingsState}, source::{AnimeSource, EpisodeListItem, MangaMetadata, MangaSource, SourceType, animeworld, man...
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/main.rs:410:41
[INFO] [stdout]     |
[INFO] [stdout] 410 | ...                   k @ (KeyCode::Esc ) => {
[INFO] [stdout]     |                           ^            ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 410 -                                     k @ (KeyCode::Esc ) => {
[INFO] [stdout] 410 +                                     k @ KeyCode::Esc => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/main.rs:483:12
[INFO] [stdout]     |
[INFO] [stdout] 483 |         if (getConfig().General.askToQuit) {
[INFO] [stdout]     |            ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 483 -         if (getConfig().General.askToQuit) {
[INFO] [stdout] 483 +         if getConfig().General.askToQuit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]    --> src/main.rs:865:39
[INFO] [stdout]     |
[INFO] [stdout] 865 | ...                   match (c) {
[INFO] [stdout]     |                             ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 865 -                                 match (c) {
[INFO] [stdout] 865 +                                 match c {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/main.rs:957:52
[INFO] [stdout]     |
[INFO] [stdout] 957 | ...                   if (state.flag_reverse) {
[INFO] [stdout]     |                          ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 957 -                                                 if (state.flag_reverse) {
[INFO] [stdout] 957 +                                                 if state.flag_reverse {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1036:39
[INFO] [stdout]      |
[INFO] [stdout] 1036 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1036 -                                 match (c) {
[INFO] [stdout] 1036 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/main.rs:1128:52
[INFO] [stdout]      |
[INFO] [stdout] 1128 | ...                   if (state.flag_reverse) {
[INFO] [stdout]      |                          ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1128 -                                                 if (state.flag_reverse) {
[INFO] [stdout] 1128 +                                                 if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1267:39
[INFO] [stdout]      |
[INFO] [stdout] 1267 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1267 -                                 match (c) {
[INFO] [stdout] 1267 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1380:39
[INFO] [stdout]      |
[INFO] [stdout] 1380 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1380 -                                 match (c) {
[INFO] [stdout] 1380 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/main.rs:1418:40
[INFO] [stdout]      |
[INFO] [stdout] 1418 | ...                   if (state.flag_reverse) {
[INFO] [stdout]      |                          ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1418 -                                     if (state.flag_reverse) {
[INFO] [stdout] 1418 +                                     if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Config`, `getConfig`, and `mangago::Mangago`
[INFO] [stdout]  --> src/test.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use crate::{config::{Config, getConfig}, extension::Extension, source::{MangaSource, SourceType, mangago::Mangago}};
[INFO] [stdout]   |                          ^^^^^^  ^^^^^^^^^                                                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec`
[INFO] [stdout]  --> src/extension.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{format, fs, vec};
[INFO] [stdout]   |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Library`
[INFO] [stdout]  --> src/extension.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::components::Library;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::library::LibraryItem`
[INFO] [stdout]  --> src/extension.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::library::LibraryItem;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Episode`
[INFO] [stdout]   --> src/extension.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::source::{AnimeSource, Episode, MangaSource, SourceType};
[INFO] [stdout]    |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::ser::Error`
[INFO] [stdout]  --> src/player.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use serde::ser::Error;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `sleep`, and `time::Duration`
[INFO] [stdout]  --> src/player.rs:6:107
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...g}, Arc, mpsc::{self, Sender}}, thread::{sleep, spawn}, time::Duration, format, io::{Read, Write}, path::Path };
[INFO] [stdout]   |                                             ^^^^^          ^^^^^^^^^^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `rand_bytes` and `self`
[INFO] [stdout]  --> src/player.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use openssl::rand::{self, rand_bytes};
[INFO] [stdout]   |                         ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `List` and `crossterm::event::KeyEvent`
[INFO] [stdout]  --> src/settings.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::{crossterm::event::KeyEvent, style::Style, widgets::{List, StatefulWidget, Widget}};
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^^^^^                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App` and `load_config`
[INFO] [stdout]  --> src/settings.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...::{App, AppState, appmessages::MessageType, components::ListOption::{Item, ListOption, ListOptionState, Section}, config::{getConfig, getDevice, load_config, s...
[INFO] [stdout]   |       ^^^                                                                                                                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/settings.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 |         if (cfg!(feature = "remote")) {
[INFO] [stdout]    |            ^                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 62 -         if (cfg!(feature = "remote")) {
[INFO] [stdout] 62 +         if cfg!(feature = "remote") {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/settings.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 if (v.to_lowercase() == "none") {
[INFO] [stdout]    |                    ^                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 74 -                 if (v.to_lowercase() == "none") {
[INFO] [stdout] 74 +                 if v.to_lowercase() == "none" {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `builtins::boolean` and `object::Ref`
[INFO] [stdout]  --> src/main.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use boa_engine::{builtins::boolean, object::Ref};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toml::value::Time`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use toml::value::Time;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `default`
[INFO] [stdout]  --> src/config.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{default, fs, sync::{LazyLock, Mutex, RwLock}};
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1560:39
[INFO] [stdout]      |
[INFO] [stdout] 1560 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1560 -                                 match (c) {
[INFO] [stdout] 1560 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1673:39
[INFO] [stdout]      |
[INFO] [stdout] 1673 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1673 -                                 match (c) {
[INFO] [stdout] 1673 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/main.rs:1712:40
[INFO] [stdout]      |
[INFO] [stdout] 1712 | ...                   if (state.flag_reverse) {
[INFO] [stdout]      |                          ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1712 -                                     if (state.flag_reverse) {
[INFO] [stdout] 1712 +                                     if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils::utils::ColorPickerOption`
[INFO] [stdout]  --> src/config.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{player::Player::{AnimePlayer, Vlc}, utils::utils::ColorPickerOption};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::clone`
[INFO] [stdout]  --> src/components.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::clone;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `boa_engine::builtins::boolean`
[INFO] [stdout]  --> src/components.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use boa_engine::builtins::boolean;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `Borders`, `ListItem`, `ListState`, and `List`
[INFO] [stdout]  --> src/components.rs:4:94
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...{Constraint, Layout}, text::Text, widgets::{Block, Borders, List, ListItem, ListState, StatefulWidget, Widget}};
[INFO] [stdout]   |                                                ^^^^^  ^^^^^^^  ^^^^  ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash::Hash` and `sync::Arc`
[INFO] [stdout]    --> src/components.rs:332:52
[INFO] [stdout]     |
[INFO] [stdout] 332 |     use std::{cmp::Ordering, collections::HashMap, hash::Hash, sync::Arc};
[INFO] [stdout]     |                                                    ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils::utils::hash_sort`
[INFO] [stdout]    --> src/components.rs:336:113
[INFO] [stdout]     |
[INFO] [stdout] 336 | ...braryItem}, source::{EpisodeListItem, MangaSource}, utils::utils::hash_sort};
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/components.rs:508:101
[INFO] [stdout]     |
[INFO] [stdout] 508 |             let lay = Layout::default().direction(ratatui::layout::Direction::Vertical).constraints(([
[INFO] [stdout]     |                                                                                                     ^
[INFO] [stdout] ...
[INFO] [stdout] 511 |             ])).margin(0).spacing(0).split(hor[0]);
[INFO] [stdout]     |              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 508 ~             let lay = Layout::default().direction(ratatui::layout::Direction::Vertical).constraints([
[INFO] [stdout] 509 |                 Constraint::Percentage(100),
[INFO] [stdout] 510 |                 Constraint::Length(2)
[INFO] [stdout] 511 ~             ]).margin(0).spacing(0).split(hor[0]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/components.rs:574:95
[INFO] [stdout]     |
[INFO] [stdout] 574 |                         let list_ep = List::new(eps).block(block_eps).highlight_symbol(">> ");;
[INFO] [stdout]     |                                                                                               ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/components.rs:566:28
[INFO] [stdout]     |
[INFO] [stdout] 566 |                         if (state.flag_reverse) {
[INFO] [stdout]     |                            ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 566 -                         if (state.flag_reverse) {
[INFO] [stdout] 566 +                         if state.flag_reverse {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `ops::Index`
[INFO] [stdout]    --> src/components.rs:694:30
[INFO] [stdout]     |
[INFO] [stdout] 694 |     use std::{cell::RefCell, collections::HashMap, ops::Index, rc::Rc};
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `boa_engine::ast::expression::Optional`
[INFO] [stdout]    --> src/components.rs:696:9
[INFO] [stdout]     |
[INFO] [stdout] 696 |     use boa_engine::ast::expression::Optional;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `List`, `Rows`, `Table`, and `symbols::line`
[INFO] [stdout]    --> src/components.rs:697:93
[INFO] [stdout]     |
[INFO] [stdout] 697 | ...ct, Rows}, style::{Style}, symbols::line, text::{Line, Span, Text}, widgets::{Block, BorderType, List, StatefulWidget, Table, Wi...
[INFO] [stdout]     |        ^^^^                   ^^^^^^^^^^^^^                                                         ^^^^                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/components.rs:776:25
[INFO] [stdout]     |
[INFO] [stdout] 776 |                     k @ (KeyCode::Enter) => {
[INFO] [stdout]     |                         ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 776 -                     k @ (KeyCode::Enter) => {
[INFO] [stdout] 776 +                     k @ KeyCode::Enter => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/components.rs:777:28
[INFO] [stdout]     |
[INFO] [stdout] 777 |                         if (self.edit_option){
[INFO] [stdout]     |                            ^                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 777 -                         if (self.edit_option){
[INFO] [stdout] 777 +                         if self.edit_option {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/components.rs:1257:20
[INFO] [stdout]      |
[INFO] [stdout] 1257 |                 if (c.is_ascii()) {
[INFO] [stdout]      |                    ^            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1257 -                 if (c.is_ascii()) {
[INFO] [stdout] 1257 +                 if c.is_ascii() {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash::Hash` and `sync::Arc`
[INFO] [stdout]     --> src/components.rs:1296:52
[INFO] [stdout]      |
[INFO] [stdout] 1296 |     use std::{cmp::Ordering, collections::HashMap, hash::Hash, sync::Arc};
[INFO] [stdout]      |                                                    ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `openssl::derive`
[INFO] [stdout]     --> src/components.rs:1298:9
[INFO] [stdout]      |
[INFO] [stdout] 1298 |     use openssl::derive;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `canvas::Label` and `text::Text`
[INFO] [stdout]     --> src/components.rs:1299:81
[INFO] [stdout]      |
[INFO] [stdout] 1299 | ...e, text::Text, widgets::{Block, BorderType, Borders, List, ListItem, ListState, Paragraph, StatefulWidget, Widget, canvas::Label}};
[INFO] [stdout]      |       ^^^^^^^^^^                                                                                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LibraryItem`, `ListOption::Item`, `config::getConfig`, `self`, `settings::ApplySettingsChange`, and `utils::utils::hash_sort`
[INFO] [stdout]     --> src/components.rs:1301:56
[INFO] [stdout]      |
[INFO] [stdout] 1301 | ...::{ListOption::Item, TextInputState}, config::getConfig, library::{self, LibraryItem}, settings::ApplySettingsChange, source::{AnimeSource, Episode, EpisodeListItem, MangaSource}, utils::utils::hash_sort};
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^                   ^^^^^^^^^^^^^^^^^            ^^^^  ^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/components.rs:1415:93
[INFO] [stdout]      |
[INFO] [stdout] 1415 |             let list_res = List::new(keys).block(block_eps.clone()).highlight_symbol(">> ");;
[INFO] [stdout]      |                                                                                             ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/components.rs:1431:88
[INFO] [stdout]      |
[INFO] [stdout] 1431 |                 let list_eps = List::new(eps).block(block_eps).highlight_symbol(">> ");;
[INFO] [stdout]      |                                                                                        ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/components.rs:1423:20
[INFO] [stdout]      |
[INFO] [stdout] 1423 |                 if (state.flag_reverse) {
[INFO] [stdout]      |                    ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1423 -                 if (state.flag_reverse) {
[INFO] [stdout] 1423 +                 if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Stdio`
[INFO] [stdout]  --> src/source/animeworld.rs:2:60
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, format, process::{Command, Stdio}};
[INFO] [stdout]   |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `f64::consts::E` and `sync::Arc`
[INFO] [stdout]  --> src/source/mangaworld.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, format, io::Read, sync::Arc};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElementRef`
[INFO] [stdout]  --> src/source/mangaworld.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use scraper::{ElementRef, Html, Selector};
[INFO] [stdout]   |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zip::write::SimpleFileOptions`
[INFO] [stdout]  --> src/source/mangaworld.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use zip::write::SimpleFileOptions;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `openManga`
[INFO] [stdout]  --> src/source/mangaworld.rs:7:88
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{source::{Episode, EpisodeListItem, MangaMetadata, MangaSource, SourceType, openManga}, utils::utils::{AsyncError, MangaCb...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `f64::consts::E`, `fmt::format`, and `iter::Once`
[INFO] [stdout]  --> src/source/mangago.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, fmt::format, format, io::Read, iter::Once, sync::OnceLock};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^^^  ^^^^^^^^^^^                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine` and `engine::general_purpose`
[INFO] [stdout]  --> src/source/mangago.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use base64::{Engine, engine::general_purpose};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hex::decode`
[INFO] [stdout]  --> src/source/mangago.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use hex::decode;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]  --> src/source/mangago.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use regex::Regex;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HeaderMap`, `HeaderValue`, `Response`, and `get`
[INFO] [stdout]  --> src/source/mangago.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use reqwest::{Client, Response, get, header::{HeaderMap, HeaderValue}};
[INFO] [stdout]   |                       ^^^^^^^^  ^^^           ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Context`
[INFO] [stdout]  --> src/source/mangago.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use anyhow::{Context, Result};
[INFO] [stdout]   |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zip::write::SimpleFileOptions`
[INFO] [stdout]  --> src/source/mangago.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use zip::write::SimpleFileOptions;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/source/mangago.rs:120:24
[INFO] [stdout]     |
[INFO] [stdout] 120 |                     if (retu.len()> 2) {
[INFO] [stdout]     |                        ^             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 120 -                     if (retu.len()> 2) {
[INFO] [stdout] 120 +                     if retu.len()> 2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/source/mangago.rs:123:31
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     } else if (retu.len() == 2) {
[INFO] [stdout]     |                               ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 123 -                     } else if (retu.len() == 2) {
[INFO] [stdout] 123 +                     } else if retu.len() == 2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/source/mangago.rs:125:31
[INFO] [stdout]     |
[INFO] [stdout] 125 |                     } else if (retu.len() > 0) {
[INFO] [stdout]     |                               ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 125 -                     } else if (retu.len() > 0) {
[INFO] [stdout] 125 +                     } else if retu.len() > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImage`
[INFO] [stdout]    --> src/source/mangago.rs:476:31
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImage`
[INFO] [stdout]    --> src/source/mangago.rs:937:31
[INFO] [stdout]     |
[INFO] [stdout] 937 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `block_padding::ZeroPadding`
[INFO] [stdout]  --> src/utils.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use block_padding::ZeroPadding;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::style::palette::tailwind`
[INFO] [stdout]  --> src/utils.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use ratatui::style::palette::tailwind;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]  --> src/utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use regex::Regex;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Aes128` and `cipher::BlockDecryptMut`
[INFO] [stdout]  --> src/utils.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use aes::{Aes128, cipher::BlockDecryptMut}; // Use Aes256 if your key is 32 bytes
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Decryptor`
[INFO] [stdout]  --> src/utils.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use cbc::{Decryptor, cipher::KeyIvInit};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::panic`
[INFO] [stdout]  --> src/utils.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use std::panic;
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::OpenOptions`
[INFO] [stdout]   --> src/utils.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     use std::fs::OpenOptions;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/utils.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::backtrace::Backtrace`
[INFO] [stdout]   --> src/utils.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use std::backtrace::Backtrace;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command`, `Stdio`, and `format`
[INFO] [stdout]   --> src/main.rs:18:48
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::{cell::RefCell, collections::HashMap, format, process::{Command, Stdio}, rc::Rc, sync::Arc, time::Duration, vec};
[INFO] [stdout]    |                                                ^^^^^^            ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ListItem`, `ListState`, `List`, `StatefulWidget`, and `Text`
[INFO] [stdout]   --> src/main.rs:21:200
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...Line, Span, Text}, widgets::{Block, BorderType, Borders, Clear, List, ListItem, ListState, Paragraph, StatefulWidget}
[INFO] [stdout]    |                ^^^^                                                ^^^^  ^^^^^^^^  ^^^^^^^^^             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EpisodeListItem`
[INFO] [stdout]   --> src/main.rs:23:547
[INFO] [stdout]    |
[INFO] [stdout] 23 | ...sChange, Settings, SettingsState}, source::{AnimeSource, EpisodeListItem, MangaMetadata, MangaSource, SourceType, animeworld, man...
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/main.rs:410:41
[INFO] [stdout]     |
[INFO] [stdout] 410 | ...                   k @ (KeyCode::Esc ) => {
[INFO] [stdout]     |                           ^            ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 410 -                                     k @ (KeyCode::Esc ) => {
[INFO] [stdout] 410 +                                     k @ KeyCode::Esc => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/main.rs:483:12
[INFO] [stdout]     |
[INFO] [stdout] 483 |         if (getConfig().General.askToQuit) {
[INFO] [stdout]     |            ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 483 -         if (getConfig().General.askToQuit) {
[INFO] [stdout] 483 +         if getConfig().General.askToQuit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]    --> src/main.rs:865:39
[INFO] [stdout]     |
[INFO] [stdout] 865 | ...                   match (c) {
[INFO] [stdout]     |                             ^ ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 865 -                                 match (c) {
[INFO] [stdout] 865 +                                 match c {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/main.rs:957:52
[INFO] [stdout]     |
[INFO] [stdout] 957 | ...                   if (state.flag_reverse) {
[INFO] [stdout]     |                          ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 957 -                                                 if (state.flag_reverse) {
[INFO] [stdout] 957 +                                                 if state.flag_reverse {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1036:39
[INFO] [stdout]      |
[INFO] [stdout] 1036 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1036 -                                 match (c) {
[INFO] [stdout] 1036 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/main.rs:1128:52
[INFO] [stdout]      |
[INFO] [stdout] 1128 | ...                   if (state.flag_reverse) {
[INFO] [stdout]      |                          ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1128 -                                                 if (state.flag_reverse) {
[INFO] [stdout] 1128 +                                                 if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1267:39
[INFO] [stdout]      |
[INFO] [stdout] 1267 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1267 -                                 match (c) {
[INFO] [stdout] 1267 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1380:39
[INFO] [stdout]      |
[INFO] [stdout] 1380 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1380 -                                 match (c) {
[INFO] [stdout] 1380 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/main.rs:1418:40
[INFO] [stdout]      |
[INFO] [stdout] 1418 | ...                   if (state.flag_reverse) {
[INFO] [stdout]      |                          ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1418 -                                     if (state.flag_reverse) {
[INFO] [stdout] 1418 +                                     if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1560:39
[INFO] [stdout]      |
[INFO] [stdout] 1560 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1560 -                                 match (c) {
[INFO] [stdout] 1560 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]     --> src/main.rs:1673:39
[INFO] [stdout]      |
[INFO] [stdout] 1673 | ...                   match (c) {
[INFO] [stdout]      |                             ^ ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1673 -                                 match (c) {
[INFO] [stdout] 1673 +                                 match c {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/main.rs:1712:40
[INFO] [stdout]      |
[INFO] [stdout] 1712 | ...                   if (state.flag_reverse) {
[INFO] [stdout]      |                          ^                  ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1712 -                                     if (state.flag_reverse) {
[INFO] [stdout] 1712 +                                     if state.flag_reverse {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io::Read`
[INFO] [stdout]  --> src/source/mangaworld.rs:1:57
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, format, io::Read, sync::Arc};
[INFO] [stdout]   |                                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Element`
[INFO] [stdout]  --> src/source/mangago.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use scraper::{Element, Html, Selector};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cipher::KeyIvInit`
[INFO] [stdout]  --> src/utils.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use cbc::{Decryptor, cipher::KeyIvInit};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Widget`
[INFO] [stdout]  --> src/settings.rs:1:89
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::{crossterm::event::KeyEvent, style::Style, widgets::{List, StatefulWidget, Widget}};
[INFO] [stdout]   |                                                                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MangaSource`
[INFO] [stdout]    --> src/components.rs:336:99
[INFO] [stdout]     |
[INFO] [stdout] 336 |     use crate::{appmessages::MessageType, library::{self, LibraryItem}, source::{EpisodeListItem, MangaSource}, utils::utils::hash_...
[INFO] [stdout]     |                                                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]    --> src/source/mangago.rs:476:45
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]    --> src/source/mangago.rs:937:45
[INFO] [stdout]     |
[INFO] [stdout] 937 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AnimeSource`
[INFO] [stdout]     --> src/components.rs:1301:180
[INFO] [stdout]      |
[INFO] [stdout] 1301 | ...lf, LibraryItem}, settings::ApplySettingsChange, source::{AnimeSource, Episode, EpisodeListItem, MangaSource}, utils::utils::ha...
[INFO] [stdout]      |                                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MangaSource`
[INFO] [stdout]     --> src/components.rs:1301:219
[INFO] [stdout]      |
[INFO] [stdout] 1301 | ...gsChange, source::{AnimeSource, Episode, EpisodeListItem, MangaSource}, utils::utils::hash_sort};
[INFO] [stdout]      |                                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io::Read`
[INFO] [stdout]  --> src/source/mangago.rs:1:70
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, fmt::format, format, io::Read, iter::Once, sync::OnceLock};
[INFO] [stdout]   |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]   --> src/player.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     Err(err) => {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `worker_handle`
[INFO] [stdout]    --> src/player.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |                 let worker_handle = spawn(move || {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_worker_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_a`
[INFO] [stdout]   --> src/settings.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let tx_a = tx.clone();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tx_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Element`
[INFO] [stdout]  --> src/source/mangago.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | use scraper::{Element, Html, Selector};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io::Read`
[INFO] [stdout]  --> src/source/mangaworld.rs:1:57
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, format, io::Read, sync::Arc};
[INFO] [stdout]   |                                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cipher::KeyIvInit`
[INFO] [stdout]  --> src/utils.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use cbc::{Decryptor, cipher::KeyIvInit};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Widget`
[INFO] [stdout]  --> src/settings.rs:1:89
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::{crossterm::event::KeyEvent, style::Style, widgets::{List, StatefulWidget, Widget}};
[INFO] [stdout]   |                                                                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]    --> src/source/mangago.rs:937:45
[INFO] [stdout]     |
[INFO] [stdout] 937 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MangaSource`
[INFO] [stdout]    --> src/components.rs:336:99
[INFO] [stdout]     |
[INFO] [stdout] 336 |     use crate::{appmessages::MessageType, library::{self, LibraryItem}, source::{EpisodeListItem, MangaSource}, utils::utils::hash_...
[INFO] [stdout]     |                                                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]    --> src/source/mangago.rs:476:45
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use image::{DynamicImage, GenericImage, GenericImageView, ImageFormat};
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AnimeSource`
[INFO] [stdout]     --> src/components.rs:1301:180
[INFO] [stdout]      |
[INFO] [stdout] 1301 | ...lf, LibraryItem}, settings::ApplySettingsChange, source::{AnimeSource, Episode, EpisodeListItem, MangaSource}, utils::utils::ha...
[INFO] [stdout]      |                                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MangaSource`
[INFO] [stdout]     --> src/components.rs:1301:219
[INFO] [stdout]      |
[INFO] [stdout] 1301 | ...gsChange, source::{AnimeSource, Episode, EpisodeListItem, MangaSource}, utils::utils::hash_sort};
[INFO] [stdout]      |                                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io::Read`
[INFO] [stdout]  --> src/source/mangago.rs:1:70
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, f64::consts::E, fmt::format, format, io::Read, iter::Once, sync::OnceLock};
[INFO] [stdout]   |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]   --> src/player.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     Err(err) => {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `worker_handle`
[INFO] [stdout]    --> src/player.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |                 let worker_handle = spawn(move || {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_worker_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_a`
[INFO] [stdout]   --> src/settings.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let tx_a = tx.clone();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_tx_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]    --> src/components.rs:288:25
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     let h = source.get_hostname();
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uai`
[INFO] [stdout]    --> src/components.rs:367:25
[INFO] [stdout]     |
[INFO] [stdout] 367 |                     (Ok(uai), Err(_))=>Ordering::Greater,
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_uai`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ubi`
[INFO] [stdout]    --> src/components.rs:368:33
[INFO] [stdout]     |
[INFO] [stdout] 368 |                     (Err(_), Ok(ubi))=>Ordering::Less,
[INFO] [stdout]     |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_ubi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components.rs:530:25
[INFO] [stdout]     |
[INFO] [stdout] 530 |                     let mut keys: Vec<&String> = state.lib.keys();
[INFO] [stdout]     |                         ----^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]    --> src/components.rs:650:25
[INFO] [stdout]     |
[INFO] [stdout] 650 |                     let h = source.get_hostname();
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/components.rs:776:21
[INFO] [stdout]     |
[INFO] [stdout] 776 |                     k @ (KeyCode::Enter) => {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:780:63
[INFO] [stdout]     |
[INFO] [stdout] 780 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:783:60
[INFO] [stdout]     |
[INFO] [stdout] 783 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:783:65
[INFO] [stdout]     |
[INFO] [stdout] 783 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:783:70
[INFO] [stdout]     |
[INFO] [stdout] 783 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:784:60
[INFO] [stdout]     |
[INFO] [stdout] 784 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:784:65
[INFO] [stdout]     |
[INFO] [stdout] 784 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:799:63
[INFO] [stdout]     |
[INFO] [stdout] 799 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:799:68
[INFO] [stdout]     |
[INFO] [stdout] 799 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:802:60
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:802:65
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:802:70
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:803:60
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:803:65
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:803:78
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:803:83
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                         ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:813:59
[INFO] [stdout]     |
[INFO] [stdout] 813 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:813:64
[INFO] [stdout]     |
[INFO] [stdout] 813 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:813:69
[INFO] [stdout]     |
[INFO] [stdout] 813 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                               ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:814:56
[INFO] [stdout]     |
[INFO] [stdout] 814 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:814:61
[INFO] [stdout]     |
[INFO] [stdout] 814 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:814:66
[INFO] [stdout]     |
[INFO] [stdout] 814 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:815:56
[INFO] [stdout]     |
[INFO] [stdout] 815 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:815:61
[INFO] [stdout]     |
[INFO] [stdout] 815 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:815:74
[INFO] [stdout]     |
[INFO] [stdout] 815 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:830:59
[INFO] [stdout]     |
[INFO] [stdout] 830 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:830:64
[INFO] [stdout]     |
[INFO] [stdout] 830 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:830:69
[INFO] [stdout]     |
[INFO] [stdout] 830 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                               ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:831:56
[INFO] [stdout]     |
[INFO] [stdout] 831 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:831:61
[INFO] [stdout]     |
[INFO] [stdout] 831 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:831:66
[INFO] [stdout]     |
[INFO] [stdout] 831 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:832:56
[INFO] [stdout]     |
[INFO] [stdout] 832 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:832:61
[INFO] [stdout]     |
[INFO] [stdout] 832 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:832:74
[INFO] [stdout]     |
[INFO] [stdout] 832 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:861:59
[INFO] [stdout]     |
[INFO] [stdout] 861 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:861:64
[INFO] [stdout]     |
[INFO] [stdout] 861 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:875:56
[INFO] [stdout]     |
[INFO] [stdout] 875 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:875:61
[INFO] [stdout]     |
[INFO] [stdout] 875 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:875:66
[INFO] [stdout]     |
[INFO] [stdout] 875 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:876:56
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:876:61
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:876:74
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:876:79
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                         ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/components.rs:1039:17
[INFO] [stdout]      |
[INFO] [stdout] 1030 |                 _ => {
[INFO] [stdout]      |                 - matches any value
[INFO] [stdout] ...
[INFO] [stdout] 1039 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]    --> src/components.rs:288:25
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     let h = source.get_hostname();
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uai`
[INFO] [stdout]    --> src/components.rs:367:25
[INFO] [stdout]     |
[INFO] [stdout] 367 |                     (Ok(uai), Err(_))=>Ordering::Greater,
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_uai`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ubi`
[INFO] [stdout]    --> src/components.rs:368:33
[INFO] [stdout]     |
[INFO] [stdout] 368 |                     (Err(_), Ok(ubi))=>Ordering::Less,
[INFO] [stdout]     |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_ubi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1002:61
[INFO] [stdout]      |
[INFO] [stdout] 1002 |                 ItemOption::SelectOption { get,get_options, set, state } => {
[INFO] [stdout]      |                                                             ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1012:47
[INFO] [stdout]      |
[INFO] [stdout] 1012 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                               ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1012:52
[INFO] [stdout]      |
[INFO] [stdout] 1012 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1027:44
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                            ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1027:49
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                 ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/components.rs:1027:54
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                      ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1039:48
[INFO] [stdout]      |
[INFO] [stdout] 1039 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                                ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/components.rs:1146:17
[INFO] [stdout]      |
[INFO] [stdout] 1137 |                 _ => {
[INFO] [stdout]      |                 - matches any value
[INFO] [stdout] ...
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1095:61
[INFO] [stdout]      |
[INFO] [stdout] 1095 |                 ItemOption::SelectOption { get,get_options, set, state } => {
[INFO] [stdout]      |                                                             ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1104:47
[INFO] [stdout]      |
[INFO] [stdout] 1104 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                               ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1104:52
[INFO] [stdout]      |
[INFO] [stdout] 1104 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1134:44
[INFO] [stdout]      |
[INFO] [stdout] 1134 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                            ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1134:49
[INFO] [stdout]      |
[INFO] [stdout] 1134 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                 ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/components.rs:1134:54
[INFO] [stdout]      |
[INFO] [stdout] 1134 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                      ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1146:43
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                           ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1146:48
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                                ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/components.rs:1146:53
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                                     ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components.rs:530:25
[INFO] [stdout]     |
[INFO] [stdout] 530 |                     let mut keys: Vec<&String> = state.lib.keys();
[INFO] [stdout]     |                         ----^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sel`
[INFO] [stdout]     --> src/components.rs:1217:13
[INFO] [stdout]      |
[INFO] [stdout] 1217 |         let sel = state.get_selected_item();
[INFO] [stdout]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_sel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sstyle`
[INFO] [stdout]     --> src/components.rs:1218:13
[INFO] [stdout]      |
[INFO] [stdout] 1218 |         let sstyle = state.get_selected_item().and_then(|s| s.style);
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sstyle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]    --> src/components.rs:650:25
[INFO] [stdout]     |
[INFO] [stdout] 650 |                     let h = source.get_hostname();
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]     --> src/components.rs:1381:17
[INFO] [stdout]      |
[INFO] [stdout] 1381 |             let block = Block::default().title("Search").borders(Borders::ALL);
[INFO] [stdout]      |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]     --> src/components.rs:1386:17
[INFO] [stdout]      |
[INFO] [stdout] 1386 |             let tx = self.trasmitter_to_app.clone();
[INFO] [stdout]      |                 ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/components.rs:776:21
[INFO] [stdout]     |
[INFO] [stdout] 776 |                     k @ (KeyCode::Enter) => {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:780:63
[INFO] [stdout]     |
[INFO] [stdout] 780 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:783:60
[INFO] [stdout]     |
[INFO] [stdout] 783 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:783:65
[INFO] [stdout]     |
[INFO] [stdout] 783 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:783:70
[INFO] [stdout]     |
[INFO] [stdout] 783 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:784:60
[INFO] [stdout]     |
[INFO] [stdout] 784 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:784:65
[INFO] [stdout]     |
[INFO] [stdout] 784 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:799:63
[INFO] [stdout]     |
[INFO] [stdout] 799 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:799:68
[INFO] [stdout]     |
[INFO] [stdout] 799 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:802:60
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:802:65
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:802:70
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:803:60
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:803:65
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:803:78
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:803:83
[INFO] [stdout]     |
[INFO] [stdout] 803 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                         ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:813:59
[INFO] [stdout]     |
[INFO] [stdout] 813 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:813:64
[INFO] [stdout]     |
[INFO] [stdout] 813 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:813:69
[INFO] [stdout]     |
[INFO] [stdout] 813 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                               ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:814:56
[INFO] [stdout]     |
[INFO] [stdout] 814 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:814:61
[INFO] [stdout]     |
[INFO] [stdout] 814 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:814:66
[INFO] [stdout]     |
[INFO] [stdout] 814 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:815:56
[INFO] [stdout]     |
[INFO] [stdout] 815 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:815:61
[INFO] [stdout]     |
[INFO] [stdout] 815 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:815:74
[INFO] [stdout]     |
[INFO] [stdout] 815 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:830:59
[INFO] [stdout]     |
[INFO] [stdout] 830 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:830:64
[INFO] [stdout]     |
[INFO] [stdout] 830 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:830:69
[INFO] [stdout]     |
[INFO] [stdout] 830 | ...                   ItemOption::TextInputOption { get, set, state } => {},
[INFO] [stdout]     |                                                               ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:831:56
[INFO] [stdout]     |
[INFO] [stdout] 831 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:831:61
[INFO] [stdout]     |
[INFO] [stdout] 831 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:831:66
[INFO] [stdout]     |
[INFO] [stdout] 831 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:832:56
[INFO] [stdout]     |
[INFO] [stdout] 832 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sel_index`
[INFO] [stdout]   --> src/source/animeworld.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let sel_index = Selector::parse("div.film-list").unwrap();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sel_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:832:61
[INFO] [stdout]     |
[INFO] [stdout] 832 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:832:74
[INFO] [stdout]     |
[INFO] [stdout] 832 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:861:59
[INFO] [stdout]     |
[INFO] [stdout] 861 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:861:64
[INFO] [stdout]     |
[INFO] [stdout] 861 | ...                   ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]     |                                                          ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:875:56
[INFO] [stdout]     |
[INFO] [stdout] 875 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:875:61
[INFO] [stdout]     |
[INFO] [stdout] 875 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                       ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:875:66
[INFO] [stdout]     |
[INFO] [stdout] 875 | ...                   ItemOption::SwitchOption { get, set, state } => {},
[INFO] [stdout]     |                                                            ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]    --> src/components.rs:876:56
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                  ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get_options`
[INFO] [stdout]    --> src/components.rs:876:61
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                       ^^^^^^^^^^^ help: try ignoring the field: `get_options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]    --> src/components.rs:876:74
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/components.rs:876:79
[INFO] [stdout]     |
[INFO] [stdout] 876 | ...                   ItemOption::SelectOption { get, get_options, set, state } => {},
[INFO] [stdout]     |                                                                         ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/components.rs:1039:17
[INFO] [stdout]      |
[INFO] [stdout] 1030 |                 _ => {
[INFO] [stdout]      |                 - matches any value
[INFO] [stdout] ...
[INFO] [stdout] 1039 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1002:61
[INFO] [stdout]      |
[INFO] [stdout] 1002 |                 ItemOption::SelectOption { get,get_options, set, state } => {
[INFO] [stdout]      |                                                             ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1012:47
[INFO] [stdout]      |
[INFO] [stdout] 1012 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                               ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1012:52
[INFO] [stdout]      |
[INFO] [stdout] 1012 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1027:44
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                            ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1027:49
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                 ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/components.rs:1027:54
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                      ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1039:48
[INFO] [stdout]      |
[INFO] [stdout] 1039 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                                ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/components.rs:1146:17
[INFO] [stdout]      |
[INFO] [stdout] 1137 |                 _ => {
[INFO] [stdout]      |                 - matches any value
[INFO] [stdout] ...
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1095:61
[INFO] [stdout]      |
[INFO] [stdout] 1095 |                 ItemOption::SelectOption { get,get_options, set, state } => {
[INFO] [stdout]      |                                                             ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1104:47
[INFO] [stdout]      |
[INFO] [stdout] 1104 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                               ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1104:52
[INFO] [stdout]      |
[INFO] [stdout] 1104 |                 ItemOption::TextInputOption { get, set, state } => {
[INFO] [stdout]      |                                                    ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1134:44
[INFO] [stdout]      |
[INFO] [stdout] 1134 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                            ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1134:49
[INFO] [stdout]      |
[INFO] [stdout] 1134 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                 ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/components.rs:1134:54
[INFO] [stdout]      |
[INFO] [stdout] 1134 |                 ItemOption::SwitchOption { get, set, state } => {
[INFO] [stdout]      |                                                      ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `get`
[INFO] [stdout]     --> src/components.rs:1146:43
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                           ^^^ help: try ignoring the field: `get: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set`
[INFO] [stdout]     --> src/components.rs:1146:48
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                                ^^^ help: try ignoring the field: `set: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/components.rs:1146:53
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 ItemOption::ColorPicker { get, set, state } => {
[INFO] [stdout]      |                                                     ^^^^^ help: try ignoring the field: `state: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sel`
[INFO] [stdout]     --> src/components.rs:1217:13
[INFO] [stdout]      |
[INFO] [stdout] 1217 |         let sel = state.get_selected_item();
[INFO] [stdout]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_sel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sstyle`
[INFO] [stdout]     --> src/components.rs:1218:13
[INFO] [stdout]      |
[INFO] [stdout] 1218 |         let sstyle = state.get_selected_item().and_then(|s| s.style);
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sstyle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]     --> src/components.rs:1381:17
[INFO] [stdout]      |
[INFO] [stdout] 1381 |             let block = Block::default().title("Search").borders(Borders::ALL);
[INFO] [stdout]      |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]     --> src/components.rs:1386:17
[INFO] [stdout]      |
[INFO] [stdout] 1386 |             let tx = self.trasmitter_to_app.clone();
[INFO] [stdout]      |                 ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sel_index`
[INFO] [stdout]   --> src/source/animeworld.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let sel_index = Selector::parse("div.film-list").unwrap();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sel_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metadata`
[INFO] [stdout]    --> src/source/mangaworld.rs:168:28
[INFO] [stdout]     |
[INFO] [stdout] 168 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_metadata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `images`
[INFO] [stdout]    --> src/source/mangaworld.rs:168:53
[INFO] [stdout]     |
[INFO] [stdout] 168 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {
[INFO] [stdout]     |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_images`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chico`
[INFO] [stdout]    --> src/source/mangago.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let chico = Selector::parse(".chicho").unwrap();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_chico`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imgsrcs_script`
[INFO] [stdout]     --> src/source/mangago.rs:1254:13
[INFO] [stdout]      |
[INFO] [stdout] 1254 |             imgsrcs_script,
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_imgsrcs_script`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b64_payload_inside`
[INFO] [stdout]     --> src/source/mangago.rs:1255:13
[INFO] [stdout]      |
[INFO] [stdout] 1255 |             b64_payload_inside,
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b64_payload_inside`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter_js_rel`
[INFO] [stdout]     --> src/source/mangago.rs:1257:13
[INFO] [stdout]      |
[INFO] [stdout] 1257 |             chapter_js_rel,
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter_js_rel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metadata`
[INFO] [stdout]    --> src/source/mangaworld.rs:168:28
[INFO] [stdout]     |
[INFO] [stdout] 168 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_metadata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `images`
[INFO] [stdout]    --> src/source/mangaworld.rs:168:53
[INFO] [stdout]     |
[INFO] [stdout] 168 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {
[INFO] [stdout]     |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_images`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metadata`
[INFO] [stdout]    --> src/source/mangago.rs:218:28
[INFO] [stdout]     |
[INFO] [stdout] 218 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {    
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_metadata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `images`
[INFO] [stdout]    --> src/source/mangago.rs:218:53
[INFO] [stdout]     |
[INFO] [stdout] 218 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {    
[INFO] [stdout]     |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_images`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chico`
[INFO] [stdout]    --> src/source/mangago.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let chico = Selector::parse(".chicho").unwrap();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_chico`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imgsrcs_script`
[INFO] [stdout]    --> src/source/mangago.rs:791:13
[INFO] [stdout]     |
[INFO] [stdout] 791 |             imgsrcs_script,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_imgsrcs_script`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b64_payload_inside`
[INFO] [stdout]    --> src/source/mangago.rs:792:13
[INFO] [stdout]     |
[INFO] [stdout] 792 |             b64_payload_inside,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b64_payload_inside`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter_js_rel`
[INFO] [stdout]    --> src/source/mangago.rs:794:13
[INFO] [stdout]     |
[INFO] [stdout] 794 |             chapter_js_rel,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter_js_rel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imgsrcs_script`
[INFO] [stdout]     --> src/source/mangago.rs:1254:13
[INFO] [stdout]      |
[INFO] [stdout] 1254 |             imgsrcs_script,
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_imgsrcs_script`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b64_payload_inside`
[INFO] [stdout]     --> src/source/mangago.rs:1255:13
[INFO] [stdout]      |
[INFO] [stdout] 1255 |             b64_payload_inside,
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b64_payload_inside`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter_js_rel`
[INFO] [stdout]     --> src/source/mangago.rs:1257:13
[INFO] [stdout]      |
[INFO] [stdout] 1257 |             chapter_js_rel,
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter_js_rel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `metadata`
[INFO] [stdout]    --> src/source/mangago.rs:218:28
[INFO] [stdout]     |
[INFO] [stdout] 218 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {    
[INFO] [stdout]     |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_metadata`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `images`
[INFO] [stdout]    --> src/source/mangago.rs:218:53
[INFO] [stdout]     |
[INFO] [stdout] 218 |     async fn to_pdf(&self, metadata: MangaMetadata, images:Vec<String>)  -> Result<String, AsyncError> {    
[INFO] [stdout]     |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_images`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/source.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 Err(k) => {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/source.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let mut p = Path::new("./extensions").join(folder);
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sta`
[INFO] [stdout]    --> src/utils.rs:202:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let sta = Command::new("7z")
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_sta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `imgsrcs_script`
[INFO] [stdout]    --> src/source/mangago.rs:791:13
[INFO] [stdout]     |
[INFO] [stdout] 791 |             imgsrcs_script,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_imgsrcs_script`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b64_payload_inside`
[INFO] [stdout]    --> src/source/mangago.rs:792:13
[INFO] [stdout]     |
[INFO] [stdout] 792 |             b64_payload_inside,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b64_payload_inside`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chapter_js_rel`
[INFO] [stdout]    --> src/source/mangago.rs:794:13
[INFO] [stdout]     |
[INFO] [stdout] 794 |             chapter_js_rel,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chapter_js_rel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/source.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 Err(k) => {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:410:37
[INFO] [stdout]     |
[INFO] [stdout] 410 | ...                   k @ (KeyCode::Esc ) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:423:41
[INFO] [stdout]     |
[INFO] [stdout] 423 | ...                   k @ (KeyCode::Up | KeyCode::Char('w')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:427:41
[INFO] [stdout]     |
[INFO] [stdout] 427 | ...                   k @ (KeyCode::Down | KeyCode::Char('s')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:435:37
[INFO] [stdout]     |
[INFO] [stdout] 435 | ...                   k @ (KeyCode::Esc | KeyCode::Backspace) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:441:37
[INFO] [stdout]     |
[INFO] [stdout] 441 | ...                   k @ (KeyCode::Up | KeyCode::Char('w')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:444:37
[INFO] [stdout]     |
[INFO] [stdout] 444 | ...                   k @ (KeyCode::Down | KeyCode::Char('s')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:459:33
[INFO] [stdout]     |
[INFO] [stdout] 459 | ...                   k @ (KeyCode::Esc | KeyCode::Backspace) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:467:33
[INFO] [stdout]     |
[INFO] [stdout] 467 | ...                   k @ (KeyCode::Left | KeyCode::Char('a')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:470:33
[INFO] [stdout]     |
[INFO] [stdout] 470 | ...                   k @ (KeyCode::Right | KeyCode::Char('d')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:526:17
[INFO] [stdout]     |
[INFO] [stdout] 526 |             let mut stg = Settings::new();
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |             let mut atq = AskToQuit {};
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmdAndView`
[INFO] [stdout]    --> src/main.rs:506:13
[INFO] [stdout]     |
[INFO] [stdout] 506 |         let cmdAndView = Layout::default()
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cmdAndView`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/source.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let mut p = Path::new("./extensions").join(folder);
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/main.rs:640:21
[INFO] [stdout]     |
[INFO] [stdout] 640 |                 let b = Block::default()
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sta`
[INFO] [stdout]    --> src/utils.rs:202:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |             let sta = Command::new("7z")
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_sta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/main.rs:807:45
[INFO] [stdout]     |
[INFO] [stdout] 807 | ...                   let u = url.clone();
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/main.rs:746:21
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 let b = Block::default()
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:895:45
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 895 | ...                   KeyCode::Left | KeyCode::Char('a') => {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:908:46
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 908 | ...                   KeyCode::Right | KeyCode::Char('d') => {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:917:43
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 917 | ...                   KeyCode::Up | KeyCode::Char('w') => {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:933:45
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 933 | ...                   KeyCode::Down | KeyCode::Char('s')=> {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:889:29
[INFO] [stdout]     |
[INFO] [stdout] 877 | ...                   KeyCode::Tab =>{
[INFO] [stdout]     |                       ------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 889 | ...                   KeyCode::Tab if k.is_modifier(event::ModifierKeyCode::LeftShift) => {
[INFO] [stdout]     |                       ^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/main.rs:843:21
[INFO] [stdout]     |
[INFO] [stdout] 843 |                 let b = Block::new()
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1048:45
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1048 | ...                   KeyCode::Left | KeyCode::Char('a') => {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1061:46
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1061 | ...                   KeyCode::Right | KeyCode::Char('d') => {
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1070:43
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1070 | ...                   KeyCode::Up | KeyCode::Char('w') => {
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1086:45
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1086 | ...                   KeyCode::Down | KeyCode::Char('s')=> {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1114:29
[INFO] [stdout]      |
[INFO] [stdout] 1102 | ...                   KeyCode::Tab =>{
[INFO] [stdout]      |                       ------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1114 | ...                   KeyCode::Tab if k.is_modifier(event::ModifierKeyCode::LeftShift) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/main.rs:1014:21
[INFO] [stdout]      |
[INFO] [stdout] 1014 |                 let b = Block::new()
[INFO] [stdout]      |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1472:21
[INFO] [stdout]      |
[INFO] [stdout] 1472 |                     _ => {false}
[INFO] [stdout]      |                     ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1472:21
[INFO] [stdout]      |
[INFO] [stdout] 1215 |                     SearchStateStatus::Empty => {
[INFO] [stdout]      |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1264 |                     Search::SearchStateStatus::EntryList => {
[INFO] [stdout]      |                     ------------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1377 |                     Search::SearchStateStatus::EpisodeList => {
[INFO] [stdout]      |                     -------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1472 |                     _ => {false}
[INFO] [stdout]      |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1370:29
[INFO] [stdout]      |
[INFO] [stdout] 1286 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1370 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1440:44
[INFO] [stdout]      |
[INFO] [stdout] 1391 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                                                              ------------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1440 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1465:29
[INFO] [stdout]      |
[INFO] [stdout] 1465 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1465:29
[INFO] [stdout]      |
[INFO] [stdout] 1391 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1440 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                       --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1465 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1319:57
[INFO] [stdout]      |
[INFO] [stdout] 1319 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `url`
[INFO] [stdout]     --> src/main.rs:1424:53
[INFO] [stdout]      |
[INFO] [stdout] 1424 | ...                   let url = entry.url.clone();
[INFO] [stdout]      |                           ^^^ help: if this is intentional, prefix it with an underscore: `_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1427:53
[INFO] [stdout]      |
[INFO] [stdout] 1427 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/main.rs:1196:21
[INFO] [stdout]      |
[INFO] [stdout] 1196 |                 let b = Block::new()
[INFO] [stdout]      |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1767:21
[INFO] [stdout]      |
[INFO] [stdout] 1767 |                     _ => {false}
[INFO] [stdout]      |                     ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1767:21
[INFO] [stdout]      |
[INFO] [stdout] 1510 |                     SearchStateStatus::Empty => {
[INFO] [stdout]      |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1557 |                     Search::SearchStateStatus::EntryList => {
[INFO] [stdout]      |                     ------------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1670 |                     Search::SearchStateStatus::EpisodeList => {
[INFO] [stdout]      |                     -------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1767 |                     _ => {false}
[INFO] [stdout]      |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1663:29
[INFO] [stdout]      |
[INFO] [stdout] 1579 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1663 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1735:44
[INFO] [stdout]      |
[INFO] [stdout] 1684 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                                                              ------------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1735 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:410:37
[INFO] [stdout]     |
[INFO] [stdout] 410 | ...                   k @ (KeyCode::Esc ) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:423:41
[INFO] [stdout]     |
[INFO] [stdout] 423 | ...                   k @ (KeyCode::Up | KeyCode::Char('w')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1760:29
[INFO] [stdout]      |
[INFO] [stdout] 1760 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1760:29
[INFO] [stdout]      |
[INFO] [stdout] 1684 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1735 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                       --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1760 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:427:41
[INFO] [stdout]     |
[INFO] [stdout] 427 | ...                   k @ (KeyCode::Down | KeyCode::Char('s')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:435:37
[INFO] [stdout]     |
[INFO] [stdout] 435 | ...                   k @ (KeyCode::Esc | KeyCode::Backspace) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:441:37
[INFO] [stdout]     |
[INFO] [stdout] 441 | ...                   k @ (KeyCode::Up | KeyCode::Char('w')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:444:37
[INFO] [stdout]     |
[INFO] [stdout] 444 | ...                   k @ (KeyCode::Down | KeyCode::Char('s')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:459:33
[INFO] [stdout]     |
[INFO] [stdout] 459 | ...                   k @ (KeyCode::Esc | KeyCode::Backspace) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:467:33
[INFO] [stdout]     |
[INFO] [stdout] 467 | ...                   k @ (KeyCode::Left | KeyCode::Char('a')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/main.rs:470:33
[INFO] [stdout]     |
[INFO] [stdout] 470 | ...                   k @ (KeyCode::Right | KeyCode::Char('d')) => {
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:526:17
[INFO] [stdout]     |
[INFO] [stdout] 526 |             let mut stg = Settings::new();
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |             let mut atq = AskToQuit {};
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmdAndView`
[INFO] [stdout]    --> src/main.rs:506:13
[INFO] [stdout]     |
[INFO] [stdout] 506 |         let cmdAndView = Layout::default()
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cmdAndView`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/main.rs:640:21
[INFO] [stdout]     |
[INFO] [stdout] 640 |                 let b = Block::default()
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1612:57
[INFO] [stdout]      |
[INFO] [stdout] 1612 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `url`
[INFO] [stdout]     --> src/main.rs:1718:53
[INFO] [stdout]      |
[INFO] [stdout] 1718 | ...                   let url = entry.url.clone();
[INFO] [stdout]      |                           ^^^ help: if this is intentional, prefix it with an underscore: `_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `animetitle`
[INFO] [stdout]     --> src/main.rs:1720:53
[INFO] [stdout]      |
[INFO] [stdout] 1720 | ...                   let animetitle = anime.title.clone();
[INFO] [stdout]      |                           ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_animetitle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1721:53
[INFO] [stdout]      |
[INFO] [stdout] 1721 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/main.rs:1485:21
[INFO] [stdout]      |
[INFO] [stdout] 1485 |                 let b = Block::new()
[INFO] [stdout]      |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/main.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct App {
[INFO] [stdout]    |        --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 42 |     tx: tokio::sync::mpsc::UnboundedSender<MessageType>,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `Type` is never read
[INFO] [stdout]   --> src/extension.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Extension {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 16 |     pub Type: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Extension` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `Description` and `Language` are never read
[INFO] [stdout]   --> src/extension.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ExtensionInfo {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 22 |     pub Name: String,
[INFO] [stdout] 23 |     pub Description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 24 |     pub Language: String
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExtensionInfo` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `MangaPlayer` is never used
[INFO] [stdout]   --> src/player.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub trait MangaPlayer {
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `LocalPlayer` is never used
[INFO] [stdout]   --> src/player.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub trait LocalPlayer {
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/main.rs:807:45
[INFO] [stdout]     |
[INFO] [stdout] 807 | ...                   let u = url.clone();
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `initConnection` is never used
[INFO] [stdout]   --> src/player.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub trait RemotePlayer {
[INFO] [stdout]    |               ------------ associated function in this trait
[INFO] [stdout] 25 |         fn initConnection();
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/main.rs:746:21
[INFO] [stdout]     |
[INFO] [stdout] 746 |                 let b = Block::default()
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Quit` is never constructed
[INFO] [stdout]   --> src/player.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub enum VlcrRemoteMessage {
[INFO] [stdout]    |              ----------------- variant in this enum
[INFO] [stdout] 48 |         Quit,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/settings.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SetColorTheme(String, crate::utils::utils::ColorPickerOption)
[INFO] [stdout]     |     ------------- ^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 143 -     SetColorTheme(String, crate::utils::utils::ColorPickerOption)
[INFO] [stdout] 143 +     SetColorTheme((), ())
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_str` is never used
[INFO] [stdout]   --> src/config.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl MangaReader {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 65 |     pub fn to_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_str` is never used
[INFO] [stdout]   --> src/config.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl AnimePlayerEnum {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 76 |     pub fn to_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tailwindPaletteFromString` is never used
[INFO] [stdout]    --> src/config.rs:164:8
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub fn tailwindPaletteFromString(c: &str, def: tailwind::Palette) -> tailwind::Palette {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/config.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct ThemeSettings {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub anime_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 287 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 288 |     pub manga_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub res_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 295 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 296 |     pub res_text: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 297 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 298 |     pub res_selection: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 299 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 300 |     pub cmd_text: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub cmd_keys: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ThemeSettings` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Callback` is never used
[INFO] [stdout]   --> src/components.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     type Callback = fn();
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `None` is never constructed
[INFO] [stdout]   --> src/components.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub enum ActionType {
[INFO] [stdout]    |              ---------- variant in this enum
[INFO] [stdout] 61 |         None,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ActionType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `trasmitter_to_app` is never read
[INFO] [stdout]    --> src/components.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 337 |     pub struct Library {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 338 |         pub trasmitter_to_app:tokio::sync::mpsc::UnboundedSender<MessageType>,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `inner` are never used
[INFO] [stdout]    --> src/components.rs:383:16
[INFO] [stdout]     |
[INFO] [stdout] 382 |     impl LibraryHashMap  {
[INFO] [stdout]     |     ------------------- associated items in this implementation
[INFO] [stdout] 383 |         pub fn new(a: HashMap<String, Vec<LibraryItem>>) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |         pub fn inner(self) -> HashMap<String, Vec<LibraryItem>> {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `style` is never read
[INFO] [stdout]    --> src/components.rs:706:13
[INFO] [stdout]     |
[INFO] [stdout] 704 |     pub struct Section {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 705 |         pub label: String,
[INFO] [stdout] 706 |         pub style: Style,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Section` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_items` is never used
[INFO] [stdout]    --> src/components.rs:717:16
[INFO] [stdout]     |
[INFO] [stdout] 709 |     impl Section {
[INFO] [stdout]     |     ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 717 |         pub fn add_items(self, items: Vec<Item>) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TextInputOption`, `SwitchOption`, and `DebugOption` are never constructed
[INFO] [stdout]    --> src/components.rs:947:9
[INFO] [stdout]     |
[INFO] [stdout] 943 |     pub enum ItemOption {
[INFO] [stdout]     |              ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 947 |         TextInputOption { 
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 952 |         SwitchOption { 
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 968 |         DebugOption {}
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_text_input` is never used
[INFO] [stdout]    --> src/components.rs:971:16
[INFO] [stdout]     |
[INFO] [stdout] 970 |     impl ItemOption {
[INFO] [stdout]     |     --------------- associated function in this implementation
[INFO] [stdout] 971 |         pub fn new_text_input(get: GetOption<String>, set: SetOption<String>) -> ItemOption {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value` is never read
[INFO] [stdout]     --> src/components.rs:1154:9
[INFO] [stdout]      |
[INFO] [stdout] 1153 |     pub struct  SwitchOptionState {
[INFO] [stdout]      |                 ----------------- field in this struct
[INFO] [stdout] 1154 |         value: bool
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `selected_index_sub` are never read
[INFO] [stdout]     --> src/components.rs:1172:9
[INFO] [stdout]      |
[INFO] [stdout] 1171 |     pub struct  ColorPickerOptionState {
[INFO] [stdout]      |                 ---------------------- fields in this struct
[INFO] [stdout] 1172 |         value: ColorPickerOption,
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout] 1173 |         selected_index: u8,
[INFO] [stdout] 1174 |         selected_index_sub: u8
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `library_type` is never read
[INFO] [stdout]     --> src/components.rs:1305:13
[INFO] [stdout]      |
[INFO] [stdout] 1302 |     pub struct Search {
[INFO] [stdout]      |                ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1305 |         pub library_type: SearchType
[INFO] [stdout]      |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SourceLanguages` is never used
[INFO] [stdout]   --> src/source.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum SourceLanguages {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Series` is never constructed
[INFO] [stdout]   --> src/source.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Series<S: AnimeSource> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `section` is never read
[INFO] [stdout]   --> src/source.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Episode {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub section: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Comic` is never constructed
[INFO] [stdout]   --> src/source.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Comic<S: MangaSource> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `episode_openable_link` is never used
[INFO] [stdout]    --> src/source.rs:100:14
[INFO] [stdout]     |
[INFO] [stdout]  60 | pub trait AnimeSource: Send + Sync { 
[INFO] [stdout]     |           ----------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 100 |     async fn episode_openable_link(&self, card: Episode) -> Result<String, Box<dyn std::error::Error>>;
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `volume` is never read
[INFO] [stdout]    --> src/source.rs:192:10
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub struct MangaMetadata {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub  volume: Option<String>
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sourcetype` is never read
[INFO] [stdout]   --> src/source/animeworld.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Animeworld {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     sourcetype: SourceType
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sourcetype` is never read
[INFO] [stdout]   --> src/source/mangaworld.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Mangaworld {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     sourcetype: SourceType
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch` is never used
[INFO] [stdout]   --> src/source/mangago.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | async fn fetch(url: String) -> Result<String, reqwest::Error> {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IndexUrl` is never constructed
[INFO] [stdout]   --> src/source/mangago.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct IndexUrl {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sourcetype` is never read
[INFO] [stdout]   --> src/source/mangago.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct Mangago {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     sourcetype: SourceType
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SoJsonV4Deobfuscator` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:248:8
[INFO] [stdout]     |
[INFO] [stdout] 248 | struct SoJsonV4Deobfuscator {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `decode` is never used
[INFO] [stdout]    --> src/source/mangago.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl SoJsonV4Deobfuscator {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] 250 |     fn decode(jsf: String) -> Result<String, String> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Document` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:486:16
[INFO] [stdout]     |
[INFO] [stdout] 486 |     pub struct Document {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `IMG_SRCS_RE` is never used
[INFO] [stdout]    --> src/source/mangago.rs:493:12
[INFO] [stdout]     |
[INFO] [stdout] 493 |     static IMG_SRCS_RE: Lazy<Regex> =
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `COLS_RE` is never used
[INFO] [stdout]    --> src/source/mangago.rs:496:12
[INFO] [stdout]     |
[INFO] [stdout] 496 |     static COLS_RE: Lazy<Regex> =
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `KEY_LOCATION_RE` is never used
[INFO] [stdout]    --> src/source/mangago.rs:499:12
[INFO] [stdout]     |
[INFO] [stdout] 499 |     static KEY_LOCATION_RE: Lazy<Regex> =
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_KEY` is never used
[INFO] [stdout]    --> src/source/mangago.rs:502:12
[INFO] [stdout]     |
[INFO] [stdout] 502 |     static HEX_VAR_RE_KEY: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_IV` is never used
[INFO] [stdout]    --> src/source/mangago.rs:506:12
[INFO] [stdout]     |
[INFO] [stdout] 506 |     static HEX_VAR_RE_IV: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JS_FILTERS` is never used
[INFO] [stdout]    --> src/source/mangago.rs:511:11
[INFO] [stdout]     |
[INFO] [stdout] 511 |     const JS_FILTERS: &[&str] = &[
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SoJsonV4Deobfuscator` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:523:12
[INFO] [stdout]     |
[INFO] [stdout] 523 |     struct SoJsonV4Deobfuscator;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `decode` is never used
[INFO] [stdout]    --> src/source/mangago.rs:526:12
[INFO] [stdout]     |
[INFO] [stdout] 525 |     impl SoJsonV4Deobfuscator {
[INFO] [stdout]     |     ------------------------- associated function in this implementation
[INFO] [stdout] 526 |         fn decode(jsf: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_hex` is never used
[INFO] [stdout]    --> src/source/mangago.rs:542:8
[INFO] [stdout]     |
[INFO] [stdout] 542 |     fn decode_hex(s: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_hex_encoded_variable` is never used
[INFO] [stdout]    --> src/source/mangago.rs:553:8
[INFO] [stdout]     |
[INFO] [stdout] 553 |     fn find_hex_encoded_variable(js: &str, variable: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `aes_cbc_decrypt_zero_pad` is never used
[INFO] [stdout]    --> src/source/mangago.rs:571:8
[INFO] [stdout]     |
[INFO] [stdout] 571 |     fn aes_cbc_decrypt_zero_pad(ciphertext: &[u8], key: &[u8], iv: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_string` is never used
[INFO] [stdout]    --> src/source/mangago.rs:590:8
[INFO] [stdout]     |
[INFO] [stdout] 590 |     fn unscramble_string(s: &str, keys: &[usize]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_image_list` is never used
[INFO] [stdout]    --> src/source/mangago.rs:609:8
[INFO] [stdout]     |
[INFO] [stdout] 609 |     fn unscramble_image_list(image_list: &str, js: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_image` is never used
[INFO] [stdout]    --> src/source/mangago.rs:656:12
[INFO] [stdout]     |
[INFO] [stdout] 656 |     pub fn unscramble_image(image_bytes: &[u8], key: &str, cols: usize) -> Result<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_descrambling_key` is never used
[INFO] [stdout]    --> src/source/mangago.rs:700:8
[INFO] [stdout]     |
[INFO] [stdout] 700 |     fn get_descrambling_key(url: &str, img_js_snippet: &str) -> Result<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `select_script_data` is never used
[INFO] [stdout]    --> src/source/mangago.rs:732:8
[INFO] [stdout]     |
[INFO] [stdout] 732 |     fn select_script_data<'a>(html: &'a scraper::Html, needle: &str) -> Option<&'a str> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `script_data_containing` is never used
[INFO] [stdout]    --> src/source/mangago.rs:748:8
[INFO] [stdout]     |
[INFO] [stdout] 748 |     fn script_data_containing(html: &scraper::Html, needle: &str) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `script_src_containing` is never used
[INFO] [stdout]    --> src/source/mangago.rs:757:8
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn script_src_containing(html: &scraper::Html, needle: &str) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `http_get` is never used
[INFO] [stdout]    --> src/source/mangago.rs:766:18
[INFO] [stdout]     |
[INFO] [stdout] 766 |     pub async fn http_get(client: &Client, url: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_chapter_image_urls` is never used
[INFO] [stdout]    --> src/source/mangago.rs:785:18
[INFO] [stdout]     |
[INFO] [stdout] 785 |     pub async fn get_chapter_image_urls(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Document` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:949:16
[INFO] [stdout]     |
[INFO] [stdout] 949 |     pub struct Document {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_KEY` is never used
[INFO] [stdout]    --> src/source/mangago.rs:965:12
[INFO] [stdout]     |
[INFO] [stdout] 965 |     static HEX_VAR_RE_KEY: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_IV` is never used
[INFO] [stdout]    --> src/source/mangago.rs:969:12
[INFO] [stdout]     |
[INFO] [stdout] 969 |     static HEX_VAR_RE_IV: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_image` is never used
[INFO] [stdout]     --> src/source/mangago.rs:1119:12
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     pub fn unscramble_image(image_bytes: &[u8], key: &str, cols: usize) -> Result<Vec<u8>> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:895:45
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 895 | ...                   KeyCode::Left | KeyCode::Char('a') => {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:908:46
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 908 | ...                   KeyCode::Right | KeyCode::Char('d') => {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_descrambling_key` is never used
[INFO] [stdout]     --> src/source/mangago.rs:1163:8
[INFO] [stdout]      |
[INFO] [stdout] 1163 |     fn get_descrambling_key(url: &str, img_js_snippet: &str) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:917:43
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 917 | ...                   KeyCode::Up | KeyCode::Char('w') => {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:933:45
[INFO] [stdout]     |
[INFO] [stdout] 864 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]     |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 933 | ...                   KeyCode::Down | KeyCode::Char('s')=> {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/main.rs:889:29
[INFO] [stdout]     |
[INFO] [stdout] 877 | ...                   KeyCode::Tab =>{
[INFO] [stdout]     |                       ------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 889 | ...                   KeyCode::Tab if k.is_modifier(event::ModifierKeyCode::LeftShift) => {
[INFO] [stdout]     |                       ^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `select_script_data` is never used
[INFO] [stdout]     --> src/source/mangago.rs:1195:8
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     fn select_script_data<'a>(html: &'a scraper::Html, needle: &str) -> Option<&'a str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `JS_FILTERS` is never used
[INFO] [stdout]    --> src/utils.rs:132:16
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub static JS_FILTERS: &[&str] = &[
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RGB` is never constructed
[INFO] [stdout]    --> src/utils.rs:263:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub enum ColorPickerOptionType {
[INFO] [stdout]     |              --------------------- variant in this enum
[INFO] [stdout] 263 |         RGB, HEX
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_folder` is never used
[INFO] [stdout]   --> src/folders.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn list_folder(folder: &str) -> Result<Vec<OsString>, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_anime_folder` is never used
[INFO] [stdout]   --> src/folders.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn read_anime_folder() -> Result<Vec<OsString>, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_manga_folder` is never used
[INFO] [stdout]   --> src/folders.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn read_manga_folder() -> Result<Vec<OsString>, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Config` is never constructed
[INFO] [stdout]   --> src/folders.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Config {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Settings` is never constructed
[INFO] [stdout]   --> src/folders.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Settings {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Extensions` is never constructed
[INFO] [stdout]   --> src/folders.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct Extensions {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/main.rs:843:21
[INFO] [stdout]     |
[INFO] [stdout] 843 |                 let b = Block::new()
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Folders` is never constructed
[INFO] [stdout]   --> src/folders.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Folders {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColorPalette` is never constructed
[INFO] [stdout]   --> src/folders.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct ColorPalette {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AnimeSearch` and `MangaSearch` are never constructed
[INFO] [stdout]   --> src/appmessages.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum MessageType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     AnimeSearch(SearchStateStatus),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     MangaSearch(SearchStateStatus),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1048:45
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1048 | ...                   KeyCode::Left | KeyCode::Char('a') => {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1061:46
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1061 | ...                   KeyCode::Right | KeyCode::Char('d') => {
[INFO] [stdout]      |                                        ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1070:43
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1070 | ...                   KeyCode::Up | KeyCode::Char('w') => {
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1086:45
[INFO] [stdout]      |
[INFO] [stdout] 1035 | ...                   KeyCode::Char(c) => {
[INFO] [stdout]      |                       ---------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1086 | ...                   KeyCode::Down | KeyCode::Char('s')=> {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1114:29
[INFO] [stdout]      |
[INFO] [stdout] 1102 | ...                   KeyCode::Tab =>{
[INFO] [stdout]      |                       ------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1114 | ...                   KeyCode::Tab if k.is_modifier(event::ModifierKeyCode::LeftShift) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:157:29
[INFO] [stdout]     |
[INFO] [stdout] 157 | ...                   quit_tx_s.send(appmessages::MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Quitting)));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 157 |                             let _ = quit_tx_s.send(appmessages::MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Quitting)));
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:164:29
[INFO] [stdout]     |
[INFO] [stdout] 164 | ...                   stay_tx_s.send(MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Running)));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 164 |                             let _ = stay_tx_s.send(MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Running)));
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/main.rs:1726:57
[INFO] [stdout]      |
[INFO] [stdout] 1726 | ...                   a.lib_ep_select(eli_c).await;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]      |
[INFO] [stdout] 1726 |                                                         let _unused = a.lib_ep_select(eli_c).await;
[INFO] [stdout]      |                                                         +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/player.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | /             Command::new(self.cmd.clone()).args(self.args.clone()).arg(url)
[INFO] [stdout] 36 | |                 .stdout(Stdio::null())
[INFO] [stdout] 37 | |                 .stderr(Stdio::null())
[INFO] [stdout] 38 | |                 .spawn();
[INFO] [stdout]    | |________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]    |
[INFO] [stdout] 35 |             let _unused = Command::new(self.cmd.clone()).args(self.args.clone()).arg(url)
[INFO] [stdout]    |             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/player.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 tx.send(VlcrRemoteMessage::Add(url.to_owned()));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let _ = tx.send(VlcrRemoteMessage::Add(url.to_owned()));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/player.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 tx.send(VlcrRemoteMessage::Play);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 let _ = tx.send(VlcrRemoteMessage::Play);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/settings.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 tx_a.send(MessageType::SettingsChange(ApplySettingsChange::SetAnime(v)));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let _ = tx_a.send(MessageType::SettingsChange(ApplySettingsChange::SetAnime(v)));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/settings.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetManga(v)));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 let _ = tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetManga(v)));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/settings.rs:96:17
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetColorTheme("example".to_owned(), c)));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 let _ = tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetColorTheme("example".to_owned(), c)));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/library.rs:60:21
[INFO] [stdout]    |
[INFO] [stdout] 60 |                     fs::write(format!("library/{}", toml), s);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 60 |                     let _ = fs::write(format!("library/{}", toml), s);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/main.rs:1014:21
[INFO] [stdout]      |
[INFO] [stdout] 1014 |                 let b = Block::new()
[INFO] [stdout]      |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1472:21
[INFO] [stdout]      |
[INFO] [stdout] 1472 |                     _ => {false}
[INFO] [stdout]      |                     ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1472:21
[INFO] [stdout]      |
[INFO] [stdout] 1215 |                     SearchStateStatus::Empty => {
[INFO] [stdout]      |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1264 |                     Search::SearchStateStatus::EntryList => {
[INFO] [stdout]      |                     ------------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1377 |                     Search::SearchStateStatus::EpisodeList => {
[INFO] [stdout]      |                     -------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1472 |                     _ => {false}
[INFO] [stdout]      |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1370:29
[INFO] [stdout]      |
[INFO] [stdout] 1286 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1370 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1440:44
[INFO] [stdout]      |
[INFO] [stdout] 1391 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                                                              ------------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1440 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/source.rs:198:18
[INFO] [stdout]     |
[INFO] [stdout] 198 |     for files in fs::read_dir(p) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 198 -     for files in fs::read_dir(p) {
[INFO] [stdout] 198 +     while let Ok(files) = fs::read_dir(p) {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 198 -     for files in fs::read_dir(p) {
[INFO] [stdout] 198 +     if let Ok(files) = fs::read_dir(p) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1465:29
[INFO] [stdout]      |
[INFO] [stdout] 1465 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1465:29
[INFO] [stdout]      |
[INFO] [stdout] 1391 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1440 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                       --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1465 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1319:57
[INFO] [stdout]      |
[INFO] [stdout] 1319 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `url`
[INFO] [stdout]     --> src/main.rs:1424:53
[INFO] [stdout]      |
[INFO] [stdout] 1424 | ...                   let url = entry.url.clone();
[INFO] [stdout]      |                           ^^^ help: if this is intentional, prefix it with an underscore: `_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1427:53
[INFO] [stdout]      |
[INFO] [stdout] 1427 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/main.rs:1196:21
[INFO] [stdout]      |
[INFO] [stdout] 1196 |                 let b = Block::new()
[INFO] [stdout]      |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1767:21
[INFO] [stdout]      |
[INFO] [stdout] 1767 |                     _ => {false}
[INFO] [stdout]      |                     ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1767:21
[INFO] [stdout]      |
[INFO] [stdout] 1510 |                     SearchStateStatus::Empty => {
[INFO] [stdout]      |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1557 |                     Search::SearchStateStatus::EntryList => {
[INFO] [stdout]      |                     ------------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1670 |                     Search::SearchStateStatus::EpisodeList => {
[INFO] [stdout]      |                     -------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1767 |                     _ => {false}
[INFO] [stdout]      |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1663:29
[INFO] [stdout]      |
[INFO] [stdout] 1579 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1663 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1735:44
[INFO] [stdout]      |
[INFO] [stdout] 1684 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                                                              ------------------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 1735 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/main.rs:1760:29
[INFO] [stdout]      |
[INFO] [stdout] 1760 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/main.rs:1760:29
[INFO] [stdout]      |
[INFO] [stdout] 1684 | ...                   ke @ (KeyCode::Left | KeyCode::Right | KeyCode::Backspace | KeyCode::Delete)=> {
[INFO] [stdout]      |                             --------------------------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1735 | ...                   KeyCode::Esc | KeyCode::Backspace => {
[INFO] [stdout]      |                       --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 1760 | ...                   KeyCode::Backspace => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1612:57
[INFO] [stdout]      |
[INFO] [stdout] 1612 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `url`
[INFO] [stdout]     --> src/main.rs:1718:53
[INFO] [stdout]      |
[INFO] [stdout] 1718 | ...                   let url = entry.url.clone();
[INFO] [stdout]      |                           ^^^ help: if this is intentional, prefix it with an underscore: `_url`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `animetitle`
[INFO] [stdout]     --> src/main.rs:1720:53
[INFO] [stdout]      |
[INFO] [stdout] 1720 | ...                   let animetitle = anime.title.clone();
[INFO] [stdout]      |                           ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_animetitle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]     --> src/main.rs:1721:53
[INFO] [stdout]      |
[INFO] [stdout] 1721 | ...                   let handle = tokio::spawn(async move {
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/main.rs:1485:21
[INFO] [stdout]      |
[INFO] [stdout] 1485 |                 let b = Block::new()
[INFO] [stdout]      |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/main.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct App {
[INFO] [stdout]    |        --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 42 |     tx: tokio::sync::mpsc::UnboundedSender<MessageType>,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `Type` is never read
[INFO] [stdout]   --> src/extension.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Extension {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 16 |     pub Type: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Extension` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `Description` and `Language` are never read
[INFO] [stdout]   --> src/extension.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ExtensionInfo {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 22 |     pub Name: String,
[INFO] [stdout] 23 |     pub Description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 24 |     pub Language: String
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExtensionInfo` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `MangaPlayer` is never used
[INFO] [stdout]   --> src/player.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub trait MangaPlayer {
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `LocalPlayer` is never used
[INFO] [stdout]   --> src/player.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub trait LocalPlayer {
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `initConnection` is never used
[INFO] [stdout]   --> src/player.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub trait RemotePlayer {
[INFO] [stdout]    |               ------------ associated function in this trait
[INFO] [stdout] 25 |         fn initConnection();
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Quit` is never constructed
[INFO] [stdout]   --> src/player.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub enum VlcrRemoteMessage {
[INFO] [stdout]    |              ----------------- variant in this enum
[INFO] [stdout] 48 |         Quit,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/settings.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SetColorTheme(String, crate::utils::utils::ColorPickerOption)
[INFO] [stdout]     |     ------------- ^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 143 -     SetColorTheme(String, crate::utils::utils::ColorPickerOption)
[INFO] [stdout] 143 +     SetColorTheme((), ())
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_str` is never used
[INFO] [stdout]   --> src/config.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl MangaReader {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 65 |     pub fn to_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_str` is never used
[INFO] [stdout]   --> src/config.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl AnimePlayerEnum {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 76 |     pub fn to_str(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tailwindPaletteFromString` is never used
[INFO] [stdout]    --> src/config.rs:164:8
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub fn tailwindPaletteFromString(c: &str, def: tailwind::Palette) -> tailwind::Palette {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/config.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct ThemeSettings {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub anime_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 287 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 288 |     pub manga_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub res_border: Color,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 295 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 296 |     pub res_text: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 297 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 298 |     pub res_selection: Color,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 299 |     #[serde(deserialize_with = "color_deserialize")]
[INFO] [stdout] 300 |     pub cmd_text: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub cmd_keys: Color,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ThemeSettings` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Callback` is never used
[INFO] [stdout]   --> src/components.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     type Callback = fn();
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `None` is never constructed
[INFO] [stdout]   --> src/components.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub enum ActionType {
[INFO] [stdout]    |              ---------- variant in this enum
[INFO] [stdout] 61 |         None,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ActionType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `trasmitter_to_app` is never read
[INFO] [stdout]    --> src/components.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 337 |     pub struct Library {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 338 |         pub trasmitter_to_app:tokio::sync::mpsc::UnboundedSender<MessageType>,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `inner` are never used
[INFO] [stdout]    --> src/components.rs:383:16
[INFO] [stdout]     |
[INFO] [stdout] 382 |     impl LibraryHashMap  {
[INFO] [stdout]     |     ------------------- associated items in this implementation
[INFO] [stdout] 383 |         pub fn new(a: HashMap<String, Vec<LibraryItem>>) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |         pub fn inner(self) -> HashMap<String, Vec<LibraryItem>> {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `style` is never read
[INFO] [stdout]    --> src/components.rs:706:13
[INFO] [stdout]     |
[INFO] [stdout] 704 |     pub struct Section {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 705 |         pub label: String,
[INFO] [stdout] 706 |         pub style: Style,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Section` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_items` is never used
[INFO] [stdout]    --> src/components.rs:717:16
[INFO] [stdout]     |
[INFO] [stdout] 709 |     impl Section {
[INFO] [stdout]     |     ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 717 |         pub fn add_items(self, items: Vec<Item>) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TextInputOption`, `SwitchOption`, and `DebugOption` are never constructed
[INFO] [stdout]    --> src/components.rs:947:9
[INFO] [stdout]     |
[INFO] [stdout] 943 |     pub enum ItemOption {
[INFO] [stdout]     |              ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 947 |         TextInputOption { 
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 952 |         SwitchOption { 
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 968 |         DebugOption {}
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_text_input` is never used
[INFO] [stdout]    --> src/components.rs:971:16
[INFO] [stdout]     |
[INFO] [stdout] 970 |     impl ItemOption {
[INFO] [stdout]     |     --------------- associated function in this implementation
[INFO] [stdout] 971 |         pub fn new_text_input(get: GetOption<String>, set: SetOption<String>) -> ItemOption {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value` is never read
[INFO] [stdout]     --> src/components.rs:1154:9
[INFO] [stdout]      |
[INFO] [stdout] 1153 |     pub struct  SwitchOptionState {
[INFO] [stdout]      |                 ----------------- field in this struct
[INFO] [stdout] 1154 |         value: bool
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `selected_index_sub` are never read
[INFO] [stdout]     --> src/components.rs:1172:9
[INFO] [stdout]      |
[INFO] [stdout] 1171 |     pub struct  ColorPickerOptionState {
[INFO] [stdout]      |                 ---------------------- fields in this struct
[INFO] [stdout] 1172 |         value: ColorPickerOption,
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout] 1173 |         selected_index: u8,
[INFO] [stdout] 1174 |         selected_index_sub: u8
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `library_type` is never read
[INFO] [stdout]     --> src/components.rs:1305:13
[INFO] [stdout]      |
[INFO] [stdout] 1302 |     pub struct Search {
[INFO] [stdout]      |                ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1305 |         pub library_type: SearchType
[INFO] [stdout]      |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SourceLanguages` is never used
[INFO] [stdout]   --> src/source.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum SourceLanguages {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Series` is never constructed
[INFO] [stdout]   --> src/source.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Series<S: AnimeSource> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `section` is never read
[INFO] [stdout]   --> src/source.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Episode {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub section: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Comic` is never constructed
[INFO] [stdout]   --> src/source.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Comic<S: MangaSource> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `episode_openable_link` is never used
[INFO] [stdout]    --> src/source.rs:100:14
[INFO] [stdout]     |
[INFO] [stdout]  60 | pub trait AnimeSource: Send + Sync { 
[INFO] [stdout]     |           ----------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 100 |     async fn episode_openable_link(&self, card: Episode) -> Result<String, Box<dyn std::error::Error>>;
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `volume` is never read
[INFO] [stdout]    --> src/source.rs:192:10
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub struct MangaMetadata {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub  volume: Option<String>
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sourcetype` is never read
[INFO] [stdout]   --> src/source/animeworld.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Animeworld {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     sourcetype: SourceType
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sourcetype` is never read
[INFO] [stdout]   --> src/source/mangaworld.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Mangaworld {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     sourcetype: SourceType
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch` is never used
[INFO] [stdout]   --> src/source/mangago.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | async fn fetch(url: String) -> Result<String, reqwest::Error> {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IndexUrl` is never constructed
[INFO] [stdout]   --> src/source/mangago.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct IndexUrl {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sourcetype` is never read
[INFO] [stdout]   --> src/source/mangago.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct Mangago {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     sourcetype: SourceType
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SoJsonV4Deobfuscator` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:248:8
[INFO] [stdout]     |
[INFO] [stdout] 248 | struct SoJsonV4Deobfuscator {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `decode` is never used
[INFO] [stdout]    --> src/source/mangago.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | impl SoJsonV4Deobfuscator {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] 250 |     fn decode(jsf: String) -> Result<String, String> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Document` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:486:16
[INFO] [stdout]     |
[INFO] [stdout] 486 |     pub struct Document {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `IMG_SRCS_RE` is never used
[INFO] [stdout]    --> src/source/mangago.rs:493:12
[INFO] [stdout]     |
[INFO] [stdout] 493 |     static IMG_SRCS_RE: Lazy<Regex> =
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `COLS_RE` is never used
[INFO] [stdout]    --> src/source/mangago.rs:496:12
[INFO] [stdout]     |
[INFO] [stdout] 496 |     static COLS_RE: Lazy<Regex> =
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `KEY_LOCATION_RE` is never used
[INFO] [stdout]    --> src/source/mangago.rs:499:12
[INFO] [stdout]     |
[INFO] [stdout] 499 |     static KEY_LOCATION_RE: Lazy<Regex> =
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_KEY` is never used
[INFO] [stdout]    --> src/source/mangago.rs:502:12
[INFO] [stdout]     |
[INFO] [stdout] 502 |     static HEX_VAR_RE_KEY: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_IV` is never used
[INFO] [stdout]    --> src/source/mangago.rs:506:12
[INFO] [stdout]     |
[INFO] [stdout] 506 |     static HEX_VAR_RE_IV: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JS_FILTERS` is never used
[INFO] [stdout]    --> src/source/mangago.rs:511:11
[INFO] [stdout]     |
[INFO] [stdout] 511 |     const JS_FILTERS: &[&str] = &[
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SoJsonV4Deobfuscator` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:523:12
[INFO] [stdout]     |
[INFO] [stdout] 523 |     struct SoJsonV4Deobfuscator;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `decode` is never used
[INFO] [stdout]    --> src/source/mangago.rs:526:12
[INFO] [stdout]     |
[INFO] [stdout] 525 |     impl SoJsonV4Deobfuscator {
[INFO] [stdout]     |     ------------------------- associated function in this implementation
[INFO] [stdout] 526 |         fn decode(jsf: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_hex` is never used
[INFO] [stdout]    --> src/source/mangago.rs:542:8
[INFO] [stdout]     |
[INFO] [stdout] 542 |     fn decode_hex(s: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_hex_encoded_variable` is never used
[INFO] [stdout]    --> src/source/mangago.rs:553:8
[INFO] [stdout]     |
[INFO] [stdout] 553 |     fn find_hex_encoded_variable(js: &str, variable: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `aes_cbc_decrypt_zero_pad` is never used
[INFO] [stdout]    --> src/source/mangago.rs:571:8
[INFO] [stdout]     |
[INFO] [stdout] 571 |     fn aes_cbc_decrypt_zero_pad(ciphertext: &[u8], key: &[u8], iv: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_string` is never used
[INFO] [stdout]    --> src/source/mangago.rs:590:8
[INFO] [stdout]     |
[INFO] [stdout] 590 |     fn unscramble_string(s: &str, keys: &[usize]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_image_list` is never used
[INFO] [stdout]    --> src/source/mangago.rs:609:8
[INFO] [stdout]     |
[INFO] [stdout] 609 |     fn unscramble_image_list(image_list: &str, js: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_image` is never used
[INFO] [stdout]    --> src/source/mangago.rs:656:12
[INFO] [stdout]     |
[INFO] [stdout] 656 |     pub fn unscramble_image(image_bytes: &[u8], key: &str, cols: usize) -> Result<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_descrambling_key` is never used
[INFO] [stdout]    --> src/source/mangago.rs:700:8
[INFO] [stdout]     |
[INFO] [stdout] 700 |     fn get_descrambling_key(url: &str, img_js_snippet: &str) -> Result<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `select_script_data` is never used
[INFO] [stdout]    --> src/source/mangago.rs:732:8
[INFO] [stdout]     |
[INFO] [stdout] 732 |     fn select_script_data<'a>(html: &'a scraper::Html, needle: &str) -> Option<&'a str> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `script_data_containing` is never used
[INFO] [stdout]    --> src/source/mangago.rs:748:8
[INFO] [stdout]     |
[INFO] [stdout] 748 |     fn script_data_containing(html: &scraper::Html, needle: &str) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `script_src_containing` is never used
[INFO] [stdout]    --> src/source/mangago.rs:757:8
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn script_src_containing(html: &scraper::Html, needle: &str) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `http_get` is never used
[INFO] [stdout]    --> src/source/mangago.rs:766:18
[INFO] [stdout]     |
[INFO] [stdout] 766 |     pub async fn http_get(client: &Client, url: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_chapter_image_urls` is never used
[INFO] [stdout]    --> src/source/mangago.rs:785:18
[INFO] [stdout]     |
[INFO] [stdout] 785 |     pub async fn get_chapter_image_urls(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Document` is never constructed
[INFO] [stdout]    --> src/source/mangago.rs:949:16
[INFO] [stdout]     |
[INFO] [stdout] 949 |     pub struct Document {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_KEY` is never used
[INFO] [stdout]    --> src/source/mangago.rs:965:12
[INFO] [stdout]     |
[INFO] [stdout] 965 |     static HEX_VAR_RE_KEY: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEX_VAR_RE_IV` is never used
[INFO] [stdout]    --> src/source/mangago.rs:969:12
[INFO] [stdout]     |
[INFO] [stdout] 969 |     static HEX_VAR_RE_IV: Lazy<Regex> = Lazy::new(|| {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unscramble_image` is never used
[INFO] [stdout]     --> src/source/mangago.rs:1119:12
[INFO] [stdout]      |
[INFO] [stdout] 1119 |     pub fn unscramble_image(image_bytes: &[u8], key: &str, cols: usize) -> Result<Vec<u8>> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_descrambling_key` is never used
[INFO] [stdout]     --> src/source/mangago.rs:1163:8
[INFO] [stdout]      |
[INFO] [stdout] 1163 |     fn get_descrambling_key(url: &str, img_js_snippet: &str) -> Result<String> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `select_script_data` is never used
[INFO] [stdout]     --> src/source/mangago.rs:1195:8
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     fn select_script_data<'a>(html: &'a scraper::Html, needle: &str) -> Option<&'a str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `JS_FILTERS` is never used
[INFO] [stdout]    --> src/utils.rs:132:16
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub static JS_FILTERS: &[&str] = &[
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RGB` is never constructed
[INFO] [stdout]    --> src/utils.rs:263:9
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub enum ColorPickerOptionType {
[INFO] [stdout]     |              --------------------- variant in this enum
[INFO] [stdout] 263 |         RGB, HEX
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_folder` is never used
[INFO] [stdout]   --> src/folders.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn list_folder(folder: &str) -> Result<Vec<OsString>, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_anime_folder` is never used
[INFO] [stdout]   --> src/folders.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn read_anime_folder() -> Result<Vec<OsString>, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_manga_folder` is never used
[INFO] [stdout]   --> src/folders.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn read_manga_folder() -> Result<Vec<OsString>, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Config` is never constructed
[INFO] [stdout]   --> src/folders.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Config {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Settings` is never constructed
[INFO] [stdout]   --> src/folders.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Settings {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Extensions` is never constructed
[INFO] [stdout]   --> src/folders.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct Extensions {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Folders` is never constructed
[INFO] [stdout]   --> src/folders.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Folders {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColorPalette` is never constructed
[INFO] [stdout]   --> src/folders.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct ColorPalette {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AnimeSearch` and `MangaSearch` are never constructed
[INFO] [stdout]   --> src/appmessages.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum MessageType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     AnimeSearch(SearchStateStatus),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     MangaSearch(SearchStateStatus),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:157:29
[INFO] [stdout]     |
[INFO] [stdout] 157 | ...                   quit_tx_s.send(appmessages::MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Quitting)));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 157 |                             let _ = quit_tx_s.send(appmessages::MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Quitting)));
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:164:29
[INFO] [stdout]     |
[INFO] [stdout] 164 | ...                   stay_tx_s.send(MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Running)));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 164 |                             let _ = stay_tx_s.send(MessageType::SettingsChange(ApplySettingsChange::SetAppStatus(AppState::Running)));
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/main.rs:1726:57
[INFO] [stdout]      |
[INFO] [stdout] 1726 | ...                   a.lib_ep_select(eli_c).await;
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]      |
[INFO] [stdout] 1726 |                                                         let _unused = a.lib_ep_select(eli_c).await;
[INFO] [stdout]      |                                                         +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/player.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | /             Command::new(self.cmd.clone()).args(self.args.clone()).arg(url)
[INFO] [stdout] 36 | |                 .stdout(Stdio::null())
[INFO] [stdout] 37 | |                 .stderr(Stdio::null())
[INFO] [stdout] 38 | |                 .spawn();
[INFO] [stdout]    | |________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]    |
[INFO] [stdout] 35 |             let _unused = Command::new(self.cmd.clone()).args(self.args.clone()).arg(url)
[INFO] [stdout]    |             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/player.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 tx.send(VlcrRemoteMessage::Add(url.to_owned()));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 let _ = tx.send(VlcrRemoteMessage::Add(url.to_owned()));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/player.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 tx.send(VlcrRemoteMessage::Play);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 let _ = tx.send(VlcrRemoteMessage::Play);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/settings.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 tx_a.send(MessageType::SettingsChange(ApplySettingsChange::SetAnime(v)));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let _ = tx_a.send(MessageType::SettingsChange(ApplySettingsChange::SetAnime(v)));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/settings.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetManga(v)));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 let _ = tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetManga(v)));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/settings.rs:96:17
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetColorTheme("example".to_owned(), c)));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 let _ = tx_m.send(MessageType::SettingsChange(ApplySettingsChange::SetColorTheme("example".to_owned(), c)));
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/library.rs:60:21
[INFO] [stdout]    |
[INFO] [stdout] 60 |                     fs::write(format!("library/{}", toml), s);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 60 |                     let _ = fs::write(format!("library/{}", toml), s);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/source.rs:198:18
[INFO] [stdout]     |
[INFO] [stdout] 198 |     for files in fs::read_dir(p) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 198 -     for files in fs::read_dir(p) {
[INFO] [stdout] 198 +     while let Ok(files) = fs::read_dir(p) {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 198 -     for files in fs::read_dir(p) {
[INFO] [stdout] 198 +     if let Ok(files) = fs::read_dir(p) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `cipher`
[INFO] [stderr]   --> Cargo.toml:23:15
[INFO] [stderr]    |
[INFO] [stderr] 23 | [dependencies.cipher]
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `cipher`
[INFO] [stderr] warning: unused dependency `curl`
[INFO] [stderr]   --> Cargo.toml:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | curl = "0.4.49"
[INFO] [stderr]    | ^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `curl`
[INFO] [stderr] warning: unused dependency `rquickjs`
[INFO] [stderr]   --> Cargo.toml:17:1
[INFO] [stderr]    |
[INFO] [stderr] 17 | rquickjs = "0.11.0"
[INFO] [stderr]    | ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `rquickjs`
[INFO] [stderr] warning: unused dependency `strum`
[INFO] [stderr]   --> Cargo.toml:43:15
[INFO] [stderr]    |
[INFO] [stderr] 43 | [dependencies.strum]
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `strum`
[INFO] [stderr] warning: `Yomi` (manifest) generated 4 warnings
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 4m 53s
[INFO] running `Command { std: "docker" "inspect" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5", kill_on_drop: false }`
[INFO] [stdout] 28abf6db524583079bd4512c3c6611085274e43232e6936e18b4ab4f7c0ebec5
