[INFO] cloning repository https://github.com/grahamhome/rusty-poker
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/grahamhome/rusty-poker" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgrahamhome%2Frusty-poker", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgrahamhome%2Frusty-poker'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 55119bb14811f6f1f486bd8617171c7ed1f9fc89
[INFO] testing grahamhome/rusty-poker against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgrahamhome%2Frusty-poker" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/grahamhome/rusty-poker
[INFO] finished tweaking git repo https://github.com/grahamhome/rusty-poker
[INFO] tweaked toml for git repo https://github.com/grahamhome/rusty-poker written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/grahamhome/rusty-poker on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/grahamhome/rusty-poker 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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] b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f
[INFO] running `Command { std: "docker" "start" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", 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" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling regex-syntax v0.6.28
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling regex v1.7.1
[INFO] [stderr]    Compiling poker_hands v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `PokerHand` is never constructed
[INFO] [stdout]   --> src/hand.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PokerHand<'a> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/hand.rs:42:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl<'a> PokerHand<'a> {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  42 |     pub fn new(input: &'a str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     fn categorize(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     fn same_suit(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     fn sequence(&mut self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn aces_low(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn n_of_a_kind(&self, n: u8) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn two_pair(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn full_house(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn sorted_ranks(&self) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PokerHandType` is never used
[INFO] [stdout]  --> src/hand_type.rs:2:10
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum PokerHandType {
[INFO] [stdout]   |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `winning_hands` is never used
[INFO] [stdout]  --> src/winning_hands.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn winning_hands<'a>(hands: &[&'a str]) -> Vec<&'a str> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 24.04s
[INFO] running `Command { std: "docker" "inspect" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling poker_hands v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `PokerHand` is never constructed
[INFO] [stdout]   --> src/hand.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PokerHand<'a> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/hand.rs:42:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl<'a> PokerHand<'a> {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  42 |     pub fn new(input: &'a str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     fn categorize(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     fn same_suit(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     fn sequence(&mut self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn aces_low(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn n_of_a_kind(&self, n: u8) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn two_pair(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn full_house(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn sorted_ranks(&self) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PokerHandType` is never used
[INFO] [stdout]  --> src/hand_type.rs:2:10
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum PokerHandType {
[INFO] [stdout]   |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `winning_hands` is never used
[INFO] [stdout]  --> src/winning_hands.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn winning_hands<'a>(hands: &[&'a str]) -> Vec<&'a str> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1.66s
[INFO] running `Command { std: "docker" "inspect" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: struct `PokerHand` is never constructed
[INFO] [stderr]   --> src/hand.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct PokerHand<'a> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/hand.rs:42:12
[INFO] [stderr]     |
[INFO] [stderr]  41 | impl<'a> PokerHand<'a> {
[INFO] [stderr]     | ---------------------- associated items in this implementation
[INFO] [stderr]  42 |     pub fn new(input: &'a str) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  70 |     fn categorize(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  93 |     fn same_suit(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  98 |     fn sequence(&mut self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 125 |     fn aces_low(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 138 |     fn n_of_a_kind(&self, n: u8) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 143 |     fn two_pair(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 148 |     fn full_house(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 153 |     fn sorted_ranks(&self) -> Vec<u8> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `PokerHandType` is never used
[INFO] [stderr]  --> src/hand_type.rs:2:10
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub enum PokerHandType {
[INFO] [stderr]   |          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `winning_hands` is never used
[INFO] [stderr]  --> src/winning_hands.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub fn winning_hands<'a>(hands: &[&'a str]) -> Vec<&'a str> {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `poker_hands` (lib) generated 4 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/poker_hands-376cfcc4933f1c3b)
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test tests::tests::simple_check ... ok
[INFO] [stdout] test tests::tests::test_aces_can_end_a_straight_flush_high ... ok
[INFO] [stdout] test tests::tests::test_aces_can_start_a_straight_flush_low ... ok
[INFO] [stdout] test tests::tests::test_aces_can_start_a_straight_low ... ok
[INFO] [stdout] test tests::tests::test_aces_can_end_a_straight_high ... ok
[INFO] [stdout] test tests::tests::test_duplicate_hands_always_tie ... ok
[INFO] [stdout] test tests::tests::test_flush_beats_a_straight ... ok
[INFO] [stdout] test tests::tests::test_flush_cascade ... ok
[INFO] [stdout] test tests::tests::test_four_of_a_kind_beats_full_house ... ok
[INFO] [stdout] test tests::tests::test_four_of_a_kind_cascade ... ok
[INFO] [stdout] test tests::tests::test_four_of_a_kind_ranks ... ok
[INFO] [stdout] test tests::tests::test_full_house_beats_a_flush ... ok
[INFO] [stdout] test tests::tests::test_full_house_cascade ... ok
[INFO] [stdout] test tests::tests::test_full_house_ranks ... ok
[INFO] [stdout] test tests::tests::test_high_card_can_be_low_card_in_an_otherwise_tie ... ok
[INFO] [stdout] test tests::tests::test_highest_card_of_all_hands_wins ... ok
[INFO] [stdout] test tests::tests::test_highest_pair_wins ... ok
[INFO] [stdout] test tests::tests::test_low_three_of_a_kind_beats_high_two_pair ... ok
[INFO] [stdout] test tests::tests::test_no_ace_in_middle_of_straight ... ok
[INFO] [stdout] test tests::tests::test_no_ace_in_middle_of_straight_flush ... ok
[INFO] [stdout] test tests::tests::test_one_pair_beats_high_card ... ok
[INFO] [stdout] test tests::tests::test_single_hand_always_wins ... ok
[INFO] [stdout] test tests::tests::test_straight_beats_three_of_a_kind ... ok
[INFO] [stdout] test tests::tests::test_straight_flush_beats_four_of_a_kind ... ok
[INFO] [stdout] test tests::tests::test_straight_flush_ranks ... ok
[INFO] [stdout] test tests::tests::test_straight_flush_scoring ... ok
[INFO] [stdout] test tests::tests::test_straight_ranks ... ok
[INFO] [stdout] test tests::tests::test_straight_scoring ... ok
[INFO] [stdout] test tests::tests::test_three_of_a_kind_beats_two_pair ... ok
[INFO] [stdout] test tests::tests::test_three_of_a_kind_cascade_ranks ... ok
[INFO] [stdout] test tests::tests::test_three_of_a_kind_ranks ... ok
[INFO] [stdout] test tests::tests::test_a_tie_has_multiple_winners ... ok
[INFO] [stdout] test tests::tests::test_two_pair_ranks ... ok
[INFO] [stdout] test tests::tests::test_two_pairs_beats_one_pair ... ok
[INFO] [stdout] test tests::tests::test_two_pairs_last_card_cascade ... ok
[INFO] [stdout] test tests::tests::test_two_pairs_second_pair_cascade ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests poker_hands
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f", kill_on_drop: false }`
[INFO] [stdout] b0d82d6a884b504002bfc253d34b126ca54cec7656522f30ca896cd1202f534f
