[INFO] cloning repository https://github.com/lucassantoss1701/rust-ardan-labs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lucassantoss1701/rust-ardan-labs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucassantoss1701%2Frust-ardan-labs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucassantoss1701%2Frust-ardan-labs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b2350b520308de8138660787dbbae5fde6f3397b
[INFO] checking lucassantoss1701/rust-ardan-labs against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146470-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucassantoss1701%2Frust-ardan-labs" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lucassantoss1701/rust-ardan-labs
[INFO] finished tweaking git repo https://github.com/lucassantoss1701/rust-ardan-labs
[INFO] tweaked toml for git repo https://github.com/lucassantoss1701/rust-ardan-labs written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lucassantoss1701/rust-ardan-labs on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lucassantoss1701/rust-ardan-labs 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "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 axum-server v0.7.1
[INFO] [stderr]   Downloaded colorchoice v1.0.1
[INFO] [stderr]   Downloaded anstyle-parse v0.2.4
[INFO] [stderr]   Downloaded anstyle-wincon v3.0.3
[INFO] [stderr]   Downloaded anstream v0.6.14
[INFO] [stderr]   Downloaded serde_derive v1.0.205
[INFO] [stderr]   Downloaded serde v1.0.205
[INFO] [stderr]   Downloaded sqlx-mysql v0.8.0
[INFO] [stderr]   Downloaded sqlx-postgres v0.8.0
[INFO] [stderr]   Downloaded sqlx-core v0.8.0
[INFO] [stderr]   Downloaded clap_builder v4.5.10
[INFO] [stderr]   Downloaded sqlx v0.8.0
[INFO] [stderr]   Downloaded bytemuck v1.17.0
[INFO] [stderr]   Downloaded clap_derive v4.5.8
[INFO] [stderr]   Downloaded clap v4.5.10
[INFO] [stderr]   Downloaded dashmap v6.0.1
[INFO] [stderr]   Downloaded sqlx-macros-core v0.8.0
[INFO] [stderr]   Downloaded anstyle v1.0.7
[INFO] [stderr]   Downloaded clap_lex v0.7.1
[INFO] [stderr]   Downloaded thread-priority v1.1.0
[INFO] [stderr]   Downloaded anstyle-query v1.1.0
[INFO] [stderr]   Downloaded core_affinity v0.8.1
[INFO] [stderr]   Downloaded sqlx-macros v0.8.0
[INFO] [stderr]   Downloaded sqlx-sqlite v0.8.0
[INFO] [stderr]   Downloaded is_terminal_polyfill v1.70.0
[INFO] [stderr]   Downloaded libsqlite3-sys v0.28.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 76747b0fcbfbc3c4bdfdcb2e13a1a566720f4e2724aaa0c741e002eeaf1634b8
[INFO] running `Command { std: "docker" "start" "-a" "76747b0fcbfbc3c4bdfdcb2e13a1a566720f4e2724aaa0c741e002eeaf1634b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "76747b0fcbfbc3c4bdfdcb2e13a1a566720f4e2724aaa0c741e002eeaf1634b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "76747b0fcbfbc3c4bdfdcb2e13a1a566720f4e2724aaa0c741e002eeaf1634b8", kill_on_drop: false }`
[INFO] [stdout] 76747b0fcbfbc3c4bdfdcb2e13a1a566720f4e2724aaa0c741e002eeaf1634b8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5b409c4a8c454038ad732b69d5f587461c4cae0a34562770a9cef7963badabdd
[INFO] running `Command { std: "docker" "start" "-a" "5b409c4a8c454038ad732b69d5f587461c4cae0a34562770a9cef7963badabdd", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking bytes v1.7.1
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling serde v1.0.205
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]    Compiling cc v1.1.7
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling serde_json v1.0.122
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking mio v1.0.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling openssl v0.10.66
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]    Compiling anyhow v1.0.86
[INFO] [stderr]    Compiling syn v2.0.72
[INFO] [stderr]     Checking bitflags v2.6.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking http v1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling thiserror v1.0.63
[INFO] [stderr]     Checking indexmap v2.3.0
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling openssl-sys v0.9.103
[INFO] [stderr]    Compiling pin-project-lite v0.2.14
[INFO] [stderr]    Compiling rustversion v1.0.17
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]    Compiling httparse v1.9.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]     Checking cpufeatures v0.2.12
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking tinyvec v1.8.0
[INFO] [stderr]     Checking openssl-probe v0.1.5
[INFO] [stderr]     Checking tower-layer v0.3.2
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]     Checking tower-service v0.3.2
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling allocator-api2 v0.2.18
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]     Checking url v2.5.2
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling tokio v1.39.2
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling parking v2.2.0
[INFO] [stderr]    Compiling unicode_categories v0.1.1
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling sqlformat v0.2.4
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling event-listener v5.3.1
[INFO] [stderr]    Compiling crc v3.2.1
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling serde_derive v1.0.205
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]    Compiling tokio-stream v0.1.15
[INFO] [stderr]     Checking http-body-util v0.1.2
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]    Compiling crossbeam-queue v0.3.11
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking tokio-util v0.7.11
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]     Checking h2 v0.4.5
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]    Compiling fastrand v2.1.0
[INFO] [stderr]     Checking sync_wrapper v1.0.1
[INFO] [stderr]    Compiling tempfile v3.11.0
[INFO] [stderr]     Checking anstyle-parse v0.2.4
[INFO] [stderr]    Compiling axum-core v0.4.3
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.0
[INFO] [stderr]     Checking anstyle-query v1.1.0
[INFO] [stderr]     Checking colorchoice v1.0.1
[INFO] [stderr]     Checking anstyle v1.0.7
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking anstream v0.6.14
[INFO] [stderr]     Checking authentication v0.1.0 (/opt/rustwide/workdir/session1/authentication)
[INFO] [stderr]    Compiling sqlx-core v0.8.0
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling async-trait v0.1.81
[INFO] [stderr]    Compiling axum v0.7.5
[INFO] [stderr]     Checking rustls-pki-types v1.7.0
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]     Checking clap_lex v0.7.1
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking rustls-pemfile v2.1.3
[INFO] [stderr]     Checking clap_builder v4.5.10
[INFO] [stderr]     Checking serde_path_to_error v0.1.16
[INFO] [stderr]    Compiling bytemuck_derive v1.7.1
[INFO] [stderr]    Compiling clap_derive v4.5.8
[INFO] [stderr]     Checking hyper v1.4.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking encoding_rs v0.8.34
[INFO] [stderr]     Checking ipnet v2.9.0
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]     Checking hyper-util v0.1.6
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking core_affinity v0.8.1
[INFO] [stderr]     Checking bytemuck v1.17.0
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.0
[INFO] [stderr]     Checking thread-priority v1.1.0
[INFO] [stderr]     Checking dashmap v6.0.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking priority v0.1.0 (/opt/rustwide/workdir/session2/priority)
[INFO] [stderr]     Checking clap v4.5.10
[INFO] [stderr]     Checking logspan v0.1.0 (/opt/rustwide/workdir/session3/logspan)
[INFO] [stderr]     Checking login_manager v0.1.0 (/opt/rustwide/workdir/session1/login_manager)
[INFO] [stderr]     Checking dashing v0.1.0 (/opt/rustwide/workdir/session2/dashing)
[INFO] [stderr]     Checking recursion v0.1.0 (/opt/rustwide/workdir/session3/recursion)
[INFO] [stderr]     Checking bytes v0.1.0 (/opt/rustwide/workdir/session4/bytes)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> session3/recursion/src/main.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut future = async {
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking affinity v0.1.0 (/opt/rustwide/workdir/session2/affinity)
[INFO] [stderr]     Checking rayon_iters v0.1.0 (/opt/rustwide/workdir/session2/rayon_iters)
[INFO] [stderr]     Checking rayon_scopes v0.1.0 (/opt/rustwide/workdir/session2/rayon_scopes)
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> session2/rayon_scopes/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking login v0.1.0 (/opt/rustwide/workdir/session1/login)
[INFO] [stderr]     Checking errors v0.1.0 (/opt/rustwide/workdir/session3/errors)
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> session2/rayon_scopes/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> session3/recursion/src/main.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let mut future = async {
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum-server v0.7.1
[INFO] [stdout] warning: enum `UsersError` is never used
[INFO] [stdout]  --> session3/errors/src/main.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum UsersError{
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]   --> session3/errors/src/main.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct User{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GenericResult` is never used
[INFO] [stdout]   --> session3/errors/src/main.rs:30:6
[INFO] [stdout]    |
[INFO] [stdout] 30 | type GenericResult<T> = Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_users` is never used
[INFO] [stdout]   --> session3/errors/src/main.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn load_users() -> Result<Vec<User>, UsersError>{
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hello_async v0.1.0 (/opt/rustwide/workdir/session3/hello_async)
[INFO] [stdout] warning: enum `UsersError` is never used
[INFO] [stdout]  --> session3/errors/src/main.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum UsersError{
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]   --> session3/errors/src/main.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct User{
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GenericResult` is never used
[INFO] [stdout]   --> session3/errors/src/main.rs:30:6
[INFO] [stdout]    |
[INFO] [stdout] 30 | type GenericResult<T> = Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_users` is never used
[INFO] [stdout]   --> session3/errors/src/main.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn load_users() -> Result<Vec<User>, UsersError>{
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking reqwest v0.12.5
[INFO] [stderr]     Checking tokio_testing v0.1.0 (/opt/rustwide/workdir/session3/tokio_testing)
[INFO] [stderr]     Checking async_mutex v0.1.0 (/opt/rustwide/workdir/session3/async_mutex)
[INFO] [stderr]     Checking tcpserver v0.1.0 (/opt/rustwide/workdir/session3/tcpserver)
[INFO] [stdout] warning: function `double` is never used
[INFO] [stdout]  --> session3/tokio_testing/src/lib.rs:2:10
[INFO] [stdout]   |
[INFO] [stdout] 2 | async fn double(n: u32) -> u32{
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking blocking v0.1.0 (/opt/rustwide/workdir/session3/blocking)
[INFO] [stdout] warning: unused import: `time`
[INFO] [stdout]  --> session3/blocking/src/main.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::{join, time, task::spawn_blocking};
[INFO] [stdout]   |                   ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking fileio v0.1.0 (/opt/rustwide/workdir/session3/fileio)
[INFO] [stderr]     Checking tokio_select v0.1.0 (/opt/rustwide/workdir/session3/tokio_select)
[INFO] [stderr]     Checking channels v0.1.0 (/opt/rustwide/workdir/session3/channels)
[INFO] [stdout] warning: unused import: `tokio::io::AsyncBufReadExt`
[INFO] [stdout]  --> session3/fileio/src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::AsyncBufReadExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_lines` is never used
[INFO] [stdout]  --> session3/fileio/src/main.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn read_lines<P>(filename: P) -> io::Result<io::Lines<io::BufReader<File>>>
[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 `line_count` is never used
[INFO] [stdout]   --> session3/fileio/src/main.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | async fn line_count(filename: String) -> anyhow::Result<usize>{
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hello_tokio v0.1.0 (/opt/rustwide/workdir/session3/hello_tokio)
[INFO] [stdout] warning: unused import: `runtime`
[INFO] [stdout]  --> session3/hello_tokio/src/main.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::{join, runtime, task};
[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: `time`
[INFO] [stdout]  --> session3/blocking/src/main.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::{join, time, task::spawn_blocking};
[INFO] [stdout]   |                   ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hello2` is never used
[INFO] [stdout]  --> session3/hello_tokio/src/main.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | async fn hello2() -> u32{
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncBufReadExt`
[INFO] [stdout]  --> session3/fileio/src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::AsyncBufReadExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_lines` is never used
[INFO] [stdout]  --> session3/fileio/src/main.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn read_lines<P>(filename: P) -> io::Result<io::Lines<io::BufReader<File>>>
[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 `line_count` is never used
[INFO] [stdout]   --> session3/fileio/src/main.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | async fn line_count(filename: String) -> anyhow::Result<usize>{
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking low_level v0.1.0 (/opt/rustwide/workdir/session4/low_level)
[INFO] [stdout] warning: unused import: `runtime`
[INFO] [stdout]  --> session3/hello_tokio/src/main.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::{join, runtime, task};
[INFO] [stdout]   |                   ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking workers2 v0.1.0 (/opt/rustwide/workdir/session2/workers2)
[INFO] [stdout] warning: function `hello2` is never used
[INFO] [stdout]  --> session3/hello_tokio/src/main.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | async fn hello2() -> u32{
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rwlocks v0.1.0 (/opt/rustwide/workdir/session2/rwlocks)
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> session2/workers2/src/main.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | /     loop {
[INFO] [stdout] 38 | |         let sent = {
[INFO] [stdout] 39 | |             let mut lock = WORK_QUEUE.lock().unwrap();
[INFO] [stdout] 40 | |             let len = lock.len();
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |         std::thread::sleep(Duration::from_secs(1))
[INFO] [stdout] 55 | |     }
[INFO] [stdout]    | |_____- any code following this expression is unreachable
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |       println!("Hello, world!");
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> session2/workers2/src/main.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | /     loop {
[INFO] [stdout] 38 | |         let sent = {
[INFO] [stdout] 39 | |             let mut lock = WORK_QUEUE.lock().unwrap();
[INFO] [stdout] 40 | |             let len = lock.len();
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |         std::thread::sleep(Duration::from_secs(1))
[INFO] [stdout] 55 | |     }
[INFO] [stdout]    | |_____- any code following this expression is unreachable
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |       println!("Hello, world!");
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking footgun v0.1.0 (/opt/rustwide/workdir/session2/footgun)
[INFO] [stderr]     Checking hello_world v0.1.0 (/opt/rustwide/workdir/session1/hello_world)
[INFO] [stderr]     Checking formatting v0.1.0 (/opt/rustwide/workdir/bestpractices/formatting)
[INFO] [stderr]     Checking clippy v0.1.0 (/opt/rustwide/workdir/bestpractices/clippy)
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> bestpractices/formatting/src/main.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 |     println!("Hello, world!");for i in 0..21 { println!(".)");}
[INFO] [stdout]   |                                   ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `N` is never used
[INFO] [stdout]  --> bestpractices/formatting/src/main.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 |         const N: i32 = 1;
[INFO] [stdout]   |               ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hello v0.1.0 (/opt/rustwide/workdir/session2/hello)
[INFO] [stderr]     Checking rust-ardan-labs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking scoped_threads v0.1.0 (/opt/rustwide/workdir/session2/scoped_threads)
[INFO] [stderr]     Checking iterators v0.1.0 (/opt/rustwide/workdir/session4/iterators)
[INFO] [stderr]     Checking channels1 v0.1.0 (/opt/rustwide/workdir/session2/channels1)
[INFO] [stderr]     Checking refc v0.1.0 (/opt/rustwide/workdir/session4/refc)
[INFO] [stdout] warning: function `hello_thread` is never used
[INFO] [stdout]  --> session2/hello/src/main.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn hello_thread(n: u32){
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking workers v0.1.0 (/opt/rustwide/workdir/session2/workers)
[INFO] [stderr]     Checking divide_work v0.1.0 (/opt/rustwide/workdir/session2/divide_work)
[INFO] [stderr]     Checking parking v0.1.0 (/opt/rustwide/workdir/session2/parking)
[INFO] [stderr]     Checking packing v0.1.0 (/opt/rustwide/workdir/session4/packing)
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on structs
[INFO] [stdout]  --> session4/packing/src/main.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]  --> session4/packing/src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct OneByte {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] 2 |     a: u8,
[INFO] [stdout]   |     ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]  --> session4/packing/src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct TwoBytes {
[INFO] [stdout]   |        -------- field in this struct
[INFO] [stdout] 6 |     a: u16,
[INFO] [stdout]   |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]   --> session4/packing/src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct FourBytes {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 17 |     a: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking generics v0.1.0 (/opt/rustwide/workdir/session4/generics)
[INFO] [stderr]     Checking cycles v0.1.0 (/opt/rustwide/workdir/session4/cycles)
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]   --> session2/workers/src/main.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let handle = std::thread::spawn(move ||{
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> session4/generics/src/main.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn iter(&self) -> HashMapBucketIter<K, V> {
[INFO] [stdout]    |             ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn iter(&self) -> HashMapBucketIter<'_, K, V> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> session4/cycles/src/main.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Strong(Rc<Node>),
[INFO] [stdout]    |     ------ ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NextNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 12 -     Strong(Rc<Node>),
[INFO] [stdout] 12 +     Strong(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> session4/cycles/src/main.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Weak(Weak<Node>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NextNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     Weak(Weak<Node>),
[INFO] [stdout] 13 +     Weak(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking traits v0.1.0 (/opt/rustwide/workdir/session4/traits)
[INFO] [stderr]     Checking dropping v0.1.0 (/opt/rustwide/workdir/session4/dropping)
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> session4/traits/src/main.rs:66:21
[INFO] [stdout]    |
[INFO] [stdout] 66 |         if let Some(t) = animal.as_any().downcast_ref::<Tortoise>(){
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `speak` is never used
[INFO] [stdout]   --> session4/traits/src/main.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | trait DowncastableAnimal {
[INFO] [stdout]    |       ------------------ method in this trait
[INFO] [stdout] 38 |     fn speak(&self) {println!("No idea")}
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> session4/generics/src/main.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn iter(&self) -> HashMapBucketIter<K, V> {
[INFO] [stdout]    |             ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn iter(&self) -> HashMapBucketIter<'_, K, V> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking memory v0.1.0 (/opt/rustwide/workdir/session4/memory)
[INFO] [stdout] warning: unused variable: `my_num`
[INFO] [stdout]   --> session4/dropping/src/main.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let my_num = Box::new(12);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_num`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> session4/traits/src/main.rs:66:21
[INFO] [stdout]    |
[INFO] [stdout] 66 |         if let Some(t) = animal.as_any().downcast_ref::<Tortoise>(){
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `speak` is never used
[INFO] [stdout]   --> session4/traits/src/main.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | trait DowncastableAnimal {
[INFO] [stdout]    |       ------------------ method in this trait
[INFO] [stdout] 38 |     fn speak(&self) {println!("No idea")}
[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 `my_fn` is never used
[INFO] [stdout]  --> session4/memory/src/main.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | unsafe fn my_fn(){
[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 `hello_thread` is never used
[INFO] [stdout]  --> session2/hello/src/main.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn hello_thread(n: u32){
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking mutexes v0.1.0 (/opt/rustwide/workdir/session2/mutexes)
[INFO] [stderr]     Checking restclient v0.1.0 (/opt/rustwide/workdir/session3/restclient)
[INFO] [stdout] warning: function `my_fn` is never used
[INFO] [stdout]  --> session4/memory/src/main.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | unsafe fn my_fn(){
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `my_num`
[INFO] [stdout]   --> session4/dropping/src/main.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let my_num = Box::new(12);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_num`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking deadlocks v0.1.0 (/opt/rustwide/workdir/session2/deadlocks)
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on structs
[INFO] [stdout]  --> session4/packing/src/main.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]  --> session4/packing/src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct OneByte {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] 2 |     a: u8,
[INFO] [stdout]   |     ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]  --> session4/packing/src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct TwoBytes {
[INFO] [stdout]   |        -------- field in this struct
[INFO] [stdout] 6 |     a: u16,
[INFO] [stdout]   |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]   --> session4/packing/src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct FourBytes {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 17 |     a: u32,
[INFO] [stdout]    |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking variables v0.1.0 (/opt/rustwide/workdir/session1/variables)
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> bestpractices/formatting/src/main.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 |     println!("Hello, world!");for i in 0..21 { println!(".)");}
[INFO] [stdout]   |                                   ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking thread_builder v0.1.0 (/opt/rustwide/workdir/session2/thread_builder)
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]   --> session2/workers/src/main.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let handle = std::thread::spawn(move ||{
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `double` is never used
[INFO] [stdout]  --> session1/variables/src/main.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn double(n: i32) -> i32{
[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 `double_or_nothing` is never used
[INFO] [stdout]  --> session1/variables/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn double_or_nothing(n: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet` is never used
[INFO] [stdout]   --> session1/variables/src/main.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn greet(s: String) -> String{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet_borrow` is never used
[INFO] [stdout]   --> session1/variables/src/main.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn greet_borrow(s: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet_borrow_mut` is never used
[INFO] [stdout]   --> session1/variables/src/main.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn greet_borrow_mut(s: &mut String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> session4/cycles/src/main.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Strong(Rc<Node>),
[INFO] [stdout]    |     ------ ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NextNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 12 -     Strong(Rc<Node>),
[INFO] [stdout] 12 +     Strong(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> session4/cycles/src/main.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Weak(Weak<Node>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NextNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     Weak(Weak<Node>),
[INFO] [stdout] 13 +     Weak(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `double` is never used
[INFO] [stdout]  --> session1/variables/src/main.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn double(n: i32) -> i32{
[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 `double_or_nothing` is never used
[INFO] [stdout]  --> session1/variables/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn double_or_nothing(n: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet` is never used
[INFO] [stdout]   --> session1/variables/src/main.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn greet(s: String) -> String{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet_borrow` is never used
[INFO] [stdout]   --> session1/variables/src/main.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn greet_borrow(s: &String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greet_borrow_mut` is never used
[INFO] [stdout]   --> session1/variables/src/main.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn greet_borrow_mut(s: &mut String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.0
[INFO] [stderr]    Compiling sqlx-macros v0.8.0
[INFO] [stderr]     Checking sqlx v0.8.0
[INFO] [stderr]     Checking db v0.1.0 (/opt/rustwide/workdir/session3/db)
[INFO] [stdout] warning: unused import: `Row`
[INFO] [stdout]  --> session3/db/src/main.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sqlx::{Row, FromRow};
[INFO] [stdout]   |            ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `message` are never read
[INFO] [stdout]  --> session3/db/src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Message{
[INFO] [stdout]   |        ------- fields in this struct
[INFO] [stdout] 7 |     id: i64,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 8 |     message: String,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Message` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Row`
[INFO] [stdout]  --> session3/db/src/main.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sqlx::{Row, FromRow};
[INFO] [stdout]   |            ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `message` are never read
[INFO] [stdout]  --> session3/db/src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Message{
[INFO] [stdout]   |        ------- fields in this struct
[INFO] [stdout] 7 |     id: i64,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 8 |     message: String,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Message` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking web_service v0.1.0 (/opt/rustwide/workdir/session3/web_service)
[INFO] [stdout] warning: function `say_hello_text` is never used
[INFO] [stdout]   --> session3/web_service/src/main.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | async fn say_hello_text() -> Html<&'static str>{
[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 `say_hello_text` is never used
[INFO] [stdout]   --> session3/web_service/src/main.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | async fn say_hello_text() -> Html<&'static str>{
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 51s
[INFO] running `Command { std: "docker" "inspect" "5b409c4a8c454038ad732b69d5f587461c4cae0a34562770a9cef7963badabdd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5b409c4a8c454038ad732b69d5f587461c4cae0a34562770a9cef7963badabdd", kill_on_drop: false }`
[INFO] [stdout] 5b409c4a8c454038ad732b69d5f587461c4cae0a34562770a9cef7963badabdd
