[INFO] updating cached repository Januson/rusty-snake [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Januson/rusty-snake [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Januson/rusty-snake" "work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/Januson/rusty-snake"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/Januson/rusty-snake'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Januson/rusty-snake" "work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Januson/rusty-snake"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Januson/rusty-snake'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] f52d8fee76fb690c54eea0a2eba42d1063b03b35 [INFO] sha for GitHub repo Januson/rusty-snake: f52d8fee76fb690c54eea0a2eba42d1063b03b35 [INFO] validating manifest of Januson/rusty-snake on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of Januson/rusty-snake on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing Januson/rusty-snake [INFO] finished frobbing Januson/rusty-snake [INFO] frobbed toml for Januson/rusty-snake written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/Januson/rusty-snake/Cargo.toml [INFO] started frobbing Januson/rusty-snake [INFO] finished frobbing Januson/rusty-snake [INFO] frobbed toml for Januson/rusty-snake written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Januson/rusty-snake/Cargo.toml [INFO] crate Januson/rusty-snake already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking Januson/rusty-snake against try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-6/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Januson/rusty-snake:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] c0a22e3180411f200685b08006a3bb4bea93f1cd658ee2b9f07e65ebe7e9de53 [INFO] running `"docker" "start" "-a" "c0a22e3180411f200685b08006a3bb4bea93f1cd658ee2b9f07e65ebe7e9de53"` [INFO] [stderr] warning: An explicit [[bin]] section is specified in Cargo.toml which currently [INFO] [stderr] disables Cargo from automatically inferring other binary targets. [INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following [INFO] [stderr] files will be included as a binary target: [INFO] [stderr] [INFO] [stderr] * /opt/crater/workdir/src/main.rs [INFO] [stderr] [INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be [INFO] [stderr] ready to be compiled as a binary target today. You can future-proof yourself [INFO] [stderr] and disable this warning by adding `autobins = false` to your [package] [INFO] [stderr] section. You may also move the files to a location where Cargo would not [INFO] [stderr] automatically infer them to be a target, such as in subfolders. [INFO] [stderr] [INFO] [stderr] For more information on this warning you can consult [INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330 [INFO] [stderr] warning: path `/opt/crater/workdir/src/snake.rs` was erroneously implicitly accepted for binary `snake`, [INFO] [stderr] please set bin.path in Cargo.toml [INFO] [stderr] Compiling serde v0.9.11 [INFO] [stderr] Checking shared_library v0.1.5 [INFO] [stderr] Checking num-rational v0.1.36 [INFO] [stderr] Checking pistoncore-input v0.17.1 [INFO] [stderr] Checking arrayvec v0.3.20 [INFO] [stderr] Compiling gl v0.6.1 [INFO] [stderr] Checking x11-dl v2.12.0 [INFO] [stderr] Checking gfx v0.14.0 [INFO] [stderr] Checking image v0.12.3 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking rusttype v0.2.1 [INFO] [stderr] Checking pistoncore-window v0.26.2 [INFO] [stderr] warning[E0311]: the parameter type `K` may not live long enough [INFO] [stderr] --> /opt/crater/cargo-home/registry/src/github.com-1ecc6299db9ec823/rusttype-0.2.1/src/support/bst/map.rs:81:19 [INFO] [stderr] | [INFO] [stderr] 81 | match node.force() { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding an explicit lifetime bound for `K` [INFO] [stderr] note: the parameter type `K` must be valid for the anonymous lifetime #1 defined on the function body at 77:9... [INFO] [stderr] --> /opt/crater/cargo-home/registry/src/github.com-1ecc6299db9ec823/rusttype-0.2.1/src/support/bst/map.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | / fn clone_subtree( [INFO] [stderr] 78 | | node: node::NodeRef) [INFO] [stderr] 79 | | -> BTreeMap { [INFO] [stderr] 80 | | [INFO] [stderr] ... | [INFO] [stderr] 136| | } [INFO] [stderr] 137| | } [INFO] [stderr] | |_________^ [INFO] [stderr] = warning: this error has been downgraded to a warning for backwards compatibility with previous releases [INFO] [stderr] = warning: this represents potential undefined behavior in your code and this warning will become a hard error in the future [INFO] [stderr] = note: for more information, try `rustc --explain E0729` [INFO] [stderr] [INFO] [stderr] warning[E0311]: the parameter type `V` may not live long enough [INFO] [stderr] --> /opt/crater/cargo-home/registry/src/github.com-1ecc6299db9ec823/rusttype-0.2.1/src/support/bst/map.rs:81:19 [INFO] [stderr] | [INFO] [stderr] 81 | match node.force() { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding an explicit lifetime bound for `V` [INFO] [stderr] note: the parameter type `V` must be valid for the anonymous lifetime #1 defined on the function body at 77:9... [INFO] [stderr] --> /opt/crater/cargo-home/registry/src/github.com-1ecc6299db9ec823/rusttype-0.2.1/src/support/bst/map.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | / fn clone_subtree( [INFO] [stderr] 78 | | node: node::NodeRef) [INFO] [stderr] 79 | | -> BTreeMap { [INFO] [stderr] 80 | | [INFO] [stderr] ... | [INFO] [stderr] 136| | } [INFO] [stderr] 137| | } [INFO] [stderr] | |_________^ [INFO] [stderr] = warning: this error has been downgraded to a warning for backwards compatibility with previous releases [INFO] [stderr] = warning: this represents potential undefined behavior in your code and this warning will become a hard error in the future [INFO] [stderr] = note: for more information, try `rustc --explain E0729` [INFO] [stderr] [INFO] [stderr] Checking pistoncore-event_loop v0.31.4 [INFO] [stderr] Checking piston v0.31.4 [INFO] [stderr] Checking piston-gfx_texture v0.22.1 [INFO] [stderr] Checking piston2d-gfx_graphics v0.38.0 [INFO] [stderr] Compiling serde_json v0.9.9 [INFO] [stderr] Checking piston2d-opengl_graphics v0.42.1 [INFO] [stderr] Compiling target_build_utils v0.3.0 [INFO] [stderr] Compiling libloading v0.3.2 [INFO] [stderr] Checking dlib v0.3.1 [INFO] [stderr] Checking wayland-sys v0.7.8 [INFO] [stderr] Checking wayland-client v0.7.8 [INFO] [stderr] Checking wayland-kbd v0.6.3 [INFO] [stderr] Checking wayland-window v0.4.4 [INFO] [stderr] Checking winit v0.5.11 [INFO] [stderr] Checking glutin v0.7.4 [INFO] [stderr] Checking pistoncore-glutin_window v0.35.1 [INFO] [stderr] Checking piston_window v0.64.0 [INFO] [stderr] Checking rusty-snake v0.1.0 (/opt/crater/workdir) [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use piston::input::Button; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use piston::input::keyboard::Key; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `piston_window` [INFO] [stderr] --> src/snake.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use piston_window::Context; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `piston_window` [INFO] [stderr] --> src/snake.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use piston_window::G2d; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `piston_window` [INFO] [stderr] --> src/snake.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use piston_window::rectangle; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston_window`? [INFO] [stderr] --> src/snake.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | use piston_window::Button::Keyboard; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `settings` [INFO] [stderr] --> src/snake.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use settings::Settings; [INFO] [stderr] | ^^^^^^^^ maybe a missing crate `settings`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use piston::input::Button; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use piston::input::keyboard::Key; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `piston_window` [INFO] [stderr] --> src/snake.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use piston_window::Context; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `piston_window` [INFO] [stderr] --> src/snake.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use piston_window::G2d; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `piston_window` [INFO] [stderr] --> src/snake.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use piston_window::rectangle; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston_window`? [INFO] [stderr] --> src/snake.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | use piston_window::Button::Keyboard; [INFO] [stderr] | ^^^^^^^^^^^^^ maybe a missing crate `piston_window`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: maybe a missing crate `piston`? [INFO] [stderr] --> src/snake.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^ maybe a missing crate `piston`? [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `settings` [INFO] [stderr] --> src/snake.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use settings::Settings; [INFO] [stderr] | ^^^^^^^^ maybe a missing crate `settings`? [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | Key::Down => Key::Up, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:104:26 [INFO] [stderr] | [INFO] [stderr] 104 | Key::Down => Key::Up, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 105 | Key::Up => Key::Down, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:105:24 [INFO] [stderr] | [INFO] [stderr] 105 | Key::Up => Key::Down, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:106:13 [INFO] [stderr] | [INFO] [stderr] 106 | Key::Left => Key::Right, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:106:26 [INFO] [stderr] | [INFO] [stderr] 106 | Key::Left => Key::Right, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:107:13 [INFO] [stderr] | [INFO] [stderr] 107 | Key::Right => Key::Left, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:107:27 [INFO] [stderr] | [INFO] [stderr] 107 | Key::Right => Key::Left, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:18:20 [INFO] [stderr] | [INFO] [stderr] 18 | keys: VecDeque, [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:19:19 [INFO] [stderr] | [INFO] [stderr] 19 | last_pressed: Key, [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:24:45 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn new (tail: VecDeque, key: Key, settings: &'a Settings) -> Snake { [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Button` in this scope [INFO] [stderr] --> src/snake.rs:85:42 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn key_press(&mut self, button: &Button) { [INFO] [stderr] | ^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:90:13 [INFO] [stderr] | [INFO] [stderr] 90 | Keyboard(Right) => Right, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | Keyboard(Left) => Left, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | Keyboard(Up) => Up, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | Keyboard(Down) => Down, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:102:28 [INFO] [stderr] | [INFO] [stderr] 102 | fn opposite_arrow(key: Key) -> Key { [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:102:36 [INFO] [stderr] | [INFO] [stderr] 102 | fn opposite_arrow(key: Key) -> Key { [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::Button` [INFO] [stderr] --> src/snake.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use piston::input::Button; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::keyboard::Key` [INFO] [stderr] --> src/snake.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use piston::input::keyboard::Key; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::keyboard::Key::*` [INFO] [stderr] --> src/snake.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston_window::Button::Keyboard` [INFO] [stderr] --> src/snake.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | use piston_window::Button::Keyboard; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::keyboard::Key::*` [INFO] [stderr] --> src/snake.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 27 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0412, E0432, E0433. [INFO] [stderr] For more information about an error, try `rustc --explain E0412`. [INFO] [stderr] error: Could not compile `rusty-snake`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | Key::Down => Key::Up, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:104:26 [INFO] [stderr] | [INFO] [stderr] 104 | Key::Down => Key::Up, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 105 | Key::Up => Key::Down, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:105:24 [INFO] [stderr] | [INFO] [stderr] 105 | Key::Up => Key::Down, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:106:13 [INFO] [stderr] | [INFO] [stderr] 106 | Key::Left => Key::Right, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:106:26 [INFO] [stderr] | [INFO] [stderr] 106 | Key::Left => Key::Right, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:107:13 [INFO] [stderr] | [INFO] [stderr] 107 | Key::Right => Key::Left, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Key` [INFO] [stderr] --> src/snake.rs:107:27 [INFO] [stderr] | [INFO] [stderr] 107 | Key::Right => Key::Left, [INFO] [stderr] | ^^^ use of undeclared type or module `Key` [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:18:20 [INFO] [stderr] | [INFO] [stderr] 18 | keys: VecDeque, [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:19:19 [INFO] [stderr] | [INFO] [stderr] 19 | last_pressed: Key, [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:24:45 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn new (tail: VecDeque, key: Key, settings: &'a Settings) -> Snake { [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Button` in this scope [INFO] [stderr] --> src/snake.rs:85:42 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn key_press(&mut self, button: &Button) { [INFO] [stderr] | ^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:90:13 [INFO] [stderr] | [INFO] [stderr] 90 | Keyboard(Right) => Right, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | Keyboard(Left) => Left, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | Keyboard(Up) => Up, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0531]: cannot find tuple struct/variant `Keyboard` in this scope [INFO] [stderr] --> src/snake.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | Keyboard(Down) => Down, [INFO] [stderr] | ^^^^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:102:28 [INFO] [stderr] | [INFO] [stderr] 102 | fn opposite_arrow(key: Key) -> Key { [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `Key` in this scope [INFO] [stderr] --> src/snake.rs:102:36 [INFO] [stderr] | [INFO] [stderr] 102 | fn opposite_arrow(key: Key) -> Key { [INFO] [stderr] | ^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::Button` [INFO] [stderr] --> src/snake.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use piston::input::Button; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::keyboard::Key` [INFO] [stderr] --> src/snake.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use piston::input::keyboard::Key; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::keyboard::Key::*` [INFO] [stderr] --> src/snake.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston_window::Button::Keyboard` [INFO] [stderr] --> src/snake.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | use piston_window::Button::Keyboard; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `piston::input::keyboard::Key::*` [INFO] [stderr] --> src/snake.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | use piston::input::keyboard::Key::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0601]: `main` function not found in crate `snake` [INFO] [stderr] | [INFO] [stderr] = note: consider adding a `main` function to `src/snake.rs` [INFO] [stderr] [INFO] [stderr] error: aborting due to 28 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0412, E0432, E0433, E0601. [INFO] [stderr] For more information about an error, try `rustc --explain E0412`. [INFO] [stderr] error: Could not compile `rusty-snake`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "c0a22e3180411f200685b08006a3bb4bea93f1cd658ee2b9f07e65ebe7e9de53"` [INFO] running `"docker" "rm" "-f" "c0a22e3180411f200685b08006a3bb4bea93f1cd658ee2b9f07e65ebe7e9de53"` [INFO] [stdout] c0a22e3180411f200685b08006a3bb4bea93f1cd658ee2b9f07e65ebe7e9de53