[INFO] cloning repository https://github.com/JahJahWei/smart-infusion
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JahJahWei/smart-infusion" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJahJahWei%2Fsmart-infusion", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJahJahWei%2Fsmart-infusion'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2b0f1a9704a17e13f34599d157ddaaf21d14b859
[INFO] checking JahJahWei/smart-infusion against 24e1a22664233bce1f9b5dc6eee7c1f74327e28c for pr-159343-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJahJahWei%2Fsmart-infusion" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-6-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/JahJahWei/smart-infusion
[INFO] finished tweaking git repo https://github.com/JahJahWei/smart-infusion
[INFO] tweaked toml for git repo https://github.com/JahJahWei/smart-infusion written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/JahJahWei/smart-infusion on toolchain 24e1a22664233bce1f9b5dc6eee7c1f74327e28c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/JahJahWei/smart-infusion 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" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9
[INFO] running `Command { std: "docker" "start" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9", 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" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9" "/opt/rustwide/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9", 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" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9" "/opt/rustwide/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking smallvec v1.14.0
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]    Compiling cc v1.2.17
[INFO] [stderr]     Checking once_cell v1.21.1
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking socket2 v0.5.8
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling litemap v0.7.5
[INFO] [stderr]    Compiling writeable v0.5.5
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling icu_properties_data v1.5.0
[INFO] [stderr]    Compiling openssl-sys v0.9.106
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.0
[INFO] [stderr]    Compiling write16 v1.0.0
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]    Compiling utf16_iter v1.0.5
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling libsqlite3-sys v0.27.0
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]     Checking indexmap v2.8.0
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling tokio v1.44.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rustls-webpki v0.101.7
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]    Compiling unicode_categories v0.1.1
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling rustix v1.0.3
[INFO] [stderr]    Compiling openssl v0.10.71
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling crc v3.2.1
[INFO] [stderr]    Compiling rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling sqlformat v0.2.6
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.7.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling zerovec v0.10.4
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling icu_collections v1.5.0
[INFO] [stderr]    Compiling icu_locid v1.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling icu_provider v1.5.0
[INFO] [stderr]    Compiling icu_locid_transform v1.5.0
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling icu_properties v1.5.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling hashlink v0.8.4
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling webpki-roots v0.25.4
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]    Compiling event-listener v2.5.3
[INFO] [stderr]    Compiling linux-raw-sys v0.9.3
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking tokio-util v0.7.14
[INFO] [stderr]    Compiling icu_normalizer v1.5.0
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]    Compiling sqlx-core v0.7.4
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling tempfile v3.19.1
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking deranged v0.4.1
[INFO] [stderr]    Compiling sqlx-sqlite v0.7.4
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking serde_bytes_ng v0.1.2
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]     Checking num-conv v0.1.0
[INFO] [stderr]     Checking time-core v0.1.4
[INFO] [stderr]    Compiling winapi v0.3.9
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking tracing-subscriber v0.3.19
[INFO] [stderr]     Checking hyper-util v0.1.10
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking amqp_serde v0.4.1
[INFO] [stderr]    Compiling sqlx-macros-core v0.7.4
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking serde_path_to_error v0.1.17
[INFO] [stderr]     Checking serde_bytes v0.11.17
[INFO] [stderr]     Checking crossbeam-channel v0.5.14
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking tracing-appender v0.2.3
[INFO] [stderr]     Checking amqprs v2.1.0
[INFO] [stderr]    Compiling sqlx-macros v0.7.4
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking sqlx v0.7.4
[INFO] [stderr]     Checking smart-infusion v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/main.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{info, error, Level};
[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: `axum::response::Response`
[INFO] [stdout]  --> src/api.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use axum::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeviceStatus`
[INFO] [stdout]  --> src/api.rs:4:127
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...blish_start_or_stop_drip_cmd, publish_turn_off_device_cmd, DeviceStatus, ModifyPresetAmountCmd, SetUpDripRateCmd, StartOrStopDripC...
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `query_infusions`
[INFO] [stdout]  --> src/api.rs:5:74
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::repository::{fetch_all_patient_page, query_bed, query_device, query_infusions, PatientDetail};
[INFO] [stdout]   |                                                                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `db::get_db`
[INFO] [stdout]  --> src/api.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{db::get_db, repository::query_patient};
[INFO] [stdout]   |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DefaultConsumer`
[INFO] [stdout]  --> src/mq/amqp.rs:1:264
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...ion, OpenConnectionArguments}, consumer::{AsyncConsumer, DefaultConsumer}, BasicProperties};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/mq/amqp.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{error, info};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Level`
[INFO] [stdout]  --> src/mq/binding.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{info, error, Level};
[INFO] [stdout]   |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Infusion`, `fetch_drug_by_patient_no`, `insert_infusion`, `update_device_status`, and `update_patient_by_device_id`
[INFO] [stdout]  --> src/mq/binding.rs:5:75
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...c, fetch_drug_by_patient_no, fetch_patient_by_bed_no, insert_infusion, update_device_status, update_patient_by_device_id, update_patient_device_id, Infusion};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^^                           ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `info`
[INFO] [stdout]  --> src/mq/publisher.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tracing::{info, error, Level};
[INFO] [stdout]   |               ^^^^         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::soft_link`
[INFO] [stdout]  --> src/mq/device_data_consumer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::soft_link;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `info`
[INFO] [stdout]  --> src/mq/device_data_consumer.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{info, error, Level};
[INFO] [stdout]   |               ^^^^         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QueryBuilder` and `Sqlite`
[INFO] [stdout]  --> src/repository/device.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sqlx::{prelude::FromRow, QueryBuilder, Sqlite};
[INFO] [stdout]   |                              ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Alarm`, `DeviceStatus`, and `publish_alarm`
[INFO] [stdout]  --> src/repository/patient.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{db::get_db, mq::{publish_alarm, Alarm, DeviceData, DeviceStatus}};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^  ^^^^^              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QueryBuilder` and `Sqlite`
[INFO] [stdout]  --> src/repository/drug.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sqlx::{QueryBuilder, Sqlite, prelude::FromRow};
[INFO] [stdout]   |            ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Alarm` and `publish_alarm`
[INFO] [stdout]  --> src/repository/infusion.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{db::get_db, mq::{publish_alarm, Alarm}};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `api` and `db::get_db`
[INFO] [stdout]  --> src/http_client.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{api, db::get_db, repository::{insert_beds, insert_devices, insert_drugs, insert_patients, Bed, Device, Drug, Patient}};
[INFO] [stdout]   |             ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::fs::soft_link`: replaced with std::os::unix::fs::symlink and std::os::windows::fs::{symlink_file, symlink_dir}
[INFO] [stdout]  --> src/mq/device_data_consumer.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::soft_link;
[INFO] [stdout]   |              ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/main.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{info, error, Level};
[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: `axum::response::Response`
[INFO] [stdout]  --> src/api.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use axum::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeviceStatus`
[INFO] [stdout]  --> src/api.rs:4:127
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...blish_start_or_stop_drip_cmd, publish_turn_off_device_cmd, DeviceStatus, ModifyPresetAmountCmd, SetUpDripRateCmd, StartOrStopDripC...
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `query_infusions`
[INFO] [stdout]  --> src/api.rs:5:74
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::repository::{fetch_all_patient_page, query_bed, query_device, query_infusions, PatientDetail};
[INFO] [stdout]   |                                                                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `db::get_db`
[INFO] [stdout]  --> src/api.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{db::get_db, repository::query_patient};
[INFO] [stdout]   |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DefaultConsumer`
[INFO] [stdout]  --> src/mq/amqp.rs:1:264
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...ion, OpenConnectionArguments}, consumer::{AsyncConsumer, DefaultConsumer}, BasicProperties};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/mq/amqp.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{error, info};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Level`
[INFO] [stdout]  --> src/mq/binding.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{info, error, Level};
[INFO] [stdout]   |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Infusion`, `fetch_drug_by_patient_no`, `insert_infusion`, `update_device_status`, and `update_patient_by_device_id`
[INFO] [stdout]  --> src/mq/binding.rs:5:75
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...c, fetch_drug_by_patient_no, fetch_patient_by_bed_no, insert_infusion, update_device_status, update_patient_by_device_id, update_patient_device_id, Infusion};
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^^                           ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `info`
[INFO] [stdout]  --> src/mq/publisher.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tracing::{info, error, Level};
[INFO] [stdout]   |               ^^^^         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::soft_link`
[INFO] [stdout]  --> src/mq/device_data_consumer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::soft_link;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `info`
[INFO] [stdout]  --> src/mq/device_data_consumer.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{info, error, Level};
[INFO] [stdout]   |               ^^^^         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QueryBuilder` and `Sqlite`
[INFO] [stdout]  --> src/repository/device.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sqlx::{prelude::FromRow, QueryBuilder, Sqlite};
[INFO] [stdout]   |                              ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Alarm`, `DeviceStatus`, and `publish_alarm`
[INFO] [stdout]  --> src/repository/patient.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{db::get_db, mq::{publish_alarm, Alarm, DeviceData, DeviceStatus}};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^  ^^^^^              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QueryBuilder` and `Sqlite`
[INFO] [stdout]  --> src/repository/drug.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sqlx::{QueryBuilder, Sqlite, prelude::FromRow};
[INFO] [stdout]   |            ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Alarm` and `publish_alarm`
[INFO] [stdout]  --> src/repository/infusion.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{db::get_db, mq::{publish_alarm, Alarm}};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `api` and `db::get_db`
[INFO] [stdout]  --> src/http_client.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{api, db::get_db, repository::{insert_beds, insert_devices, insert_drugs, insert_patients, Bed, Device, Drug, Patient}};
[INFO] [stdout]   |             ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::fs::soft_link`: replaced with std::os::unix::fs::symlink and std::os::windows::fs::{symlink_file, symlink_dir}
[INFO] [stdout]  --> src/mq/device_data_consumer.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::soft_link;
[INFO] [stdout]   |              ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/api.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `deliver`
[INFO] [stdout]   --> src/mq/binding.rs:18:52
[INFO] [stdout]    |
[INFO] [stdout] 18 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_deliver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basic_properties`
[INFO] [stdout]   --> src/mq/binding.rs:18:70
[INFO] [stdout]    |
[INFO] [stdout] 18 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basic_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/mq/binding.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/api.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |         Err(e) => {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `deliver`
[INFO] [stdout]   --> src/mq/device_data_consumer.rs:62:52
[INFO] [stdout]    |
[INFO] [stdout] 62 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_deliver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basic_properties`
[INFO] [stdout]   --> src/mq/device_data_consumer.rs:62:70
[INFO] [stdout]    |
[INFO] [stdout] 62 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basic_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/mq/device_data_consumer.rs:62:33
[INFO] [stdout]    |
[INFO] [stdout] 62 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `deliver`
[INFO] [stdout]   --> src/mq/binding.rs:18:52
[INFO] [stdout]    |
[INFO] [stdout] 18 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_deliver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basic_properties`
[INFO] [stdout]   --> src/mq/binding.rs:18:70
[INFO] [stdout]    |
[INFO] [stdout] 18 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basic_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/mq/binding.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `http_client`
[INFO] [stdout]   --> src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let http_client = HttpClient::new("https://api.example.com".to_string());
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_http_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PaginationParams` is never constructed
[INFO] [stdout]   --> src/api.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct PaginationParams {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_channel` is never used
[INFO] [stdout]   --> src/mq/amqp.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl AmqpManager {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_channel(&self, routing_key: &str) -> Option<&Channel> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeviceStatus` is never constructed
[INFO] [stdout]   --> src/mq/publisher.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DeviceStatus {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/mq/publisher.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl DeviceStatus {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn new(device_id: String, status: u16) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_device_exist` is never used
[INFO] [stdout]   --> src/repository/device.rs:63:14
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub async fn is_device_exist(device_id: String) -> Result<bool, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `query_drug_by_patient_no` is never used
[INFO] [stdout]   --> src/repository/drug.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub async fn query_drug_by_patient_no(patient_no: String) -> Result<Vec<Drug>, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_drug_by_patient_no` is never used
[INFO] [stdout]   --> src/repository/drug.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub async fn fetch_drug_by_patient_no(patient_no: String) -> Result<Vec<Drug>, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Infusion` is never constructed
[INFO] [stdout]  --> src/repository/infusion.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Infusion {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Infusion {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 19 |     pub fn new(name: String, gender: String, age: u16, bed_no: String, device_id: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InfusionWithDetail` is never constructed
[INFO] [stdout]   --> src/repository/infusion.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct InfusionWithDetail {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl InfusionWithDetail {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 37 |     pub fn new(infusion: Infusion, drugs: Vec<Drug>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `insert_infusion` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn insert_infusion(infusion: Infusion) -> Result<(), sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `query_infusions` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:69:14
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub async fn query_infusions() -> Result<Vec<Infusion>, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_api_base_url` is never used
[INFO] [stdout]    --> src/http_client.rs:202:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl HttpClient {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 202 |     pub fn set_api_base_url(&mut self, api_base_url: String) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         mq::init_mq().await;
[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] 45 |         let _ = mq::init_mq().await;
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `deliver`
[INFO] [stdout]   --> src/mq/device_data_consumer.rs:62:52
[INFO] [stdout]    |
[INFO] [stdout] 62 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_deliver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basic_properties`
[INFO] [stdout]   --> src/mq/device_data_consumer.rs:62:70
[INFO] [stdout]    |
[INFO] [stdout] 62 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basic_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `channel`
[INFO] [stdout]   --> src/mq/device_data_consumer.rs:62:33
[INFO] [stdout]    |
[INFO] [stdout] 62 |     async fn consume(&mut self, channel: &Channel, deliver: Deliver, basic_properties: BasicProperties, content: Vec<u8>) {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_channel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `http_client`
[INFO] [stdout]   --> src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let http_client = HttpClient::new("https://api.example.com".to_string());
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_http_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PaginationParams` is never constructed
[INFO] [stdout]   --> src/api.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct PaginationParams {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_channel` is never used
[INFO] [stdout]   --> src/mq/amqp.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl AmqpManager {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_channel(&self, routing_key: &str) -> Option<&Channel> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeviceStatus` is never constructed
[INFO] [stdout]   --> src/mq/publisher.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DeviceStatus {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/mq/publisher.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl DeviceStatus {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn new(device_id: String, status: u16) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_device_exist` is never used
[INFO] [stdout]   --> src/repository/device.rs:63:14
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub async fn is_device_exist(device_id: String) -> Result<bool, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `query_drug_by_patient_no` is never used
[INFO] [stdout]   --> src/repository/drug.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub async fn query_drug_by_patient_no(patient_no: String) -> Result<Vec<Drug>, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_drug_by_patient_no` is never used
[INFO] [stdout]   --> src/repository/drug.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub async fn fetch_drug_by_patient_no(patient_no: String) -> Result<Vec<Drug>, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Infusion` is never constructed
[INFO] [stdout]  --> src/repository/infusion.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Infusion {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Infusion {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 19 |     pub fn new(name: String, gender: String, age: u16, bed_no: String, device_id: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InfusionWithDetail` is never constructed
[INFO] [stdout]   --> src/repository/infusion.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct InfusionWithDetail {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl InfusionWithDetail {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 37 |     pub fn new(infusion: Infusion, drugs: Vec<Drug>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `insert_infusion` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn insert_infusion(infusion: Infusion) -> Result<(), sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `query_infusions` is never used
[INFO] [stdout]   --> src/repository/infusion.rs:69:14
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub async fn query_infusions() -> Result<Vec<Infusion>, sqlx::Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_api_base_url` is never used
[INFO] [stdout]    --> src/http_client.rs:202:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl HttpClient {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 202 |     pub fn set_api_base_url(&mut self, api_base_url: String) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         mq::init_mq().await;
[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] 45 |         let _ = mq::init_mq().await;
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 18s
[INFO] running `Command { std: "docker" "inspect" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9", kill_on_drop: false }`
[INFO] [stdout] d7f46a3e2a39e8e453236b229ee097f1d91d3127c4198118bc4b05dc818c35a9
