[INFO] cloning repository https://github.com/tranlong204/rust_100_exercises_workspace
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tranlong204/rust_100_exercises_workspace" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftranlong204%2Frust_100_exercises_workspace", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftranlong204%2Frust_100_exercises_workspace'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 195ea998375251f7571e2ff100c5e9eb619ff628
[INFO] checking tranlong204/rust_100_exercises_workspace against 011c518242557d21690f7936b5812318dc2fec47 for pr-159877
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftranlong204%2Frust_100_exercises_workspace" "/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/tranlong204/rust_100_exercises_workspace
[INFO] finished tweaking git repo https://github.com/tranlong204/rust_100_exercises_workspace
[INFO] tweaked toml for git repo https://github.com/tranlong204/rust_100_exercises_workspace written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tranlong204/rust_100_exercises_workspace on toolchain 011c518242557d21690f7936b5812318dc2fec47
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+011c518242557d21690f7936b5812318dc2fec47" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tranlong204/rust_100_exercises_workspace 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" "+011c518242557d21690f7936b5812318dc2fec47" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71
[INFO] running `Command { std: "docker" "start" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71" "/opt/rustwide/cargo-home/bin/cargo" "+011c518242557d21690f7936b5812318dc2fec47" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71" "/opt/rustwide/cargo-home/bin/cargo" "+011c518242557d21690f7936b5812318dc2fec47" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling difficulty_attr v0.1.0 (/opt/rustwide/workdir/difficulty_attr)
[INFO] [stderr]     Checking xtask v0.1.0 (/opt/rustwide/workdir/xtask)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> xtask/src/main.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let mut by_diff = |diff: &str| -> (usize, usize) {
[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: variable does not need to be mutable
[INFO] [stdout]   --> xtask/src/main.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let mut by_diff = |diff: &str| -> (usize, usize) {
[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 exercise_094 v0.1.0 (/opt/rustwide/workdir/exercise_094)
[INFO] [stderr]     Checking exercise_032 v0.1.0 (/opt/rustwide/workdir/exercise_032)
[INFO] [stderr]     Checking exercise_017 v0.1.0 (/opt/rustwide/workdir/exercise_017)
[INFO] [stderr]     Checking exercise_045 v0.1.0 (/opt/rustwide/workdir/exercise_045)
[INFO] [stderr]     Checking exercise_006 v0.1.0 (/opt/rustwide/workdir/exercise_006)
[INFO] [stderr]     Checking exercise_002 v0.1.0 (/opt/rustwide/workdir/exercise_002)
[INFO] [stderr]     Checking exercise_058 v0.1.0 (/opt/rustwide/workdir/exercise_058)
[INFO] [stderr]     Checking exercise_068 v0.1.0 (/opt/rustwide/workdir/exercise_068)
[INFO] [stderr]     Checking exercise_003 v0.1.0 (/opt/rustwide/workdir/exercise_003)
[INFO] [stderr]     Checking exercise_081 v0.1.0 (/opt/rustwide/workdir/exercise_081)
[INFO] [stderr]     Checking exercise_031 v0.1.0 (/opt/rustwide/workdir/exercise_031)
[INFO] [stderr]     Checking exercise_044 v0.1.0 (/opt/rustwide/workdir/exercise_044)
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_094/src/main.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 34 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 35 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_032/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exercise_094` (bin "exercise_094" test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `exercise_032` (bin "exercise_032") due to 1 previous error
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_058/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_031/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_068/src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 44 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 45 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exercise_058` (bin "exercise_058" test) due to 1 previous error
[INFO] [stderr] error: could not compile `exercise_068` (bin "exercise_068") due to 1 previous error
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_094/src/main.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 34 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 35 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hard` and `medium`
[INFO] [stdout]  --> exercise_002/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use difficulty_attr::{easy, medium, hard};
[INFO] [stdout]   |                             ^^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exercise_094` (bin "exercise_094") due to 1 previous error
[INFO] [stderr] error: could not compile `exercise_031` (bin "exercise_031" test) due to 1 previous error
[INFO] [stdout] warning: function `metadata` is never used
[INFO] [stdout]  --> exercise_002/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn metadata() {}
[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 imports: `hard` and `medium`
[INFO] [stdout]  --> exercise_006/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use difficulty_attr::{easy, medium, hard};
[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: `super::*`
[INFO] [stdout]   --> exercise_006/src/main.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hard` and `medium`
[INFO] [stdout]  --> exercise_017/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use difficulty_attr::{easy, medium, hard};
[INFO] [stdout]   |                             ^^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_058/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_045/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `metadata` is never used
[INFO] [stdout]  --> exercise_017/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn metadata() {}
[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 imports: `hard` and `medium`
[INFO] [stdout]  --> exercise_017/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use difficulty_attr::{easy, medium, hard};
[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: `super::*`
[INFO] [stdout]   --> exercise_017/src/main.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exercise_058` (bin "exercise_058") due to 1 previous error
[INFO] [stderr] error: could not compile `exercise_045` (bin "exercise_045") due to 1 previous error
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_081/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> exercise_044/src/main.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | mod tests {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 37 | }
[INFO] [stdout]    | - ...matches this closing brace
[INFO] [stdout] 38 |     }
[INFO] [stdout]    |     ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exercise_081` (bin "exercise_081") due to 1 previous error
[INFO] [stderr] error: could not compile `exercise_044` (bin "exercise_044" test) due to 1 previous error
[INFO] [stdout] warning: unused imports: `hard` and `medium`
[INFO] [stdout]  --> exercise_006/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use difficulty_attr::{easy, medium, hard};
[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 `metadata` is never used
[INFO] [stdout]  --> exercise_006/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn metadata() {}
[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 `metadata` is never used
[INFO] [stdout]  --> exercise_017/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn metadata() {}
[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 `metadata` is never used
[INFO] [stdout]  --> exercise_006/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn metadata() {}
[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 imports: `hard` and `medium`
[INFO] [stdout]  --> exercise_003/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use difficulty_attr::{easy, medium, hard};
[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 `metadata` is never used
[INFO] [stdout]  --> exercise_003/src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn metadata() {}
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71", kill_on_drop: false }`
[INFO] [stdout] f4a26fa46feef10bf6259f2abb6aa807eee699c8e37dfee613a17ed63f1a4c71
