[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 { [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 { [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 { [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