[INFO] cloning repository https://github.com/Imnotndesh/TrueHub-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Imnotndesh/TrueHub-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FImnotndesh%2FTrueHub-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FImnotndesh%2FTrueHub-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0a1fd9150d45e846923f7ae3eaa9ec161d441dcd
[INFO] checking Imnotndesh/TrueHub-rs against 3154cc1a3e6424e44f438a95007d043ed5ceaaf6 for pr-133502-30
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FImnotndesh%2FTrueHub-rs" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Imnotndesh/TrueHub-rs
[INFO] finished tweaking git repo https://github.com/Imnotndesh/TrueHub-rs
[INFO] tweaked toml for git repo https://github.com/Imnotndesh/TrueHub-rs written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Imnotndesh/TrueHub-rs on toolchain 3154cc1a3e6424e44f438a95007d043ed5ceaaf6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Imnotndesh/TrueHub-rs 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" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: resolver for the non root package will be ignored, specify resolver at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc2/source/api/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] [stderr] warning: resolver for the non root package will be ignored, specify resolver at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc2/source/ui/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2024 which implies `resolver = "3"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2024 resolver, specify `workspace.resolver = "3"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr] warning: unused workspace dependency `serde`
[INFO] [stderr]  --> Cargo.toml:4:25
[INFO] [stderr]   |
[INFO] [stderr] 4 | [workspace.dependencies.serde]
[INFO] [stderr]   |                         ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_workspace_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the workspace dependency `serde`
[INFO] [stderr] warning: workspace (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1
[INFO] running `Command { std: "docker" "start" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1", 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" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1", 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" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: resolver for the non root package will be ignored, specify resolver at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/api/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: resolver for the non root package will be ignored, specify resolver at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/ui/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2024 which implies `resolver = "3"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2024 resolver, specify `workspace.resolver = "3"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr] warning: unused workspace dependency `serde`
[INFO] [stderr]  --> Cargo.toml:4:25
[INFO] [stderr]   |
[INFO] [stderr] 4 | [workspace.dependencies.serde]
[INFO] [stderr]   |                         ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_workspace_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the workspace dependency `serde`
[INFO] [stderr] warning: workspace (manifest) generated 1 warning
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]     Checking log v0.4.30
[INFO] [stderr]     Checking memchr v2.8.1
[INFO] [stderr]    Compiling aws-lc-rs v1.17.0
[INFO] [stderr]     Checking http v1.4.1
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling zerocopy v0.8.50
[INFO] [stderr]    Compiling libdbus-sys v0.2.7
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]    Compiling pathfinder_simd v0.5.6
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v6.0.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking dbus v0.9.11
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking data-encoding v2.11.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking jpeg-decoder v0.3.2
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]    Compiling font-kit v0.14.3
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking pathfinder_geometry v0.5.1
[INFO] [stderr]     Checking dashmap v7.0.0-rc2
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]    Compiling cfg-expr v0.20.8
[INFO] [stderr]     Checking gif v0.12.0
[INFO] [stderr]     Checking uuid v1.23.2
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling glib-build-tools v0.22.8
[INFO] [stderr]     Checking oneshot v0.2.1
[INFO] [stderr]     Checking float-ord v0.3.2
[INFO] [stderr]    Compiling ui v0.1.0 (/opt/rustwide/workdir/ui)
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking ttf-parser v0.20.0
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling toml_edit v0.25.12+spec-1.1.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling freetype-sys v0.20.1
[INFO] [stderr]    Compiling aws-lc-sys v0.41.0
[INFO] [stderr]    Compiling system-deps v7.0.8
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking plotters-bitmap v0.3.7
[INFO] [stderr]    Compiling glib-sys v0.22.6
[INFO] [stderr]    Compiling gobject-sys v0.22.6
[INFO] [stderr]    Compiling gio-sys v0.22.0
[INFO] [stderr]    Compiling cairo-sys-rs v0.22.0
[INFO] [stderr]    Compiling pango-sys v0.22.0
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.22.0
[INFO] [stderr]    Compiling gdk4-sys v0.11.2
[INFO] [stderr]    Compiling graphene-sys v0.22.0
[INFO] [stderr]    Compiling gsk4-sys v0.11.1
[INFO] [stderr]    Compiling gtk4-sys v0.11.3
[INFO] [stderr]    Compiling libadwaita-sys v0.9.2
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]     Checking webpki v0.22.4
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling glib-macros v0.22.6
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking rustls-pki-types v1.14.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]     Checking dbus-secret-service v4.1.0
[INFO] [stderr]    Compiling gtk4-macros v0.11.0
[INFO] [stderr]     Checking keyring v3.6.3
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking zerofrom v0.1.8
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking yoke v0.8.3
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking glib v0.22.8
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking h2 v0.4.15
[INFO] [stderr]     Checking tower-http v0.6.11
[INFO] [stderr]     Checking hyper v1.10.1
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking gio v0.22.6
[INFO] [stderr]     Checking cairo-rs v0.22.0
[INFO] [stderr]     Checking graphene-rs v0.22.0
[INFO] [stderr]     Checking plotters-cairo v0.9.0
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tungstenite v0.29.0
[INFO] [stderr]     Checking rustls-platform-verifier v0.7.0
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking reqwest v0.13.4
[INFO] [stderr]     Checking tokio-tungstenite v0.29.0
[INFO] [stderr]     Checking api v0.1.0 (/opt/rustwide/workdir/api)
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> api/src/models/user.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[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: `std::collections::HashMap`
[INFO] [stdout]  --> api/src/models/user.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserService` is never constructed
[INFO] [stdout]   --> api/src/services/user.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct UserService {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `gio` (lib)
[INFO] [stdout] warning: associated items `new`, `change_password`, `update_user`, and `get_user_obj` are never used
[INFO] [stdout]   --> api/src/services/user.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl UserService {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub async fn change_password(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub async fn update_user(
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub async fn get_user_obj(&self, req: GetUserObjRequest) -> ApiResult<UserObjResponse> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] warning: struct `VmService` is never constructed
[INFO] [stdout]   --> api/src/services/vm.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct VmService {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] Caused by:
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> api/src/services/vm.rs:16:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl VmService {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  16 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  20 |     pub async fn query_all_vms(&self) -> ApiResult<Vec<VmQueryResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  26 |     pub async fn get_vm_instance(&self, id: i32) -> ApiResult<VmQueryResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub async fn start_vm(&self, id: i32, overcommit: bool) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub async fn restart_vm(&self, id: i32) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub async fn stop_vm(
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub async fn suspend_vm(&self, id: i32) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     pub async fn power_off_vm(&self, id: i32) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub async fn resume_vm(&self, id: i32) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub async fn clone_vm(&self, id: i32, clone_name: Option<&str>) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub async fn get_memory_usage(&self, id: i32) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub async fn delete_vm(
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub async fn get_display_uri(&self, id: i32) -> ApiResult<VmDisplayUriQueryResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub async fn get_vm_status(&self, id: i32) -> ApiResult<VmStatus> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub async fn get_bootloader_options(&self) -> ApiResult<BootloaderChoicesResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub async fn get_bootloader_ovmf_options(&self) -> ApiResult<BootloaderOVMFChoicesResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub async fn get_cpu_model_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub async fn create_vm(&self, args: VmCreateArgs) -> ApiResult<VmQueryResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub async fn export_disk_image(&self, options: VMExportDiskIMageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub async fn get_vm_flags(&self) -> ApiResult<VmFlagsResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub async fn get_available_memory(&self,overcommit: Option<bool>) -> ApiResult<u32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn get_console(&self,id: u32) -> ApiResult<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub async fn get_display_devices(&self,id :u32) -> ApiResult<Vec<VmDisplayDevice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub async fn get_vm_memory_info(&self,id :u32) -> ApiResult<VmGetVmMemoryInfoResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub async fn get_vm_memory_in_use(&self,id :u32) -> ApiResult<VMGetVmemoryInUseResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub async fn get_guest_architecture_and_machine_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub async fn import_disk_image(&self, options: VMImportDiskImageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub async fn download_log_file(&self, id: i32) -> ApiResult<DownloadHandle> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub async fn get_log_file_path(&self,id:u32) -> ApiResult<Option<String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub async fn get_maximum_supported_vcpus(&self) -> ApiResult<u32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub async fn port_wizard(&self)-> ApiResult<VMPortWizardResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub async fn random_mac(&self) -> ApiResult<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub async fn get_resolution_choices (&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub async fn get_supports_virtualization(&self) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub async fn update_vm(
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub async fn get_virtualization_details(&self) -> ApiResult<VMVirtualizationDetailsResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn get_device_bind_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub async fn convert_device(&self, args:VMDeviceConvertArgs)-> ApiResult<bool>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub async fn create_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 |     pub async fn delete_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub async fn get_disk_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 291 |     pub async fn get_device_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub async fn get_iommu_enabled(&self) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub async fn get_device_iotype_choices(&self) -> ApiResult<VMDeviceIotypeChoicesResult> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub async fn get_nic_attach_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn get_passthrough_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub async fn get_passthrough_device_choices(&self) -> ApiResult<VMDevicePassthroughInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn get_pptdev_choices(&self) -> ApiResult<VMDevicePassthroughInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 343 |     pub async fn query_devices(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub async fn update_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub async fn get_usb_controller_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub async fn get_usb_passthrough_choices(&self) -> ApiResult<USBPassthroughInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub async fn get_usb_passthrough_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub async fn get_device_virtual_size(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/3154cc1a3e6424e44f438a95007d043ed5ceaaf6/bin/rustc --crate-name gio --edition=2024 /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/gio-0.22.6/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat,unused-externs-silent --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="v2_58"' --cfg 'feature="v2_60"' --cfg 'feature="v2_62"' --cfg 'feature="v2_64"' --cfg 'feature="v2_66"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("v2_58", "v2_60", "v2_62", "v2_64", "v2_66", "v2_68", "v2_70", "v2_72", "v2_74", "v2_76", "v2_78", "v2_80", "v2_82", "v2_84", "v2_86", "v2_88"))' -C metadata=35f00f3c882fc0e9 -C extra-filename=-d66c74be8cfeb636 --out-dir /opt/rustwide/target/debug/build/gio/d66c74be8cfeb636/out -L dependency=/opt/rustwide/target/debug/build/bitflags/9de504ee9e1bee1a/out -L dependency=/opt/rustwide/target/debug/build/futures-channel/9c1e7f39b7c26e53/out -L dependency=/opt/rustwide/target/debug/build/futures-core/1cd512d543215c04/out -L dependency=/opt/rustwide/target/debug/build/futures-executor/7aa0da54d52328e3/out -L dependency=/opt/rustwide/target/debug/build/futures-macro/497fa74e1fd189b0/out -L dependency=/opt/rustwide/target/debug/build/futures-sink/80687936758fa695/out -L dependency=/opt/rustwide/target/debug/build/futures-task/bde3b8216abf23c5/out -L dependency=/opt/rustwide/target/debug/build/futures-util/bf14a3974c5a65f5/out -L dependency=/opt/rustwide/target/debug/build/gio-sys/67c7393cb8d4e962/out -L dependency=/opt/rustwide/target/debug/build/glib-macros/de2e551a0145282e/out -L dependency=/opt/rustwide/target/debug/build/glib-sys/578fcfe66a07b6ad/out -L dependency=/opt/rustwide/target/debug/build/gobject-sys/da26b98a57901c8d/out -L dependency=/opt/rustwide/target/debug/build/libc/7d2af120e89c619c/out -L dependency=/opt/rustwide/target/debug/build/memchr/e644acf4bdfb9529/out -L dependency=/opt/rustwide/target/debug/build/pin-project-lite/7176d3be2b7ee2e1/out -L dependency=/opt/rustwide/target/debug/build/slab/101f873bca723251/out -L dependency=/opt/rustwide/target/debug/build/smallvec/96d7c7a7332b4422/out --extern futures_channel=/opt/rustwide/target/debug/build/futures-channel/9c1e7f39b7c26e53/out/libfutures_channel-9c1e7f39b7c26e53.rmeta --extern futures_core=/opt/rustwide/target/debug/build/futures-core/1cd512d543215c04/out/libfutures_core-1cd512d543215c04.rmeta --extern futures_io=/opt/rustwide/target/debug/build/futures-io/8551f65ba49d7852/out/libfutures_io-8551f65ba49d7852.rmeta --extern futures_util=/opt/rustwide/target/debug/build/futures-util/bf14a3974c5a65f5/out/libfutures_util-bf14a3974c5a65f5.rmeta --extern gio_sys=/opt/rustwide/target/debug/build/gio-sys/67c7393cb8d4e962/out/libgio_sys-67c7393cb8d4e962.rmeta --extern glib=/opt/rustwide/target/debug/build/glib/46757cc52038a0dd/out/libglib-46757cc52038a0dd.rmeta --extern libc=/opt/rustwide/target/debug/build/libc/7d2af120e89c619c/out/liblibc-7d2af120e89c619c.rmeta --extern pin_project_lite=/opt/rustwide/target/debug/build/pin-project-lite/7176d3be2b7ee2e1/out/libpin_project_lite-7176d3be2b7ee2e1.rmeta --extern smallvec=/opt/rustwide/target/debug/build/smallvec/96d7c7a7332b4422/out/libsmallvec-96d7c7a7332b4422.rmeta --cap-lints allow --cap-lints=forbid --force-warn=unused_crate_dependencies` (signal: 9, SIGKILL: kill)
[INFO] [stdout] warning: struct `VirtService` is never constructed
[INFO] [stdout]  --> api/src/services/virt.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct VirtService {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> api/src/services/virt.rs:14:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl VirtService {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  14 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  18 |     pub async fn get_all_instances(&self) -> ApiResult<Vec<ContainerResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  23 |     pub async fn create_instance(&self, args: CreateContainerArgs) -> ApiResult<ContainerResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |     pub async fn get_instance(&self, id: &str) -> ApiResult<ContainerResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     pub async fn start_instance(&self, id: &str) -> ApiResult<f64> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub async fn stop_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub async fn restart_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     pub async fn delete_instance(&self, id: &str) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub async fn update_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub async fn get_instance_devices(&self, id: &str) -> ApiResult<Vec<Device>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub async fn delete_instance_device(&self, id: &str, device_name: &str) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub async fn get_image_choices(&self) -> ApiResult<Vec<ImageChoice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub async fn add_instance_device(&self, id: &str, device: Device) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub async fn update_instance_device(&self, id: &str, device: Device) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub async fn set_bootable_disk(&self, id: &str, disk: &str) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub async fn get_pool_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub async fn get_bridge_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub async fn get_global_config(&self) -> ApiResult<VirtGlobalEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub async fn query_volumes(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub async fn update_global_config(&self, args: VirtGlobalUpdateArgs) -> ApiResult<VirtGlobalEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub async fn get_network(&self, name: &str) -> ApiResult<VirtGlobalGetNetworkResult> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub async fn get_disk_choices(&self) -> ApiResult<HashMap<String, String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub async fn get_gpu_choices(&self, gpu_type: &str) -> ApiResult<HashMap<String, GPUChoice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub async fn get_nic_choices(&self, nic_type: &str) -> ApiResult<HashMap<String, String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub async fn export_disk_image(&self, args: VirtDeviceExportDiskImageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub async fn import_disk_image(&self, args: VirtDeviceImportDiskImageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub async fn get_pci_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub async fn get_usb_choices(&self) -> ApiResult<HashMap<String, USBChoice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub async fn create_volume(&self, args: VirtVolumeCreateArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub async fn delete_volume(&self, id: &str) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub async fn get_volume_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub async fn update_volume(&self, id: &str, args: VirtVolumeUpdateArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     pub async fn import_iso(&self, args: VirtVolumeImportIsoArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub async fn import_zvol(&self, args: VirtVolumeImportZvolArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StorageService` is never constructed
[INFO] [stdout]   --> api/src/services/storage.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct StorageService {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> api/src/services/storage.rs:20:12
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl StorageService {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  20 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub async fn get_scrub_tasks(&self) -> ApiResult<Vec<PoolScrubQueryResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     pub async fn get_scrub_task_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     pub async fn create_scrub_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub async fn delete_scrub_task(&self, id: i32) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub async fn update_scrub_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub async fn set_scrub_state(&self, args: TakeActionOnPoolScrubArgs) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub async fn run_scrub_task(&self, args: RunPoolScrubArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub async fn create_snapshot_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub async fn delete_snapshot_task(&self, args: DeleteSnapshotTaskArgs) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub async fn check_snapshot_task_affected_by_deletion(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub async fn execute_snapshot_task(&self, args: ExecuteSnapshotTaskArgs) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub async fn query_all_snapshot_tasks(&self) -> ApiResult<Vec<SnapshotCreationResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub async fn get_snapshot_task_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn update_snapshot_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub async fn check_affected_tasks_if_updated(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub async fn get_all_datasets(&self) -> ApiResult<Vec<ZfsDataset>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn get_dataset_details(&self) -> ApiResult<Vec<DatasetDetailsResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub async fn destroy_dataset_snapshots(&self, args: DestroySnapshotsArgs) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub async fn delete_dataset(&self, dataset_name: &str, recursive: bool) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub async fn create_dataset(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CoreService` is never constructed
[INFO] [stdout]  --> api/src/services/core.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct CoreService {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `download` are never used
[INFO] [stdout]   --> api/src/services/core.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl CoreService {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub async fn download(
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClientConfig` is never constructed
[INFO] [stdout]  --> api/src/models/config.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ClientConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_enable_ping` is never used
[INFO] [stdout]   --> api/src/models/config.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn default_enable_ping() -> bool { true }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_ping_timeout_ms` is never used
[INFO] [stdout]   --> api/src/models/config.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn default_ping_timeout_ms() -> u64 { 5000 }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_connection_timeout_ms` is never used
[INFO] [stdout]   --> api/src/models/config.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn default_connection_timeout_ms() -> u64 { 10000 }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_enable_debug_logging` is never used
[INFO] [stdout]   --> api/src/models/config.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn default_enable_debug_logging() -> bool { true }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserUpdateRequest` is never constructed
[INFO] [stdout]  --> api/src/models/user.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct UserUpdateRequest {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserUpdate` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct UserUpdate {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserUpdateResponse` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct UserUpdateResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_home` is never used
[INFO] [stdout]   --> api/src/models/user.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn default_home() -> String { "/var/empty".to_string() }
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_shell` is never used
[INFO] [stdout]   --> api/src/models/user.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn default_shell() -> String { "/usr/bin/zsh".to_string() }
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_true` is never used
[INFO] [stdout]   --> api/src/models/user.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn default_true() -> bool { true }
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserGroup` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct UserGroup {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PasswordHistoryEntry` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct PasswordHistoryEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GetUserObjRequest` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct GetUserObjRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserObjResponse` is never constructed
[INFO] [stdout]    --> api/src/models/user.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct UserObjResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UserSource` is never used
[INFO] [stdout]    --> api/src/models/user.rs:119:10
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum UserSource {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellChoice` is never constructed
[INFO] [stdout]    --> api/src/models/user.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub struct ShellChoice {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChangeUserPasswordRequest` is never constructed
[INFO] [stdout]    --> api/src/models/user.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct ChangeUserPasswordRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `LOGGING_ENABLED` is never used
[INFO] [stdout]  --> api/src/logger.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | static LOGGING_ENABLED: OnceLock<bool> = OnceLock::new();
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]  --> api/src/logger.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn init(enable_debug: bool) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_enabled` is never used
[INFO] [stdout]   --> api/src/logger.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn is_enabled() -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserService` is never constructed
[INFO] [stdout]   --> api/src/services/user.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct UserService {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change_password`, `update_user`, and `get_user_obj` are never used
[INFO] [stdout]   --> api/src/services/user.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl UserService {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub async fn change_password(
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub async fn update_user(
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub async fn get_user_obj(&self, req: GetUserObjRequest) -> ApiResult<UserObjResponse> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VmService` is never constructed
[INFO] [stdout]   --> api/src/services/vm.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct VmService {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> api/src/services/vm.rs:16:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl VmService {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  16 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  20 |     pub async fn query_all_vms(&self) -> ApiResult<Vec<VmQueryResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  26 |     pub async fn get_vm_instance(&self, id: i32) -> ApiResult<VmQueryResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub async fn start_vm(&self, id: i32, overcommit: bool) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub async fn restart_vm(&self, id: i32) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub async fn stop_vm(
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub async fn suspend_vm(&self, id: i32) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     pub async fn power_off_vm(&self, id: i32) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub async fn resume_vm(&self, id: i32) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub async fn clone_vm(&self, id: i32, clone_name: Option<&str>) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub async fn get_memory_usage(&self, id: i32) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub async fn delete_vm(
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub async fn get_display_uri(&self, id: i32) -> ApiResult<VmDisplayUriQueryResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub async fn get_vm_status(&self, id: i32) -> ApiResult<VmStatus> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub async fn get_bootloader_options(&self) -> ApiResult<BootloaderChoicesResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub async fn get_bootloader_ovmf_options(&self) -> ApiResult<BootloaderOVMFChoicesResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub async fn get_cpu_model_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub async fn create_vm(&self, args: VmCreateArgs) -> ApiResult<VmQueryResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub async fn export_disk_image(&self, options: VMExportDiskIMageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub async fn get_vm_flags(&self) -> ApiResult<VmFlagsResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub async fn get_available_memory(&self,overcommit: Option<bool>) -> ApiResult<u32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn get_console(&self,id: u32) -> ApiResult<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub async fn get_display_devices(&self,id :u32) -> ApiResult<Vec<VmDisplayDevice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub async fn get_vm_memory_info(&self,id :u32) -> ApiResult<VmGetVmMemoryInfoResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub async fn get_vm_memory_in_use(&self,id :u32) -> ApiResult<VMGetVmemoryInUseResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub async fn get_guest_architecture_and_machine_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub async fn import_disk_image(&self, options: VMImportDiskImageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub async fn download_log_file(&self, id: i32) -> ApiResult<DownloadHandle> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub async fn get_log_file_path(&self,id:u32) -> ApiResult<Option<String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub async fn get_maximum_supported_vcpus(&self) -> ApiResult<u32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub async fn port_wizard(&self)-> ApiResult<VMPortWizardResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub async fn random_mac(&self) -> ApiResult<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub async fn get_resolution_choices (&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub async fn get_supports_virtualization(&self) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub async fn update_vm(
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub async fn get_virtualization_details(&self) -> ApiResult<VMVirtualizationDetailsResult>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub async fn get_device_bind_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub async fn convert_device(&self, args:VMDeviceConvertArgs)-> ApiResult<bool>{
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub async fn create_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 273 |     pub async fn delete_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub async fn get_disk_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 291 |     pub async fn get_device_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub async fn get_iommu_enabled(&self) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub async fn get_device_iotype_choices(&self) -> ApiResult<VMDeviceIotypeChoicesResult> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub async fn get_nic_attach_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub async fn get_passthrough_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub async fn get_passthrough_device_choices(&self) -> ApiResult<VMDevicePassthroughInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub async fn get_pptdev_choices(&self) -> ApiResult<VMDevicePassthroughInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 343 |     pub async fn query_devices(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub async fn update_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub async fn get_usb_controller_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub async fn get_usb_passthrough_choices(&self) -> ApiResult<USBPassthroughInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub async fn get_usb_passthrough_device(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub async fn get_device_virtual_size(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VirtService` is never constructed
[INFO] [stdout]  --> api/src/services/virt.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct VirtService {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> api/src/services/virt.rs:14:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl VirtService {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  14 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  18 |     pub async fn get_all_instances(&self) -> ApiResult<Vec<ContainerResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  23 |     pub async fn create_instance(&self, args: CreateContainerArgs) -> ApiResult<ContainerResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |     pub async fn get_instance(&self, id: &str) -> ApiResult<ContainerResponse> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     pub async fn start_instance(&self, id: &str) -> ApiResult<f64> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub async fn stop_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub async fn restart_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     pub async fn delete_instance(&self, id: &str) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub async fn update_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub async fn get_instance_devices(&self, id: &str) -> ApiResult<Vec<Device>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub async fn delete_instance_device(&self, id: &str, device_name: &str) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub async fn get_image_choices(&self) -> ApiResult<Vec<ImageChoice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub async fn add_instance_device(&self, id: &str, device: Device) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub async fn update_instance_device(&self, id: &str, device: Device) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub async fn set_bootable_disk(&self, id: &str, disk: &str) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub async fn get_pool_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub async fn get_bridge_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub async fn get_global_config(&self) -> ApiResult<VirtGlobalEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub async fn query_volumes(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub async fn update_global_config(&self, args: VirtGlobalUpdateArgs) -> ApiResult<VirtGlobalEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub async fn get_network(&self, name: &str) -> ApiResult<VirtGlobalGetNetworkResult> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub async fn get_disk_choices(&self) -> ApiResult<HashMap<String, String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub async fn get_gpu_choices(&self, gpu_type: &str) -> ApiResult<HashMap<String, GPUChoice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub async fn get_nic_choices(&self, nic_type: &str) -> ApiResult<HashMap<String, String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub async fn export_disk_image(&self, args: VirtDeviceExportDiskImageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub async fn import_disk_image(&self, args: VirtDeviceImportDiskImageArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub async fn get_pci_choices(&self) -> ApiResult<HashMap<String, serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub async fn get_usb_choices(&self) -> ApiResult<HashMap<String, USBChoice>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub async fn create_volume(&self, args: VirtVolumeCreateArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub async fn delete_volume(&self, id: &str) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub async fn get_volume_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub async fn update_volume(&self, id: &str, args: VirtVolumeUpdateArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     pub async fn import_iso(&self, args: VirtVolumeImportIsoArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub async fn import_zvol(&self, args: VirtVolumeImportZvolArgs) -> ApiResult<VirtVolumeEntry> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StorageService` is never constructed
[INFO] [stdout]   --> api/src/services/storage.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct StorageService {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> api/src/services/storage.rs:20:12
[INFO] [stdout]     |
[INFO] [stdout]  19 | impl StorageService {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  20 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub async fn get_scrub_tasks(&self) -> ApiResult<Vec<PoolScrubQueryResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     pub async fn get_scrub_task_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     pub async fn create_scrub_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub async fn delete_scrub_task(&self, id: i32) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub async fn update_scrub_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub async fn set_scrub_state(&self, args: TakeActionOnPoolScrubArgs) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub async fn run_scrub_task(&self, args: RunPoolScrubArgs) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub async fn create_snapshot_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub async fn delete_snapshot_task(&self, args: DeleteSnapshotTaskArgs) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub async fn check_snapshot_task_affected_by_deletion(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub async fn execute_snapshot_task(&self, args: ExecuteSnapshotTaskArgs) -> ApiResult<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub async fn query_all_snapshot_tasks(&self) -> ApiResult<Vec<SnapshotCreationResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub async fn get_snapshot_task_instance(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn update_snapshot_task(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub async fn check_affected_tasks_if_updated(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub async fn get_all_datasets(&self) -> ApiResult<Vec<ZfsDataset>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub async fn get_dataset_details(&self) -> ApiResult<Vec<DatasetDetailsResponse>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub async fn destroy_dataset_snapshots(&self, args: DestroySnapshotsArgs) -> ApiResult<i32> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub async fn delete_dataset(&self, dataset_name: &str, recursive: bool) -> ApiResult<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub async fn create_dataset(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CoreService` is never constructed
[INFO] [stdout]  --> api/src/services/core.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct CoreService {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `download` are never used
[INFO] [stdout]   --> api/src/services/core.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl CoreService {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 13 |     pub fn new(client: Arc<TrueNasClient>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub async fn download(
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClientConfig` is never constructed
[INFO] [stdout]  --> api/src/models/config.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ClientConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_enable_ping` is never used
[INFO] [stdout]   --> api/src/models/config.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn default_enable_ping() -> bool { true }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_ping_timeout_ms` is never used
[INFO] [stdout]   --> api/src/models/config.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn default_ping_timeout_ms() -> u64 { 5000 }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_connection_timeout_ms` is never used
[INFO] [stdout]   --> api/src/models/config.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn default_connection_timeout_ms() -> u64 { 10000 }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_enable_debug_logging` is never used
[INFO] [stdout]   --> api/src/models/config.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn default_enable_debug_logging() -> bool { true }
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserUpdateRequest` is never constructed
[INFO] [stdout]  --> api/src/models/user.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct UserUpdateRequest {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserUpdate` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct UserUpdate {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserUpdateResponse` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct UserUpdateResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_home` is never used
[INFO] [stdout]   --> api/src/models/user.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn default_home() -> String { "/var/empty".to_string() }
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_shell` is never used
[INFO] [stdout]   --> api/src/models/user.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn default_shell() -> String { "/usr/bin/zsh".to_string() }
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_true` is never used
[INFO] [stdout]   --> api/src/models/user.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn default_true() -> bool { true }
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserGroup` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct UserGroup {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PasswordHistoryEntry` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct PasswordHistoryEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GetUserObjRequest` is never constructed
[INFO] [stdout]   --> api/src/models/user.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub struct GetUserObjRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserObjResponse` is never constructed
[INFO] [stdout]    --> api/src/models/user.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct UserObjResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UserSource` is never used
[INFO] [stdout]    --> api/src/models/user.rs:119:10
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum UserSource {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellChoice` is never constructed
[INFO] [stdout]    --> api/src/models/user.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub struct ShellChoice {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChangeUserPasswordRequest` is never constructed
[INFO] [stdout]    --> api/src/models/user.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct ChangeUserPasswordRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `LOGGING_ENABLED` is never used
[INFO] [stdout]  --> api/src/logger.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | static LOGGING_ENABLED: OnceLock<bool> = OnceLock::new();
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]  --> api/src/logger.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn init(enable_debug: bool) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_enabled` is never used
[INFO] [stdout]   --> api/src/logger.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn is_enabled() -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `oneshot`
[INFO] [stderr]   --> api/Cargo.toml:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | oneshot = "0.2.1"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `oneshot`
[INFO] [stderr] warning: unused dependency `webpki`
[INFO] [stderr]   --> api/Cargo.toml:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | webpki = "0.22"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `webpki`
[INFO] [stderr] warning: `api` (manifest) generated 2 warnings
[INFO] running `Command { std: "docker" "inspect" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1", kill_on_drop: false }`
[INFO] [stdout] 29b918d359335dbf96c51d045c5935ba8a8a2fb07d6a30d3b69ec938b88715b1
