[INFO] cloning repository https://github.com/gehrkev/learning_rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gehrkev/learning_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgehrkev%2Flearning_rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgehrkev%2Flearning_rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 609236331711e0db6ef878f07834cd97cc402a9d
[INFO] checking gehrkev/learning_rust against try#84addd32a13fa2d3f62fe5d99031611147b7fb13 for pr-147565
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgehrkev%2Flearning_rust" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/gehrkev/learning_rust
[INFO] finished tweaking git repo https://github.com/gehrkev/learning_rust
[INFO] tweaked toml for git repo https://github.com/gehrkev/learning_rust written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gehrkev/learning_rust on toolchain 84addd32a13fa2d3f62fe5d99031611147b7fb13
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+84addd32a13fa2d3f62fe5d99031611147b7fb13" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/gehrkev/learning_rust 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" "+84addd32a13fa2d3f62fe5d99031611147b7fb13" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-6-tc2/source/wasm-game-of-life/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-6-tc2/source/Cargo.toml
[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
[ERROR] error running command: no output for 300 seconds
[INFO] checking gehrkev/learning_rust against try#84addd32a13fa2d3f62fe5d99031611147b7fb13 for pr-147565
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgehrkev%2Flearning_rust" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/gehrkev/learning_rust
[INFO] finished tweaking git repo https://github.com/gehrkev/learning_rust
[INFO] tweaked toml for git repo https://github.com/gehrkev/learning_rust written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gehrkev/learning_rust on toolchain 84addd32a13fa2d3f62fe5d99031611147b7fb13
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+84addd32a13fa2d3f62fe5d99031611147b7fb13" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/gehrkev/learning_rust 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" "+84addd32a13fa2d3f62fe5d99031611147b7fb13" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-6-tc2/source/wasm-game-of-life/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded waker-fn v1.1.1
[INFO] [stderr]   Downloaded wasm-bindgen-test-macro v0.3.37
[INFO] [stderr]   Downloaded text-colorizer v1.0.0
[INFO] [stderr]   Downloaded errno v0.3.4
[INFO] [stderr]   Downloaded concurrent-queue v2.3.0
[INFO] [stderr]   Downloaded parking v2.1.1
[INFO] [stderr]   Downloaded async-executor v1.5.4
[INFO] [stderr]   Downloaded async-lock v2.8.0
[INFO] [stderr]   Downloaded async-task v4.4.1
[INFO] [stderr]   Downloaded value-bag v1.4.1
[INFO] [stderr]   Downloaded blocking v1.4.0
[INFO] [stderr]   Downloaded wasm-bindgen-test v0.3.37
[INFO] [stderr]   Downloaded colored v2.0.4
[INFO] [stderr]   Downloaded rustix v0.37.24
[INFO] [stderr]   Downloaded tokio v1.32.0
[INFO] [stderr]   Downloaded disjoint-sets v0.4.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+84addd32a13fa2d3f62fe5d99031611147b7fb13" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c2236ee7960474ba64d9d7abb20a26858c4c686688612c43d4aaab9cc3b4886e
[INFO] running `Command { std: "docker" "start" "-a" "c2236ee7960474ba64d9d7abb20a26858c4c686688612c43d4aaab9cc3b4886e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c2236ee7960474ba64d9d7abb20a26858c4c686688612c43d4aaab9cc3b4886e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c2236ee7960474ba64d9d7abb20a26858c4c686688612c43d4aaab9cc3b4886e", kill_on_drop: false }`
[INFO] [stdout] c2236ee7960474ba64d9d7abb20a26858c4c686688612c43d4aaab9cc3b4886e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+84addd32a13fa2d3f62fe5d99031611147b7fb13" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 25d691380968a0993e2dd0798401a837c036e15a6f7bb98e04c736fedadc13bc
[INFO] running `Command { std: "docker" "start" "-a" "25d691380968a0993e2dd0798401a837c036e15a6f7bb98e04c736fedadc13bc", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/wasm-game-of-life/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr]    Compiling proc-macro2 v1.0.67
[INFO] [stderr]    Compiling libc v0.2.148
[INFO] [stderr]     Checking memchr v2.6.4
[INFO] [stderr]     Checking futures-io v0.3.28
[INFO] [stderr]     Checking value-bag v1.4.1
[INFO] [stderr]     Checking parking v2.1.1
[INFO] [stderr]     Checking fastrand v1.9.0
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]     Checking waker-fn v1.1.1
[INFO] [stderr]     Checking async-lock v2.8.0
[INFO] [stderr]    Compiling polling v2.8.0
[INFO] [stderr]    Compiling rustix v0.37.24
[INFO] [stderr]    Compiling async-io v1.13.0
[INFO] [stderr]     Checking concurrent-queue v2.3.0
[INFO] [stderr]     Checking linux-raw-sys v0.3.8
[INFO] [stderr]     Checking async-task v4.4.1
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]     Checking log v0.4.20
[INFO] [stderr]     Checking tracing-core v0.1.31
[INFO] [stderr]    Compiling async-process v1.7.0
[INFO] [stderr]    Compiling bumpalo v3.14.0
[INFO] [stderr]     Checking piper v0.2.1
[INFO] [stderr]    Compiling num-traits v0.2.16
[INFO] [stderr]    Compiling serde v1.0.188
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling serde_json v1.0.107
[INFO] [stderr]     Checking crossbeam-epoch v0.9.15
[INFO] [stderr]     Checking async-channel v1.9.0
[INFO] [stderr]     Checking ryu v1.0.15
[INFO] [stderr]    Compiling rustix v0.38.15
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]     Checking tokio v1.32.0
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]     Checking bitflags v2.4.0
[INFO] [stderr]     Checking kv-log-macro v1.0.7
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking linux-raw-sys v0.4.8
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking getrandom v0.2.10
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]     Checking futures-lite v1.13.0
[INFO] [stderr]    Compiling syn v2.0.37
[INFO] [stderr]     Checking unicode-ident v1.0.12
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking aho-corasick v1.1.1
[INFO] [stderr]     Checking regex-syntax v0.7.5
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.37
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]     Checking disjoint-sets v0.4.2
[INFO] [stderr]     Checking assignment_5 v0.1.0 (/opt/rustwide/workdir/section_5/assignment)
[INFO] [stderr]     Checking assignment_20 v0.1.0 (/opt/rustwide/workdir/section_20/assignment)
[INFO] [stderr]     Checking assignment_4 v0.1.0 (/opt/rustwide/workdir/section_4/assignment)
[INFO] [stdout] warning: variants `Pentagon` and `Octagon` are never constructed
[INFO] [stdout]  --> section_5/assignment/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Shape {
[INFO] [stdout]   |      ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 4 |     Pentagon,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 5 |     Octagon,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking assignment_2 v0.1.0 (/opt/rustwide/workdir/Section_2/assignment)
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> section_20/assignment/src/main.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut a = vec![1, 2, 3, 4, 5];
[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 section_12 v0.1.0 (/opt/rustwide/workdir/section_12)
[INFO] [stderr]     Checking assignment_13 v0.1.0 (/opt/rustwide/workdir/section_13/assignment)
[INFO] [stderr]     Checking ownership v0.1.0 (/opt/rustwide/workdir/Section_3/ownership)
[INFO] [stderr]     Checking section_16 v0.1.0 (/opt/rustwide/workdir/section_16)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> section_12/src/main.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut range = Range { start: 0, end: 10 };
[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 section_26 v0.1.0 (/opt/rustwide/workdir/section_26)
[INFO] [stderr]     Checking section_28 v0.1.0 (/opt/rustwide/workdir/section_28)
[INFO] [stderr]     Checking todo v0.1.0 (/opt/rustwide/workdir/section_7/todo)
[INFO] [stderr]     Checking rayon v1.8.0
[INFO] [stderr]     Checking tower_of_hanoi v0.1.0 (/opt/rustwide/workdir/section_20/tower_of_hanoi)
[INFO] [stdout] warning: unused variable: `task`
[INFO] [stdout]   --> section_7/todo/src/lib.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let task = list::Tasks {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_task`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lets_add_task` is never used
[INFO] [stdout]   --> section_7/todo/src/lib.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn lets_add_task() {
[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 `Tasks` is never constructed
[INFO] [stdout]  --> section_7/todo/src/lib.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub struct Tasks {
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_activity` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn add_activity() {}
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_activity` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn update_activity() {}
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `marked_completed` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn marked_completed() {}
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_task` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo/items_completed.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn remove_task() {}
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_back_todo` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo/items_completed.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn move_back_todo() {}
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_fn` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo/items_completed.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn test_fn() {}
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking factorial v0.1.0 (/opt/rustwide/workdir/section_20/factorial)
[INFO] [stderr]     Checking functions v0.1.0 (/opt/rustwide/workdir/Section_2/functions)
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking section_23 v0.1.0 (/opt/rustwide/workdir/section_23)
[INFO] [stderr]     Checking section_10 v0.1.0 (/opt/rustwide/workdir/section_10)
[INFO] [stderr]     Checking assignment_6 v0.1.0 (/opt/rustwide/workdir/section_6/assignment)
[INFO] [stderr]     Checking section_25 v0.1.0 (/opt/rustwide/workdir/section_25)
[INFO] [stderr]     Checking structs v0.1.0 (/opt/rustwide/workdir/section_4/structs)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> section_20/assignment/src/main.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut a = vec![1, 2, 3, 4, 5];
[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 section_27 v0.1.0 (/opt/rustwide/workdir/section_27)
[INFO] [stderr]     Checking section_20 v0.1.0 (/opt/rustwide/workdir/section_20)
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> section_4/structs/src/main.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let x = MyString {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> section_4/structs/src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let s: &'static str = "i have a static lifetime";
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> section_4/structs/src/main.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct MyString<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 31 |     text: &'a str,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking fibonacci v0.1.0 (/opt/rustwide/workdir/section_20/fibonacci)
[INFO] [stderr]     Checking blocking v1.4.0
[INFO] [stderr]     Checking async-executor v1.5.4
[INFO] [stderr]     Checking section_6 v0.1.0 (/opt/rustwide/workdir/section_6)
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]  --> section_27/src/lib.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct State {
[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 `Edge` is never constructed
[INFO] [stdout]   --> section_27/src/lib.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct Edge {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shortest_path` is never used
[INFO] [stdout]   --> section_27/src/lib.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn shortest_path(graph: &Vec<Vec<Edge>>, start: usize, goal: usize) -> Option<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking data_types v0.1.0 (/opt/rustwide/workdir/Section_2/data_types)
[INFO] [stderr]     Checking is-terminal v0.4.9
[INFO] [stdout] warning: trait `Overview` is never used
[INFO] [stdout]  --> section_6/src/main.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | trait Overview {
[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 `Course` is never constructed
[INFO] [stdout]   --> section_6/src/main.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct Course {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnotherCourse` is never constructed
[INFO] [stdout]   --> section_6/src/main.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct AnotherCourse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call_overview` is never used
[INFO] [stdout]   --> section_6/src/main.rs:89:4
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn call_overview<T: Overview>(item: &T) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Clone` is never used
[INFO] [stdout]   --> section_6/src/main.rs:98:7
[INFO] [stdout]    |
[INFO] [stdout] 98 | trait Clone: Sized {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking section_21 v0.1.0 (/opt/rustwide/workdir/section_21)
[INFO] [stderr]     Checking colored v2.0.4
[INFO] [stdout] warning: trait `Overview` is never used
[INFO] [stdout]  --> section_6/src/main.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | trait Overview {
[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 `Course` is never constructed
[INFO] [stdout]   --> section_6/src/main.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct Course {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnotherCourse` is never constructed
[INFO] [stdout]   --> section_6/src/main.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct AnotherCourse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call_overview` is never used
[INFO] [stdout]   --> section_6/src/main.rs:89:4
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn call_overview<T: Overview>(item: &T) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Clone` is never used
[INFO] [stdout]   --> section_6/src/main.rs:98:7
[INFO] [stdout]    |
[INFO] [stdout] 98 | trait Clone: Sized {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `sorted` is never read
[INFO] [stdout]   --> section_21/src/main.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut sorted = true;
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking section_15 v0.1.0 (/opt/rustwide/workdir/section_15)
[INFO] [stderr]     Checking text-colorizer v1.0.0
[INFO] [stderr]     Checking section_13 v0.1.0 (/opt/rustwide/workdir/section_13)
[INFO] [stderr]     Checking section_9 v0.1.0 (/opt/rustwide/workdir/section_9)
[INFO] [stderr]     Checking LEARN_RUST v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking section_24 v0.1.0 (/opt/rustwide/workdir/section_24)
[INFO] [stdout] warning: unused import: `std::io::ErrorKind`
[INFO] [stdout]  --> section_9/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::ErrorKind;
[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 `open_file` is never used
[INFO] [stdout]   --> section_9/src/main.rs:25:4
[INFO] [stdout]    |
[INFO] [stdout] 25 | fn open_file() -> Result<File, Error> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking assignment_15 v0.1.0 (/opt/rustwide/workdir/section_15/assignment)
[INFO] [stderr]     Checking palindrome v0.1.0 (/opt/rustwide/workdir/section_20/palindrome)
[INFO] [stderr]     Checking async-global-executor v2.3.1
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> section_24/src/lib.rs:171:22
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn new(tree: &BinarySearchTree<T>) -> BinarySearchTreeIter<T> {
[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] 171 |     pub fn new(tree: &BinarySearchTree<T>) -> BinarySearchTreeIter<'_, T> {
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `task`
[INFO] [stdout]   --> section_7/todo/src/lib.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let task = list::Tasks {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_task`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lets_add_task` is never used
[INFO] [stdout]   --> section_7/todo/src/lib.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn lets_add_task() {
[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 `Tasks` is never constructed
[INFO] [stdout]  --> section_7/todo/src/lib.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub struct Tasks {
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_activity` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn add_activity() {}
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_activity` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn update_activity() {}
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `marked_completed` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn marked_completed() {}
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_task` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo/items_completed.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn remove_task() {}
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_back_todo` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo/items_completed.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn move_back_todo() {}
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_fn` is never used
[INFO] [stdout]  --> section_7/todo/src/things_todo/items_completed.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn test_fn() {}
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::ErrorKind`
[INFO] [stdout]  --> section_9/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::ErrorKind;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Pentagon` and `Octagon` are never constructed
[INFO] [stdout]  --> section_5/assignment/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Shape {
[INFO] [stdout]   |      ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 4 |     Pentagon,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 5 |     Octagon,
[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 `simple_add` is never used
[INFO] [stdout]   --> section_10/src/lib.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn simple_add() -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking control_flow v0.1.0 (/opt/rustwide/workdir/Section_2/control_flow)
[INFO] [stdout] warning: function `open_file` is never used
[INFO] [stdout]   --> section_9/src/main.rs:25:4
[INFO] [stdout]    |
[INFO] [stdout] 25 | fn open_file() -> Result<File, Error> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking variables v0.1.0 (/opt/rustwide/workdir/Section_2/variables)
[INFO] [stderr]     Checking enums_pattern_matching v0.1.0 (/opt/rustwide/workdir/section_5/enums_pattern_matching)
[INFO] [stderr]     Checking assignment_3 v0.1.0 (/opt/rustwide/workdir/Section_3/ownership/assignment)
[INFO] [stderr]     Checking async-std v1.12.0
[INFO] [stderr]     Checking section_8 v0.1.0 (/opt/rustwide/workdir/section_8)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> section_12/src/main.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut range = Range { start: 0, end: 10 };
[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] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> section_24/src/lib.rs:171:22
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn new(tree: &BinarySearchTree<T>) -> BinarySearchTreeIter<T> {
[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] 171 |     pub fn new(tree: &BinarySearchTree<T>) -> BinarySearchTreeIter<'_, T> {
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> Section_3/ownership/assignment/src/main.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let mut val1 = 1;
[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 section_22 v0.1.0 (/opt/rustwide/workdir/section_22)
[INFO] [stdout] warning: value assigned to `sorted` is never read
[INFO] [stdout]   --> section_21/src/main.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut sorted = true;
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `home`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let home = IpAddrKind::V4(String::from("127.0.0.1"));
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_home`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loopback`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let loopback = IpAddr {
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loopback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `some_number`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let some_number = Some(5);
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `some_string`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let some_string = Some("String");
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nothing`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let nothing: Option<i32> = None; //Option,T>, let x = 5 == i32
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nothing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let x: i32 = 5;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let y: Option<i32> = Some(5);
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_set`
[INFO] [stdout]  --> section_8/src/main.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::{hash_set, HashSet};
[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 variable: `none`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let none = plus_one(None);
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `None`
[INFO] [stdout]    |
[INFO] [stdout] 49 -     let none = plus_one(None);
[INFO] [stdout] 49 +     let std::prelude::v1::None = plus_one(None);
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let _none = plus_one(None);
[INFO] [stdout]    |         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Fish` is never constructed
[INFO] [stdout]  --> section_5/enums_pattern_matching/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Pet {
[INFO] [stdout]   |      --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 4 |     Fish,
[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 `0` is never read
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 |     V4(String),
[INFO] [stdout]    |     -- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 18 -     V4(String),
[INFO] [stdout] 18 +     V4(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `kind` and `address` are never read
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct IpAddr {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 23 |     kind: IpAddrKind,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 24 |     address: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `home`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let home = IpAddrKind::V4(String::from("127.0.0.1"));
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_home`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loopback`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let loopback = IpAddr {
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loopback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `some_number`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let some_number = Some(5);
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `some_string`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let some_string = Some("String");
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nothing`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let nothing: Option<i32> = None; //Option,T>, let x = 5 == i32
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nothing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let x: i32 = 5;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let y: Option<i32> = Some(5);
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking assignment_12 v0.1.0 (/opt/rustwide/workdir/section_12/assignment)
[INFO] [stdout] warning: unused variable: `none`
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let none = plus_one(None);
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `None`
[INFO] [stdout]    |
[INFO] [stdout] 49 -     let none = plus_one(None);
[INFO] [stdout] 49 +     let std::prelude::v1::None = plus_one(None);
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let _none = plus_one(None);
[INFO] [stdout]    |         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Fish` is never constructed
[INFO] [stdout]  --> section_5/enums_pattern_matching/src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Pet {
[INFO] [stdout]   |      --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 4 |     Fish,
[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 `0` is never read
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 |     V4(String),
[INFO] [stdout]    |     -- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 18 -     V4(String),
[INFO] [stdout] 18 +     V4(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `kind` and `address` are never read
[INFO] [stdout]   --> section_5/enums_pattern_matching/src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct IpAddr {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 23 |     kind: IpAddrKind,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 24 |     address: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_set`
[INFO] [stdout]  --> section_8/src/main.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::{hash_set, HashSet};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (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]   --> section_22/src/lib.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn iter(&self) -> Iter<T> {
[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] 55 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> section_22/src/lib.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub fn iter_mut(&mut self) -> IterMut<T> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub fn iter_mut(&mut self) -> IterMut<'_, T> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> section_22/src/lib.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]    --> section_22/src/lib.rs:107:1
[INFO] [stdout]     |
[INFO] [stdout] 107 | mod test {
[INFO] [stdout]     | ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (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]   --> section_22/src/lib.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn iter(&self) -> Iter<T> {
[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] 55 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> section_22/src/lib.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub fn iter_mut(&mut self) -> IterMut<T> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub fn iter_mut(&mut self) -> IterMut<'_, T> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> Section_3/ownership/assignment/src/main.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let mut val1 = 1;
[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] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> section_4/structs/src/main.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let x = MyString {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> section_4/structs/src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let s: &'static str = "i have a static lifetime";
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> section_4/structs/src/main.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct MyString<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 31 |     text: &'a str,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking assignment_14 v0.1.0 (/opt/rustwide/workdir/section_14/assignment)
[INFO] [stderr]     Checking macros v0.1.0 (/opt/rustwide/workdir/section_15/macros)
[INFO] [stdout] warning: unused import: `rayon::prelude::*`
[INFO] [stdout]  --> section_14/assignment/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rayon::prelude::*;
[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: `Duration`
[INFO] [stdout]  --> section_14/assignment/src/main.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude::*`
[INFO] [stdout]  --> section_14/assignment/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rayon::prelude::*;
[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: `Duration`
[INFO] [stdout]  --> section_14/assignment/src/main.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking num v0.4.1
[INFO] [stderr]     Checking section_14 v0.1.0 (/opt/rustwide/workdir/section_14)
[INFO] [stderr]     Checking regex-automata v0.3.9
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.87
[INFO] [stderr]    Compiling serde_derive v1.0.188
[INFO] [stderr]     Checking section_17 v0.1.0 (/opt/rustwide/workdir/section_17)
[INFO] [stderr]     Checking macro_ex v0.1.0 (/opt/rustwide/workdir/section_15/macros/macro_ex)
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.87
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.87
[INFO] [stderr]     Checking wasm-bindgen v0.2.87
[INFO] [stdout] error: older versions of the `wasm-bindgen` crate are incompatible with current versions of Rust; please update to `wasm-bindgen` v0.2.88
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking regex v1.9.6
[INFO] [stderr] error: could not compile `wasm-bindgen` (lib) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "25d691380968a0993e2dd0798401a837c036e15a6f7bb98e04c736fedadc13bc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25d691380968a0993e2dd0798401a837c036e15a6f7bb98e04c736fedadc13bc", kill_on_drop: false }`
[INFO] [stdout] 25d691380968a0993e2dd0798401a837c036e15a6f7bb98e04c736fedadc13bc
