[INFO] cloning repository https://github.com/stevengpa/rust-advance-programming
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/stevengpa/rust-advance-programming" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstevengpa%2Frust-advance-programming", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstevengpa%2Frust-advance-programming'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ebc90eb58043776d3b3870ec345a9c39a5ec7e93
[INFO] testing stevengpa/rust-advance-programming against try#bd7d74411512a3dd3b35d2f699c51dd2557c7e7e+cargoflags=-Zbuild-dir-new-layout for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstevengpa%2Frust-advance-programming" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/stevengpa/rust-advance-programming
[INFO] finished tweaking git repo https://github.com/stevengpa/rust-advance-programming
[INFO] tweaked toml for git repo https://github.com/stevengpa/rust-advance-programming written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/stevengpa/rust-advance-programming on toolchain bd7d74411512a3dd3b35d2f699c51dd2557c7e7e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/stevengpa/rust-advance-programming 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" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded alloca v0.4.0
[INFO] [stderr]   Downloaded criterion-plot v0.8.0
[INFO] [stderr]   Downloaded oorandom v11.1.5
[INFO] [stderr]   Downloaded page_size v0.6.0
[INFO] [stderr]   Downloaded criterion v0.8.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cc2aee75a4e226d40ed76415eb8abd94466716ca13acfb849edb0e87135b7b36
[INFO] running `Command { std: "docker" "start" "-a" "cc2aee75a4e226d40ed76415eb8abd94466716ca13acfb849edb0e87135b7b36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc2aee75a4e226d40ed76415eb8abd94466716ca13acfb849edb0e87135b7b36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc2aee75a4e226d40ed76415eb8abd94466716ca13acfb849edb0e87135b7b36", kill_on_drop: false }`
[INFO] [stdout] cc2aee75a4e226d40ed76415eb8abd94466716ca13acfb849edb0e87135b7b36
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "build" "--frozen" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 4a39243f9b01ed2c70ec4695dc174040e5dc1464d6138e2b0f9dc595cebf62ae
[INFO] running `Command { std: "docker" "start" "-a" "4a39243f9b01ed2c70ec4695dc174040e5dc1464d6138e2b0f9dc595cebf62ae", kill_on_drop: false }`
[INFO] [stderr]    Compiling advanced-rust-programming v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/contact_management.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::read`
[INFO] [stdout]  --> src/thread_rwlock.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vectors_practice`
[INFO] [stdout]   --> src/main.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::vectors_practice::{vectors_practice};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrays_practice`
[INFO] [stdout]   --> src/main.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::arrays_practice::{arrays_practice};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::combine_arc_mutex::run_combine_arc_mutex`
[INFO] [stdout]   --> src/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::combine_arc_mutex::run_combine_arc_mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::contact_management::run_contact_management`
[INFO] [stdout]   --> src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::contact_management::run_contact_management;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::counter_atomic::run_counter_atomic`
[INFO] [stdout]   --> src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::counter_atomic::run_counter_atomic;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::safe_data_sharing::run_safe_data_sharing`
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::safe_data_sharing::run_safe_data_sharing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `slices_practice`
[INFO] [stdout]   --> src/main.rs:22:30
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::slices_practice::{slices_practice};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::thread_channel::run_thread_channels`
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::thread_channel::run_thread_channels;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::thread_channels_mutex::run_thread_channels_mutex`
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::thread_channels_mutex::run_thread_channels_mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::thread_rwlock::run_thread_rwlock`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::thread_rwlock::run_thread_rwlock;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::trait_image_processing::run_image_processing`
[INFO] [stdout]   --> src/main.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::trait_image_processing::run_image_processing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col`
[INFO] [stdout]   --> src/arrays_practice.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |         for (c, col) in row.iter().enumerate() {
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_col`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vectors_practice` is never used
[INFO] [stdout]  --> src/vectors_practice.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn vectors_practice() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arrays_practice` is never used
[INFO] [stdout]  --> src/arrays_practice.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn arrays_practice() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `slices_practice` is never used
[INFO] [stdout]  --> src/slices_practice.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn slices_practice() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Contact` is never constructed
[INFO] [stdout]  --> src/contact_management.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Contact {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContactManager` is never constructed
[INFO] [stdout]   --> src/contact_management.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ContactManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_contact`, `remove_contact`, and `list_all_contacts` are never used
[INFO] [stdout]   --> src/contact_management.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl ContactManager {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 17 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn add_contact(&mut self, name: String, phone: String, email: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn remove_contact(&mut self, name: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn list_all_contacts(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_input` is never used
[INFO] [stdout]   --> src/contact_management.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn read_input(prompt: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_contact_management` is never used
[INFO] [stdout]   --> src/contact_management.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn run_contact_management() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_safe_data_sharing` is never used
[INFO] [stdout]  --> src/safe_data_sharing.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn run_safe_data_sharing() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_combine_arc_mutex` is never used
[INFO] [stdout]  --> src/combine_arc_mutex.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn run_combine_arc_mutex() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_counter_atomic` is never used
[INFO] [stdout]  --> src/counter_atomic.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run_counter_atomic() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_thread_channels` is never used
[INFO] [stdout]  --> src/thread_channel.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn run_thread_channels() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_thread_channels_mutex` is never used
[INFO] [stdout]  --> src/thread_channels_mutex.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run_thread_channels_mutex() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_thread_rwlock` is never used
[INFO] [stdout]  --> src/thread_rwlock.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run_thread_rwlock() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Printable` is never used
[INFO] [stdout]  --> src/trait_implementations.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | trait Printable {
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Circle` is never constructed
[INFO] [stdout]  --> src/trait_implementations.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Circle;
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Add` is never used
[INFO] [stdout]   --> src/trait_implementations.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | trait Add<RHS = Self> {
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Image` is never used
[INFO] [stdout]  --> src/trait_image_processing.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Image {
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RgbImage` is never constructed
[INFO] [stdout]  --> src/trait_image_processing.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct RgbImage {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl RgbImage {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(width: usize, height: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrayImage` is never constructed
[INFO] [stdout]   --> src/trait_image_processing.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct GrayImage {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl GrayImage {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 47 |     fn new(width: usize, height: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_images` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn process_images(images: &mut [&mut dyn Image]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_image_processing` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn run_image_processing() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.39s
[INFO] running `Command { std: "docker" "inspect" "4a39243f9b01ed2c70ec4695dc174040e5dc1464d6138e2b0f9dc595cebf62ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4a39243f9b01ed2c70ec4695dc174040e5dc1464d6138e2b0f9dc595cebf62ae", kill_on_drop: false }`
[INFO] [stdout] 4a39243f9b01ed2c70ec4695dc174040e5dc1464d6138e2b0f9dc595cebf62ae
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "--no-run" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] e8e38a7b701b68ecec8e6c09f4004ac32df96faa5d6d4ee8e02fd21fffd87263
[INFO] running `Command { std: "docker" "start" "-a" "e8e38a7b701b68ecec8e6c09f4004ac32df96faa5d6d4ee8e02fd21fffd87263", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling cc v1.2.48
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling criterion-plot v0.8.0
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.8.0
[INFO] [stderr]    Compiling advanced-rust-programming v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/contact_management.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::read`
[INFO] [stdout]  --> src/thread_rwlock.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vectors_practice`
[INFO] [stdout]   --> src/main.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::vectors_practice::{vectors_practice};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrays_practice`
[INFO] [stdout]   --> src/main.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::arrays_practice::{arrays_practice};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::combine_arc_mutex::run_combine_arc_mutex`
[INFO] [stdout]   --> src/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::combine_arc_mutex::run_combine_arc_mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::contact_management::run_contact_management`
[INFO] [stdout]   --> src/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::contact_management::run_contact_management;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::counter_atomic::run_counter_atomic`
[INFO] [stdout]   --> src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::counter_atomic::run_counter_atomic;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::safe_data_sharing::run_safe_data_sharing`
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::safe_data_sharing::run_safe_data_sharing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `slices_practice`
[INFO] [stdout]   --> src/main.rs:22:30
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::slices_practice::{slices_practice};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::thread_channel::run_thread_channels`
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::thread_channel::run_thread_channels;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::thread_channels_mutex::run_thread_channels_mutex`
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::thread_channels_mutex::run_thread_channels_mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::thread_rwlock::run_thread_rwlock`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::thread_rwlock::run_thread_rwlock;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::trait_image_processing::run_image_processing`
[INFO] [stdout]   --> src/main.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::trait_image_processing::run_image_processing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col`
[INFO] [stdout]   --> src/arrays_practice.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |         for (c, col) in row.iter().enumerate() {
[INFO] [stdout]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_col`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vectors_practice` is never used
[INFO] [stdout]  --> src/vectors_practice.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn vectors_practice() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arrays_practice` is never used
[INFO] [stdout]  --> src/arrays_practice.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn arrays_practice() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `slices_practice` is never used
[INFO] [stdout]  --> src/slices_practice.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn slices_practice() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Contact` is never constructed
[INFO] [stdout]  --> src/contact_management.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Contact {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContactManager` is never constructed
[INFO] [stdout]   --> src/contact_management.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ContactManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_contact`, `remove_contact`, and `list_all_contacts` are never used
[INFO] [stdout]   --> src/contact_management.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl ContactManager {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 17 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn add_contact(&mut self, name: String, phone: String, email: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn remove_contact(&mut self, name: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn list_all_contacts(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_input` is never used
[INFO] [stdout]   --> src/contact_management.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn read_input(prompt: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_contact_management` is never used
[INFO] [stdout]   --> src/contact_management.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn run_contact_management() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_safe_data_sharing` is never used
[INFO] [stdout]  --> src/safe_data_sharing.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn run_safe_data_sharing() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_combine_arc_mutex` is never used
[INFO] [stdout]  --> src/combine_arc_mutex.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn run_combine_arc_mutex() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_counter_atomic` is never used
[INFO] [stdout]  --> src/counter_atomic.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run_counter_atomic() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_thread_channels` is never used
[INFO] [stdout]  --> src/thread_channel.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn run_thread_channels() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_thread_channels_mutex` is never used
[INFO] [stdout]  --> src/thread_channels_mutex.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run_thread_channels_mutex() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_thread_rwlock` is never used
[INFO] [stdout]  --> src/thread_rwlock.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run_thread_rwlock() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Printable` is never used
[INFO] [stdout]  --> src/trait_implementations.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | trait Printable {
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Circle` is never constructed
[INFO] [stdout]  --> src/trait_implementations.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Circle;
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Add` is never used
[INFO] [stdout]   --> src/trait_implementations.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | trait Add<RHS = Self> {
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Image` is never used
[INFO] [stdout]  --> src/trait_image_processing.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Image {
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RgbImage` is never constructed
[INFO] [stdout]  --> src/trait_image_processing.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct RgbImage {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl RgbImage {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(width: usize, height: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GrayImage` is never constructed
[INFO] [stdout]   --> src/trait_image_processing.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct GrayImage {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl GrayImage {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 47 |     fn new(width: usize, height: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_images` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn process_images(images: &mut [&mut dyn Image]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_image_processing` is never used
[INFO] [stdout]   --> src/trait_image_processing.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn run_image_processing() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 24.47s
[INFO] running `Command { std: "docker" "inspect" "e8e38a7b701b68ecec8e6c09f4004ac32df96faa5d6d4ee8e02fd21fffd87263", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e8e38a7b701b68ecec8e6c09f4004ac32df96faa5d6d4ee8e02fd21fffd87263", kill_on_drop: false }`
[INFO] [stdout] e8e38a7b701b68ecec8e6c09f4004ac32df96faa5d6d4ee8e02fd21fffd87263
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 26d997ba0ccbb9c61b364e2af03ef079d796cc78d8b1c363e879e5999ab17390
[INFO] running `Command { std: "docker" "start" "-a" "26d997ba0ccbb9c61b364e2af03ef079d796cc78d8b1c363e879e5999ab17390", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]  --> src/contact_management.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::str::FromStr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs::read`
[INFO] [stderr]  --> src/thread_rwlock.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::fs::read;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `vectors_practice`
[INFO] [stderr]   --> src/main.rs:16:31
[INFO] [stderr]    |
[INFO] [stderr] 16 | use crate::vectors_practice::{vectors_practice};
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `arrays_practice`
[INFO] [stderr]   --> src/main.rs:17:30
[INFO] [stderr]    |
[INFO] [stderr] 17 | use crate::arrays_practice::{arrays_practice};
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::combine_arc_mutex::run_combine_arc_mutex`
[INFO] [stderr]   --> src/main.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use crate::combine_arc_mutex::run_combine_arc_mutex;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::contact_management::run_contact_management`
[INFO] [stderr]   --> src/main.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use crate::contact_management::run_contact_management;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::counter_atomic::run_counter_atomic`
[INFO] [stderr]   --> src/main.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use crate::counter_atomic::run_counter_atomic;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::safe_data_sharing::run_safe_data_sharing`
[INFO] [stderr]   --> src/main.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use crate::safe_data_sharing::run_safe_data_sharing;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `slices_practice`
[INFO] [stderr]   --> src/main.rs:22:30
[INFO] [stderr]    |
[INFO] [stderr] 22 | use crate::slices_practice::{slices_practice};
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::thread_channel::run_thread_channels`
[INFO] [stderr]   --> src/main.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | use crate::thread_channel::run_thread_channels;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::thread_channels_mutex::run_thread_channels_mutex`
[INFO] [stderr]   --> src/main.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | use crate::thread_channels_mutex::run_thread_channels_mutex;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::thread_rwlock::run_thread_rwlock`
[INFO] [stderr]   --> src/main.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | use crate::thread_rwlock::run_thread_rwlock;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::trait_image_processing::run_image_processing`
[INFO] [stderr]   --> src/main.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | use crate::trait_image_processing::run_image_processing;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `col`
[INFO] [stderr]   --> src/arrays_practice.rs:22:17
[INFO] [stderr]    |
[INFO] [stderr] 22 |         for (c, col) in row.iter().enumerate() {
[INFO] [stderr]    |                 ^^^ help: if this is intentional, prefix it with an underscore: `_col`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `vectors_practice` is never used
[INFO] [stderr]  --> src/vectors_practice.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn vectors_practice() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `arrays_practice` is never used
[INFO] [stderr]  --> src/arrays_practice.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn arrays_practice() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `slices_practice` is never used
[INFO] [stderr]  --> src/slices_practice.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn slices_practice() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Contact` is never constructed
[INFO] [stderr]  --> src/contact_management.rs:6:12
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct Contact {
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ContactManager` is never constructed
[INFO] [stderr]   --> src/contact_management.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct ContactManager {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `add_contact`, `remove_contact`, and `list_all_contacts` are never used
[INFO] [stderr]   --> src/contact_management.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl ContactManager {
[INFO] [stderr]    | ------------------- associated items in this implementation
[INFO] [stderr] 17 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     pub fn add_contact(&mut self, name: String, phone: String, email: String) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     pub fn remove_contact(&mut self, name: &str) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 |     pub fn list_all_contacts(&self) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_input` is never used
[INFO] [stderr]   --> src/contact_management.rs:44:8
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub fn read_input(prompt: &str) -> String {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_contact_management` is never used
[INFO] [stderr]   --> src/contact_management.rs:53:8
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub fn run_contact_management() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_safe_data_sharing` is never used
[INFO] [stderr]  --> src/safe_data_sharing.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn run_safe_data_sharing() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_combine_arc_mutex` is never used
[INFO] [stderr]  --> src/combine_arc_mutex.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn run_combine_arc_mutex() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_counter_atomic` is never used
[INFO] [stderr]  --> src/counter_atomic.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn run_counter_atomic() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_thread_channels` is never used
[INFO] [stderr]  --> src/thread_channel.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn run_thread_channels() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_thread_channels_mutex` is never used
[INFO] [stderr]  --> src/thread_channels_mutex.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn run_thread_channels_mutex() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_thread_rwlock` is never used
[INFO] [stderr]  --> src/thread_rwlock.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn run_thread_rwlock() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Printable` is never used
[INFO] [stderr]  --> src/trait_implementations.rs:2:7
[INFO] [stderr]   |
[INFO] [stderr] 2 | trait Printable {
[INFO] [stderr]   |       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Circle` is never constructed
[INFO] [stderr]  --> src/trait_implementations.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct Circle;
[INFO] [stderr]   |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Add` is never used
[INFO] [stderr]   --> src/trait_implementations.rs:15:7
[INFO] [stderr]    |
[INFO] [stderr] 15 | trait Add<RHS = Self> {
[INFO] [stderr]    |       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Image` is never used
[INFO] [stderr]  --> src/trait_image_processing.rs:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | trait Image {
[INFO] [stderr]   |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RgbImage` is never constructed
[INFO] [stderr]  --> src/trait_image_processing.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct RgbImage {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/trait_image_processing.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | impl RgbImage {
[INFO] [stderr]    | ------------- associated function in this implementation
[INFO] [stderr] 13 |     fn new(width: usize, height: usize) -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GrayImage` is never constructed
[INFO] [stderr]   --> src/trait_image_processing.rs:40:8
[INFO] [stderr]    |
[INFO] [stderr] 40 | struct GrayImage {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/trait_image_processing.rs:47:8
[INFO] [stderr]    |
[INFO] [stderr] 46 | impl GrayImage {
[INFO] [stderr]    | -------------- associated function in this implementation
[INFO] [stderr] 47 |     fn new(width: usize, height: usize) -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `process_images` is never used
[INFO] [stderr]   --> src/trait_image_processing.rs:68:4
[INFO] [stderr]    |
[INFO] [stderr] 68 | fn process_images(images: &mut [&mut dyn Image]) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_image_processing` is never used
[INFO] [stderr]   --> src/trait_image_processing.rs:76:8
[INFO] [stderr]    |
[INFO] [stderr] 76 | pub fn run_image_processing() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `advanced-rust-programming` (bin "advanced-rust-programming" test) generated 38 warnings (run `cargo fix --bin "advanced-rust-programming" -p advanced-rust-programming --tests` to apply 14 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/advanced-rust-programming/8b59b102b0d5eeb7/deps/advanced_rust_programming-8b59b102b0d5eeb7)
[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" "26d997ba0ccbb9c61b364e2af03ef079d796cc78d8b1c363e879e5999ab17390", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "26d997ba0ccbb9c61b364e2af03ef079d796cc78d8b1c363e879e5999ab17390", kill_on_drop: false }`
[INFO] [stdout] 26d997ba0ccbb9c61b364e2af03ef079d796cc78d8b1c363e879e5999ab17390
