[INFO] cloning repository https://github.com/datager/rustlings
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/datager/rustlings" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdatager%2Frustlings", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdatager%2Frustlings'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0abf684aca5af13715de9c947c5442ab9a42519a
[INFO] checking datager/rustlings against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdatager%2Frustlings" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  42% (5703/13392)
Updating files:  43% (5759/13392)
Updating files:  44% (5893/13392)
Updating files:  45% (6027/13392)
Updating files:  46% (6161/13392)
Updating files:  47% (6295/13392)
Updating files:  48% (6429/13392)
Updating files:  49% (6563/13392)
Updating files:  50% (6696/13392)
Updating files:  51% (6830/13392)
Updating files:  52% (6964/13392)
Updating files:  53% (7098/13392)
Updating files:  54% (7232/13392)
Updating files:  55% (7366/13392)
Updating files:  56% (7500/13392)
Updating files:  57% (7634/13392)
Updating files:  58% (7768/13392)
Updating files:  59% (7902/13392)
Updating files:  60% (8036/13392)
Updating files:  61% (8170/13392)
Updating files:  62% (8304/13392)
Updating files:  63% (8437/13392)
Updating files:  64% (8571/13392)
Updating files:  65% (8705/13392)
Updating files:  66% (8839/13392)
Updating files:  67% (8973/13392)
Updating files:  68% (9107/13392)
Updating files:  69% (9241/13392)
Updating files:  70% (9375/13392)
Updating files:  71% (9509/13392)
Updating files:  72% (9643/13392)
Updating files:  73% (9777/13392)
Updating files:  74% (9911/13392)
Updating files:  75% (10044/13392)
Updating files:  75% (10091/13392)
Updating files:  76% (10178/13392)
Updating files:  77% (10312/13392)
Updating files:  78% (10446/13392)
Updating files:  79% (10580/13392)
Updating files:  80% (10714/13392)
Updating files:  81% (10848/13392)
Updating files:  82% (10982/13392)
Updating files:  83% (11116/13392)
Updating files:  84% (11250/13392)
Updating files:  85% (11384/13392)
Updating files:  86% (11518/13392)
Updating files:  87% (11652/13392)
Updating files:  88% (11785/13392)
Updating files:  89% (11919/13392)
Updating files:  90% (12053/13392)
Updating files:  91% (12187/13392)
Updating files:  92% (12321/13392)
Updating files:  93% (12455/13392)
Updating files:  94% (12589/13392)
Updating files:  95% (12723/13392)
Updating files:  96% (12857/13392)
Updating files:  97% (12991/13392)
Updating files:  98% (13125/13392)
Updating files:  99% (13259/13392)
Updating files: 100% (13392/13392)
Updating files: 100% (13392/13392), done.
[INFO] started tweaking git repo https://github.com/datager/rustlings
[INFO] finished tweaking git repo https://github.com/datager/rustlings
[INFO] tweaked toml for git repo https://github.com/datager/rustlings written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/datager/rustlings on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/datager/rustlings 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69
[INFO] running `Command { std: "docker" "start" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69", 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" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69", 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" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking exercises v0.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `total_cost` is never used
[INFO] [stdout]   --> exercises/13_error_handling/errors2.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn total_cost(item_quantity: &str) -> Result<i32, ParseIntError> {
[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 `factorial_for` is never used
[INFO] [stdout]  --> solutions/18_iterators/iterators4.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn factorial_for(num: u64) -> u64 {
[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 `factorial_fold` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators4.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn factorial_fold(num: u64) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial_product` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators4.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn factorial_product(num: u64) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]  --> exercises/17_tests/tests3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Rectangle {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> exercises/17_tests/tests3.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | impl Rectangle {
[INFO] [stdout]   | -------------- associated function in this implementation
[INFO] [stdout] 7 |     // Don't change this function.
[INFO] [stdout] 8 |     fn new(width: i32, height: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fill_vec` is never used
[INFO] [stdout]  --> exercises/06_move_semantics/move_semantics2.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fill_vec(vec: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> solutions/09_strings/strings4.rs:24:18
[INFO] [stdout]    |
[INFO] [stdout] 24 |     string_slice("nice weather".into());
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 24 -     string_slice("nice weather".into());
[INFO] [stdout] 24 +     string_slice("nice weather");
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 24 -     string_slice("nice weather".into());
[INFO] [stdout] 24 +     string_slice(<&str as Into<_>>::into("nice weather"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Command` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz2.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Command {
[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 `transformer` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz2.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub fn transformer(input: Vec<(String, Command)>) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transformer_iter` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz2.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn transformer_iter(input: Vec<(String, Command)>) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]  --> solutions/16_lifetimes/lifetimes1.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn longest<'a>(x: &'a str, y: &'a str) -> &'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] error: could not compile `exercises` (bin "strings4_sol" test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: function `fruit_basket` is never used
[INFO] [stdout]  --> exercises/11_hashmaps/hashmaps1.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn fruit_basket() -> HashMap<String, 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: enum `CreationError` is never used
[INFO] [stdout]  --> exercises/13_error_handling/errors4.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum CreationError {
[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 `PositiveNonzeroInteger` is never constructed
[INFO] [stdout]   --> exercises/13_error_handling/errors4.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct PositiveNonzeroInteger(u64);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> exercises/13_error_handling/errors4.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl PositiveNonzeroInteger {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(value: i64) -> Result<Self, CreationError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69", kill_on_drop: false }`
[INFO] [stdout] 8b25cc54ce788594247ddf3a758ead43c705b851c91d8a1338d18f7680ba1f69
