[INFO] fetching crate gameboard 0.1.0...
[INFO] testing gameboard-0.1.0 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate gameboard 0.1.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate gameboard 0.1.0 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate gameboard 0.1.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate gameboard 0.1.0
[INFO] tweaked toml for crates.io crate gameboard 0.1.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 26 packages to latest compatible versions
[INFO] [stderr]       Adding autocfg v0.1.8 (latest: v1.3.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding cloudabi v0.0.3 (latest: v0.1.0)
[INFO] [stderr]       Adding numtoa v0.1.0 (latest: v0.2.4)
[INFO] [stderr]       Adding rand v0.6.5 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_chacha v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_hc v0.1.0 (latest: v0.3.2)
[INFO] [stderr]       Adding rand_isaac v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rand_jitter v0.1.4 (latest: v0.4.0)
[INFO] [stderr]       Adding rand_os v0.1.3 (latest: v0.2.2)
[INFO] [stderr]       Adding rand_pcg v0.1.2 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_xorshift v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding redox_syscall v0.2.16 (latest: v0.5.1)
[INFO] [stderr]       Adding termion v1.5.6 (latest: v4.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9e4d054a935a9ace5ef941fb55df84d6fe4fdb2f95233aa0b8da25a49277da8d
[INFO] running `Command { std: "docker" "start" "-a" "9e4d054a935a9ace5ef941fb55df84d6fe4fdb2f95233aa0b8da25a49277da8d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9e4d054a935a9ace5ef941fb55df84d6fe4fdb2f95233aa0b8da25a49277da8d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9e4d054a935a9ace5ef941fb55df84d6fe4fdb2f95233aa0b8da25a49277da8d", kill_on_drop: false }`
[INFO] [stdout] 9e4d054a935a9ace5ef941fb55df84d6fe4fdb2f95233aa0b8da25a49277da8d
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ed810d69bd5b45c4585cbd9e820297121859a364e47e860b0620c3b54f72f44
[INFO] running `Command { std: "docker" "start" "-a" "8ed810d69bd5b45c4585cbd9e820297121859a364e47e860b0620c3b54f72f44", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling numtoa v0.1.0
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling termion v1.5.6
[INFO] [stderr]    Compiling gameboard v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.45s
[INFO] running `Command { std: "docker" "inspect" "8ed810d69bd5b45c4585cbd9e820297121859a364e47e860b0620c3b54f72f44", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ed810d69bd5b45c4585cbd9e820297121859a364e47e860b0620c3b54f72f44", kill_on_drop: false }`
[INFO] [stdout] 8ed810d69bd5b45c4585cbd9e820297121859a364e47e860b0620c3b54f72f44
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f8eb0cdc557833e2e2ba76d3f56a06f9a815f39fce61b551cdb0554bb0820c9b
[INFO] running `Command { std: "docker" "start" "-a" "f8eb0cdc557833e2e2ba76d3f56a06f9a815f39fce61b551cdb0554bb0820c9b", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling gameboard v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.19s
[INFO] running `Command { std: "docker" "inspect" "f8eb0cdc557833e2e2ba76d3f56a06f9a815f39fce61b551cdb0554bb0820c9b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f8eb0cdc557833e2e2ba76d3f56a06f9a815f39fce61b551cdb0554bb0820c9b", kill_on_drop: false }`
[INFO] [stdout] f8eb0cdc557833e2e2ba76d3f56a06f9a815f39fce61b551cdb0554bb0820c9b
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f0e2b4213ac5ae7717e7fa7b02a19c9a8167ae05ad962f5086b21a94fc701920
[INFO] running `Command { std: "docker" "start" "-a" "f0e2b4213ac5ae7717e7fa7b02a19c9a8167ae05ad962f5086b21a94fc701920", kill_on_drop: false }`
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/cell.rs:101:28
[INFO] [stderr]     |
[INFO] [stderr] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/cell.rs:119:28
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/cell.rs:142:28
[INFO] [stderr]     |
[INFO] [stderr] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            +++++
[INFO] [stderr] 
[INFO] [stderr] warning: `gameboard` (lib) generated 3 warnings (run `cargo fix --lib -p gameboard` to apply 3 suggestions)
[INFO] [stderr] warning: `gameboard` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gameboard-a4594de48145ef98)
[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]    Doc-tests gameboard
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test src/board.rs - board::Board::init_from_str (line 158) - compile ... FAILED
[INFO] [stdout] test src/board.rs - board::Board::init_from_vec (line 120) - compile ... FAILED
[INFO] [stdout] test src/board.rs - board::Board::init_from_str (line 153) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,W,L>::show_message (line 434) - compile ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::Cursor::new (line 58) ... FAILED
[INFO] [stdout] test src/info.rs - info::Info::new (line 63) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,AlternateScreen<RawTerminal<W>>,L>::new (line 97) - compile ... ok
[INFO] [stdout] test src/cursor.rs - cursor::Cursor::new (line 72) - compile ... FAILED
[INFO] [stdout] test src/board.rs - board::Board::new (line 70) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,W,L>::update_cells (line 375) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,W,L>::update_info (line 391) - compile ... FAILED
[INFO] [stdout] test src/cell.rs - cell::Cell::Content (line 40) - compile ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/board.rs - board::Board::init_from_str (line 158) stdout ----
[INFO] [stdout] error: mismatched closing delimiter: `)`
[INFO] [stdout]  --> src/board.rs:158:76
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_board_rs_158_0() {
[INFO] [stdout]   |                                                                            ^ unclosed delimiter
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    ^ mismatched closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]  --> src/board.rs:165:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    - missing open `(` for this delimiter
[INFO] [stdout] ...
[INFO] [stdout] 9 | } _doctest_main_src_board_rs_158_0() }
[INFO] [stdout]   |                                      ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/board.rs - board::Board::init_from_vec (line 120) stdout ----
[INFO] [stdout] error: mismatched closing delimiter: `)`
[INFO] [stdout]  --> src/board.rs:120:76
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_board_rs_120_0() {
[INFO] [stdout]   |                                                                            ^ unclosed delimiter
[INFO] [stdout] 3 | let mut board = Board::new(2, 2, 1, 1, false, None));
[INFO] [stdout]   |                                                    ^ mismatched closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]  --> src/board.rs:124:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut board = Board::new(2, 2, 1, 1, false, None));
[INFO] [stdout]   |                                                    - missing open `(` for this delimiter
[INFO] [stdout] ...
[INFO] [stdout] 6 | } _doctest_main_src_board_rs_120_0() }
[INFO] [stdout]   |                                      ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/board.rs - board::Board::init_from_str (line 153) stdout ----
[INFO] [stdout] error: mismatched closing delimiter: `)`
[INFO] [stdout]  --> src/board.rs:153:76
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_board_rs_153_0() {
[INFO] [stdout]   |                                                                            ^ unclosed delimiter
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    ^ mismatched closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]  --> src/board.rs:156:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    - missing open `(` for this delimiter
[INFO] [stdout] 4 | board.init_from_str(&"x    o    x    o", None);
[INFO] [stdout] 5 | } _doctest_main_src_board_rs_153_0() }
[INFO] [stdout]   |                                      ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/game.rs - game::Game<R,W,L>::show_message (line 434) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `game` in this scope
[INFO] [stdout]  --> src/game.rs:435:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | game.show_message(&[
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/cursor.rs - cursor::Cursor::new (line 58) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Key` in this scope
[INFO] [stdout]  --> src/cursor.rs:59:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn get_direction_default(key: Key) -> Option<Direction> {
[INFO] [stdout]   |                               ^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Direction` in this scope
[INFO] [stdout]  --> src/cursor.rs:59:46
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn get_direction_default(key: Key) -> Option<Direction> {
[INFO] [stdout]   |                                              ^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:61:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Key::Char('a') | Key::Left => Some(Direction::Left),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:61:26
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Key::Char('a') | Key::Left => Some(Direction::Left),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:61:44
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Key::Char('a') | Key::Left => Some(Direction::Left),
[INFO] [stdout]   |                                            ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:62:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Key::Char('s') | Key::Down => Some(Direction::Down),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:62:26
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Key::Char('s') | Key::Down => Some(Direction::Down),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:62:44
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Key::Char('s') | Key::Down => Some(Direction::Down),
[INFO] [stdout]   |                                            ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:63:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Key::Char('w') | Key::Up => Some(Direction::Up),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:63:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Key::Char('w') | Key::Up => Some(Direction::Up),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:63:42
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Key::Char('w') | Key::Up => Some(Direction::Up),
[INFO] [stdout]   |                                          ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:64:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         Key::Char('d') | Key::Right => Some(Direction::Right),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:64:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |         Key::Char('d') | Key::Right => Some(Direction::Right),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:64:45
[INFO] [stdout]   |
[INFO] [stdout] 8 |         Key::Char('d') | Key::Right => Some(Direction::Right),
[INFO] [stdout]   |                                             ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 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/info.rs - info::Info::new (line 63) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Board`
[INFO] [stdout]  --> src/info.rs:64:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | let board = Board::new(5, 5, 10, 5, true, None);
[INFO] [stdout]   |             ^^^^^ use of undeclared type `Board`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Board;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Info`
[INFO] [stdout]  --> src/info.rs:65:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | let info = Info::new(15, InfoLayout::Top, &[
[INFO] [stdout]   |            ^^^^ use of undeclared type `Info`
[INFO] [stdout]   |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]   |
[INFO] [stdout] 4 | let info = Into::new(15, InfoLayout::Top, &[
[INFO] [stdout]   |            ~~~~
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Info;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `InfoLayout`
[INFO] [stdout]  --> src/info.rs:65:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | let info = Info::new(15, InfoLayout::Top, &[
[INFO] [stdout]   |                          ^^^^^^^^^^ use of undeclared type `InfoLayout`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::InfoLayout;
[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/cursor.rs - cursor::Cursor::new (line 72) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Position` in this scope
[INFO] [stdout]  --> src/cursor.rs:75:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | const START_POSITION: Position = Position(1, 1);
[INFO] [stdout]   |                       ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]  --> src/cursor.rs:75:34
[INFO] [stdout]   |
[INFO] [stdout] 5 | const START_POSITION: Position = Position(1, 1);
[INFO] [stdout]   |                                  ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cursor`
[INFO] [stdout]  --> src/cursor.rs:76:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | let cursor = Cursor::new(color::Rgb(0, 0, 200), START_POSITION, true, None);
[INFO] [stdout]   |              ^^^^^^ use of undeclared type `Cursor`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::collections::btree_map::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::collections::linked_list::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::io::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/board.rs - board::Board::new (line 70) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `ResourceTable` in this scope
[INFO] [stdout]  --> src/board.rs:71:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn create_resources() -> ResourceTable {
[INFO] [stdout]   |                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ResourceTable`
[INFO] [stdout]  --> src/board.rs:72:19
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut res = ResourceTable::new();
[INFO] [stdout]   |                   ^^^^^^^^^^^^^ use of undeclared type `ResourceTable`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Board`
[INFO] [stdout]  --> src/board.rs:77:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut board = Board::new(3, 3, 10, 5, true, Some(create_resources()));
[INFO] [stdout]   |                 ^^^^^ use of undeclared type `Board`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Board;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 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/game.rs - game::Game<R,W,L>::update_cells (line 375) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `CellUpdates`
[INFO] [stdout]  --> src/game.rs:376:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut updates = CellUpdates::with_capacity(2);
[INFO] [stdout]   |                   ^^^^^^^^^^^ use of undeclared type `CellUpdates`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::CellUpdates;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]  --> src/game.rs:377:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | updates.push((Cell::Empty, Position(0, 1)));
[INFO] [stdout]   |               ^^^^ use of undeclared type `Cell`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 + use core::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]  --> src/game.rs:377:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | updates.push((Cell::Empty, Position(0, 1)));
[INFO] [stdout]   |                            ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]  --> src/game.rs:378:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | updates.push((Cell::Char('x'), Position(0, 2)));
[INFO] [stdout]   |               ^^^^ use of undeclared type `Cell`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 + use core::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]  --> src/game.rs:378:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | updates.push((Cell::Char('x'), Position(0, 2)));
[INFO] [stdout]   |                                ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `game` in this scope
[INFO] [stdout]  --> src/game.rs:379:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | game.update_cells(updates);
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 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/game.rs - game::Game<R,W,L>::update_info (line 391) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `game` in this scope
[INFO] [stdout]  --> src/game.rs:392:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | game.update_info(&[
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/cell.rs - cell::Cell::Content (line 40) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `ResourceTable` in this scope
[INFO] [stdout]  --> src/cell.rs:43:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn create_resources() -> ResourceTable {
[INFO] [stdout]   |                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ResourceTable`
[INFO] [stdout]  --> src/cell.rs:44:19
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut res = ResourceTable::new();
[INFO] [stdout]   |                   ^^^^^^^^^^^^^ use of undeclared type `ResourceTable`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cursor`
[INFO] [stdout]   --> src/cell.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | let cursor = Cursor::new(color::Rgb(0, 0, 200), Position(0, 0), true, None);
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Cursor`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::collections::btree_map::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::collections::linked_list::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::io::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]   --> src/cell.rs:50:49
[INFO] [stdout]    |
[INFO] [stdout] 12 | let cursor = Cursor::new(color::Rgb(0, 0, 200), Position(0, 0), true, None);
[INFO] [stdout]    |                                                 ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Position;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Board`
[INFO] [stdout]   --> src/cell.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | let mut board = Board::new(3, 3, 6, 3, true, Some(create_resources()));
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `Board`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Board;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         Cell::Empty,
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |         Cell::ResourceId(0),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         Cell::ResourceId(1),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         Cell::Char('z'),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Cell::Char('▒'),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/board.rs - board::Board::init_from_str (line 153)
[INFO] [stdout]     src/board.rs - board::Board::init_from_str (line 158)
[INFO] [stdout]     src/board.rs - board::Board::init_from_vec (line 120)
[INFO] [stdout]     src/board.rs - board::Board::new (line 70)
[INFO] [stdout]     src/cell.rs - cell::Cell::Content (line 40)
[INFO] [stdout]     src/cursor.rs - cursor::Cursor::new (line 58)
[INFO] [stdout]     src/cursor.rs - cursor::Cursor::new (line 72)
[INFO] [stdout]     src/game.rs - game::Game<R,W,L>::show_message (line 434)
[INFO] [stdout]     src/game.rs - game::Game<R,W,L>::update_cells (line 375)
[INFO] [stdout]     src/game.rs - game::Game<R,W,L>::update_info (line 391)
[INFO] [stdout]     src/info.rs - info::Info::new (line 63)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1 passed; 11 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.29s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "f0e2b4213ac5ae7717e7fa7b02a19c9a8167ae05ad962f5086b21a94fc701920", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0e2b4213ac5ae7717e7fa7b02a19c9a8167ae05ad962f5086b21a94fc701920", kill_on_drop: false }`
[INFO] [stdout] f0e2b4213ac5ae7717e7fa7b02a19c9a8167ae05ad962f5086b21a94fc701920
[INFO] testing gameboard-0.1.0 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate gameboard 0.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate gameboard 0.1.0 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate gameboard 0.1.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate gameboard 0.1.0
[INFO] tweaked toml for crates.io crate gameboard 0.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 26 packages to latest compatible versions
[INFO] [stderr]       Adding autocfg v0.1.8 (latest: v1.3.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding cloudabi v0.0.3 (latest: v0.1.0)
[INFO] [stderr]       Adding numtoa v0.1.0 (latest: v0.2.4)
[INFO] [stderr]       Adding rand v0.6.5 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_chacha v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_hc v0.1.0 (latest: v0.3.2)
[INFO] [stderr]       Adding rand_isaac v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rand_jitter v0.1.4 (latest: v0.4.0)
[INFO] [stderr]       Adding rand_os v0.1.3 (latest: v0.2.2)
[INFO] [stderr]       Adding rand_pcg v0.1.2 (latest: v0.3.1)
[INFO] [stderr]       Adding rand_xorshift v0.1.1 (latest: v0.3.0)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding redox_syscall v0.2.16 (latest: v0.5.1)
[INFO] [stderr]       Adding termion v1.5.6 (latest: v4.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 501c84d6f04e3d93181bdedd9f75033275151793fea2a4dd0a43c5da2cfc7e60
[INFO] running `Command { std: "docker" "start" "-a" "501c84d6f04e3d93181bdedd9f75033275151793fea2a4dd0a43c5da2cfc7e60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "501c84d6f04e3d93181bdedd9f75033275151793fea2a4dd0a43c5da2cfc7e60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "501c84d6f04e3d93181bdedd9f75033275151793fea2a4dd0a43c5da2cfc7e60", kill_on_drop: false }`
[INFO] [stdout] 501c84d6f04e3d93181bdedd9f75033275151793fea2a4dd0a43c5da2cfc7e60
[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" "-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9ac8b51dc8d9ed1cbf1dae8eb3eec73709e77ab9f85adf5a22852bf970be96de
[INFO] running `Command { std: "docker" "start" "-a" "9ac8b51dc8d9ed1cbf1dae8eb3eec73709e77ab9f85adf5a22852bf970be96de", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling numtoa v0.1.0
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling termion v1.5.6
[INFO] [stderr]    Compiling gameboard v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.43s
[INFO] running `Command { std: "docker" "inspect" "9ac8b51dc8d9ed1cbf1dae8eb3eec73709e77ab9f85adf5a22852bf970be96de", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9ac8b51dc8d9ed1cbf1dae8eb3eec73709e77ab9f85adf5a22852bf970be96de", kill_on_drop: false }`
[INFO] [stdout] 9ac8b51dc8d9ed1cbf1dae8eb3eec73709e77ab9f85adf5a22852bf970be96de
[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" "-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 68b0a7f18e7995d6c98d5969c7a95e9635e78346e7dc20ae551740ce26be68d4
[INFO] running `Command { std: "docker" "start" "-a" "68b0a7f18e7995d6c98d5969c7a95e9635e78346e7dc20ae551740ce26be68d4", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling gameboard v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/cell.rs:142:28
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.92s
[INFO] running `Command { std: "docker" "inspect" "68b0a7f18e7995d6c98d5969c7a95e9635e78346e7dc20ae551740ce26be68d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "68b0a7f18e7995d6c98d5969c7a95e9635e78346e7dc20ae551740ce26be68d4", kill_on_drop: false }`
[INFO] [stdout] 68b0a7f18e7995d6c98d5969c7a95e9635e78346e7dc20ae551740ce26be68d4
[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" "-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] da3526e2ec9a1c19a94792b3b3f24e8fca02181914c0d6f97bed0909f26b1526
[INFO] running `Command { std: "docker" "start" "-a" "da3526e2ec9a1c19a94792b3b3f24e8fca02181914c0d6f97bed0909f26b1526", kill_on_drop: false }`
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/cell.rs:101:28
[INFO] [stderr]     |
[INFO] [stderr] 101 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 101 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/cell.rs:119:28
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 119 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            +++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/cell.rs:142:28
[INFO] [stderr]     |
[INFO] [stderr] 142 |                     panic!(RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 142 |                     panic!("{}", RESOURCE_TABLE_ERR_MSG);
[INFO] [stderr]     |                            +++++
[INFO] [stderr] 
[INFO] [stderr] warning: `gameboard` (lib) generated 3 warnings (run `cargo fix --lib -p gameboard` to apply 3 suggestions)
[INFO] [stderr] warning: `gameboard` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gameboard-a4594de48145ef98)
[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]    Doc-tests gameboard
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test src/board.rs - board::Board::init_from_str (line 153) - compile ... FAILED
[INFO] [stdout] test src/board.rs - board::Board::init_from_str (line 158) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,W,L>::update_info (line 391) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,W,L>::show_message (line 434) - compile ... FAILED
[INFO] [stdout] test src/board.rs - board::Board::new (line 70) - compile ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::Cursor::new (line 58) ... FAILED
[INFO] [stdout] test src/cursor.rs - cursor::Cursor::new (line 72) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,AlternateScreen<RawTerminal<W>>,L>::new (line 97) - compile ... ok
[INFO] [stdout] test src/cell.rs - cell::Cell::Content (line 40) - compile ... FAILED
[INFO] [stdout] test src/info.rs - info::Info::new (line 63) - compile ... FAILED
[INFO] [stdout] test src/board.rs - board::Board::init_from_vec (line 120) - compile ... FAILED
[INFO] [stdout] test src/game.rs - game::Game<R,W,L>::update_cells (line 375) - compile ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/board.rs - board::Board::init_from_str (line 153) stdout ----
[INFO] [stdout] error: mismatched closing delimiter: `)`
[INFO] [stdout]  --> src/board.rs:153:76
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_board_rs_153_0() {
[INFO] [stdout]   |                                                                            ^ unclosed delimiter
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    ^ mismatched closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]  --> src/board.rs:156:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    - missing open `(` for this delimiter
[INFO] [stdout] 4 | board.init_from_str(&"x    o    x    o", None);
[INFO] [stdout] 5 | } _doctest_main_src_board_rs_153_0() }
[INFO] [stdout]   |                                      ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/board.rs - board::Board::init_from_str (line 158) stdout ----
[INFO] [stdout] error: mismatched closing delimiter: `)`
[INFO] [stdout]  --> src/board.rs:158:76
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_board_rs_158_0() {
[INFO] [stdout]   |                                                                            ^ unclosed delimiter
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    ^ mismatched closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]  --> src/board.rs:165:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut board = Board::new(4, 4, 1, 1, false, None));
[INFO] [stdout]   |                                                    - missing open `(` for this delimiter
[INFO] [stdout] ...
[INFO] [stdout] 9 | } _doctest_main_src_board_rs_158_0() }
[INFO] [stdout]   |                                      ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/game.rs - game::Game<R,W,L>::update_info (line 391) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `game` in this scope
[INFO] [stdout]  --> src/game.rs:392:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | game.update_info(&[
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/game.rs - game::Game<R,W,L>::show_message (line 434) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `game` in this scope
[INFO] [stdout]  --> src/game.rs:435:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | game.show_message(&[
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/board.rs - board::Board::new (line 70) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `ResourceTable` in this scope
[INFO] [stdout]  --> src/board.rs:71:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn create_resources() -> ResourceTable {
[INFO] [stdout]   |                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ResourceTable`
[INFO] [stdout]  --> src/board.rs:72:19
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut res = ResourceTable::new();
[INFO] [stdout]   |                   ^^^^^^^^^^^^^ use of undeclared type `ResourceTable`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Board`
[INFO] [stdout]  --> src/board.rs:77:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut board = Board::new(3, 3, 10, 5, true, Some(create_resources()));
[INFO] [stdout]   |                 ^^^^^ use of undeclared type `Board`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Board;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 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/cursor.rs - cursor::Cursor::new (line 58) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Key` in this scope
[INFO] [stdout]  --> src/cursor.rs:59:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn get_direction_default(key: Key) -> Option<Direction> {
[INFO] [stdout]   |                               ^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Direction` in this scope
[INFO] [stdout]  --> src/cursor.rs:59:46
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn get_direction_default(key: Key) -> Option<Direction> {
[INFO] [stdout]   |                                              ^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:61:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Key::Char('a') | Key::Left => Some(Direction::Left),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:61:26
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Key::Char('a') | Key::Left => Some(Direction::Left),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:61:44
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Key::Char('a') | Key::Left => Some(Direction::Left),
[INFO] [stdout]   |                                            ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:62:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Key::Char('s') | Key::Down => Some(Direction::Down),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:62:26
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Key::Char('s') | Key::Down => Some(Direction::Down),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:62:44
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Key::Char('s') | Key::Down => Some(Direction::Down),
[INFO] [stdout]   |                                            ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:63:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Key::Char('w') | Key::Up => Some(Direction::Up),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:63:26
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Key::Char('w') | Key::Up => Some(Direction::Up),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:63:42
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Key::Char('w') | Key::Up => Some(Direction::Up),
[INFO] [stdout]   |                                          ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:64:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         Key::Char('d') | Key::Right => Some(Direction::Right),
[INFO] [stdout]   |         ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]  --> src/cursor.rs:64:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |         Key::Char('d') | Key::Right => Some(Direction::Right),
[INFO] [stdout]   |                          ^^^ use of undeclared type `Key`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use termion::event::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]  --> src/cursor.rs:64:45
[INFO] [stdout]   |
[INFO] [stdout] 8 |         Key::Char('d') | Key::Right => Some(Direction::Right),
[INFO] [stdout]   |                                             ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::cursor::Direction;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 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/cursor.rs - cursor::Cursor::new (line 72) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `Position` in this scope
[INFO] [stdout]  --> src/cursor.rs:75:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | const START_POSITION: Position = Position(1, 1);
[INFO] [stdout]   |                       ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]  --> src/cursor.rs:75:34
[INFO] [stdout]   |
[INFO] [stdout] 5 | const START_POSITION: Position = Position(1, 1);
[INFO] [stdout]   |                                  ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cursor`
[INFO] [stdout]  --> src/cursor.rs:76:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | let cursor = Cursor::new(color::Rgb(0, 0, 200), START_POSITION, true, None);
[INFO] [stdout]   |              ^^^^^^ use of undeclared type `Cursor`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::collections::btree_map::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::collections::linked_list::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::io::Cursor;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/cell.rs - cell::Cell::Content (line 40) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `ResourceTable` in this scope
[INFO] [stdout]  --> src/cell.rs:43:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn create_resources() -> ResourceTable {
[INFO] [stdout]   |                          ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ResourceTable`
[INFO] [stdout]  --> src/cell.rs:44:19
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut res = ResourceTable::new();
[INFO] [stdout]   |                   ^^^^^^^^^^^^^ use of undeclared type `ResourceTable`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::ResourceTable;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cursor`
[INFO] [stdout]   --> src/cell.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | let cursor = Cursor::new(color::Rgb(0, 0, 200), Position(0, 0), true, None);
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Cursor`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::collections::btree_map::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::collections::linked_list::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::io::Cursor;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]   --> src/cell.rs:50:49
[INFO] [stdout]    |
[INFO] [stdout] 12 | let cursor = Cursor::new(color::Rgb(0, 0, 200), Position(0, 0), true, None);
[INFO] [stdout]    |                                                 ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Position;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Board`
[INFO] [stdout]   --> src/cell.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | let mut board = Board::new(3, 3, 6, 3, true, Some(create_resources()));
[INFO] [stdout]    |                 ^^^^^ use of undeclared type `Board`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Board;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         Cell::Empty,
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |         Cell::ResourceId(0),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         Cell::ResourceId(1),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         Cell::Char('z'),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Cell::Char('▒'),
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]   --> src/cell.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         Cell::Content(
[INFO] [stdout]    |         ^^^^ use of undeclared type `Cell`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 2  + use core::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use gameboard::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 2  + use std::cell::Cell;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/info.rs - info::Info::new (line 63) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Board`
[INFO] [stdout]  --> src/info.rs:64:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | let board = Board::new(5, 5, 10, 5, true, None);
[INFO] [stdout]   |             ^^^^^ use of undeclared type `Board`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Board;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Info`
[INFO] [stdout]  --> src/info.rs:65:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | let info = Info::new(15, InfoLayout::Top, &[
[INFO] [stdout]   |            ^^^^ use of undeclared type `Info`
[INFO] [stdout]   |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]   |
[INFO] [stdout] 4 | let info = Into::new(15, InfoLayout::Top, &[
[INFO] [stdout]   |            ~~~~
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Info;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `InfoLayout`
[INFO] [stdout]  --> src/info.rs:65:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | let info = Info::new(15, InfoLayout::Top, &[
[INFO] [stdout]   |                          ^^^^^^^^^^ use of undeclared type `InfoLayout`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::InfoLayout;
[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/board.rs - board::Board::init_from_vec (line 120) stdout ----
[INFO] [stdout] error: mismatched closing delimiter: `)`
[INFO] [stdout]  --> src/board.rs:120:76
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_board_rs_120_0() {
[INFO] [stdout]   |                                                                            ^ unclosed delimiter
[INFO] [stdout] 3 | let mut board = Board::new(2, 2, 1, 1, false, None));
[INFO] [stdout]   |                                                    ^ mismatched closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]  --> src/board.rs:124:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut board = Board::new(2, 2, 1, 1, false, None));
[INFO] [stdout]   |                                                    - missing open `(` for this delimiter
[INFO] [stdout] ...
[INFO] [stdout] 6 | } _doctest_main_src_board_rs_120_0() }
[INFO] [stdout]   |                                      ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/game.rs - game::Game<R,W,L>::update_cells (line 375) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `CellUpdates`
[INFO] [stdout]  --> src/game.rs:376:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut updates = CellUpdates::with_capacity(2);
[INFO] [stdout]   |                   ^^^^^^^^^^^ use of undeclared type `CellUpdates`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this type alias
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::CellUpdates;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]  --> src/game.rs:377:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | updates.push((Cell::Empty, Position(0, 1)));
[INFO] [stdout]   |               ^^^^ use of undeclared type `Cell`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 + use core::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]  --> src/game.rs:377:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | updates.push((Cell::Empty, Position(0, 1)));
[INFO] [stdout]   |                            ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell`
[INFO] [stdout]  --> src/game.rs:378:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | updates.push((Cell::Char('x'), Position(0, 2)));
[INFO] [stdout]   |               ^^^^ use of undeclared type `Cell`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]   |
[INFO] [stdout] 2 + use core::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 2 + use std::cell::Cell;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Position` in this scope
[INFO] [stdout]  --> src/game.rs:378:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | updates.push((Cell::Char('x'), Position(0, 2)));
[INFO] [stdout]   |                                ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use gameboard::Position;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `game` in this scope
[INFO] [stdout]  --> src/game.rs:379:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | game.update_cells(updates);
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 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] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/board.rs - board::Board::init_from_str (line 153)
[INFO] [stdout]     src/board.rs - board::Board::init_from_str (line 158)
[INFO] [stdout]     src/board.rs - board::Board::init_from_vec (line 120)
[INFO] [stdout]     src/board.rs - board::Board::new (line 70)
[INFO] [stdout]     src/cell.rs - cell::Cell::Content (line 40)
[INFO] [stdout]     src/cursor.rs - cursor::Cursor::new (line 58)
[INFO] [stdout]     src/cursor.rs - cursor::Cursor::new (line 72)
[INFO] [stdout]     src/game.rs - game::Game<R,W,L>::show_message (line 434)
[INFO] [stdout]     src/game.rs - game::Game<R,W,L>::update_cells (line 375)
[INFO] [stdout]     src/game.rs - game::Game<R,W,L>::update_info (line 391)
[INFO] [stdout]     src/info.rs - info::Info::new (line 63)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1 passed; 11 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "da3526e2ec9a1c19a94792b3b3f24e8fca02181914c0d6f97bed0909f26b1526", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "da3526e2ec9a1c19a94792b3b3f24e8fca02181914c0d6f97bed0909f26b1526", kill_on_drop: false }`
[INFO] [stdout] da3526e2ec9a1c19a94792b3b3f24e8fca02181914c0d6f97bed0909f26b1526
