[INFO] fetching crate l19_terminal_tictactoe 0.1.2...
[INFO] testing l19_terminal_tictactoe-0.1.2 against beta-2025-09-21 for beta-1.91-3
[INFO] extracting crate l19_terminal_tictactoe 0.1.2 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate l19_terminal_tictactoe 0.1.2
[INFO] finished tweaking crates.io crate l19_terminal_tictactoe 0.1.2
[INFO] tweaked toml for crates.io crate l19_terminal_tictactoe 0.1.2 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate l19_terminal_tictactoe 0.1.2 on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate l19_terminal_tictactoe 0.1.2 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" "+beta-2025-09-21" "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-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c5020bd234a2f00a17db26e2ef045e546358d27a5d4b903cf035b072f27d3373
[INFO] running `Command { std: "docker" "start" "-a" "c5020bd234a2f00a17db26e2ef045e546358d27a5d4b903cf035b072f27d3373", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c5020bd234a2f00a17db26e2ef045e546358d27a5d4b903cf035b072f27d3373", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5020bd234a2f00a17db26e2ef045e546358d27a5d4b903cf035b072f27d3373", kill_on_drop: false }`
[INFO] [stdout] c5020bd234a2f00a17db26e2ef045e546358d27a5d4b903cf035b072f27d3373
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 406be1eb4a5ec8be1fe115ae1ea76f9a28adf61ad0f11e054669f6405838b1bd
[INFO] running `Command { std: "docker" "start" "-a" "406be1eb4a5ec8be1fe115ae1ea76f9a28adf61ad0f11e054669f6405838b1bd", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.121
[INFO] [stderr]    Compiling ppv-lite86 v0.2.16
[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 2.95s
[INFO] running `Command { std: "docker" "inspect" "406be1eb4a5ec8be1fe115ae1ea76f9a28adf61ad0f11e054669f6405838b1bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "406be1eb4a5ec8be1fe115ae1ea76f9a28adf61ad0f11e054669f6405838b1bd", kill_on_drop: false }`
[INFO] [stdout] 406be1eb4a5ec8be1fe115ae1ea76f9a28adf61ad0f11e054669f6405838b1bd
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e239d665198c0fdaa15a7d2511fabf8885db8d8c3c141d57deafabec3b50cb53
[INFO] running `Command { std: "docker" "start" "-a" "e239d665198c0fdaa15a7d2511fabf8885db8d8c3c141d57deafabec3b50cb53", 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.64s
[INFO] running `Command { std: "docker" "inspect" "e239d665198c0fdaa15a7d2511fabf8885db8d8c3c141d57deafabec3b50cb53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e239d665198c0fdaa15a7d2511fabf8885db8d8c3c141d57deafabec3b50cb53", kill_on_drop: false }`
[INFO] [stdout] e239d665198c0fdaa15a7d2511fabf8885db8d8c3c141d57deafabec3b50cb53
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4ed509480907687bdb0db9a9f8252b98f6a2010cc46c378a43dd5e93f042a0a4
[INFO] running `Command { std: "docker" "start" "-a" "4ed509480907687bdb0db9a9f8252b98f6a2010cc46c378a43dd5e93f042a0a4", 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-aa52d594e4401c43)
[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-583eac6a0335f44a)
[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-d233a947ca909200)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test check_some_non_win ... ok
[INFO] [stdout] test check_all_wins ... ok
[INFO] [stdout] test check_legal_placement ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stderr]    Doc-tests l19_terminal_tictactoe
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test src/lib.rs - TableState::duplicate_with_new (line 233) ... FAILED
[INFO] [stdout] test src/lib.rs - WinOptions::options (line 179) ... FAILED
[INFO] [stdout] test src/lib.rs - TableState::is_win (line 270) ... FAILED
[INFO] [stdout] test src/lib.rs - Piece::select_with_int (line 74) ... FAILED
[INFO] [stdout] test src/lib.rs - Piece::opposite (line 52) ... FAILED
[INFO] [stdout] test src/lib.rs - GameMaster<'a>::add_move (line 414) ... FAILED
[INFO] [stdout] test src/lib.rs - GameMaster<'a>::next_mover_w_prompt (line 341) ... FAILED
[INFO] [stdout] test src/lib.rs - GameMaster<'a>::print_table (line 486) ... FAILED
[INFO] [stdout] test src/lib.rs - Piece::fmt (line 119) ... 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 - TableState::duplicate_with_new (line 233) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:238:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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] 2 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TableState`
[INFO] [stdout]  --> src/lib.rs:237:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | let game_progression = Vec::from(TableState::new());
[INFO] [stdout]   |                                  ^^^^^^^^^^ use of undeclared type `TableState`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PlaySelector`
[INFO] [stdout]  --> src/lib.rs:238:16
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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 - WinOptions::options (line 179) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WinOptions`
[INFO] [stdout]  --> src/lib.rs:183:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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::is_win (line 270) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:275:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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] 2 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TableState`
[INFO] [stdout]  --> src/lib.rs:274:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | let game_progression = Vec::from(TableState::new());
[INFO] [stdout]   |                                  ^^^^^^^^^^ use of undeclared type `TableState`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PlaySelector`
[INFO] [stdout]  --> src/lib.rs:275:16
[INFO] [stdout]   |
[INFO] [stdout] 8 | let new_move = PlaySelector::new(Piece::User, 3);
[INFO] [stdout]   |                ^^^^^^^^^^^^ use of undeclared type `PlaySelector`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TableState`
[INFO] [stdout]  --> src/lib.rs:276:23
[INFO] [stdout]   |
[INFO] [stdout] 9 | 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 - Piece::select_with_int (line 74) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Piece` in this scope
[INFO] [stdout]  --> src/lib.rs:78:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + 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] 7 | 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] Some errors have detailed explanations: E0412, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Piece::opposite (line 52) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Piece` in this scope
[INFO] [stdout]  --> src/lib.rs:56:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:56:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + 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: E0412, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - GameMaster<'a>::add_move (line 414) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `key_bindings`
[INFO] [stdout]  --> src/lib.rs:418:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + mod key_bindings;
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]   |
[INFO] [stdout] 2 + use l19_terminal_tictactoe::key_bindings;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `GameMaster`
[INFO] [stdout]  --> src/lib.rs:419:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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] 2 + use l19_terminal_tictactoe::GameMaster;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:420:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | 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] 2 + 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 - GameMaster<'a>::next_mover_w_prompt (line 341) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `key_bindings`
[INFO] [stdout]  --> src/lib.rs:345:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + mod key_bindings;
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]   |
[INFO] [stdout] 2 + use l19_terminal_tictactoe::key_bindings;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `GameMaster`
[INFO] [stdout]  --> src/lib.rs:346:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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] 2 + use l19_terminal_tictactoe::GameMaster;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:347:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | 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] 2 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]   --> src/lib.rs:348:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | 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]  2 + 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>::print_table (line 486) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `key_bindings`
[INFO] [stdout]  --> src/lib.rs:490:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + mod key_bindings;
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]   |
[INFO] [stdout] 2 + use l19_terminal_tictactoe::key_bindings;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `GameMaster`
[INFO] [stdout]  --> src/lib.rs:491:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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] 2 + use l19_terminal_tictactoe::GameMaster;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:492:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | 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] 2 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]   --> src/lib.rs:493:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | 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]  2 + 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::fmt (line 119) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Piece` in this scope
[INFO] [stdout]  --> src/lib.rs:123:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + use l19_terminal_tictactoe::Piece;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:123:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | 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] 2 + 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: E0412, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - Piece::as_str (line 32) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Piece`
[INFO] [stdout]  --> src/lib.rs:33:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | 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] 2 + 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.27s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "4ed509480907687bdb0db9a9f8252b98f6a2010cc46c378a43dd5e93f042a0a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ed509480907687bdb0db9a9f8252b98f6a2010cc46c378a43dd5e93f042a0a4", kill_on_drop: false }`
[INFO] [stdout] 4ed509480907687bdb0db9a9f8252b98f6a2010cc46c378a43dd5e93f042a0a4
