[INFO] cloning repository https://github.com/L19579/L19_Terminal_TicTacToe
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/L19579/L19_Terminal_TicTacToe" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FL19579%2FL19_Terminal_TicTacToe", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FL19579%2FL19_Terminal_TicTacToe'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3782d45ba62597ae041fe3f10c7aa80e85310424
[INFO] testing L19579/L19_Terminal_TicTacToe against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FL19579%2FL19_Terminal_TicTacToe" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/L19579/L19_Terminal_TicTacToe
[INFO] finished tweaking git repo https://github.com/L19579/L19_Terminal_TicTacToe
[INFO] tweaked toml for git repo https://github.com/L19579/L19_Terminal_TicTacToe written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/L19579/L19_Terminal_TicTacToe on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/L19579/L19_Terminal_TicTacToe 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 92f71152979992db39e181ee77d4b9a2bd9700f2831d964027b7ed2f30cd0c9a
[INFO] running `Command { std: "docker" "start" "-a" "92f71152979992db39e181ee77d4b9a2bd9700f2831d964027b7ed2f30cd0c9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "92f71152979992db39e181ee77d4b9a2bd9700f2831d964027b7ed2f30cd0c9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "92f71152979992db39e181ee77d4b9a2bd9700f2831d964027b7ed2f30cd0c9a", kill_on_drop: false }`
[INFO] [stdout] 92f71152979992db39e181ee77d4b9a2bd9700f2831d964027b7ed2f30cd0c9a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5bfe1ba4ca7df28730d6dfe9d1c260cb91fec90f26c3c4f89c18f26b6b66a2e
[INFO] running `Command { std: "docker" "start" "-a" "e5bfe1ba4ca7df28730d6dfe9d1c260cb91fec90f26c3c4f89c18f26b6b66a2e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.121
[INFO] [stderr]    Compiling getrandom v0.2.6
[INFO] [stderr]    Compiling rand_core v0.6.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling l19_terminal_tictactoe v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.34s
[INFO] running `Command { std: "docker" "inspect" "e5bfe1ba4ca7df28730d6dfe9d1c260cb91fec90f26c3c4f89c18f26b6b66a2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5bfe1ba4ca7df28730d6dfe9d1c260cb91fec90f26c3c4f89c18f26b6b66a2e", kill_on_drop: false }`
[INFO] [stdout] e5bfe1ba4ca7df28730d6dfe9d1c260cb91fec90f26c3c4f89c18f26b6b66a2e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3381f4f88d3eadffb286a1e3aa87ec8118291a3dea6e3d2f0df66415e6e92857
[INFO] running `Command { std: "docker" "start" "-a" "3381f4f88d3eadffb286a1e3aa87ec8118291a3dea6e3d2f0df66415e6e92857", kill_on_drop: false }`
[INFO] [stderr]    Compiling l19_terminal_tictactoe v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.75s
[INFO] running `Command { std: "docker" "inspect" "3381f4f88d3eadffb286a1e3aa87ec8118291a3dea6e3d2f0df66415e6e92857", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3381f4f88d3eadffb286a1e3aa87ec8118291a3dea6e3d2f0df66415e6e92857", kill_on_drop: false }`
[INFO] [stdout] 3381f4f88d3eadffb286a1e3aa87ec8118291a3dea6e3d2f0df66415e6e92857
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 20e0892cee60612f99ed3543b7cface3197736ec43b884c88f9b22151ba1faf5
[INFO] running `Command { std: "docker" "start" "-a" "20e0892cee60612f99ed3543b7cface3197736ec43b884c88f9b22151ba1faf5", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/l19_terminal_tictactoe-3236af0b4a97f607)
[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] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/l19_terminal_tictactoe-c1ff4231f6fe636e)
[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] [stderr]      Running tests/unit_tests.rs (/opt/rustwide/target/debug/deps/unit_tests-68560c60ae601bc8)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test check_all_wins ... ok
[INFO] [stdout] test check_legal_placement ... ok
[INFO] [stdout] test check_some_non_win ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests l19_terminal_tictactoe
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test src/lib.rs - Piece::select_with_int (line 74) ... FAILED
[INFO] [stdout] test src/lib.rs - Piece::fmt (line 119) ... FAILED
[INFO] [stdout] test src/lib.rs - TableState::is_win (line 270) ... FAILED
[INFO] [stdout] test src/lib.rs - GameMaster<'a>::next_mover_w_prompt (line 341) ... FAILED
[INFO] [stdout] test src/lib.rs - GameMaster<'a>::add_move (line 414) ... FAILED
[INFO] [stdout] test src/lib.rs - WinOptions::options (line 179) ... FAILED
[INFO] [stdout] test src/lib.rs - TableState::duplicate_with_new (line 233) ... FAILED
[INFO] [stdout] test src/lib.rs - Piece::opposite (line 52) ... FAILED
[INFO] [stdout] test src/lib.rs - GameMaster<'a>::print_table (line 486) ... FAILED
[INFO] [stdout] test src/lib.rs - Piece::as_str (line 32) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - Piece::select_with_int (line 74) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Piece` in this scope
[INFO] [stdout]   --> src/lib.rs:78:14
[INFO] [stdout]    |
[INFO] [stdout] 78 | let a_piece: Piece = select_with_int(1);
[INFO] [stdout]    |              ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 73 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `select_with_int` in this scope
[INFO] [stdout]   --> src/lib.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 | let a_piece: Piece = select_with_int(1);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Piece::fmt (line 119) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 | let user_piece: Piece = Piece::User;
[INFO] [stdout]     |                 ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 118 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:123:25
[INFO] [stdout]     |
[INFO] [stdout] 123 | let user_piece: Piece = Piece::User;
[INFO] [stdout]     |                         ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 118 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - TableState::is_win (line 270) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:275:34
[INFO] [stdout]     |
[INFO] [stdout] 275 | let new_move = PlaySelector::new(Piece::User, 3);
[INFO] [stdout]     |                                  ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 269 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TableState` in this scope
[INFO] [stdout]    --> src/lib.rs:274:34
[INFO] [stdout]     |
[INFO] [stdout] 274 | let game_progression = Vec::from(TableState::new());
[INFO] [stdout]     |                                  ^^^^^^^^^^ use of undeclared type `TableState`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PlaySelector` in this scope
[INFO] [stdout]    --> src/lib.rs:275:16
[INFO] [stdout]     |
[INFO] [stdout] 275 | let new_move = PlaySelector::new(Piece::User, 3);
[INFO] [stdout]     |                ^^^^^^^^^^^^ use of undeclared type `PlaySelector`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TableState` in this scope
[INFO] [stdout]    --> src/lib.rs:276:23
[INFO] [stdout]     |
[INFO] [stdout] 276 | game_progression.push(TableState::duplicate_with_new(new_move));
[INFO] [stdout]     |                       ^^^^^^^^^^ use of undeclared type `TableState`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - GameMaster<'a>::next_mover_w_prompt (line 341) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `key_bindings` in this scope
[INFO] [stdout]    --> src/lib.rs:345:16
[INFO] [stdout]     |
[INFO] [stdout] 345 | let bindings = key_bindings::default_bindings();
[INFO] [stdout]     |                ^^^^^^^^^^^^ use of unresolved module or unlinked crate `key_bindings`
[INFO] [stdout]     |
[INFO] [stdout] help: to make use of source file src/key_bindings.rs, use `mod key_bindings` in this file to declare the module
[INFO] [stdout]     |
[INFO] [stdout] 340 + mod key_bindings;
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout] 340 + use l19_terminal_tictactoe::key_bindings;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `GameMaster` in this scope
[INFO] [stdout]    --> src/lib.rs:346:10
[INFO] [stdout]     |
[INFO] [stdout] 346 | let gm = GameMaster::new(&bindings);
[INFO] [stdout]     |          ^^^^^^^^^^ use of undeclared type `GameMaster`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 340 + use l19_terminal_tictactoe::GameMaster;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:347:13
[INFO] [stdout]     |
[INFO] [stdout] 347 | gm.add_move(Piece::Npc, 2);
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 340 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:348:24
[INFO] [stdout]     |
[INFO] [stdout] 348 | gm.next_mover_w_prompt(Piece::Npc);
[INFO] [stdout]     |                        ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 340 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - GameMaster<'a>::add_move (line 414) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `key_bindings` in this scope
[INFO] [stdout]    --> src/lib.rs:418:16
[INFO] [stdout]     |
[INFO] [stdout] 418 | let bindings = key_bindings::default_bindings();
[INFO] [stdout]     |                ^^^^^^^^^^^^ use of unresolved module or unlinked crate `key_bindings`
[INFO] [stdout]     |
[INFO] [stdout] help: to make use of source file src/key_bindings.rs, use `mod key_bindings` in this file to declare the module
[INFO] [stdout]     |
[INFO] [stdout] 413 + mod key_bindings;
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout] 413 + use l19_terminal_tictactoe::key_bindings;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `GameMaster` in this scope
[INFO] [stdout]    --> src/lib.rs:419:10
[INFO] [stdout]     |
[INFO] [stdout] 419 | let gm = GameMaster::new(&bindings);
[INFO] [stdout]     |          ^^^^^^^^^^ use of undeclared type `GameMaster`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 413 + use l19_terminal_tictactoe::GameMaster;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 | gm.add_move(Piece::Npc, 5);
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 413 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - WinOptions::options (line 179) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `WinOptions` in this scope
[INFO] [stdout]    --> src/lib.rs:183:13
[INFO] [stdout]     |
[INFO] [stdout] 183 | let w_pos = WinOptions::new();
[INFO] [stdout]     |             ^^^^^^^^^^ use of undeclared type `WinOptions`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - TableState::duplicate_with_new (line 233) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:238:34
[INFO] [stdout]     |
[INFO] [stdout] 238 | let new_move = PlaySelector::new(Piece::User, 1);
[INFO] [stdout]     |                                  ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 232 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `TableState` in this scope
[INFO] [stdout]    --> src/lib.rs:237:34
[INFO] [stdout]     |
[INFO] [stdout] 237 | let game_progression = Vec::from(TableState::new());
[INFO] [stdout]     |                                  ^^^^^^^^^^ use of undeclared type `TableState`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `PlaySelector` in this scope
[INFO] [stdout]    --> src/lib.rs:238:16
[INFO] [stdout]     |
[INFO] [stdout] 238 | let new_move = PlaySelector::new(Piece::User, 1);
[INFO] [stdout]     |                ^^^^^^^^^^^^ use of undeclared type `PlaySelector`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Piece::opposite (line 52) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Piece` in this scope
[INFO] [stdout]   --> src/lib.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 | let peice : Piece = Piece::User;
[INFO] [stdout]    |             ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 51 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]   --> src/lib.rs:56:21
[INFO] [stdout]    |
[INFO] [stdout] 56 | let peice : Piece = Piece::User;
[INFO] [stdout]    |                     ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 51 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - GameMaster<'a>::print_table (line 486) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `key_bindings` in this scope
[INFO] [stdout]    --> src/lib.rs:490:16
[INFO] [stdout]     |
[INFO] [stdout] 490 | let bindings = key_bindings::default_bindings();
[INFO] [stdout]     |                ^^^^^^^^^^^^ use of unresolved module or unlinked crate `key_bindings`
[INFO] [stdout]     |
[INFO] [stdout] help: to make use of source file src/key_bindings.rs, use `mod key_bindings` in this file to declare the module
[INFO] [stdout]     |
[INFO] [stdout] 485 + mod key_bindings;
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout] 485 + use l19_terminal_tictactoe::key_bindings;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `GameMaster` in this scope
[INFO] [stdout]    --> src/lib.rs:491:10
[INFO] [stdout]     |
[INFO] [stdout] 491 | let gm = GameMaster::new(&bindings);
[INFO] [stdout]     |          ^^^^^^^^^^ use of undeclared type `GameMaster`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 485 + use l19_terminal_tictactoe::GameMaster;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:492:13
[INFO] [stdout]     |
[INFO] [stdout] 492 | gm.add_move(Piece::Npc, 1);
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 485 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]    --> src/lib.rs:493:13
[INFO] [stdout]     |
[INFO] [stdout] 493 | gm.add_move(Piece::User, 4);
[INFO] [stdout]     |             ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout] 485 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Piece::as_str (line 32) stdout ----
[INFO] [stdout] error[E0433]: cannot find type `Piece` in this scope
[INFO] [stdout]   --> src/lib.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 | let player_one = Piece::Npc;
[INFO] [stdout]    |                  ^^^^^ use of undeclared type `Piece`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout] 32 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - GameMaster<'a>::add_move (line 414)
[INFO] [stdout]     src/lib.rs - GameMaster<'a>::next_mover_w_prompt (line 341)
[INFO] [stdout]     src/lib.rs - GameMaster<'a>::print_table (line 486)
[INFO] [stdout]     src/lib.rs - Piece::as_str (line 32)
[INFO] [stdout]     src/lib.rs - Piece::fmt (line 119)
[INFO] [stdout]     src/lib.rs - Piece::opposite (line 52)
[INFO] [stdout]     src/lib.rs - Piece::select_with_int (line 74)
[INFO] [stdout]     src/lib.rs - TableState::duplicate_with_new (line 233)
[INFO] [stdout]     src/lib.rs - TableState::is_win (line 270)
[INFO] [stdout]     src/lib.rs - WinOptions::options (line 179)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 10 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.34s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "20e0892cee60612f99ed3543b7cface3197736ec43b884c88f9b22151ba1faf5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "20e0892cee60612f99ed3543b7cface3197736ec43b884c88f9b22151ba1faf5", kill_on_drop: false }`
[INFO] [stdout] 20e0892cee60612f99ed3543b7cface3197736ec43b884c88f9b22151ba1faf5
