[INFO] cloning repository https://github.com/vantohuu/rust-lesson-1
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vantohuu/rust-lesson-1" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvantohuu%2Frust-lesson-1", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvantohuu%2Frust-lesson-1'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 96acde0e5bfc293bb19ade04fe186065f85e8b4c
[INFO] checking vantohuu/rust-lesson-1 against try#987a165cfab916796a8315782b83ac460a651ce2 for pr-145262
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvantohuu%2Frust-lesson-1" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/vantohuu/rust-lesson-1
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/vantohuu/rust-lesson-1
[INFO] tweaked toml for git repo https://github.com/vantohuu/rust-lesson-1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/vantohuu/rust-lesson-1 on toolchain 987a165cfab916796a8315782b83ac460a651ce2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/vantohuu/rust-lesson-1 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" "+987a165cfab916796a8315782b83ac460a651ce2" "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/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fe1f1c13e047d3a293bb71f175da39208209dd96106d3fbbd80ec0c93a777c3d
[INFO] running `Command { std: "docker" "start" "-a" "fe1f1c13e047d3a293bb71f175da39208209dd96106d3fbbd80ec0c93a777c3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe1f1c13e047d3a293bb71f175da39208209dd96106d3fbbd80ec0c93a777c3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe1f1c13e047d3a293bb71f175da39208209dd96106d3fbbd80ec0c93a777c3d", kill_on_drop: false }`
[INFO] [stdout] fe1f1c13e047d3a293bb71f175da39208209dd96106d3fbbd80ec0c93a777c3d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+987a165cfab916796a8315782b83ac460a651ce2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8d23b5bfbe6f683857db2ddca9afb2b8366636bc53f2d0aeacbcade108c4bb5a
[INFO] running `Command { std: "docker" "start" "-a" "8d23b5bfbe6f683857db2ddca9afb2b8366636bc53f2d0aeacbcade108c4bb5a", kill_on_drop: false }`
[INFO] [stderr]     Checking Rust-Bootcamp-2023 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking basic-of-rust v0.1.0 (/opt/rustwide/workdir/exercises/basic-of-rust)
[INFO] [stdout] warning: unused import: `cmp::Reverse`
[INFO] [stdout]  --> exercises/basic-of-rust/src/strings.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cmp::Reverse, usize};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp::Reverse`
[INFO] [stdout]  --> exercises/basic-of-rust/src/strings.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cmp::Reverse, usize};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut s: String = input.chars().rev().collect();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let mut s: String = word.chars().rev().collect();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bigger` is never used
[INFO] [stdout]  --> exercises/basic-of-rust/src/conditions.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn bigger(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_number` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/conditions.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn check_number(number: i32) -> &'static str {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo_if_fizz` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/conditions.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn foo_if_fizz(fizzish: &str) -> &str {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_leap_year` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/conditions.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn is_leap_year(year: i32) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/conditions.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn factorial(n: u32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_prime` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/conditions.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn  is_prime(n: u32) -> bool   {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exercise2` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn exercise2() -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exercise3` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn exercise3() -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_string` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn reverse_string(input: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_palindrome` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn is_palindrome(word: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_char_occurrences` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn count_char_occurrences(string: &str, ch: char) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum` is never used
[INFO] [stdout]  --> exercises/basic-of-rust/src/functions.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn sum(x: i32, y: i32) -> i32 {
[INFO] [stdout]   |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_one_to_n` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/functions.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn sum_one_to_n(n: u32) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_average` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/functions.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn calculate_average(numbers: &[f64]) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_even_numbers` is never used
[INFO] [stdout]   --> exercises/basic-of-rust/src/functions.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn sum_even_numbers(numbers: &[i32]) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp::Reverse`
[INFO] [stdout]  --> exercises/basic-of-rust/src/strings.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cmp::Reverse, usize};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut s: String = input.chars().rev().collect();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let mut s: String = word.chars().rev().collect();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut s: String = input.chars().rev().collect();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> exercises/basic-of-rust/src/strings.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let mut s: String = word.chars().rev().collect();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] running `Command { std: "docker" "inspect" "8d23b5bfbe6f683857db2ddca9afb2b8366636bc53f2d0aeacbcade108c4bb5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d23b5bfbe6f683857db2ddca9afb2b8366636bc53f2d0aeacbcade108c4bb5a", kill_on_drop: false }`
[INFO] [stdout] 8d23b5bfbe6f683857db2ddca9afb2b8366636bc53f2d0aeacbcade108c4bb5a
