[INFO] cloning repository https://github.com/sinnerschrader/rust-exercism-cubicle
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sinnerschrader/rust-exercism-cubicle" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinnerschrader%2Frust-exercism-cubicle", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinnerschrader%2Frust-exercism-cubicle'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7206a04271a81f758533b7431ae38a0466340ca7
[INFO] checking sinnerschrader/rust-exercism-cubicle against nightly-2024-02-05 for check-cfg-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinnerschrader%2Frust-exercism-cubicle" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/sinnerschrader/rust-exercism-cubicle on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/sinnerschrader/rust-exercism-cubicle
[INFO] finished tweaking git repo https://github.com/sinnerschrader/rust-exercism-cubicle
[INFO] tweaked toml for git repo https://github.com/sinnerschrader/rust-exercism-cubicle written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/sinnerschrader/rust-exercism-cubicle 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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cfg-if v0.1.7
[INFO] [stderr]   Downloaded redox_syscall v0.1.51
[INFO] [stderr]   Downloaded synstructure v0.10.1
[INFO] [stderr]   Downloaded quote v0.6.11
[INFO] [stderr]   Downloaded maplit v1.0.1
[INFO] [stderr]   Downloaded autocfg v0.1.2
[INFO] [stderr]   Downloaded rand_core v0.4.0
[INFO] [stderr]   Downloaded libc v0.2.50
[INFO] [stderr]   Downloaded backtrace-sys v0.1.28
[INFO] [stderr]   Downloaded winapi v0.3.6
[INFO] [stderr]   Downloaded chrono v0.4.6
[INFO] [stderr]   Downloaded syn v0.15.29
[INFO] [stderr]   Downloaded num-traits v0.2.6
[INFO] [stderr]   Downloaded time v0.1.42
[INFO] [stderr]   Downloaded backtrace v0.3.14
[INFO] [stderr]   Downloaded num-integer v0.1.39
[INFO] [stderr]   Downloaded proc-macro2 v0.4.27
[INFO] [stderr]   Downloaded cc v1.0.32
[INFO] [stderr]   Downloaded rustc-demangle v0.1.13
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0d9892d2ab98b523bbb99a1e1a55fbf9986b79dca9ec3d1b521dd4bce3268fa7
[INFO] running `Command { std: "docker" "start" "-a" "0d9892d2ab98b523bbb99a1e1a55fbf9986b79dca9ec3d1b521dd4bce3268fa7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0d9892d2ab98b523bbb99a1e1a55fbf9986b79dca9ec3d1b521dd4bce3268fa7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d9892d2ab98b523bbb99a1e1a55fbf9986b79dca9ec3d1b521dd4bce3268fa7", kill_on_drop: false }`
[INFO] [stdout] 0d9892d2ab98b523bbb99a1e1a55fbf9986b79dca9ec3d1b521dd4bce3268fa7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 721e6b07dea6a3aa2dbcf5aef5cdb555ca55de17f6cc3c76bfe24b82b871f294
[INFO] running `Command { std: "docker" "start" "-a" "721e6b07dea6a3aa2dbcf5aef5cdb555ca55de17f6cc3c76bfe24b82b871f294", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.50
[INFO] [stderr]    Compiling proc-macro2 v0.4.27
[INFO] [stderr]    Compiling cc v1.0.32
[INFO] [stderr]    Compiling syn v0.15.29
[INFO] [stderr]    Compiling autocfg v0.1.2
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling failure_derive v0.1.5
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking cfg-if v0.1.7
[INFO] [stderr]     Checking rustc-demangle v0.1.13
[INFO] [stderr]     Checking maplit v1.0.1
[INFO] [stderr]     Checking bob v1.4.0 (/opt/rustwide/workdir/exercises/bob)
[INFO] [stderr]     Checking parallel-letter-frequency v0.0.0 (/opt/rustwide/workdir/exercises/parallel-letter-frequency)
[INFO] [stderr]     Checking diffie-hellman v0.1.0 (/opt/rustwide/workdir/exercises/diffie-hellman)
[INFO] [stderr]     Checking triangle v0.0.0 (/opt/rustwide/workdir/exercises/triangle)
[INFO] [stderr]     Checking prime_factors v1.1.0 (/opt/rustwide/workdir/exercises/prime-factors)
[INFO] [stderr]     Checking scrabble-score v1.1.0 (/opt/rustwide/workdir/exercises/scrabble-score)
[INFO] [stderr]     Checking dot-dsl v0.1.0 (/opt/rustwide/workdir/exercises/dot-dsl)
[INFO] [stderr]     Checking rna-transcription v1.0.0 (/opt/rustwide/workdir/exercises/rna-transcription)
[INFO] [stderr]     Checking luhn-from v0.0.0 (/opt/rustwide/workdir/exercises/luhn-from)
[INFO] [stderr]     Checking nucleotide_codons v0.1.0 (/opt/rustwide/workdir/exercises/nucleotide-codons)
[INFO] [stderr]     Checking circular-buffer v1.1.0 (/opt/rustwide/workdir/exercises/circular-buffer)
[INFO] [stderr]     Checking nucleotide-count v1.3.0 (/opt/rustwide/workdir/exercises/nucleotide-count)
[INFO] [stderr]     Checking isogram v1.3.0 (/opt/rustwide/workdir/exercises/isogram)
[INFO] [stdout] warning: type `BASE_TYPE` should have an upper camel case name
[INFO] [stdout]  --> exercises/rna-transcription/src/lib.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | enum BASE_TYPE {
[INFO] [stdout]   |      ^^^^^^^^^ help: convert the identifier to upper camel case: `BaseType`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hexadecimal v0.0.0 (/opt/rustwide/workdir/exercises/hexadecimal)
[INFO] [stderr]     Checking hello-world v1.1.0 (/opt/rustwide/workdir/exercises/hello-world)
[INFO] [stdout] warning: variable `baseType` should have a snake case name
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn get_bases(baseType: BASE_TYPE) -> Vec<char> {
[INFO] [stdout]    |              ^^^^^^^^ help: convert the identifier to snake case: `base_type`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .into_iter()
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .iter()
[INFO] [stdout]    |          ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 19 |     IntoIterator::into_iter(BASES)
[INFO] [stdout]    |     ++++++++++++++++++++++++     ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| BASES.into_iter().find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| BASES.iter().find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| IntoIterator::into_iter(BASES).find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                         ++++++++++++++++++++++++     ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking allyourbase v1.0.0 (/opt/rustwide/workdir/exercises/all-your-base)
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> exercises/dot-dsl/src/lib.rs:74:73
[INFO] [stdout]    |
[INFO] [stdout] 74 |                     self.attrs.get(&String::from(key)).map(|value| value.clone())
[INFO] [stdout]    |                                                                         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking phone-number v1.6.1 (/opt/rustwide/workdir/exercises/phone-number)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking pythagorean_triplet v1.0.0 (/opt/rustwide/workdir/exercises/pythagorean-triplet)
[INFO] [stderr]     Checking nth_prime v2.1.0 (/opt/rustwide/workdir/exercises/nth-prime)
[INFO] [stderr]     Checking space-age v1.1.0 (/opt/rustwide/workdir/exercises/space-age)
[INFO] [stderr]     Checking perfect_numbers v1.1.0 (/opt/rustwide/workdir/exercises/perfect-numbers)
[INFO] [stderr]     Checking collatz_conjecture v1.2.1 (/opt/rustwide/workdir/exercises/collatz-conjecture)
[INFO] [stderr]     Checking custom-set v1.0.1 (/opt/rustwide/workdir/exercises/custom-set)
[INFO] [stderr]     Checking anagram v0.0.0 (/opt/rustwide/workdir/exercises/anagram)
[INFO] [stderr]     Checking forth v1.7.0 (/opt/rustwide/workdir/exercises/forth)
[INFO] [stderr]     Checking spiral-matrix v1.1.0 (/opt/rustwide/workdir/exercises/spiral-matrix)
[INFO] [stderr]     Checking luhn v1.3.0 (/opt/rustwide/workdir/exercises/luhn)
[INFO] [stderr]     Checking protein-translation v0.1.0 (/opt/rustwide/workdir/exercises/protein-translation)
[INFO] [stderr]     Checking ocr-numbers v0.0.0 (/opt/rustwide/workdir/exercises/ocr-numbers)
[INFO] [stderr]     Checking pig-latin v1.0.0 (/opt/rustwide/workdir/exercises/pig-latin)
[INFO] [stderr]     Checking robot-simulator v2.2.0 (/opt/rustwide/workdir/exercises/robot-simulator)
[INFO] [stderr]     Checking simple_linked_list v0.1.0 (/opt/rustwide/workdir/exercises/simple-linked-list)
[INFO] [stderr]     Checking twofer v1.2.0 (/opt/rustwide/workdir/exercises/two-fer)
[INFO] [stderr]     Checking run-length-encoding v1.1.0 (/opt/rustwide/workdir/exercises/run-length-encoding)
[INFO] [stderr]     Checking isbn-verifier v2.7.0 (/opt/rustwide/workdir/exercises/isbn-verifier)
[INFO] [stderr]     Checking sieve v1.1.0 (/opt/rustwide/workdir/exercises/sieve)
[INFO] [stderr]     Checking dominoes v2.1.0 (/opt/rustwide/workdir/exercises/dominoes)
[INFO] [stderr]     Checking book_store v1.3.0 (/opt/rustwide/workdir/exercises/book-store)
[INFO] [stderr]     Checking wordy v1.5.0 (/opt/rustwide/workdir/exercises/wordy)
[INFO] [stderr]     Checking largest-series-product v1.2.0 (/opt/rustwide/workdir/exercises/largest-series-product)
[INFO] [stderr]     Checking variable-length-quantity v1.2.0 (/opt/rustwide/workdir/exercises/variable-length-quantity)
[INFO] [stderr]     Checking hamming v2.2.0 (/opt/rustwide/workdir/exercises/hamming)
[INFO] [stderr]     Checking reverse_string v1.1.0 (/opt/rustwide/workdir/exercises/reverse-string)
[INFO] [stderr]     Checking armstrong_numbers v1.0.0 (/opt/rustwide/workdir/exercises/armstrong-numbers)
[INFO] [stderr]     Checking bowling v1.2.0 (/opt/rustwide/workdir/exercises/bowling)
[INFO] [stderr]    Compiling backtrace v0.3.14
[INFO] [stderr]     Checking clock v2.4.0 (/opt/rustwide/workdir/exercises/clock)
[INFO] [stderr]     Checking pangram v0.0.0 (/opt/rustwide/workdir/exercises/pangram)
[INFO] [stderr]     Checking react v2.0.0 (/opt/rustwide/workdir/exercises/react)
[INFO] [stderr]     Checking allergies v1.1.0 (/opt/rustwide/workdir/exercises/allergies)
[INFO] [stderr]     Checking two-bucket v1.4.0 (/opt/rustwide/workdir/exercises/two-bucket)
[INFO] [stderr]     Checking decimal v0.1.0 (/opt/rustwide/workdir/exercises/decimal)
[INFO] [stderr]     Checking leap v1.4.0 (/opt/rustwide/workdir/exercises/leap)
[INFO] [stderr]     Checking beer-song v0.0.0 (/opt/rustwide/workdir/exercises/beer-song)
[INFO] [stderr]     Checking robot-name v0.0.0 (/opt/rustwide/workdir/exercises/robot-name)
[INFO] [stderr]     Checking saddle-points v1.3.0 (/opt/rustwide/workdir/exercises/saddle-points)
[INFO] [stderr]     Checking tournament v1.4.0 (/opt/rustwide/workdir/exercises/tournament)
[INFO] [stderr]     Checking roman-numerals v1.0.0 (/opt/rustwide/workdir/exercises/roman-numerals)
[INFO] [stderr]     Checking grains v1.2.0 (/opt/rustwide/workdir/exercises/grains)
[INFO] [stderr]     Checking minesweeper v1.1.0 (/opt/rustwide/workdir/exercises/minesweeper)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]  --> exercises/beer-song/src/lib.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...   n @ 3...99 => format!("{n} bottles of beer on the wall, {n} bottles of beer.\nTake one down and pass it around, {m} bottles of beer...
[INFO] [stdout]   |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking crypto-square v0.1.0 (/opt/rustwide/workdir/exercises/crypto-square)
[INFO] [stderr]     Checking word-count v1.2.0 (/opt/rustwide/workdir/exercises/word-count)
[INFO] [stderr]     Checking pascals-triangle v1.5.0 (/opt/rustwide/workdir/exercises/pascals-triangle)
[INFO] [stderr]     Checking poker v1.1.0 (/opt/rustwide/workdir/exercises/poker)
[INFO] [stderr]     Checking proverb v1.1.0 (/opt/rustwide/workdir/exercises/proverb)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking say v1.2.0 (/opt/rustwide/workdir/exercises/say)
[INFO] [stderr]     Checking acronym v1.0.0 (/opt/rustwide/workdir/exercises/acronym)
[INFO] [stderr]     Checking accumulate v0.0.0 (/opt/rustwide/workdir/exercises/accumulate)
[INFO] [stderr]     Checking paasio v0.0.0 (/opt/rustwide/workdir/exercises/paasio)
[INFO] [stderr]     Checking palindrome-products v1.1.0 (/opt/rustwide/workdir/exercises/palindrome-products)
[INFO] [stderr]     Checking etl v1.0.0 (/opt/rustwide/workdir/exercises/etl)
[INFO] [stderr]     Checking queen-attack v2.2.0 (/opt/rustwide/workdir/exercises/queen-attack)
[INFO] [stderr]     Checking raindrops v1.1.0 (/opt/rustwide/workdir/exercises/raindrops)
[INFO] [stderr]     Checking sum-of-multiples v1.5.0 (/opt/rustwide/workdir/exercises/sum-of-multiples)
[INFO] [stderr]     Checking rectangles v1.1.0 (/opt/rustwide/workdir/exercises/rectangles)
[INFO] [stderr]     Checking series v0.1.0 (/opt/rustwide/workdir/exercises/series)
[INFO] [stderr]     Checking diamond v1.1.0 (/opt/rustwide/workdir/exercises/diamond)
[INFO] [stderr]     Checking difference-of-squares v1.2.0 (/opt/rustwide/workdir/exercises/difference-of-squares)
[INFO] [stderr]     Checking luhn-trait v0.0.0 (/opt/rustwide/workdir/exercises/luhn-trait)
[INFO] [stderr]     Checking macros v0.1.0 (/opt/rustwide/workdir/exercises/macros)
[INFO] [stderr]     Checking scale_generator v2.0.0 (/opt/rustwide/workdir/exercises/scale-generator)
[INFO] [stderr]     Checking atbash-cipher v1.1.0 (/opt/rustwide/workdir/exercises/atbash-cipher)
[INFO] [stderr]     Checking binary-search v1.3.0 (/opt/rustwide/workdir/exercises/binary-search)
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/raindrops/src/lib.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |         .into_iter()
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 85 |         .iter()
[INFO] [stdout]    |          ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 84 |     IntoIterator::into_iter([(3, "Pling"), (5, "Plang"), (7, "Plong")])
[INFO] [stdout]    |     ++++++++++++++++++++++++                                          ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rotational-cipher v1.0.0 (/opt/rustwide/workdir/exercises/rotational-cipher)
[INFO] [stderr]     Checking alphametics v1.3.0 (/opt/rustwide/workdir/exercises/alphametics)
[INFO] [stderr]     Checking bracket-push v1.5.0 (/opt/rustwide/workdir/exercises/bracket-push)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking sublist v0.0.0 (/opt/rustwide/workdir/exercises/sublist)
[INFO] [stderr]     Checking grade-school v0.0.0 (/opt/rustwide/workdir/exercises/grade-school)
[INFO] [stderr]     Checking rail_fence_cipher v1.1.0 (/opt/rustwide/workdir/exercises/rail-fence-cipher)
[INFO] [stdout] warning: unused import: `accumulate::map`
[INFO] [stdout]  --> exercises/accumulate/tests/accumulate.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use accumulate::map;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `square` is never used
[INFO] [stdout]  --> exercises/accumulate/tests/accumulate.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn square(x: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> exercises/bowling/tests/bowling.rs:15:62
[INFO] [stdout]    |
[INFO] [stdout] 15 |     assert_eq!(game.roll(11), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]    |                                                              ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> exercises/bowling/tests/bowling.rs:62:56
[INFO] [stdout]    |
[INFO] [stdout] 62 |     assert_eq!(game.roll(0), Err(Error::GameComplete));;
[INFO] [stdout]    |                                                        ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:285:61
[INFO] [stdout]     |
[INFO] [stdout] 285 |     assert_eq!(game.roll(6), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                             ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:299:62
[INFO] [stdout]     |
[INFO] [stdout] 299 |     assert_eq!(game.roll(11), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:314:61
[INFO] [stdout]     |
[INFO] [stdout] 314 |     assert_eq!(game.roll(6), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                             ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:344:62
[INFO] [stdout]     |
[INFO] [stdout] 344 |     assert_eq!(game.roll(10), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:360:62
[INFO] [stdout]     |
[INFO] [stdout] 360 |     assert_eq!(game.roll(11), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling quote v0.6.11
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling backtrace-sys v0.1.28
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> exercises/dot-dsl/src/lib.rs:74:73
[INFO] [stdout]    |
[INFO] [stdout] 74 |                     self.attrs.get(&String::from(key)).map(|value| value.clone())
[INFO] [stdout]    |                                                                         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]  --> exercises/beer-song/src/lib.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...   n @ 3...99 => format!("{n} bottles of beer on the wall, {n} bottles of beer.\nTake one down and pass it around, {m} bottles of beer...
[INFO] [stdout]   |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BASE_TYPE` should have an upper camel case name
[INFO] [stdout]  --> exercises/rna-transcription/src/lib.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | enum BASE_TYPE {
[INFO] [stdout]   |      ^^^^^^^^^ help: convert the identifier to upper camel case: `BaseType`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `baseType` should have a snake case name
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn get_bases(baseType: BASE_TYPE) -> Vec<char> {
[INFO] [stdout]    |              ^^^^^^^^ help: convert the identifier to snake case: `base_type`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .into_iter()
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .iter()
[INFO] [stdout]    |          ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 19 |     IntoIterator::into_iter(BASES)
[INFO] [stdout]    |     ++++++++++++++++++++++++     ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| BASES.into_iter().find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| BASES.iter().find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| IntoIterator::into_iter(BASES).find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                         ++++++++++++++++++++++++     ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking simple-cipher v0.0.0 (/opt/rustwide/workdir/exercises/simple-cipher)
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/raindrops/src/lib.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |         .into_iter()
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 85 |         .iter()
[INFO] [stdout]    |          ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 84 |     IntoIterator::into_iter([(3, "Pling"), (5, "Plang"), (7, "Plong")])
[INFO] [stdout]    |     ++++++++++++++++++++++++                                          ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking gigasecond v1.1.0 (/opt/rustwide/workdir/exercises/gigasecond)
[INFO] [stderr]    Compiling synstructure v0.10.1
[INFO] [stderr]     Checking failure v0.1.5
[INFO] [stderr]     Checking grep v1.2.0 (/opt/rustwide/workdir/exercises/grep)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 15.38s
[INFO] running `Command { std: "docker" "inspect" "721e6b07dea6a3aa2dbcf5aef5cdb555ca55de17f6cc3c76bfe24b82b871f294", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "721e6b07dea6a3aa2dbcf5aef5cdb555ca55de17f6cc3c76bfe24b82b871f294", kill_on_drop: false }`
[INFO] [stdout] 721e6b07dea6a3aa2dbcf5aef5cdb555ca55de17f6cc3c76bfe24b82b871f294
[INFO] checking sinnerschrader/rust-exercism-cubicle against nightly-2024-02-05+rustflags=-Dunexpected_cfgs+cargoflags=-Zcheck-cfg for check-cfg-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinnerschrader%2Frust-exercism-cubicle" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/sinnerschrader/rust-exercism-cubicle on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/sinnerschrader/rust-exercism-cubicle
[INFO] finished tweaking git repo https://github.com/sinnerschrader/rust-exercism-cubicle
[INFO] tweaked toml for git repo https://github.com/sinnerschrader/rust-exercism-cubicle written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/sinnerschrader/rust-exercism-cubicle 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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2c920a3fc0d0cb9257794ba1899045fb73ced0e88d76545f2c28f953a569b848
[INFO] running `Command { std: "docker" "start" "-a" "2c920a3fc0d0cb9257794ba1899045fb73ced0e88d76545f2c28f953a569b848", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2c920a3fc0d0cb9257794ba1899045fb73ced0e88d76545f2c28f953a569b848", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c920a3fc0d0cb9257794ba1899045fb73ced0e88d76545f2c28f953a569b848", kill_on_drop: false }`
[INFO] [stdout] 2c920a3fc0d0cb9257794ba1899045fb73ced0e88d76545f2c28f953a569b848
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Dunexpected_cfgs" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zcheck-cfg", kill_on_drop: false }`
[INFO] [stdout] d2acd48d92b0e52df23c2eaf2a1200eff55dbb05f0c0be90195bcdd226f75581
[INFO] running `Command { std: "docker" "start" "-a" "d2acd48d92b0e52df23c2eaf2a1200eff55dbb05f0c0be90195bcdd226f75581", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.50
[INFO] [stderr]    Compiling proc-macro2 v0.4.27
[INFO] [stderr]    Compiling syn v0.15.29
[INFO] [stderr]    Compiling cc v1.0.32
[INFO] [stderr]    Compiling autocfg v0.1.2
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling failure_derive v0.1.5
[INFO] [stderr]     Checking cfg-if v0.1.7
[INFO] [stderr]     Checking rustc-demangle v0.1.13
[INFO] [stderr]     Checking maplit v1.0.1
[INFO] [stderr]     Checking bob v1.4.0 (/opt/rustwide/workdir/exercises/bob)
[INFO] [stderr]     Checking parallel-letter-frequency v0.0.0 (/opt/rustwide/workdir/exercises/parallel-letter-frequency)
[INFO] [stderr]     Checking raindrops v1.1.0 (/opt/rustwide/workdir/exercises/raindrops)
[INFO] [stderr]     Checking etl v1.0.0 (/opt/rustwide/workdir/exercises/etl)
[INFO] [stderr]     Checking hexadecimal v0.0.0 (/opt/rustwide/workdir/exercises/hexadecimal)
[INFO] [stderr]     Checking dominoes v2.1.0 (/opt/rustwide/workdir/exercises/dominoes)
[INFO] [stderr]     Checking circular-buffer v1.1.0 (/opt/rustwide/workdir/exercises/circular-buffer)
[INFO] [stderr]     Checking rectangles v1.1.0 (/opt/rustwide/workdir/exercises/rectangles)
[INFO] [stderr]     Checking tournament v1.4.0 (/opt/rustwide/workdir/exercises/tournament)
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/raindrops/src/lib.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 |         .into_iter()
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 85 |         .iter()
[INFO] [stdout]    |          ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 84 |     IntoIterator::into_iter([(3, "Pling"), (5, "Plang"), (7, "Plong")])
[INFO] [stdout]    |     ++++++++++++++++++++++++                                          ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking sum-of-multiples v1.5.0 (/opt/rustwide/workdir/exercises/sum-of-multiples)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hello-world v1.1.0 (/opt/rustwide/workdir/exercises/hello-world)
[INFO] [stderr]     Checking dot-dsl v0.1.0 (/opt/rustwide/workdir/exercises/dot-dsl)
[INFO] [stderr]     Checking sublist v0.0.0 (/opt/rustwide/workdir/exercises/sublist)
[INFO] [stderr]     Checking triangle v0.0.0 (/opt/rustwide/workdir/exercises/triangle)
[INFO] [stderr]     Checking luhn-trait v0.0.0 (/opt/rustwide/workdir/exercises/luhn-trait)
[INFO] [stderr]     Checking minesweeper v1.1.0 (/opt/rustwide/workdir/exercises/minesweeper)
[INFO] [stderr]     Checking grains v1.2.0 (/opt/rustwide/workdir/exercises/grains)
[INFO] [stderr]     Checking leap v1.4.0 (/opt/rustwide/workdir/exercises/leap)
[INFO] [stderr]     Checking allyourbase v1.0.0 (/opt/rustwide/workdir/exercises/all-your-base)
[INFO] [stderr]     Checking isogram v1.3.0 (/opt/rustwide/workdir/exercises/isogram)
[INFO] [stderr]     Checking pascals-triangle v1.5.0 (/opt/rustwide/workdir/exercises/pascals-triangle)
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> exercises/dot-dsl/src/lib.rs:74:73
[INFO] [stdout]    |
[INFO] [stdout] 74 |                     self.attrs.get(&String::from(key)).map(|value| value.clone())
[INFO] [stdout]    |                                                                         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking macros v0.1.0 (/opt/rustwide/workdir/exercises/macros)
[INFO] [stderr]     Checking accumulate v0.0.0 (/opt/rustwide/workdir/exercises/accumulate)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking ocr-numbers v0.0.0 (/opt/rustwide/workdir/exercises/ocr-numbers)
[INFO] [stderr]     Checking nucleotide-count v1.3.0 (/opt/rustwide/workdir/exercises/nucleotide-count)
[INFO] [stderr]     Checking roman-numerals v1.0.0 (/opt/rustwide/workdir/exercises/roman-numerals)
[INFO] [stderr]     Checking rotational-cipher v1.0.0 (/opt/rustwide/workdir/exercises/rotational-cipher)
[INFO] [stderr]     Checking variable-length-quantity v1.2.0 (/opt/rustwide/workdir/exercises/variable-length-quantity)
[INFO] [stderr]     Checking bowling v1.2.0 (/opt/rustwide/workdir/exercises/bowling)
[INFO] [stderr]     Checking binary-search v1.3.0 (/opt/rustwide/workdir/exercises/binary-search)
[INFO] [stderr]     Checking react v2.0.0 (/opt/rustwide/workdir/exercises/react)
[INFO] [stderr]     Checking say v1.2.0 (/opt/rustwide/workdir/exercises/say)
[INFO] [stderr]     Checking poker v1.1.0 (/opt/rustwide/workdir/exercises/poker)
[INFO] [stderr]     Checking diffie-hellman v0.1.0 (/opt/rustwide/workdir/exercises/diffie-hellman)
[INFO] [stderr]     Checking hamming v2.2.0 (/opt/rustwide/workdir/exercises/hamming)
[INFO] [stderr]     Checking nucleotide_codons v0.1.0 (/opt/rustwide/workdir/exercises/nucleotide-codons)
[INFO] [stderr]     Checking pig-latin v1.0.0 (/opt/rustwide/workdir/exercises/pig-latin)
[INFO] [stderr]     Checking collatz_conjecture v1.2.1 (/opt/rustwide/workdir/exercises/collatz-conjecture)
[INFO] [stderr]     Checking rna-transcription v1.0.0 (/opt/rustwide/workdir/exercises/rna-transcription)
[INFO] [stderr]     Checking prime_factors v1.1.0 (/opt/rustwide/workdir/exercises/prime-factors)
[INFO] [stderr]     Checking armstrong_numbers v1.0.0 (/opt/rustwide/workdir/exercises/armstrong-numbers)
[INFO] [stderr]     Checking diamond v1.1.0 (/opt/rustwide/workdir/exercises/diamond)
[INFO] [stderr]     Checking word-count v1.2.0 (/opt/rustwide/workdir/exercises/word-count)
[INFO] [stderr]     Checking space-age v1.1.0 (/opt/rustwide/workdir/exercises/space-age)
[INFO] [stdout] warning: type `BASE_TYPE` should have an upper camel case name
[INFO] [stdout]  --> exercises/rna-transcription/src/lib.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | enum BASE_TYPE {
[INFO] [stdout]   |      ^^^^^^^^^ help: convert the identifier to upper camel case: `BaseType`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking pythagorean_triplet v1.0.0 (/opt/rustwide/workdir/exercises/pythagorean-triplet)
[INFO] [stderr]     Checking bracket-push v1.5.0 (/opt/rustwide/workdir/exercises/bracket-push)
[INFO] [stderr]     Checking pangram v0.0.0 (/opt/rustwide/workdir/exercises/pangram)
[INFO] [stderr]     Checking spiral-matrix v1.1.0 (/opt/rustwide/workdir/exercises/spiral-matrix)
[INFO] [stderr]     Checking reverse_string v1.1.0 (/opt/rustwide/workdir/exercises/reverse-string)
[INFO] [stdout] warning: variable `baseType` should have a snake case name
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn get_bases(baseType: BASE_TYPE) -> Vec<char> {
[INFO] [stdout]    |              ^^^^^^^^ help: convert the identifier to snake case: `base_type`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .into_iter()
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 20 |         .iter()
[INFO] [stdout]    |          ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 19 |     IntoIterator::into_iter(BASES)
[INFO] [stdout]    |     ++++++++++++++++++++++++     ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> exercises/rna-transcription/src/lib.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| BASES.into_iter().find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| BASES.iter().find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 43 |             .map(|base| IntoIterator::into_iter(BASES).find(|b| b.0 == base).unwrap().1)
[INFO] [stdout]    |                         ++++++++++++++++++++++++     ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking run-length-encoding v1.1.0 (/opt/rustwide/workdir/exercises/run-length-encoding)
[INFO] [stderr]    Compiling backtrace v0.3.14
[INFO] [stderr]     Checking largest-series-product v1.2.0 (/opt/rustwide/workdir/exercises/largest-series-product)
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking crypto-square v0.1.0 (/opt/rustwide/workdir/exercises/crypto-square)
[INFO] [stderr]     Checking paasio v0.0.0 (/opt/rustwide/workdir/exercises/paasio)
[INFO] [stderr]     Checking protein-translation v0.1.0 (/opt/rustwide/workdir/exercises/protein-translation)
[INFO] [stderr]     Checking proverb v1.1.0 (/opt/rustwide/workdir/exercises/proverb)
[INFO] [stderr]     Checking simple_linked_list v0.1.0 (/opt/rustwide/workdir/exercises/simple-linked-list)
[INFO] [stderr]     Checking two-bucket v1.4.0 (/opt/rustwide/workdir/exercises/two-bucket)
[INFO] [stderr]     Checking alphametics v1.3.0 (/opt/rustwide/workdir/exercises/alphametics)
[INFO] [stderr]     Checking robot-simulator v2.2.0 (/opt/rustwide/workdir/exercises/robot-simulator)
[INFO] [stderr]     Checking nth_prime v2.1.0 (/opt/rustwide/workdir/exercises/nth-prime)
[INFO] [stderr]     Checking queen-attack v2.2.0 (/opt/rustwide/workdir/exercises/queen-attack)
[INFO] [stderr]     Checking atbash-cipher v1.1.0 (/opt/rustwide/workdir/exercises/atbash-cipher)
[INFO] [stderr]     Checking palindrome-products v1.1.0 (/opt/rustwide/workdir/exercises/palindrome-products)
[INFO] [stderr]     Checking allergies v1.1.0 (/opt/rustwide/workdir/exercises/allergies)
[INFO] [stderr]     Checking acronym v1.0.0 (/opt/rustwide/workdir/exercises/acronym)
[INFO] [stderr]     Checking luhn v1.3.0 (/opt/rustwide/workdir/exercises/luhn)
[INFO] [stderr]     Checking clock v2.4.0 (/opt/rustwide/workdir/exercises/clock)
[INFO] [stderr]     Checking grade-school v0.0.0 (/opt/rustwide/workdir/exercises/grade-school)
[INFO] [stderr]     Checking phone-number v1.6.1 (/opt/rustwide/workdir/exercises/phone-number)
[INFO] [stderr]     Checking isbn-verifier v2.7.0 (/opt/rustwide/workdir/exercises/isbn-verifier)
[INFO] [stderr]     Checking forth v1.7.0 (/opt/rustwide/workdir/exercises/forth)
[INFO] [stderr]     Checking scrabble-score v1.1.0 (/opt/rustwide/workdir/exercises/scrabble-score)
[INFO] [stderr]     Checking anagram v0.0.0 (/opt/rustwide/workdir/exercises/anagram)
[INFO] [stderr]     Checking scale_generator v2.0.0 (/opt/rustwide/workdir/exercises/scale-generator)
[INFO] [stderr]     Checking book_store v1.3.0 (/opt/rustwide/workdir/exercises/book-store)
[INFO] [stderr]     Checking difference-of-squares v1.2.0 (/opt/rustwide/workdir/exercises/difference-of-squares)
[INFO] [stderr]     Checking sieve v1.1.0 (/opt/rustwide/workdir/exercises/sieve)
[INFO] [stderr]     Checking saddle-points v1.3.0 (/opt/rustwide/workdir/exercises/saddle-points)
[INFO] [stderr]     Checking perfect_numbers v1.1.0 (/opt/rustwide/workdir/exercises/perfect-numbers)
[INFO] [stderr]     Checking twofer v1.2.0 (/opt/rustwide/workdir/exercises/two-fer)
[INFO] [stderr]     Checking decimal v0.1.0 (/opt/rustwide/workdir/exercises/decimal)
[INFO] [stderr]     Checking series v0.1.0 (/opt/rustwide/workdir/exercises/series)
[INFO] [stderr]     Checking wordy v1.5.0 (/opt/rustwide/workdir/exercises/wordy)
[INFO] [stderr]     Checking rail_fence_cipher v1.1.0 (/opt/rustwide/workdir/exercises/rail-fence-cipher)
[INFO] [stderr]     Checking beer-song v0.0.0 (/opt/rustwide/workdir/exercises/beer-song)
[INFO] [stderr]     Checking luhn-from v0.0.0 (/opt/rustwide/workdir/exercises/luhn-from)
[INFO] [stderr]     Checking custom-set v1.0.1 (/opt/rustwide/workdir/exercises/custom-set)
[INFO] [stderr]     Checking robot-name v0.0.0 (/opt/rustwide/workdir/exercises/robot-name)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]  --> exercises/beer-song/src/lib.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...   n @ 3...99 => format!("{n} bottles of beer on the wall, {n} bottles of beer.\nTake one down and pass it around, {m} bottles of beer...
[INFO] [stdout]   |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling quote v0.6.11
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]    Compiling backtrace-sys v0.1.28
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> exercises/bowling/tests/bowling.rs:15:62
[INFO] [stdout]    |
[INFO] [stdout] 15 |     assert_eq!(game.roll(11), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]    |                                                              ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> exercises/bowling/tests/bowling.rs:62:56
[INFO] [stdout]    |
[INFO] [stdout] 62 |     assert_eq!(game.roll(0), Err(Error::GameComplete));;
[INFO] [stdout]    |                                                        ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:285:61
[INFO] [stdout]     |
[INFO] [stdout] 285 |     assert_eq!(game.roll(6), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                             ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:299:62
[INFO] [stdout]     |
[INFO] [stdout] 299 |     assert_eq!(game.roll(11), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:314:61
[INFO] [stdout]     |
[INFO] [stdout] 314 |     assert_eq!(game.roll(6), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                             ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:344:62
[INFO] [stdout]     |
[INFO] [stdout] 344 |     assert_eq!(game.roll(10), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> exercises/bowling/tests/bowling.rs:360:62
[INFO] [stdout]     |
[INFO] [stdout] 360 |     assert_eq!(game.roll(11), Err(Error::NotEnoughPinsLeft));;
[INFO] [stdout]     |                                                              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]  --> exercises/ocr-numbers/tests/ocr-numbers.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `debug_assertions`, `doc`, `doctest`, `feature`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `unix`, `windows`
[INFO] [stdout]   = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout]   = note: requested on the command line with `-D unexpected-cfgs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]   --> exercises/ocr-numbers/tests/ocr-numbers.rs:88:12
[INFO] [stdout]    |
[INFO] [stdout] 88 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout] 124 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:172:12
[INFO] [stdout]     |
[INFO] [stdout] 172 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition name: `rustfmt`
[INFO] [stdout]    --> exercises/ocr-numbers/tests/ocr-numbers.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[cfg_attr(rustfmt, rustfmt_skip)]
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead or adding `println!("cargo:rustc-check-cfg=cfg(rustfmt)");` to the top of a `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 17 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ocr-numbers` (test "ocr-numbers") due to 18 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `accumulate::map`
[INFO] [stdout]  --> exercises/accumulate/tests/accumulate.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use accumulate::map;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `square` is never used
[INFO] [stdout]  --> exercises/accumulate/tests/accumulate.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn square(x: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d2acd48d92b0e52df23c2eaf2a1200eff55dbb05f0c0be90195bcdd226f75581", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2acd48d92b0e52df23c2eaf2a1200eff55dbb05f0c0be90195bcdd226f75581", kill_on_drop: false }`
[INFO] [stdout] d2acd48d92b0e52df23c2eaf2a1200eff55dbb05f0c0be90195bcdd226f75581
