[INFO] cloning repository https://github.com/wisonye/rust-utils
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wisonye/rust-utils" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwisonye%2Frust-utils", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwisonye%2Frust-utils'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e8010caf8b372a3ac68f405c15ddb01c60800120
[INFO] testing wisonye/rust-utils against nightly-2025-01-18 for randomize-layout-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwisonye%2Frust-utils" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/wisonye/rust-utils on toolchain nightly-2025-01-18
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/wisonye/rust-utils
[INFO] finished tweaking git repo https://github.com/wisonye/rust-utils
[INFO] tweaked toml for git repo https://github.com/wisonye/rust-utils written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/wisonye/rust-utils 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" "+nightly-2025-01-18" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1badf5430050255ff7aafdecd8421af15aa7de5d5e885f8dde98f50e96ff65ba
[INFO] running `Command { std: "docker" "start" "-a" "1badf5430050255ff7aafdecd8421af15aa7de5d5e885f8dde98f50e96ff65ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1badf5430050255ff7aafdecd8421af15aa7de5d5e885f8dde98f50e96ff65ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1badf5430050255ff7aafdecd8421af15aa7de5d5e885f8dde98f50e96ff65ba", kill_on_drop: false }`
[INFO] [stdout] 1badf5430050255ff7aafdecd8421af15aa7de5d5e885f8dde98f50e96ff65ba
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a7cce181e0f603827de6462b0ee94698e57a3c4543a6c9b3cca2f3fc0c18d9e3
[INFO] running `Command { std: "docker" "start" "-a" "a7cce181e0f603827de6462b0ee94698e57a3c4543a6c9b3cca2f3fc0c18d9e3", kill_on_drop: false }`
[INFO] [stderr]    Compiling rust-utils v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the feature `pointer_byte_offsets` has been stable since 1.75.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(pointer_byte_offsets)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_level`
[INFO] [stdout]   --> src/utils/bits.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let log_level = LogLevel::get_config_from_env();
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prefix`
[INFO] [stdout]   --> src/utils/memory.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let prefix = "[ {}, size: {} ]";
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LOGGER_NAME` is never used
[INFO] [stdout]  --> src/utils/bits.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const LOGGER_NAME: &'static str = "Bits";
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_bits` is never used
[INFO] [stdout]  --> src/utils/bits.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn print_bits<T: Binary + UpperHex>(v: &T) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bits` is never used
[INFO] [stdout]   --> src/utils/bits.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn get_bits<T: Binary + UpperHex>(v: &T) -> String {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bit_is_1` is never used
[INFO] [stdout]   --> src/utils/bits.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn bit_is_1(v: usize, which_bit: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `byte_arr_to_hex_string` is never used
[INFO] [stdout]  --> src/utils/hex.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn byte_arr_to_hex_string(byte_arr: &[u8], splitter: Option<char>) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `char_to_u8` is never used
[INFO] [stdout]   --> src/utils/hex.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn char_to_u8(c: char) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_string_to_byte_arr` is never used
[INFO] [stdout]   --> src/utils/hex.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn hex_string_to_byte_arr(hex_string: &str) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_to_be_u16` is never used
[INFO] [stdout]   --> src/utils/hex.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn hex_to_be_u16(byte_array: &[u8]) -> u16 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_to_be_u32` is never used
[INFO] [stdout]   --> src/utils/hex.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn hex_to_be_u32(byte_array: &[u8]) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DEBUG`, `INFO`, `WARNING`, and `ERROR` are never constructed
[INFO] [stdout]   --> src/utils/logger.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub enum LogLevel {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 8  |     DEBUG = 1,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 9  |     INFO = 2,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 10 |     WARNING = 3,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 11 |     ERROR = 4,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogLevel` 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: associated function `get_config_from_env` is never used
[INFO] [stdout]   --> src/utils/logger.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl LogLevel {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 15 |     pub fn get_config_from_env() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn log(
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn debug_log(
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `info_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn info_log(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `warning_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn warning_log(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `error_log` is never used
[INFO] [stdout]    --> src/utils/logger.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn error_log(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LOGGER_NAME` is never used
[INFO] [stdout]  --> src/utils/memory.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const LOGGER_NAME: &'static str = "Memory";
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_memory_block` is never used
[INFO] [stdout]  --> src/utils/memory.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn print_memory_block<T: std::fmt::Debug>(var: &T) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryBlockInfo` is never constructed
[INFO] [stdout]   --> src/utils/memory.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct MemoryBlockInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MemoryBlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_memory_block_info` is never used
[INFO] [stdout]   --> src/utils/memory.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn get_memory_block_info<T: std::fmt::Debug>(var: &T) -> MemoryBlockInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BufferReference` is never used
[INFO] [stdout]  --> src/utils/types.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub type BufferReference<'a> = &'a [u8];
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FutureResult` is never used
[INFO] [stdout]  --> src/utils/types.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type FutureResult<T> = std::result::Result<T, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ThreadResult` is never used
[INFO] [stdout]  --> src/utils/types.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type ThreadResult<T> = Result<std::thread::JoinHandle<T>, Box<dyn std::error::Error + 'static>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] running `Command { std: "docker" "inspect" "a7cce181e0f603827de6462b0ee94698e57a3c4543a6c9b3cca2f3fc0c18d9e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7cce181e0f603827de6462b0ee94698e57a3c4543a6c9b3cca2f3fc0c18d9e3", kill_on_drop: false }`
[INFO] [stdout] a7cce181e0f603827de6462b0ee94698e57a3c4543a6c9b3cca2f3fc0c18d9e3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3d9e5a38632b56f4ac9575398e26756656ea56671bff1b94d174f333ad6623dd
[INFO] running `Command { std: "docker" "start" "-a" "3d9e5a38632b56f4ac9575398e26756656ea56671bff1b94d174f333ad6623dd", kill_on_drop: false }`
[INFO] [stdout] warning: the feature `pointer_byte_offsets` has been stable since 1.75.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(pointer_byte_offsets)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_level`
[INFO] [stdout]   --> src/utils/bits.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let log_level = LogLevel::get_config_from_env();
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prefix`
[INFO] [stdout]   --> src/utils/memory.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let prefix = "[ {}, size: {} ]";
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LOGGER_NAME` is never used
[INFO] [stdout]  --> src/utils/bits.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const LOGGER_NAME: &'static str = "Bits";
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_bits` is never used
[INFO] [stdout]  --> src/utils/bits.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn print_bits<T: Binary + UpperHex>(v: &T) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_bits` is never used
[INFO] [stdout]   --> src/utils/bits.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn get_bits<T: Binary + UpperHex>(v: &T) -> String {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bit_is_1` is never used
[INFO] [stdout]   --> src/utils/bits.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn bit_is_1(v: usize, which_bit: usize) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `byte_arr_to_hex_string` is never used
[INFO] [stdout]  --> src/utils/hex.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn byte_arr_to_hex_string(byte_arr: &[u8], splitter: Option<char>) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `char_to_u8` is never used
[INFO] [stdout]   --> src/utils/hex.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn char_to_u8(c: char) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_string_to_byte_arr` is never used
[INFO] [stdout]   --> src/utils/hex.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn hex_string_to_byte_arr(hex_string: &str) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_to_be_u16` is never used
[INFO] [stdout]   --> src/utils/hex.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn hex_to_be_u16(byte_array: &[u8]) -> u16 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_to_be_u32` is never used
[INFO] [stdout]   --> src/utils/hex.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn hex_to_be_u32(byte_array: &[u8]) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DEBUG`, `INFO`, `WARNING`, and `ERROR` are never constructed
[INFO] [stdout]   --> src/utils/logger.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub enum LogLevel {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 8  |     DEBUG = 1,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 9  |     INFO = 2,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 10 |     WARNING = 3,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 11 |     ERROR = 4,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LogLevel` 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: associated function `get_config_from_env` is never used
[INFO] [stdout]   --> src/utils/logger.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl LogLevel {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 15 |     pub fn get_config_from_env() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn log(
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `debug_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn debug_log(
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `info_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn info_log(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `warning_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn warning_log(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `error_log` is never used
[INFO] [stdout]    --> src/utils/logger.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn error_log(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LOGGER_NAME` is never used
[INFO] [stdout]  --> src/utils/memory.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const LOGGER_NAME: &'static str = "Memory";
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_memory_block` is never used
[INFO] [stdout]  --> src/utils/memory.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn print_memory_block<T: std::fmt::Debug>(var: &T) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryBlockInfo` is never constructed
[INFO] [stdout]   --> src/utils/memory.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct MemoryBlockInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MemoryBlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-utils v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `get_memory_block_info` is never used
[INFO] [stdout]   --> src/utils/memory.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn get_memory_block_info<T: std::fmt::Debug>(var: &T) -> MemoryBlockInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BufferReference` is never used
[INFO] [stdout]  --> src/utils/types.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub type BufferReference<'a> = &'a [u8];
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FutureResult` is never used
[INFO] [stdout]  --> src/utils/types.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type FutureResult<T> = std::result::Result<T, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ThreadResult` is never used
[INFO] [stdout]  --> src/utils/types.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type ThreadResult<T> = Result<std::thread::JoinHandle<T>, Box<dyn std::error::Error + 'static>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `pointer_byte_offsets` has been stable since 1.75.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(pointer_byte_offsets)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_level`
[INFO] [stdout]   --> src/utils/bits.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let log_level = LogLevel::get_config_from_env();
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prefix`
[INFO] [stdout]   --> src/utils/memory.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let prefix = "[ {}, size: {} ]";
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_level`
[INFO] [stdout]    --> src/lib.rs:216:17
[INFO] [stdout]     |
[INFO] [stdout] 216 |             let log_level = LogLevel::get_config_from_env();
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_level`
[INFO] [stdout]    --> src/lib.rs:228:17
[INFO] [stdout]     |
[INFO] [stdout] 228 |             let log_level = LogLevel::get_config_from_env();
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_to_be_u16` is never used
[INFO] [stdout]   --> src/utils/hex.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn hex_to_be_u16(byte_array: &[u8]) -> u16 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_to_be_u32` is never used
[INFO] [stdout]   --> src/utils/hex.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn hex_to_be_u32(byte_array: &[u8]) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `info_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn info_log(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `warning_log` is never used
[INFO] [stdout]   --> src/utils/logger.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn warning_log(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `error_log` is never used
[INFO] [stdout]    --> src/utils/logger.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn error_log(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `type_name` is never read
[INFO] [stdout]   --> src/utils/memory.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct MemoryBlockInfo {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 50 |     pub type_name: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MemoryBlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BufferReference` is never used
[INFO] [stdout]  --> src/utils/types.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub type BufferReference<'a> = &'a [u8];
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `FutureResult` is never used
[INFO] [stdout]  --> src/utils/types.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type FutureResult<T> = std::result::Result<T, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ThreadResult` is never used
[INFO] [stdout]  --> src/utils/types.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type ThreadResult<T> = Result<std::thread::JoinHandle<T>, Box<dyn std::error::Error + 'static>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `red`, `green`, and `blue` are never read
[INFO] [stdout]   --> src/lib.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |         struct Color {
[INFO] [stdout]    |                ----- fields in this struct
[INFO] [stdout] 78 |             pub red: u8,
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 79 |             pub green: u8,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 80 |             pub blue: u8,
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Color` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.29s
[INFO] running `Command { std: "docker" "inspect" "3d9e5a38632b56f4ac9575398e26756656ea56671bff1b94d174f333ad6623dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d9e5a38632b56f4ac9575398e26756656ea56671bff1b94d174f333ad6623dd", kill_on_drop: false }`
[INFO] [stdout] 3d9e5a38632b56f4ac9575398e26756656ea56671bff1b94d174f333ad6623dd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a01019d30a0dff9d8ebdcd7b4b7d926aed373aa4285768e5eef46946dbe012a8
[INFO] running `Command { std: "docker" "start" "-a" "a01019d30a0dff9d8ebdcd7b4b7d926aed373aa4285768e5eef46946dbe012a8", kill_on_drop: false }`
[INFO] [stderr] warning: the feature `pointer_byte_offsets` has been stable since 1.75.0 and no longer requires an attribute to enable
[INFO] [stderr]  --> src/lib.rs:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![feature(pointer_byte_offsets)]
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(stable_features)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `log_level`
[INFO] [stderr]   --> src/utils/bits.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let log_level = LogLevel::get_config_from_env();
[INFO] [stderr]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `prefix`
[INFO] [stderr]   --> src/utils/memory.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 60 |     let prefix = "[ {}, size: {} ]";
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prefix`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LOGGER_NAME` is never used
[INFO] [stderr]  --> src/utils/bits.rs:4:7
[INFO] [stderr]   |
[INFO] [stderr] 4 | const LOGGER_NAME: &'static str = "Bits";
[INFO] [stderr]   |       ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_bits` is never used
[INFO] [stderr]  --> src/utils/bits.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub fn print_bits<T: Binary + UpperHex>(v: &T) {
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_bits` is never used
[INFO] [stderr]   --> src/utils/bits.rs:47:8
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn get_bits<T: Binary + UpperHex>(v: &T) -> String {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bit_is_1` is never used
[INFO] [stderr]   --> src/utils/bits.rs:75:8
[INFO] [stderr]    |
[INFO] [stderr] 75 | pub fn bit_is_1(v: usize, which_bit: usize) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `byte_arr_to_hex_string` is never used
[INFO] [stderr]  --> src/utils/hex.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn byte_arr_to_hex_string(byte_arr: &[u8], splitter: Option<char>) -> String {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `char_to_u8` is never used
[INFO] [stderr]   --> src/utils/hex.rs:28:4
[INFO] [stderr]    |
[INFO] [stderr] 28 | fn char_to_u8(c: char) -> u8 {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_string_to_byte_arr` is never used
[INFO] [stderr]   --> src/utils/hex.rs:41:8
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub fn hex_string_to_byte_arr(hex_string: &str) -> Result<Vec<u8>, String> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_to_be_u16` is never used
[INFO] [stderr]   --> src/utils/hex.rs:78:8
[INFO] [stderr]    |
[INFO] [stderr] 78 | pub fn hex_to_be_u16(byte_array: &[u8]) -> u16 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_to_be_u32` is never used
[INFO] [stderr]   --> src/utils/hex.rs:87:8
[INFO] [stderr]    |
[INFO] [stderr] 87 | pub fn hex_to_be_u32(byte_array: &[u8]) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `DEBUG`, `INFO`, `WARNING`, and `ERROR` are never constructed
[INFO] [stderr]   --> src/utils/logger.rs:8:5
[INFO] [stderr]    |
[INFO] [stderr] 7  | pub enum LogLevel {
[INFO] [stderr]    |          -------- variants in this enum
[INFO] [stderr] 8  |     DEBUG = 1,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 9  |     INFO = 2,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 10 |     WARNING = 3,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 11 |     ERROR = 4,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LogLevel` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `get_config_from_env` is never used
[INFO] [stderr]   --> src/utils/logger.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | impl LogLevel {
[INFO] [stderr]    | ------------- associated function in this implementation
[INFO] [stderr] 15 |     pub fn get_config_from_env() -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `log` is never used
[INFO] [stderr]   --> src/utils/logger.rs:35:4
[INFO] [stderr]    |
[INFO] [stderr] 35 | fn log(
[INFO] [stderr]    |    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `debug_log` is never used
[INFO] [stderr]   --> src/utils/logger.rs:52:8
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub fn debug_log(
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `info_log` is never used
[INFO] [stderr]   --> src/utils/logger.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 | pub fn info_log(
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `warning_log` is never used
[INFO] [stderr]   --> src/utils/logger.rs:84:8
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub fn warning_log(
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `error_log` is never used
[INFO] [stderr]    --> src/utils/logger.rs:100:8
[INFO] [stderr]     |
[INFO] [stderr] 100 | pub fn error_log(
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LOGGER_NAME` is never used
[INFO] [stderr]  --> src/utils/memory.rs:3:7
[INFO] [stderr]   |
[INFO] [stderr] 3 | const LOGGER_NAME: &'static str = "Memory";
[INFO] [stderr]   |       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_memory_block` is never used
[INFO] [stderr]  --> src/utils/memory.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub fn print_memory_block<T: std::fmt::Debug>(var: &T) {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MemoryBlockInfo` is never constructed
[INFO] [stderr]   --> src/utils/memory.rs:49:12
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub struct MemoryBlockInfo {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MemoryBlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_memory_block_info` is never used
[INFO] [stderr]   --> src/utils/memory.rs:58:8
[INFO] [stderr]    |
[INFO] [stderr] 58 | pub fn get_memory_block_info<T: std::fmt::Debug>(var: &T) -> MemoryBlockInfo {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `BufferReference` is never used
[INFO] [stderr]  --> src/utils/types.rs:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub type BufferReference<'a> = &'a [u8];
[INFO] [stderr]   |          ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `FutureResult` is never used
[INFO] [stderr]  --> src/utils/types.rs:3:10
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub type FutureResult<T> = std::result::Result<T, Box<dyn std::error::Error + Send + Sync>>;
[INFO] [stderr]   |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ThreadResult` is never used
[INFO] [stderr]  --> src/utils/types.rs:5:10
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type ThreadResult<T> = Result<std::thread::JoinHandle<T>, Box<dyn std::error::Error + 'static>>;
[INFO] [stderr]   |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-utils` (lib) generated 26 warnings
[INFO] [stderr] warning: unused variable: `log_level`
[INFO] [stderr]    --> src/lib.rs:216:17
[INFO] [stderr]     |
[INFO] [stderr] 216 |             let log_level = LogLevel::get_config_from_env();
[INFO] [stderr]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `log_level`
[INFO] [stderr]    --> src/lib.rs:228:17
[INFO] [stderr]     |
[INFO] [stderr] 228 |             let log_level = LogLevel::get_config_from_env();
[INFO] [stderr]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_level`
[INFO] [stderr] 
[INFO] [stderr] warning: function `hex_to_be_u16` is never used
[INFO] [stderr]   --> src/utils/hex.rs:78:8
[INFO] [stderr]    |
[INFO] [stderr] 78 | pub fn hex_to_be_u16(byte_array: &[u8]) -> u16 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `type_name` is never read
[INFO] [stderr]   --> src/utils/memory.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub struct MemoryBlockInfo {
[INFO] [stderr]    |            --------------- field in this struct
[INFO] [stderr] 50 |     pub type_name: String,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MemoryBlockInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `red`, `green`, and `blue` are never read
[INFO] [stderr]   --> src/lib.rs:78:17
[INFO] [stderr]    |
[INFO] [stderr] 77 |         struct Color {
[INFO] [stderr]    |                ----- fields in this struct
[INFO] [stderr] 78 |             pub red: u8,
[INFO] [stderr]    |                 ^^^
[INFO] [stderr] 79 |             pub green: u8,
[INFO] [stderr]    |                 ^^^^^
[INFO] [stderr] 80 |             pub blue: u8,
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Color` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-utils` (lib test) generated 15 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_utils-85fd2c0644a96beb)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test lib_tests::bits_tests::check_bit_should_work ... ok
[INFO] [stdout] test lib_tests::bits_tests::should_get_bits ... ok
[INFO] [stdout] test lib_tests::bits_tests::should_print_bits ... ok
[INFO] [stdout] test lib_tests::hex_tests::byte_array_to_hex_string_should_work ... ok
[INFO] [stdout] test lib_tests::hex_tests::hex_string_to_byte_array_should_work ... ok
[INFO] [stdout] test lib_tests::memory_tests::should_get_memory_block_info ... ok
[INFO] [stdout] test lib_tests::memory_tests::should_print_memory_block ... ok
[INFO] [stdout] test utils::hex::tests::test_char_to_u8 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rust_utils
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a01019d30a0dff9d8ebdcd7b4b7d926aed373aa4285768e5eef46946dbe012a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a01019d30a0dff9d8ebdcd7b4b7d926aed373aa4285768e5eef46946dbe012a8", kill_on_drop: false }`
[INFO] [stdout] a01019d30a0dff9d8ebdcd7b4b7d926aed373aa4285768e5eef46946dbe012a8
