[INFO] cloning repository https://github.com/cesco345/nfc_mifare_reader [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cesco345/nfc_mifare_reader" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcesco345%2Fnfc_mifare_reader", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcesco345%2Fnfc_mifare_reader'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e3b83d7e16ccaa675d99a598007982d26396a7c9 [INFO] checking cesco345/nfc_mifare_reader against master#be181dd75c83d72fcc95538e235768bc367b76b9 for pr-140208 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcesco345%2Fnfc_mifare_reader" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/cesco345/nfc_mifare_reader on toolchain be181dd75c83d72fcc95538e235768bc367b76b9 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+be181dd75c83d72fcc95538e235768bc367b76b9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/cesco345/nfc_mifare_reader [INFO] finished tweaking git repo https://github.com/cesco345/nfc_mifare_reader [INFO] tweaked toml for git repo https://github.com/cesco345/nfc_mifare_reader written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/cesco345/nfc_mifare_reader 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" "+be181dd75c83d72fcc95538e235768bc367b76b9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cmk v0.1.2 [INFO] [stderr] Downloaded fltk v1.5.4 [INFO] [stderr] Downloaded fltk-sys v1.5.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+be181dd75c83d72fcc95538e235768bc367b76b9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2038c3abe13f33362020a59cab084299cefdfb3e0ab53122d8600cf2b44a0190 [INFO] running `Command { std: "docker" "start" "-a" "2038c3abe13f33362020a59cab084299cefdfb3e0ab53122d8600cf2b44a0190", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2038c3abe13f33362020a59cab084299cefdfb3e0ab53122d8600cf2b44a0190", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2038c3abe13f33362020a59cab084299cefdfb3e0ab53122d8600cf2b44a0190", kill_on_drop: false }` [INFO] [stdout] 2038c3abe13f33362020a59cab084299cefdfb3e0ab53122d8600cf2b44a0190 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+be181dd75c83d72fcc95538e235768bc367b76b9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 91f0b31b287c11baf4f688af543d81c0c591277df3826ce7c3b32921e5581c34 [INFO] running `Command { std: "docker" "start" "-a" "91f0b31b287c11baf4f688af543d81c0c591277df3826ce7c3b32921e5581c34", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling libc v0.2.170 [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Checking once_cell v1.20.3 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling cmk v0.1.2 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling serde v1.0.218 [INFO] [stderr] Checking log v0.4.26 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Checking lazycell v1.3.0 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling cc v1.2.16 [INFO] [stderr] Checking iana-time-zone v0.1.61 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking ttf-parser v0.25.1 [INFO] [stderr] Checking fallible-iterator v0.2.0 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Checking smallvec v1.14.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Checking fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling quote v1.0.39 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking crossbeam-channel v0.5.14 [INFO] [stderr] Compiling syn v2.0.99 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Compiling libsqlite3-sys v0.26.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking net2 v0.2.39 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Checking filetime v0.2.25 [INFO] [stderr] Checking inotify v0.7.1 [INFO] [stderr] Checking mio v0.6.23 [INFO] [stderr] Checking chrono v0.4.40 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Checking hashlink v0.8.4 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Checking mio-extras v2.0.6 [INFO] [stderr] Checking notify v4.0.18 [INFO] [stderr] Checking rusqlite v0.29.0 [INFO] [stderr] Compiling fltk-sys v1.5.4 [INFO] [stderr] Compiling serde_derive v1.0.218 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling parse-zoneinfo v0.3.1 [INFO] [stderr] Compiling chrono-tz v0.5.3 [INFO] [stderr] Checking fltk v1.5.4 [INFO] [stderr] Checking mifare_reader_utility v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::batch::process_batch as batch_process` [INFO] [stdout] --> src/batch/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use crate::batch::process_batch as batch_process; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/config/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/config/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SyncDirs`, `add_custom_pattern`, `add_manufacturer`, and `get_manufacturer` [INFO] [stdout] --> src/config/mod.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | SyncDirs, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | get_manufacturer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | add_manufacturer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | add_custom_pattern [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `app_config::new_config` [INFO] [stdout] --> src/config/mod.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub use app_config::new_config; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CardRecord` [INFO] [stdout] --> src/export/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | CardRecord, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/inventory/ui/components/form.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/inventory/ui/components/form.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/inventory/ui/components/stats.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/inventory/ui/components/stats.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `form::ItemForm` [INFO] [stdout] --> src/inventory/ui/components/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use form::ItemForm; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `table::setup_inventory_table` [INFO] [stdout] --> src/inventory/ui/components/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use table::setup_inventory_table; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `stats::StatsFrame` [INFO] [stdout] --> src/inventory/ui/components/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use stats::StatsFrame; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `item_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use item_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `search_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use search_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `export_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use export_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scan_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use scan_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `inventory_ui::InventoryUI` [INFO] [stdout] --> src/inventory/ui/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use inventory_ui::InventoryUI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InventoryItem` and `create_inventory_item` [INFO] [stdout] --> src/inventory/mod.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | pub use model::{InventoryItem, create_inventory_item}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Group` and `Pack` [INFO] [stdout] --> src/db_viewer.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | group::{Group, Flex, Pack, Scroll}, [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `init::run` [INFO] [stdout] --> src/app/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use init::run; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::inventory::InventoryUI` [INFO] [stdout] --> src/sync/file_sync.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::inventory::InventoryUI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `file_sync::FileSync` [INFO] [stdout] --> src/sync/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use file_sync::FileSync; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gdrive_sync::GDriveSync` [INFO] [stdout] --> src/sync/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use gdrive_sync::GDriveSync; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/main.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::batch::process_batch as batch_process` [INFO] [stdout] --> src/batch/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use crate::batch::process_batch as batch_process; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/config/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/config/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SyncDirs`, `add_custom_pattern`, `add_manufacturer`, and `get_manufacturer` [INFO] [stdout] --> src/config/mod.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | SyncDirs, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | get_manufacturer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | add_manufacturer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | add_custom_pattern [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `app_config::new_config` [INFO] [stdout] --> src/config/mod.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub use app_config::new_config; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CardRecord` [INFO] [stdout] --> src/export/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | CardRecord, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/inventory/ui/components/form.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/inventory/ui/components/form.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/inventory/ui/components/stats.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/inventory/ui/components/stats.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `form::ItemForm` [INFO] [stdout] --> src/inventory/ui/components/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use form::ItemForm; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `table::setup_inventory_table` [INFO] [stdout] --> src/inventory/ui/components/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use table::setup_inventory_table; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `stats::StatsFrame` [INFO] [stdout] --> src/inventory/ui/components/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use stats::StatsFrame; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `item_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use item_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `search_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use search_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `export_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use export_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scan_handlers::*` [INFO] [stdout] --> src/inventory/ui/handlers/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use scan_handlers::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `inventory_ui::InventoryUI` [INFO] [stdout] --> src/inventory/ui/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use inventory_ui::InventoryUI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InventoryItem` and `create_inventory_item` [INFO] [stdout] --> src/inventory/mod.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | pub use model::{InventoryItem, create_inventory_item}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Group` and `Pack` [INFO] [stdout] --> src/db_viewer.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | group::{Group, Flex, Pack, Scroll}, [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `init::run` [INFO] [stdout] --> src/app/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use init::run; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::inventory::InventoryUI` [INFO] [stdout] --> src/sync/file_sync.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::inventory::InventoryUI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `file_sync::FileSync` [INFO] [stdout] --> src/sync/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use file_sync::FileSync; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gdrive_sync::GDriveSync` [INFO] [stdout] --> src/sync/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use gdrive_sync::GDriveSync; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/main.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/reader/ui.rs:212:9 [INFO] [stdout] | [INFO] [stdout] 212 | let mut name_input = Input::new(150, 120, 270, 30, "Name:"); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/reader/ui.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | let mut desc_input = MultilineInput::new(150, 160, 270, 70, "Description:"); [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/reader/ui.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | let mut location_input = Input::new(150, 280, 270, 30, "Location:"); [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/reader/ui.rs:212:9 [INFO] [stdout] | [INFO] [stdout] 212 | let mut name_input = Input::new(150, 120, 270, 30, "Name:"); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/reader/ui.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | let mut desc_input = MultilineInput::new(150, 160, 270, 70, "Description:"); [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/reader/ui.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | let mut location_input = Input::new(150, 280, 270, 30, "Location:"); [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/inventory/ui/inventory_ui.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | let mut log_buffer = TextBuffer::default(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `app` [INFO] [stdout] --> src/db_viewer.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | let app = app::App::default(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_app` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spacer` [INFO] [stdout] --> src/db_viewer.rs:151:13 [INFO] [stdout] | [INFO] [stdout] 151 | let mut spacer = Frame::new(0, 0, 30, 30, ""); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spacer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/db_viewer.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | let mut spacer = Frame::new(0, 0, 30, 30, ""); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wind` [INFO] [stdout] --> src/app/menu.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn create_menu(wind: &mut fltk::window::Window) -> (app::Receiver, MenuItems) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_wind` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app/events.rs:237:9 [INFO] [stdout] | [INFO] [stdout] 237 | let mut save_logs_check = fltk::button::CheckButton::new(20, 45, 200, 25, "Save logs to file"); [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/app/events.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | let mut gdrive_enable_check = fltk::button::CheckButton::new(20, 45, 200, 25, "Enable Google Drive sync"); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `processed_path` [INFO] [stdout] --> src/sync/file_sync.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | let processed_path = self.processed_path.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_processed_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_path` [INFO] [stdout] --> src/sync/file_sync.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let error_path = self.error_path.clone(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_ui` is never used [INFO] [stdout] --> src/ui/mod.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn init_ui() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_uid_report` is never used [INFO] [stdout] --> src/utils.rs:290:8 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn generate_uid_report(uid: &str, keyboard_layout: i32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `contains_uid_data` is never used [INFO] [stdout] --> src/utils.rs:327:8 [INFO] [stdout] | [INFO] [stdout] 327 | pub fn contains_uid_data(text: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `identify_card_type` is never used [INFO] [stdout] --> src/utils.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | pub fn identify_card_type(hex_uid: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `APP_CONFIG` is never used [INFO] [stdout] --> src/config/mod.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub static APP_CONFIG: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_config` is never used [INFO] [stdout] --> src/config/app_config.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn new_config() -> AppConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_manufacturer` is never used [INFO] [stdout] --> src/config/app_config.rs:119:8 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn get_manufacturer(code: &str, config: &AppConfig) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_manufacturer` is never used [INFO] [stdout] --> src/config/app_config.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn add_manufacturer(code: &str, name: &str, config: &mut AppConfig) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_custom_pattern` is never used [INFO] [stdout] --> src/config/app_config.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn add_custom_pattern(pattern: &str, description: &str, config: &mut AppConfig) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_items_by_category` is never used [INFO] [stdout] --> src/inventory/db.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl InventoryDB { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn get_items_by_category(&self, category: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_thread_safe_db` is never used [INFO] [stdout] --> src/inventory/db.rs:280:8 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn create_thread_safe_db(db: InventoryDB) -> Arc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update_categories` is never used [INFO] [stdout] --> src/inventory/ui/components/form.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl ItemForm { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | pub fn update_categories(&mut self, categories: &[String]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `update` are never used [INFO] [stdout] --> src/inventory/ui/components/stats.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl StatsFrame { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(x: i32, y: i32, w: i32, h: i32, label: &str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn update(&mut self, items: &[InventoryItem]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `filter_by_category` is never used [INFO] [stdout] --> src/inventory/ui/handlers/search_handlers.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn filter_by_category( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_import_button` is never used [INFO] [stdout] --> src/inventory/ui/handlers/export_handlers.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn setup_import_button( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_scanned_tag` is never used [INFO] [stdout] --> src/inventory/ui/handlers/scan_handlers.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn process_scanned_tag( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sync_to_gdrive` is never used [INFO] [stdout] --> src/inventory/ui/handlers/scan_handlers.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn sync_to_gdrive(inventory_db: &Rc>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `process_scanned_tag` is never used [INFO] [stdout] --> src/inventory/ui/inventory_ui.rs:208:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl InventoryUI { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn process_scanned_tag(&self, tag_id: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_cell_bg` is never used [INFO] [stdout] --> src/inventory/ui/utils.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn draw_cell_bg(x: i32, y: i32, w: i32, h: i32, color: Color) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_cell_data` is never used [INFO] [stdout] --> src/inventory/ui/utils.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn draw_cell_data(x: i32, y: i32, w: i32, h: i32, data: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> src/app/init.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn run() { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `initialize_inventory_database` is never used [INFO] [stdout] --> src/app/init.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn initialize_inventory_database(db_path: &str) -> Result, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_directories` is never used [INFO] [stdout] --> src/app/init.rs:95:4 [INFO] [stdout] | [INFO] [stdout] 95 | fn setup_directories() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_menu` is never used [INFO] [stdout] --> src/app/menu.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn create_menu(wind: &mut fltk::window::Window) -> (app::Receiver, MenuItems) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_file_menu` is never used [INFO] [stdout] --> src/app/menu.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn add_file_menu(menu: &mut MenuBar, sender: &app::Sender) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_edit_menu` is never used [INFO] [stdout] --> src/app/menu.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn add_edit_menu(menu: &mut MenuBar, sender: &app::Sender) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_help_menu` is never used [INFO] [stdout] --> src/app/menu.rs:171:4 [INFO] [stdout] | [INFO] [stdout] 171 | fn add_help_menu(menu: &mut MenuBar, sender: &app::Sender) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_running` is never read [INFO] [stdout] --> src/sync/file_sync.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct FileSync { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 16 | is_running: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `start` is never used [INFO] [stdout] --> src/sync/file_sync.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl FileSync { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn start(&mut self) -> Result<(), String> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `list_sync_files` is never used [INFO] [stdout] --> src/sync/gdrive_sync.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl GDriveSync { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn list_sync_files(&self) -> io::Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/inventory/ui/inventory_ui.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | let mut log_buffer = TextBuffer::default(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `app` [INFO] [stdout] --> src/db_viewer.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | let app = app::App::default(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_app` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spacer` [INFO] [stdout] --> src/db_viewer.rs:151:13 [INFO] [stdout] | [INFO] [stdout] 151 | let mut spacer = Frame::new(0, 0, 30, 30, ""); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_spacer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/db_viewer.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | let mut spacer = Frame::new(0, 0, 30, 30, ""); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wind` [INFO] [stdout] --> src/app/menu.rs:18:20 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn create_menu(wind: &mut fltk::window::Window) -> (app::Receiver, MenuItems) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_wind` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/app/events.rs:237:9 [INFO] [stdout] | [INFO] [stdout] 237 | let mut save_logs_check = fltk::button::CheckButton::new(20, 45, 200, 25, "Save logs to file"); [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/app/events.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | let mut gdrive_enable_check = fltk::button::CheckButton::new(20, 45, 200, 25, "Enable Google Drive sync"); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `processed_path` [INFO] [stdout] --> src/sync/file_sync.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | let processed_path = self.processed_path.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_processed_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_path` [INFO] [stdout] --> src/sync/file_sync.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let error_path = self.error_path.clone(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_ui` is never used [INFO] [stdout] --> src/ui/mod.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn init_ui() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_uid_report` is never used [INFO] [stdout] --> src/utils.rs:290:8 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn generate_uid_report(uid: &str, keyboard_layout: i32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `contains_uid_data` is never used [INFO] [stdout] --> src/utils.rs:327:8 [INFO] [stdout] | [INFO] [stdout] 327 | pub fn contains_uid_data(text: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `identify_card_type` is never used [INFO] [stdout] --> src/utils.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | pub fn identify_card_type(hex_uid: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `APP_CONFIG` is never used [INFO] [stdout] --> src/config/mod.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub static APP_CONFIG: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_config` is never used [INFO] [stdout] --> src/config/app_config.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn new_config() -> AppConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_manufacturer` is never used [INFO] [stdout] --> src/config/app_config.rs:119:8 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn get_manufacturer(code: &str, config: &AppConfig) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_manufacturer` is never used [INFO] [stdout] --> src/config/app_config.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn add_manufacturer(code: &str, name: &str, config: &mut AppConfig) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_custom_pattern` is never used [INFO] [stdout] --> src/config/app_config.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn add_custom_pattern(pattern: &str, description: &str, config: &mut AppConfig) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_items_by_category` is never used [INFO] [stdout] --> src/inventory/db.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl InventoryDB { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn get_items_by_category(&self, category: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_thread_safe_db` is never used [INFO] [stdout] --> src/inventory/db.rs:280:8 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn create_thread_safe_db(db: InventoryDB) -> Arc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update_categories` is never used [INFO] [stdout] --> src/inventory/ui/components/form.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl ItemForm { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 148 | pub fn update_categories(&mut self, categories: &[String]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `update` are never used [INFO] [stdout] --> src/inventory/ui/components/stats.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl StatsFrame { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(x: i32, y: i32, w: i32, h: i32, label: &str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn update(&mut self, items: &[InventoryItem]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `filter_by_category` is never used [INFO] [stdout] --> src/inventory/ui/handlers/search_handlers.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn filter_by_category( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_import_button` is never used [INFO] [stdout] --> src/inventory/ui/handlers/export_handlers.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn setup_import_button( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_scanned_tag` is never used [INFO] [stdout] --> src/inventory/ui/handlers/scan_handlers.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn process_scanned_tag( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sync_to_gdrive` is never used [INFO] [stdout] --> src/inventory/ui/handlers/scan_handlers.rs:75:4 [INFO] [stdout] | [INFO] [stdout] 75 | fn sync_to_gdrive(inventory_db: &Rc>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `process_scanned_tag` is never used [INFO] [stdout] --> src/inventory/ui/inventory_ui.rs:208:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl InventoryUI { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn process_scanned_tag(&self, tag_id: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_cell_bg` is never used [INFO] [stdout] --> src/inventory/ui/utils.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn draw_cell_bg(x: i32, y: i32, w: i32, h: i32, color: Color) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `draw_cell_data` is never used [INFO] [stdout] --> src/inventory/ui/utils.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn draw_cell_data(x: i32, y: i32, w: i32, h: i32, data: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> src/app/init.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn run() { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `initialize_inventory_database` is never used [INFO] [stdout] --> src/app/init.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn initialize_inventory_database(db_path: &str) -> Result, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_directories` is never used [INFO] [stdout] --> src/app/init.rs:95:4 [INFO] [stdout] | [INFO] [stdout] 95 | fn setup_directories() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_menu` is never used [INFO] [stdout] --> src/app/menu.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn create_menu(wind: &mut fltk::window::Window) -> (app::Receiver, MenuItems) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_file_menu` is never used [INFO] [stdout] --> src/app/menu.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn add_file_menu(menu: &mut MenuBar, sender: &app::Sender) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_edit_menu` is never used [INFO] [stdout] --> src/app/menu.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn add_edit_menu(menu: &mut MenuBar, sender: &app::Sender) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_help_menu` is never used [INFO] [stdout] --> src/app/menu.rs:171:4 [INFO] [stdout] | [INFO] [stdout] 171 | fn add_help_menu(menu: &mut MenuBar, sender: &app::Sender) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_running` is never read [INFO] [stdout] --> src/sync/file_sync.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct FileSync { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 16 | is_running: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `start` is never used [INFO] [stdout] --> src/sync/file_sync.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl FileSync { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn start(&mut self) -> Result<(), String> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `list_sync_files` is never used [INFO] [stdout] --> src/sync/gdrive_sync.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl GDriveSync { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn list_sync_files(&self) -> io::Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 11s [INFO] running `Command { std: "docker" "inspect" "91f0b31b287c11baf4f688af543d81c0c591277df3826ce7c3b32921e5581c34", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "91f0b31b287c11baf4f688af543d81c0c591277df3826ce7c3b32921e5581c34", kill_on_drop: false }` [INFO] [stdout] 91f0b31b287c11baf4f688af543d81c0c591277df3826ce7c3b32921e5581c34