[INFO] updating cached repository https://github.com/gsingh93/game-engine
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] eb311e6ddef6e3afa26c9987092f1268e7244d02
[INFO] checking gsingh93/game-engine against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgsingh93%2Fgame-engine" "/workspace/builds/worker-5/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/gsingh93/game-engine on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/gsingh93/game-engine
[INFO] finished tweaking git repo https://github.com/gsingh93/game-engine
[INFO] tweaked toml for git repo https://github.com/gsingh93/game-engine written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] crate git repo https://github.com/gsingh93/game-engine already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] error: the lock file /workspace/builds/worker-5/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 9028c520f93caeeae50483f8552ee6cec50f29b209b04aecb4165a5f04522cc5
[INFO] running `"docker" "start" "-a" "9028c520f93caeeae50483f8552ee6cec50f29b209b04aecb4165a5f04522cc5"`
[INFO] [stderr]    Compiling libm v0.2.1
[INFO] [stderr]    Compiling proc-macro-hack v0.5.15
[INFO] [stderr]    Compiling standback v0.2.2
[INFO] [stderr]     Checking bytemuck v1.2.0
[INFO] [stderr]     Checking takeable-option v0.5.0
[INFO] [stderr]     Checking obj v0.9.1
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling freetype-sys v0.11.0
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking backtrace-sys v0.1.35
[INFO] [stderr]     Checking stb_truetype v0.3.1
[INFO] [stderr]     Checking deflate v0.8.4
[INFO] [stderr]     Checking tiff v0.4.0
[INFO] [stderr]     Checking generic-array v0.13.2
[INFO] [stderr]     Checking mio v0.6.21
[INFO] [stderr]     Checking backtrace v0.3.46
[INFO] [stderr]     Checking png v0.16.2
[INFO] [stderr]    Compiling rustversion v1.0.2
[INFO] [stderr]     Checking rand_distr v0.2.2
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]    Compiling paste-impl v0.1.10
[INFO] [stderr]    Compiling time-macros-impl v0.1.0
[INFO] [stderr]     Checking freetype-rs v0.24.0
[INFO] [stderr]     Checking calloop v0.4.4
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]    Compiling glium v0.27.0
[INFO] [stderr]     Checking wayland-client v0.23.6
[INFO] [stderr]    Compiling time v0.2.9
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking num-integer v0.1.42
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking paste v0.1.10
[INFO] [stderr]     Checking rusttype v0.8.3
[INFO] [stderr]     Checking time-macros v0.1.0
[INFO] [stderr]     Checking cgmath v0.16.1
[INFO] [stderr]     Checking num-iter v0.1.40
[INFO] [stderr]     Checking simba v0.1.2
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]     Checking image v0.23.3
[INFO] [stderr]     Checking wayland-protocols v0.23.6
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]     Checking nalgebra v0.21.0
[INFO] [stderr]     Checking genmesh v0.6.2
[INFO] [stderr]     Checking smithay-client-toolkit v0.6.6
[INFO] [stderr]     Checking winit v0.22.0
[INFO] [stderr]     Checking glutin v0.24.0
[INFO] [stderr]     Checking opengl v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] error[E0432]: unresolved imports `nalgebra::dot`, `nalgebra::BaseFloat`, `nalgebra::Col`, `nalgebra::Mat4`, `nalgebra::Vec3`, `nalgebra::Vec4`
[INFO] [stderr]  --> src/camera.rs:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 | use nalgebra::{self, dot, BaseFloat, Col, Mat4, Vec3, Vec4};
[INFO] [stderr]   |                      ^^^  ^^^^^^^^^  ^^^  ^^^^  ^^^^  ^^^^ no `Vec4` in the root
[INFO] [stderr]   |                      |    |          |    |     |
[INFO] [stderr]   |                      |    |          |    |     no `Vec3` in the root
[INFO] [stderr]   |                      |    |          |    no `Mat4` in the root
[INFO] [stderr]   |                      |    |          no `Col` in the root
[INFO] [stderr]   |                      |    no `BaseFloat` in the root
[INFO] [stderr]   |                      no `dot` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `nalgebra::Col`, `nalgebra::Mat4`, `nalgebra::Vec3`, `nalgebra::Vec4`
[INFO] [stderr]   --> src/draw.rs:23:22
[INFO] [stderr]    |
[INFO] [stderr] 23 | use nalgebra::{self, Col, Mat4, Vec3, Vec4};
[INFO] [stderr]    |                      ^^^  ^^^^  ^^^^  ^^^^ no `Vec4` in the root
[INFO] [stderr]    |                      |    |     |
[INFO] [stderr]    |                      |    |     no `Vec3` in the root
[INFO] [stderr]    |                      |    no `Mat4` in the root
[INFO] [stderr]    |                      no `Col` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `glium::DisplayBuild`
[INFO] [stderr]   --> src/main.rs:35:30
[INFO] [stderr]    |
[INFO] [stderr] 35 | use glium::{glutin, Display, DisplayBuild, DrawError, Program, Surface};
[INFO] [stderr]    |                              ^^^^^^^^^^^^ no `DisplayBuild` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `glium::glutin::ElementState`, `glium::glutin::VirtualKeyCode`
[INFO] [stderr]   --> src/main.rs:36:21
[INFO] [stderr]    |
[INFO] [stderr] 36 | use glium::glutin::{ElementState, VirtualKeyCode};
[INFO] [stderr]    |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^^ no `VirtualKeyCode` in `glutin`
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     no `ElementState` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `nalgebra::BaseFloat`, `nalgebra::Vec3`
[INFO] [stderr]   --> src/main.rs:39:22
[INFO] [stderr]    |
[INFO] [stderr] 39 | use nalgebra::{zero, BaseFloat, Vec3};
[INFO] [stderr]    |                      ^^^^^^^^^  ^^^^ no `Vec3` in the root
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      no `BaseFloat` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `WindowBuilder` in `glutin`
[INFO] [stderr]    --> src/main.rs:223:27
[INFO] [stderr]     |
[INFO] [stderr] 223 |     let display = glutin::WindowBuilder::new()
[INFO] [stderr]     |                           ^^^^^^^^^^^^^ could not find `WindowBuilder` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:257:25
[INFO] [stderr]     |
[INFO] [stderr] 257 |                 glutin::Event::KeyboardInput(ElementState::Pressed, _, Some(key)) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:267:25
[INFO] [stderr]     |
[INFO] [stderr] 267 |                 glutin::Event::MouseWheel(glutin::MouseScrollDelta::LineDelta(_, v)) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `MouseScrollDelta` in `glutin`
[INFO] [stderr]    --> src/main.rs:267:51
[INFO] [stderr]     |
[INFO] [stderr] 267 |                 glutin::Event::MouseWheel(glutin::MouseScrollDelta::LineDelta(_, v)) => {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^ could not find `MouseScrollDelta` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:273:25
[INFO] [stderr]     |
[INFO] [stderr] 273 |                 glutin::Event::MouseMoved((x, y)) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:304:25
[INFO] [stderr]     |
[INFO] [stderr] 304 |                 glutin::Event::MouseInput(state, button) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `MouseButton` in `glutin`
[INFO] [stderr]    --> src/main.rs:310:33
[INFO] [stderr]     |
[INFO] [stderr] 310 |                         glutin::MouseButton::Left =>
[INFO] [stderr]     |                                 ^^^^^^^^^^^ could not find `MouseButton` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `MouseButton` in `glutin`
[INFO] [stderr]    --> src/main.rs:312:33
[INFO] [stderr]     |
[INFO] [stderr] 312 |                         glutin::MouseButton::Right =>
[INFO] [stderr]     |                                 ^^^^^^^^^^^ could not find `MouseButton` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:317:25
[INFO] [stderr]     |
[INFO] [stderr] 317 |                 glutin::Event::Resized(x, y) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:320:25
[INFO] [stderr]     |
[INFO] [stderr] 320 |                 glutin::Event::Closed => return,
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]   --> src/camera.rs:29:46
[INFO] [stderr]    |
[INFO] [stderr] 29 |             view_matrix: Cell::new(nalgebra::new_identity(4)),
[INFO] [stderr]    |                                              ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]   --> src/camera.rs:30:46
[INFO] [stderr]    |
[INFO] [stderr] 30 |             proj_matrix: Cell::new(nalgebra::new_identity(4)),
[INFO] [stderr]    |                                              ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `transpose` in crate `nalgebra`
[INFO] [stderr]   --> src/camera.rs:62:23
[INFO] [stderr]    |
[INFO] [stderr] 62 |         t = nalgebra::transpose(&t);
[INFO] [stderr]    |                       ^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]    --> src/draw.rs:112:67
[INFO] [stderr]     |
[INFO] [stderr] 112 |             transform: self.transform.unwrap_or_else(|| nalgebra::new_identity(4)),
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `get_time` in crate `time`
[INFO] [stderr]    --> src/draw.rs:215:56
[INFO] [stderr]     |
[INFO] [stderr] 215 |         let mut rot_mat = Self::get_rotation_mat(time::get_time());
[INFO] [stderr]     |                                                        ^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]    --> src/draw.rs:247:50
[INFO] [stderr]     |
[INFO] [stderr] 247 |         let mut transform: Mat4<f32> = nalgebra::new_identity(4);
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Timespec` in crate `time`
[INFO] [stderr]    --> src/draw.rs:262:38
[INFO] [stderr]     |
[INFO] [stderr] 262 |     pub fn get_rotation_mat(t: time::Timespec) -> Mat4<f32> {
[INFO] [stderr]     |                                      ^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `PNG` in crate `image`
[INFO] [stderr]    --> src/main.rs:130:47
[INFO] [stderr]     |
[INFO] [stderr] 130 |             let image = image::load(f, image::PNG).unwrap();
[INFO] [stderr]     |                                               ^^^ not found in `image`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `RENDER` in module `ft::face`
[INFO] [stderr]    --> src/main.rs:137:50
[INFO] [stderr]     |
[INFO] [stderr] 137 |             face.load_char(c as usize, ft::face::RENDER).unwrap();
[INFO] [stderr]     |                                                  ^^^^^^ not found in `ft::face`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `precise_time_ns` in crate `time`
[INFO] [stderr]    --> src/main.rs:252:35
[INFO] [stderr]     |
[INFO] [stderr] 252 |     let mut previous_time = time::precise_time_ns();
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `precise_time_ns` in crate `time`
[INFO] [stderr]    --> src/main.rs:325:25
[INFO] [stderr]     |
[INFO] [stderr] 325 |         let now = time::precise_time_ns();
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `precise_time_ns` in crate `time`
[INFO] [stderr]    --> src/main.rs:339:29
[INFO] [stderr]     |
[INFO] [stderr] 339 |             let now = time::precise_time_ns();
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:136:40
[INFO] [stderr]     |
[INFO] [stderr] 136 |     fn children(&self) -> Option<&[Box<GameObject>]> {
[INFO] [stderr]     |                                        ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:274:20
[INFO] [stderr]     |
[INFO] [stderr] 274 |     chars: Vec<Box<GameObject>>,
[INFO] [stderr]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:285:40
[INFO] [stderr]     |
[INFO] [stderr] 285 |     fn children(&self) -> Option<&[Box<GameObject>]> {
[INFO] [stderr]     |                                        ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:315:86
[INFO] [stderr]     |
[INFO] [stderr] 315 |             chars.push(Box::new(Char::new(&ctxt.display, x, y, sx, sy, char)) as Box<GameObject>);
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:341:86
[INFO] [stderr]     |
[INFO] [stderr] 341 |             chars.push(Box::new(Char::new(&ctxt.display, x, y, sx, sy, char)) as Box<GameObject>);
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:43:40
[INFO] [stderr]    |
[INFO] [stderr] 43 |     named_objects: HashMap<String, Box<GameObject + 'a>>,
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameObject + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:44:29
[INFO] [stderr]    |
[INFO] [stderr] 44 |     unamed_objects: Vec<Box<GameObject + 'a>>,
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameObject + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:68:43
[INFO] [stderr]    |
[INFO] [stderr] 68 |     fn draw_objs<I: Iterator<Item=&'a Box<GameObject>>, S: Surface>(&self, target: &mut S,
[INFO] [stderr]    |                                           ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:182:39
[INFO] [stderr]     |
[INFO] [stderr] 182 | ...                   obj: &Box<GameObject>) -> Result<(), DrawError> {
[INFO] [stderr]     |                                 ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `nalgebra::dot`, `nalgebra::BaseFloat`, `nalgebra::Col`, `nalgebra::Mat4`, `nalgebra::Vec3`, `nalgebra::Vec4`
[INFO] [stderr]  --> src/camera.rs:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 | use nalgebra::{self, dot, BaseFloat, Col, Mat4, Vec3, Vec4};
[INFO] [stderr]   |                      ^^^  ^^^^^^^^^  ^^^  ^^^^  ^^^^  ^^^^ no `Vec4` in the root
[INFO] [stderr]   |                      |    |          |    |     |
[INFO] [stderr]   |                      |    |          |    |     no `Vec3` in the root
[INFO] [stderr]   |                      |    |          |    no `Mat4` in the root
[INFO] [stderr]   |                      |    |          no `Col` in the root
[INFO] [stderr]   |                      |    no `BaseFloat` in the root
[INFO] [stderr]   |                      no `dot` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `nalgebra::Col`, `nalgebra::Mat4`, `nalgebra::Vec3`, `nalgebra::Vec4`
[INFO] [stderr]   --> src/draw.rs:23:22
[INFO] [stderr]    |
[INFO] [stderr] 23 | use nalgebra::{self, Col, Mat4, Vec3, Vec4};
[INFO] [stderr]    |                      ^^^  ^^^^  ^^^^  ^^^^ no `Vec4` in the root
[INFO] [stderr]    |                      |    |     |
[INFO] [stderr]    |                      |    |     no `Vec3` in the root
[INFO] [stderr]    |                      |    no `Mat4` in the root
[INFO] [stderr]    |                      no `Col` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved import `glium::DisplayBuild`
[INFO] [stderr]   --> src/main.rs:35:30
[INFO] [stderr]    |
[INFO] [stderr] 35 | use glium::{glutin, Display, DisplayBuild, DrawError, Program, Surface};
[INFO] [stderr]    |                              ^^^^^^^^^^^^ no `DisplayBuild` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `glium::glutin::ElementState`, `glium::glutin::VirtualKeyCode`
[INFO] [stderr]   --> src/main.rs:36:21
[INFO] [stderr]    |
[INFO] [stderr] 36 | use glium::glutin::{ElementState, VirtualKeyCode};
[INFO] [stderr]    |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^^ no `VirtualKeyCode` in `glutin`
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     no `ElementState` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0432]: unresolved imports `nalgebra::BaseFloat`, `nalgebra::Vec3`
[INFO] [stderr]   --> src/main.rs:39:22
[INFO] [stderr]    |
[INFO] [stderr] 39 | use nalgebra::{zero, BaseFloat, Vec3};
[INFO] [stderr]    |                      ^^^^^^^^^  ^^^^ no `Vec3` in the root
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      no `BaseFloat` in the root
[INFO] [stderr] 
[INFO] [stderr] error[E0107]: wrong number of lifetime arguments: expected 0, found 1
[INFO] [stderr]    --> src/draw.rs:275:20
[INFO] [stderr]     |
[INFO] [stderr] 275 |     face: ft::Face<'a>, // TODO: Lifetime?
[INFO] [stderr]     |                    ^^ unexpected lifetime argument
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 28 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0107, E0412, E0425, E0432, E0433.
[INFO] [stderr] For more information about an error, try `rustc --explain E0107`.
[INFO] [stderr] error: could not compile `opengl`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error[E0433]: failed to resolve: could not find `WindowBuilder` in `glutin`
[INFO] [stderr]    --> src/main.rs:223:27
[INFO] [stderr]     |
[INFO] [stderr] 223 |     let display = glutin::WindowBuilder::new()
[INFO] [stderr]     |                           ^^^^^^^^^^^^^ could not find `WindowBuilder` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:257:25
[INFO] [stderr]     |
[INFO] [stderr] 257 |                 glutin::Event::KeyboardInput(ElementState::Pressed, _, Some(key)) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:267:25
[INFO] [stderr]     |
[INFO] [stderr] 267 |                 glutin::Event::MouseWheel(glutin::MouseScrollDelta::LineDelta(_, v)) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `MouseScrollDelta` in `glutin`
[INFO] [stderr]    --> src/main.rs:267:51
[INFO] [stderr]     |
[INFO] [stderr] 267 |                 glutin::Event::MouseWheel(glutin::MouseScrollDelta::LineDelta(_, v)) => {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^ could not find `MouseScrollDelta` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:273:25
[INFO] [stderr]     |
[INFO] [stderr] 273 |                 glutin::Event::MouseMoved((x, y)) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:304:25
[INFO] [stderr]     |
[INFO] [stderr] 304 |                 glutin::Event::MouseInput(state, button) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `MouseButton` in `glutin`
[INFO] [stderr]    --> src/main.rs:310:33
[INFO] [stderr]     |
[INFO] [stderr] 310 |                         glutin::MouseButton::Left =>
[INFO] [stderr]     |                                 ^^^^^^^^^^^ could not find `MouseButton` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `MouseButton` in `glutin`
[INFO] [stderr]    --> src/main.rs:312:33
[INFO] [stderr]     |
[INFO] [stderr] 312 |                         glutin::MouseButton::Right =>
[INFO] [stderr]     |                                 ^^^^^^^^^^^ could not find `MouseButton` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:317:25
[INFO] [stderr]     |
[INFO] [stderr] 317 |                 glutin::Event::Resized(x, y) => {
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: could not find `Event` in `glutin`
[INFO] [stderr]    --> src/main.rs:320:25
[INFO] [stderr]     |
[INFO] [stderr] 320 |                 glutin::Event::Closed => return,
[INFO] [stderr]     |                         ^^^^^ could not find `Event` in `glutin`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]   --> src/camera.rs:29:46
[INFO] [stderr]    |
[INFO] [stderr] 29 |             view_matrix: Cell::new(nalgebra::new_identity(4)),
[INFO] [stderr]    |                                              ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]   --> src/camera.rs:30:46
[INFO] [stderr]    |
[INFO] [stderr] 30 |             proj_matrix: Cell::new(nalgebra::new_identity(4)),
[INFO] [stderr]    |                                              ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `transpose` in crate `nalgebra`
[INFO] [stderr]   --> src/camera.rs:62:23
[INFO] [stderr]    |
[INFO] [stderr] 62 |         t = nalgebra::transpose(&t);
[INFO] [stderr]    |                       ^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]    --> src/draw.rs:112:67
[INFO] [stderr]     |
[INFO] [stderr] 112 |             transform: self.transform.unwrap_or_else(|| nalgebra::new_identity(4)),
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `get_time` in crate `time`
[INFO] [stderr]    --> src/draw.rs:215:56
[INFO] [stderr]     |
[INFO] [stderr] 215 |         let mut rot_mat = Self::get_rotation_mat(time::get_time());
[INFO] [stderr]     |                                                        ^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `new_identity` in crate `nalgebra`
[INFO] [stderr]    --> src/draw.rs:247:50
[INFO] [stderr]     |
[INFO] [stderr] 247 |         let mut transform: Mat4<f32> = nalgebra::new_identity(4);
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^ not found in `nalgebra`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Timespec` in crate `time`
[INFO] [stderr]    --> src/draw.rs:262:38
[INFO] [stderr]     |
[INFO] [stderr] 262 |     pub fn get_rotation_mat(t: time::Timespec) -> Mat4<f32> {
[INFO] [stderr]     |                                      ^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `PNG` in crate `image`
[INFO] [stderr]    --> src/main.rs:130:47
[INFO] [stderr]     |
[INFO] [stderr] 130 |             let image = image::load(f, image::PNG).unwrap();
[INFO] [stderr]     |                                               ^^^ not found in `image`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `RENDER` in module `ft::face`
[INFO] [stderr]    --> src/main.rs:137:50
[INFO] [stderr]     |
[INFO] [stderr] 137 |             face.load_char(c as usize, ft::face::RENDER).unwrap();
[INFO] [stderr]     |                                                  ^^^^^^ not found in `ft::face`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `precise_time_ns` in crate `time`
[INFO] [stderr]    --> src/main.rs:252:35
[INFO] [stderr]     |
[INFO] [stderr] 252 |     let mut previous_time = time::precise_time_ns();
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `precise_time_ns` in crate `time`
[INFO] [stderr]    --> src/main.rs:325:25
[INFO] [stderr]     |
[INFO] [stderr] 325 |         let now = time::precise_time_ns();
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `precise_time_ns` in crate `time`
[INFO] [stderr]    --> src/main.rs:339:29
[INFO] [stderr]     |
[INFO] [stderr] 339 |             let now = time::precise_time_ns();
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^ not found in `time`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:136:40
[INFO] [stderr]     |
[INFO] [stderr] 136 |     fn children(&self) -> Option<&[Box<GameObject>]> {
[INFO] [stderr]     |                                        ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:274:20
[INFO] [stderr]     |
[INFO] [stderr] 274 |     chars: Vec<Box<GameObject>>,
[INFO] [stderr]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:285:40
[INFO] [stderr]     |
[INFO] [stderr] 285 |     fn children(&self) -> Option<&[Box<GameObject>]> {
[INFO] [stderr]     |                                        ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:315:86
[INFO] [stderr]     |
[INFO] [stderr] 315 |             chars.push(Box::new(Char::new(&ctxt.display, x, y, sx, sy, char)) as Box<GameObject>);
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/draw.rs:341:86
[INFO] [stderr]     |
[INFO] [stderr] 341 |             chars.push(Box::new(Char::new(&ctxt.display, x, y, sx, sy, char)) as Box<GameObject>);
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:43:40
[INFO] [stderr]    |
[INFO] [stderr] 43 |     named_objects: HashMap<String, Box<GameObject + 'a>>,
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameObject + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:44:29
[INFO] [stderr]    |
[INFO] [stderr] 44 |     unamed_objects: Vec<Box<GameObject + 'a>>,
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameObject + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:68:43
[INFO] [stderr]    |
[INFO] [stderr] 68 |     fn draw_objs<I: Iterator<Item=&'a Box<GameObject>>, S: Surface>(&self, target: &mut S,
[INFO] [stderr]    |                                           ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:182:39
[INFO] [stderr]     |
[INFO] [stderr] 182 | ...                   obj: &Box<GameObject>) -> Result<(), DrawError> {
[INFO] [stderr]     |                                 ^^^^^^^^^^ help: use `dyn`: `dyn GameObject`
[INFO] [stderr] 
[INFO] [stderr] error[E0107]: wrong number of lifetime arguments: expected 0, found 1
[INFO] [stderr]    --> src/draw.rs:275:20
[INFO] [stderr]     |
[INFO] [stderr] 275 |     face: ft::Face<'a>, // TODO: Lifetime?
[INFO] [stderr]     |                    ^^ unexpected lifetime argument
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 28 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0107, E0412, E0425, E0432, E0433.
[INFO] [stderr] For more information about an error, try `rustc --explain E0107`.
[INFO] [stderr] error: could not compile `opengl`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "9028c520f93caeeae50483f8552ee6cec50f29b209b04aecb4165a5f04522cc5"`
[INFO] running `"docker" "rm" "-f" "9028c520f93caeeae50483f8552ee6cec50f29b209b04aecb4165a5f04522cc5"`
[INFO] [stdout] 9028c520f93caeeae50483f8552ee6cec50f29b209b04aecb4165a5f04522cc5
