[INFO] cloning repository https://github.com/javanhut/Carrier
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/javanhut/Carrier" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjavanhut%2FCarrier", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjavanhut%2FCarrier'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] be27d0bf990b20ff6ac2f6abc51bbc303642e3f3
[INFO] checking javanhut/Carrier against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjavanhut%2FCarrier" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/javanhut/Carrier
[INFO] finished tweaking git repo https://github.com/javanhut/Carrier
[INFO] tweaked toml for git repo https://github.com/javanhut/Carrier written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/javanhut/Carrier on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/javanhut/Carrier 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded procfs v0.16.0
[INFO] [stderr]   Downloaded portable-pty v0.8.1
[INFO] [stderr]   Downloaded filedescriptor v0.8.3
[INFO] [stderr]   Downloaded procfs-core v0.16.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6103c6083ffe7894c84a209487892cba1c745752ee7da2c82e41be73015a5b3a
[INFO] running `Command { std: "docker" "start" "-a" "6103c6083ffe7894c84a209487892cba1c745752ee7da2c82e41be73015a5b3a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6103c6083ffe7894c84a209487892cba1c745752ee7da2c82e41be73015a5b3a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6103c6083ffe7894c84a209487892cba1c745752ee7da2c82e41be73015a5b3a", kill_on_drop: false }`
[INFO] [stdout] 6103c6083ffe7894c84a209487892cba1c745752ee7da2c82e41be73015a5b3a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4c58023417b565e09e0371767afdb8af4a423146384aac3a415c28d32d15ad5d
[INFO] running `Command { std: "docker" "start" "-a" "4c58023417b565e09e0371767afdb8af4a423146384aac3a415c28d32d15ad5d", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]    Compiling find-msvc-tools v0.1.2
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling serde_core v1.0.226
[INFO] [stderr]     Checking lock_api v0.4.13
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling serde v1.0.226
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking anstream v0.6.20
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking crc32fast v1.5.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling cc v1.2.38
[INFO] [stderr]    Compiling procfs v0.16.0
[INFO] [stderr]     Checking clap_builder v4.5.48
[INFO] [stderr]     Checking procfs-core v0.16.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking shell-words v1.1.0
[INFO] [stderr]     Checking flate2 v1.1.2
[INFO] [stderr]     Checking unit-prefix v0.5.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking indexmap v2.11.4
[INFO] [stderr]     Checking regex-automata v0.4.11
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking getrandom v0.3.3
[INFO] [stderr]     Checking ioctl-rs v0.1.6
[INFO] [stderr]     Checking termios v0.2.2
[INFO] [stderr]     Checking serial-core v0.4.0
[INFO] [stderr]     Checking console v0.16.1
[INFO] [stderr]     Checking rtoolbox v0.0.3
[INFO] [stderr]     Checking nix v0.25.1
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking serial-unix v0.4.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking filetime v0.2.26
[INFO] [stderr]     Checking xattr v1.6.1
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking serial v0.4.0
[INFO] [stderr]     Checking rpassword v7.4.0
[INFO] [stderr]     Checking regex v1.11.3
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking indicatif v0.18.0
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking tar v0.4.44
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.226
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking clap v4.5.48
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking filedescriptor v0.8.3
[INFO] [stderr]     Checking caps v0.5.5
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking portable-pty v0.8.1
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking hyper-util v0.1.17
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.23
[INFO] [stderr]     Checking carrier v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Signal`
[INFO] [stdout]    --> src/commands/commands.rs:960:34
[INFO] [stdout]     |
[INFO] [stdout] 960 |     use nix::sys::signal::{kill, Signal};
[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: `Signal`
[INFO] [stdout]    --> src/commands/commands.rs:960:34
[INFO] [stdout]     |
[INFO] [stdout] 960 |     use nix::sys::signal::{kill, Signal};
[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: `Signal`
[INFO] [stdout]     --> src/commands/commands.rs:1566:46
[INFO] [stdout]      |
[INFO] [stdout] 1566 |                 use nix::sys::signal::{kill, Signal};
[INFO] [stdout]      |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Signal`
[INFO] [stdout]     --> src/commands/commands.rs:1566:46
[INFO] [stdout]      |
[INFO] [stdout] 1566 |                 use nix::sys::signal::{kill, Signal};
[INFO] [stdout]      |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Container`
[INFO] [stdout]     --> src/commands/commands.rs:2301:37
[INFO] [stdout]      |
[INFO] [stdout] 2301 |     use crate::runtime::container::{Container, ContainerConfig};
[INFO] [stdout]      |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Container`
[INFO] [stdout]     --> src/commands/commands.rs:2301:37
[INFO] [stdout]      |
[INFO] [stdout] 2301 |     use crate::runtime::container::{Container, ContainerConfig};
[INFO] [stdout]      |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NetworkMode`
[INFO] [stdout]     --> src/commands/commands.rs:2302:50
[INFO] [stdout]      |
[INFO] [stdout] 2302 |     use crate::runtime::network::{NetworkConfig, NetworkMode};
[INFO] [stdout]      |                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NetworkMode`
[INFO] [stdout]     --> src/commands/commands.rs:2302:50
[INFO] [stdout]      |
[INFO] [stdout] 2302 |     use crate::runtime::network::{NetworkConfig, NetworkMode};
[INFO] [stdout]      |                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Signal`
[INFO] [stdout]     --> src/commands/commands.rs:3714:78
[INFO] [stdout]      |
[INFO] [stdout] 3714 | ...                   use nix::sys::signal::{kill, Signal};
[INFO] [stdout]      |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Signal`
[INFO] [stdout]     --> src/commands/commands.rs:3714:78
[INFO] [stdout]      |
[INFO] [stdout] 3714 | ...                   use nix::sys::signal::{kill, Signal};
[INFO] [stdout]      |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/runtime/container.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/runtime/container.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NamespaceManager`
[INFO] [stdout]  --> src/runtime/container.rs:8:51
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::runtime::namespaces::{NamespaceConfig, NamespaceManager};
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SecurityManager`
[INFO] [stdout]   --> src/runtime/container.rs:11:48
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::runtime::security::{SecurityConfig, SecurityManager};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NamespaceManager`
[INFO] [stdout]  --> src/runtime/container.rs:8:51
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::runtime::namespaces::{NamespaceConfig, NamespaceManager};
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WaitStatus` and `waitpid`
[INFO] [stdout]  --> src/runtime/namespaces.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nix::sys::wait::{waitpid, WaitStatus};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Gid`, `Uid`, `setgid`, and `setuid`
[INFO] [stdout]  --> src/runtime/namespaces.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nix::unistd::{setgid, sethostname, setuid, Gid, Pid, Uid};
[INFO] [stdout]   |                   ^^^^^^               ^^^^^^  ^^^       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::process::CommandExt`
[INFO] [stdout]  --> src/runtime/namespaces.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::os::unix::process::CommandExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]  --> src/runtime/namespaces.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/runtime/network.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CStr`
[INFO] [stdout]  --> src/runtime/process.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ffi::{CStr, CString};
[INFO] [stdout]   |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::io::RawFd`
[INFO] [stdout]  --> src/runtime/process.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::os::unix::io::RawFd;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/runtime/security.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CgroupConfig` and `CgroupManager`
[INFO] [stdout]  --> src/runtime/mod.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use cgroups::{CgroupConfig, CgroupManager};
[INFO] [stdout]   |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NamespaceConfig` and `NamespaceManager`
[INFO] [stdout]  --> src/runtime/mod.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use namespaces::{NamespaceConfig, NamespaceManager};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NetworkConfig` and `NetworkManager`
[INFO] [stdout]   --> src/runtime/mod.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use network::{NetworkConfig, NetworkManager};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerProcess` and `ProcessConfig`
[INFO] [stdout]   --> src/runtime/mod.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use process::{ContainerProcess, ProcessConfig};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SecurityConfig` and `SecurityManager`
[INFO] [stdout]   --> src/runtime/mod.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use security::{SecurityConfig, SecurityManager};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SecurityManager`
[INFO] [stdout]   --> src/runtime/container.rs:11:48
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::runtime::security::{SecurityConfig, SecurityManager};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WaitStatus` and `waitpid`
[INFO] [stdout]  --> src/runtime/namespaces.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nix::sys::wait::{waitpid, WaitStatus};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Gid`, `Uid`, `setgid`, and `setuid`
[INFO] [stdout]  --> src/runtime/namespaces.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nix::unistd::{setgid, sethostname, setuid, Gid, Pid, Uid};
[INFO] [stdout]   |                   ^^^^^^               ^^^^^^  ^^^       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::process::CommandExt`
[INFO] [stdout]  --> src/runtime/namespaces.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::os::unix::process::CommandExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]  --> src/runtime/namespaces.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/runtime/network.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CStr`
[INFO] [stdout]  --> src/runtime/process.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ffi::{CStr, CString};
[INFO] [stdout]   |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::io::RawFd`
[INFO] [stdout]  --> src/runtime/process.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::os::unix::io::RawFd;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/runtime/security.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CgroupConfig` and `CgroupManager`
[INFO] [stdout]  --> src/runtime/mod.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use cgroups::{CgroupConfig, CgroupManager};
[INFO] [stdout]   |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NamespaceConfig` and `NamespaceManager`
[INFO] [stdout]  --> src/runtime/mod.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use namespaces::{NamespaceConfig, NamespaceManager};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NetworkConfig` and `NetworkManager`
[INFO] [stdout]   --> src/runtime/mod.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use network::{NetworkConfig, NetworkManager};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerProcess` and `ProcessConfig`
[INFO] [stdout]   --> src/runtime/mod.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use process::{ContainerProcess, ProcessConfig};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SecurityConfig` and `SecurityManager`
[INFO] [stdout]   --> src/runtime/mod.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use security::{SecurityConfig, SecurityManager};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `container_dir`
[INFO] [stdout]    --> src/commands/commands.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 573 |     container_dir: &Path,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_container_dir`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rootfs`
[INFO] [stdout]    --> src/commands/commands.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     rootfs: &Path,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_rootfs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `container_dir`
[INFO] [stdout]    --> src/commands/commands.rs:734:5
[INFO] [stdout]     |
[INFO] [stdout] 734 |     container_dir: &Path,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_container_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/commands/commands.rs:1625:18
[INFO] [stdout]      |
[INFO] [stdout] 1625 |             for (i, var) in env.iter().take(5).enumerate() {
[INFO] [stdout]      |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `container_dir`
[INFO] [stdout]    --> src/commands/commands.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 573 |     container_dir: &Path,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_container_dir`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rootfs`
[INFO] [stdout]    --> src/commands/commands.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     rootfs: &Path,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_rootfs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `container_dir`
[INFO] [stdout]    --> src/commands/commands.rs:734:5
[INFO] [stdout]     |
[INFO] [stdout] 734 |     container_dir: &Path,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_container_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/commands/commands.rs:1625:18
[INFO] [stdout]      |
[INFO] [stdout] 1625 |             for (i, var) in env.iter().take(5).enumerate() {
[INFO] [stdout]      |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proto`
[INFO] [stdout]    --> src/runtime/network.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let proto = match mapping.protocol {
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_proto`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/runtime/cgroups.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct CgroupConfig {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout]  8 |     /// Memory limit in bytes
[INFO] [stdout]  9 |     pub memory_limit: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 10 |     /// Memory swap limit in bytes
[INFO] [stdout] 11 |     pub memory_swap_limit: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     /// CPU quota in microseconds per period
[INFO] [stdout] 13 |     pub cpu_quota: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 14 |     /// CPU period in microseconds
[INFO] [stdout] 15 |     pub cpu_period: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 16 |     /// CPU weight (1-10000, default 100)
[INFO] [stdout] 17 |     pub cpu_weight: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 18 |     /// Maximum number of processes
[INFO] [stdout] 19 |     pub pids_limit: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 20 |     /// IO weight (1-10000, default 100)
[INFO] [stdout] 21 |     pub io_weight: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CgroupConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CgroupManager` is never constructed
[INFO] [stdout]   --> src/runtime/cgroups.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct CgroupManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/cgroups.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  31 | impl CgroupManager {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  32 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     fn get_user_cgroup_path(container_id: &str) -> Result<PathBuf, Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn setup_cgroup(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn enable_controllers(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn apply_limits(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn add_process(&self, pid: u32) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn get_memory_usage(&self) -> Result<u64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn get_cpu_stats(&self) -> Result<CpuStats, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn cleanup(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     fn kill_all_processes(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CpuStats` is never constructed
[INFO] [stdout]    --> src/runtime/cgroups.rs:262:12
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub struct CpuStats {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_available_controllers` is never used
[INFO] [stdout]    --> src/runtime/cgroups.rs:269:8
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub fn get_available_controllers() -> Result<Vec<String>, Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_cgroup_v2` is never used
[INFO] [stdout]    --> src/runtime/cgroups.rs:280:8
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub fn is_cgroup_v2() -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/runtime/container.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct ContainerConfig {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 16 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 17 |     pub name: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     pub image: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 19 |     pub rootfs: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 20 |     pub command: Vec<String>,
[INFO] [stdout] 21 |     pub env: Vec<(String, String)>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 22 |     pub working_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 23 |     pub hostname: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 24 |     pub user: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 25 |     pub readonly_rootfs: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub network_config: NetworkConfig,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     pub cgroup_config: CgroupConfig,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub security_config: SecurityConfig,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub mounts: Vec<MountPoint>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 30 |     pub labels: Vec<(String, String)>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContainerConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source`, `destination`, and `readonly` are never read
[INFO] [stdout]   --> src/runtime/container.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct MountPoint {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 35 |     pub source: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 36 |     pub destination: PathBuf,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 37 |     pub readonly: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MountPoint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Container` is never constructed
[INFO] [stdout]   --> src/runtime/container.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct Container {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/container.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl Container {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  79 |     /// Create a new container
[INFO] [stdout]  80 |     pub fn new(config: ContainerConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn start(&mut self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn stop(&mut self, timeout: std::time::Duration) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn kill(&self, signal: Signal) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn wait(&self) -> Result<i32, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn status(&self) -> ContainerStatus {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn stats(&self) -> Result<ContainerStats, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     fn validate_config(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ContainerStatus` is never used
[INFO] [stdout]    --> src/runtime/container.rs:297:10
[INFO] [stdout]     |
[INFO] [stdout] 297 | pub enum ContainerStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContainerStats` is never constructed
[INFO] [stdout]    --> src/runtime/container.rs:306:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub struct ContainerStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_container` is never used
[INFO] [stdout]    --> src/runtime/container.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 | pub fn run_container(config: ContainerConfig) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NamespaceConfig` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct NamespaceConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UidMapping` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct UidMapping {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GidMapping` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct GidMapping {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NamespaceManager` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct NamespaceManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enter_namespaces`, `setup_user_mappings`, `setup_rootless_userns`, `setup_container_mounts`, and `create_devices` are never used
[INFO] [stdout]    --> src/runtime/namespaces.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout]  88 | impl NamespaceManager {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  89 |     pub fn new(config: NamespaceConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn enter_namespaces(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn setup_user_mappings(&self, pid: Pid) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub fn setup_rootless_userns(&self, pid: i32) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn setup_container_mounts(&self, rootfs: &Path) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 312 |     fn create_devices(&self, dev_path: &Path) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TCP` and `UDP` are never constructed
[INFO] [stdout]   --> src/runtime/network.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Protocol {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 33 |     TCP,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 34 |     UDP,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Protocol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Host` and `Bridge` are never constructed
[INFO] [stdout]   --> src/runtime/network.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub enum NetworkMode {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 42 |     Host,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     Bridge,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NetworkMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `configure_interfaces` and `add_port_forward` are never used
[INFO] [stdout]    --> src/runtime/network.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl NetworkManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub fn configure_interfaces(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     pub fn add_port_forward(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_connectivity` is never used
[INFO] [stdout]    --> src/runtime/network.rs:334:8
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub fn check_network_connectivity() -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_gateway` is never used
[INFO] [stdout]    --> src/runtime/network.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub fn get_default_gateway() -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessConfig` is never constructed
[INFO] [stdout]   --> src/runtime/process.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct ProcessConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContainerProcess` is never constructed
[INFO] [stdout]   --> src/runtime/process.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct ContainerProcess {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/process.rs:71:12
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl ContainerProcess {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  71 |     pub fn new(config: ProcessConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn start(&mut self) -> Result<Pid, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     fn run_container(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fn setup_container_fs(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     fn pivot_root(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn exec_command(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn wait(&self) -> Result<WaitStatus, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 276 |     pub fn kill(&self, signal: Signal) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub fn is_running(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn get_pid(&self) -> Option<Pid> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |     pub fn stop(&mut self, timeout: Duration) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `container_init` is never used
[INFO] [stdout]    --> src/runtime/process.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn container_init(config: ProcessConfig) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/runtime/security.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct SecurityConfig {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 10 |     /// Capabilities to drop
[INFO] [stdout] 11 |     pub drop_caps: Vec<Capability>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 12 |     /// Capabilities to keep
[INFO] [stdout] 13 |     pub keep_caps: Vec<Capability>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 14 |     /// Enable no-new-privileges flag
[INFO] [stdout] 15 |     pub no_new_privs: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Make rootfs read-only
[INFO] [stdout] 17 |     pub readonly_rootfs: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     /// Seccomp profile (simplified for now)
[INFO] [stdout] 19 |     pub seccomp_profile: SeccompProfile,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     /// User to run as in container
[INFO] [stdout] 21 |     pub user: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     /// Group to run as in container
[INFO] [stdout] 23 |     pub group: Option<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 24 |     /// Additional groups
[INFO] [stdout] 25 |     pub supplementary_groups: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Unconfined` and `Custom` are never constructed
[INFO] [stdout]   --> src/runtime/security.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum SeccompProfile {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 30 |     /// Allow all syscalls (no filtering)
[INFO] [stdout] 31 |     Unconfined,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SeccompProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityManager` is never constructed
[INFO] [stdout]   --> src/runtime/security.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct SecurityManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/security.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  79 | impl SecurityManager {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout]  80 |     pub fn new(config: SecurityConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn apply_security(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn set_no_new_privs(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn apply_capabilities(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn apply_seccomp(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn set_user_group(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn make_rootfs_readonly(&self, rootfs: &Path) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_seccomp_filter` is never used
[INFO] [stdout]    --> src/runtime/security.rs:233:4
[INFO] [stdout]     |
[INFO] [stdout] 233 | fn get_default_seccomp_filter() -> *const libc::c_void {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_root` is never used
[INFO] [stdout]    --> src/runtime/security.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn is_root() -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `drop_privileges` is never used
[INFO] [stdout]    --> src/runtime/security.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn drop_privileges() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_layers_sequential` is never used
[INFO] [stdout]   --> src/storage/layer.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn extract_layers_sequential(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prepare_layer_directory` is never used
[INFO] [stdout]   --> src/storage/layer.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn prepare_layer_directory(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `temp_dir`, `runtime_dir`, and `cleanup_temp` are never used
[INFO] [stdout]   --> src/storage/layout.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl StorageLayout {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn temp_dir(&self) -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn runtime_dir(&self) -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn cleanup_temp(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proto`
[INFO] [stdout]    --> src/runtime/network.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let proto = match mapping.protocol {
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_proto`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `list_containers` is never used
[INFO] [stdout]    --> src/storage/layout.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl StorageLayout {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn list_containers(&self) -> Result<Vec<String>, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `unmount_container` is never used
[INFO] [stdout]    --> src/storage/overlay.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout]  64 | impl ContainerStorage {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn unmount_container(&self, container_id: &str) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_rootless_container` is never used
[INFO] [stdout]    --> src/storage/overlay.rs:291:8
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub fn create_rootless_container(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_fuse_overlayfs` is never used
[INFO] [stdout]    --> src/storage/overlay.rs:307:8
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub fn ensure_fuse_overlayfs() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/runtime/cgroups.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct CgroupConfig {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout]  8 |     /// Memory limit in bytes
[INFO] [stdout]  9 |     pub memory_limit: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 10 |     /// Memory swap limit in bytes
[INFO] [stdout] 11 |     pub memory_swap_limit: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     /// CPU quota in microseconds per period
[INFO] [stdout] 13 |     pub cpu_quota: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 14 |     /// CPU period in microseconds
[INFO] [stdout] 15 |     pub cpu_period: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 16 |     /// CPU weight (1-10000, default 100)
[INFO] [stdout] 17 |     pub cpu_weight: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 18 |     /// Maximum number of processes
[INFO] [stdout] 19 |     pub pids_limit: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 20 |     /// IO weight (1-10000, default 100)
[INFO] [stdout] 21 |     pub io_weight: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CgroupConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CgroupManager` is never constructed
[INFO] [stdout]   --> src/runtime/cgroups.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct CgroupManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/cgroups.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  31 | impl CgroupManager {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  32 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     fn get_user_cgroup_path(container_id: &str) -> Result<PathBuf, Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn setup_cgroup(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn enable_controllers(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn apply_limits(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn add_process(&self, pid: u32) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn get_memory_usage(&self) -> Result<u64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn get_cpu_stats(&self) -> Result<CpuStats, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn cleanup(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     fn kill_all_processes(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CpuStats` is never constructed
[INFO] [stdout]    --> src/runtime/cgroups.rs:262:12
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub struct CpuStats {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_available_controllers` is never used
[INFO] [stdout]    --> src/runtime/cgroups.rs:269:8
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub fn get_available_controllers() -> Result<Vec<String>, Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_cgroup_v2` is never used
[INFO] [stdout]    --> src/runtime/cgroups.rs:280:8
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub fn is_cgroup_v2() -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/runtime/container.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct ContainerConfig {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 16 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 17 |     pub name: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     pub image: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 19 |     pub rootfs: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 20 |     pub command: Vec<String>,
[INFO] [stdout] 21 |     pub env: Vec<(String, String)>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 22 |     pub working_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 23 |     pub hostname: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 24 |     pub user: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 25 |     pub readonly_rootfs: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub network_config: NetworkConfig,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     pub cgroup_config: CgroupConfig,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub security_config: SecurityConfig,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub mounts: Vec<MountPoint>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 30 |     pub labels: Vec<(String, String)>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContainerConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source`, `destination`, and `readonly` are never read
[INFO] [stdout]   --> src/runtime/container.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct MountPoint {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 35 |     pub source: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 36 |     pub destination: PathBuf,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 37 |     pub readonly: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MountPoint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Container` is never constructed
[INFO] [stdout]   --> src/runtime/container.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct Container {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/container.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl Container {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  79 |     /// Create a new container
[INFO] [stdout]  80 |     pub fn new(config: ContainerConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn start(&mut self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn stop(&mut self, timeout: std::time::Duration) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn kill(&self, signal: Signal) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn wait(&self) -> Result<i32, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn status(&self) -> ContainerStatus {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn stats(&self) -> Result<ContainerStats, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     fn validate_config(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ContainerStatus` is never used
[INFO] [stdout]    --> src/runtime/container.rs:297:10
[INFO] [stdout]     |
[INFO] [stdout] 297 | pub enum ContainerStatus {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContainerStats` is never constructed
[INFO] [stdout]    --> src/runtime/container.rs:306:12
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub struct ContainerStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_container` is never used
[INFO] [stdout]    --> src/runtime/container.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 | pub fn run_container(config: ContainerConfig) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NamespaceConfig` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct NamespaceConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UidMapping` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct UidMapping {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GidMapping` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct GidMapping {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NamespaceManager` is never constructed
[INFO] [stdout]   --> src/runtime/namespaces.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct NamespaceManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enter_namespaces`, `setup_user_mappings`, `setup_rootless_userns`, `setup_container_mounts`, and `create_devices` are never used
[INFO] [stdout]    --> src/runtime/namespaces.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout]  88 | impl NamespaceManager {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  89 |     pub fn new(config: NamespaceConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn enter_namespaces(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn setup_user_mappings(&self, pid: Pid) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub fn setup_rootless_userns(&self, pid: i32) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn setup_container_mounts(&self, rootfs: &Path) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 312 |     fn create_devices(&self, dev_path: &Path) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TCP` and `UDP` are never constructed
[INFO] [stdout]   --> src/runtime/network.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Protocol {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 33 |     TCP,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 34 |     UDP,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Protocol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Host` and `Bridge` are never constructed
[INFO] [stdout]   --> src/runtime/network.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub enum NetworkMode {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 42 |     Host,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     Bridge,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NetworkMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `configure_interfaces` and `add_port_forward` are never used
[INFO] [stdout]    --> src/runtime/network.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl NetworkManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub fn configure_interfaces(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     pub fn add_port_forward(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_connectivity` is never used
[INFO] [stdout]    --> src/runtime/network.rs:334:8
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub fn check_network_connectivity() -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_gateway` is never used
[INFO] [stdout]    --> src/runtime/network.rs:343:8
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub fn get_default_gateway() -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessConfig` is never constructed
[INFO] [stdout]   --> src/runtime/process.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct ProcessConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContainerProcess` is never constructed
[INFO] [stdout]   --> src/runtime/process.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct ContainerProcess {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/process.rs:71:12
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl ContainerProcess {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  71 |     pub fn new(config: ProcessConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn start(&mut self) -> Result<Pid, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     fn run_container(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fn setup_container_fs(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     fn pivot_root(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn exec_command(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn wait(&self) -> Result<WaitStatus, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 276 |     pub fn kill(&self, signal: Signal) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub fn is_running(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn get_pid(&self) -> Option<Pid> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |     pub fn stop(&mut self, timeout: Duration) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `container_init` is never used
[INFO] [stdout]    --> src/runtime/process.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn container_init(config: ProcessConfig) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/runtime/security.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct SecurityConfig {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 10 |     /// Capabilities to drop
[INFO] [stdout] 11 |     pub drop_caps: Vec<Capability>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 12 |     /// Capabilities to keep
[INFO] [stdout] 13 |     pub keep_caps: Vec<Capability>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 14 |     /// Enable no-new-privileges flag
[INFO] [stdout] 15 |     pub no_new_privs: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Make rootfs read-only
[INFO] [stdout] 17 |     pub readonly_rootfs: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     /// Seccomp profile (simplified for now)
[INFO] [stdout] 19 |     pub seccomp_profile: SeccompProfile,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     /// User to run as in container
[INFO] [stdout] 21 |     pub user: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     /// Group to run as in container
[INFO] [stdout] 23 |     pub group: Option<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 24 |     /// Additional groups
[INFO] [stdout] 25 |     pub supplementary_groups: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Unconfined` and `Custom` are never constructed
[INFO] [stdout]   --> src/runtime/security.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum SeccompProfile {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 30 |     /// Allow all syscalls (no filtering)
[INFO] [stdout] 31 |     Unconfined,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SeccompProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityManager` is never constructed
[INFO] [stdout]   --> src/runtime/security.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct SecurityManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/runtime/security.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  79 | impl SecurityManager {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout]  80 |     pub fn new(config: SecurityConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn apply_security(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn set_no_new_privs(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn apply_capabilities(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn apply_seccomp(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn set_user_group(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn make_rootfs_readonly(&self, rootfs: &Path) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_seccomp_filter` is never used
[INFO] [stdout]    --> src/runtime/security.rs:233:4
[INFO] [stdout]     |
[INFO] [stdout] 233 | fn get_default_seccomp_filter() -> *const libc::c_void {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_root` is never used
[INFO] [stdout]    --> src/runtime/security.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn is_root() -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `drop_privileges` is never used
[INFO] [stdout]    --> src/runtime/security.rs:245:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub fn drop_privileges() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_layers_sequential` is never used
[INFO] [stdout]   --> src/storage/layer.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn extract_layers_sequential(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prepare_layer_directory` is never used
[INFO] [stdout]   --> src/storage/layer.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn prepare_layer_directory(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `temp_dir`, `runtime_dir`, and `cleanup_temp` are never used
[INFO] [stdout]   --> src/storage/layout.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl StorageLayout {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn temp_dir(&self) -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn runtime_dir(&self) -> PathBuf {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn cleanup_temp(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `list_containers` is never used
[INFO] [stdout]    --> src/storage/layout.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl StorageLayout {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn list_containers(&self) -> Result<Vec<String>, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `unmount_container` is never used
[INFO] [stdout]    --> src/storage/overlay.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout]  64 | impl ContainerStorage {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn unmount_container(&self, container_id: &str) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_rootless_container` is never used
[INFO] [stdout]    --> src/storage/overlay.rs:291:8
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub fn create_rootless_container(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_fuse_overlayfs` is never used
[INFO] [stdout]    --> src/storage/overlay.rs:307:8
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub fn ensure_fuse_overlayfs() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.89s
[INFO] running `Command { std: "docker" "inspect" "4c58023417b565e09e0371767afdb8af4a423146384aac3a415c28d32d15ad5d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c58023417b565e09e0371767afdb8af4a423146384aac3a415c28d32d15ad5d", kill_on_drop: false }`
[INFO] [stdout] 4c58023417b565e09e0371767afdb8af4a423146384aac3a415c28d32d15ad5d
