[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, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 10 | /// Memory swap limit in bytes [INFO] [stdout] 11 | pub memory_swap_limit: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | /// CPU quota in microseconds per period [INFO] [stdout] 13 | pub cpu_quota: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | /// CPU period in microseconds [INFO] [stdout] 15 | pub cpu_period: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 16 | /// CPU weight (1-10000, default 100) [INFO] [stdout] 17 | pub cpu_weight: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | /// Maximum number of processes [INFO] [stdout] 19 | pub pids_limit: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 20 | /// IO weight (1-10000, default 100) [INFO] [stdout] 21 | pub io_weight: Option, [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> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn setup_cgroup(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn enable_controllers(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn apply_limits(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn add_process(&self, pid: u32) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn get_memory_usage(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn get_cpu_stats(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn cleanup(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | fn kill_all_processes(&self) -> Result<(), Box> { [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, Box> { [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, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | pub image: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | pub rootfs: PathBuf, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | pub command: Vec, [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, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | pub user: Option, [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, [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> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn stop(&mut self, timeout: std::time::Duration) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn kill(&self, signal: Signal) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn wait(&self) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn status(&self) -> ContainerStatus { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn stats(&self) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 255 | fn validate_config(&self) -> Result<(), Box> { [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> { [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> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn setup_user_mappings(&self, pid: Pid) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn setup_rootless_userns(&self, pid: i32) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn setup_container_mounts(&self, rootfs: &Path) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | fn create_devices(&self, dev_path: &Path) -> Result<(), Box> { [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> { [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 { [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> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | fn run_container(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | fn setup_container_fs(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | fn pivot_root(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | fn exec_command(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 266 | pub fn wait(&self) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn kill(&self, signal: Signal) -> Result<(), Box> { [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 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 307 | pub fn stop(&mut self, timeout: Duration) -> Result<(), Box> { [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> { [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, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | /// Capabilities to keep [INFO] [stdout] 13 | pub keep_caps: Vec, [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, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | /// Group to run as in container [INFO] [stdout] 23 | pub group: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 24 | /// Additional groups [INFO] [stdout] 25 | pub supplementary_groups: Vec, [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> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn set_no_new_privs(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | fn apply_capabilities(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | fn apply_seccomp(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | fn set_user_group(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub fn make_rootfs_readonly(&self, rootfs: &Path) -> Result<(), Box> { [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> { [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> { [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, Box> { [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> { [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> { [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, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 10 | /// Memory swap limit in bytes [INFO] [stdout] 11 | pub memory_swap_limit: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | /// CPU quota in microseconds per period [INFO] [stdout] 13 | pub cpu_quota: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | /// CPU period in microseconds [INFO] [stdout] 15 | pub cpu_period: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 16 | /// CPU weight (1-10000, default 100) [INFO] [stdout] 17 | pub cpu_weight: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | /// Maximum number of processes [INFO] [stdout] 19 | pub pids_limit: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 20 | /// IO weight (1-10000, default 100) [INFO] [stdout] 21 | pub io_weight: Option, [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> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn setup_cgroup(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn enable_controllers(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn apply_limits(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn add_process(&self, pid: u32) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn get_memory_usage(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn get_cpu_stats(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn cleanup(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | fn kill_all_processes(&self) -> Result<(), Box> { [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, Box> { [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, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | pub image: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | pub rootfs: PathBuf, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | pub command: Vec, [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, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | pub user: Option, [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, [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> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn stop(&mut self, timeout: std::time::Duration) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn kill(&self, signal: Signal) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn wait(&self) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn status(&self) -> ContainerStatus { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn stats(&self) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 255 | fn validate_config(&self) -> Result<(), Box> { [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> { [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> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn setup_user_mappings(&self, pid: Pid) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn setup_rootless_userns(&self, pid: i32) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn setup_container_mounts(&self, rootfs: &Path) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | fn create_devices(&self, dev_path: &Path) -> Result<(), Box> { [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> { [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 { [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> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | fn run_container(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | fn setup_container_fs(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | fn pivot_root(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | fn exec_command(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 266 | pub fn wait(&self) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 276 | pub fn kill(&self, signal: Signal) -> Result<(), Box> { [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 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 307 | pub fn stop(&mut self, timeout: Duration) -> Result<(), Box> { [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> { [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, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 12 | /// Capabilities to keep [INFO] [stdout] 13 | pub keep_caps: Vec, [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, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | /// Group to run as in container [INFO] [stdout] 23 | pub group: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 24 | /// Additional groups [INFO] [stdout] 25 | pub supplementary_groups: Vec, [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> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn set_no_new_privs(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | fn apply_capabilities(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | fn apply_seccomp(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | fn set_user_group(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | pub fn make_rootfs_readonly(&self, rootfs: &Path) -> Result<(), Box> { [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> { [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> { [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, Box> { [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> { [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> { [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