[INFO] updating cached repository https://github.com/jarrett/cities [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/big/crater/work/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] b0d6e7cd4aecd87066c1dfaa5d5ad4df3f195be6 [INFO] testing jarrett/cities against beta-2019-09-28 for beta-1.39-1 [INFO] running `"git" "clone" "work/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjarrett%2Fcities" "work/builds/worker-0/source"` [INFO] [stderr] Cloning into 'work/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/jarrett/cities on toolchain beta-2019-09-28 [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+beta-2019-09-28" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/jarrett/cities [INFO] finished tweaking git repo https://github.com/jarrett/cities [INFO] tweaked toml for git repo https://github.com/jarrett/cities written to work/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/jarrett/cities already has a lockfile, it will not be regenerated [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+beta-2019-09-28" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/big/crater/work/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/big/crater/work/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/big/crater/work/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/big/crater/work/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-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" "+beta-2019-09-28" "build" "--frozen"` [INFO] [stdout] c5ca1a36fd572028091acd81ac700aad8944662336879593b88028fa877fa2fe [INFO] running `"docker" "start" "-a" "c5ca1a36fd572028091acd81ac700aad8944662336879593b88028fa877fa2fe"` [INFO] [stderr] Compiling cgmath v0.16.0 (https://github.com/brendanzab/cgmath.git#fec4e836) [INFO] [stderr] Compiling num_cpus v1.8.0 [INFO] [stderr] Compiling rand v0.4.2 [INFO] [stderr] Compiling enum_primitive v0.1.1 [INFO] [stderr] Compiling libz-sys v1.0.18 [INFO] [stderr] Compiling freetype-sys v0.6.0 [INFO] [stderr] Compiling deflate v0.7.17 [INFO] [stderr] Compiling num-complex v0.1.41 [INFO] [stderr] Compiling inflate v0.3.4 [INFO] [stderr] Compiling num-bigint v0.1.41 [INFO] [stderr] Compiling gl v0.7.0 [INFO] [stderr] Compiling rayon-core v1.3.0 [INFO] [stderr] Compiling png v0.11.0 [INFO] [stderr] Compiling rayon v0.8.2 [INFO] [stderr] Compiling freetype-rs v0.17.0 [INFO] [stderr] Compiling num-rational v0.1.40 [INFO] [stderr] Compiling num v0.1.41 [INFO] [stderr] Compiling glfw v0.20.0 (https://github.com/bjz/glfw-rs.git#d295d5b7) [INFO] [stderr] Compiling jpeg-decoder v0.1.13 [INFO] [stderr] Compiling image v0.18.0 [INFO] [stderr] Compiling cities v0.0.1 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `Matrix` [INFO] [stderr] --> src/camera.rs:3:19 [INFO] [stderr] | [INFO] [stderr] 3 | EuclideanSpace, Matrix, Matrix3, Matrix4, Ortho, Point2, Point3, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mode/menu.rs:24:38 [INFO] [stderr] | [INFO] [stderr] 24 | fn transition(&self) -> Option> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Mode` [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/mode/mod.rs:14:38 [INFO] [stderr] | [INFO] [stderr] 14 | fn transition(&self) -> Option>; [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Mode` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr` [INFO] [stderr] --> src/opengl/vao.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::ptr; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Indices` [INFO] [stderr] --> src/opengl/vao.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | use super::{Vbo, Attributes, Indices}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Vbo` [INFO] [stderr] --> src/ui/element.rs:4:14 [INFO] [stderr] | [INFO] [stderr] 4 | use opengl::{Vbo, Texture2d, TextureConfig}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::program::Program` [INFO] [stderr] --> src/ui/element.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use super::program::Program; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::allocator::Allocator` [INFO] [stderr] --> src/ui/element.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use super::allocator::Allocator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui/element.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Widget + 'static` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr` [INFO] [stderr] --> src/ui/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::ptr; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:33:21 [INFO] [stderr] | [INFO] [stderr] 33 | let mut mode: Box = Box::new(mode::Menu); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn mode::Mode` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `level` [INFO] [stderr] --> src/opengl/texture.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | level: GLint, [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_level` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/opengl/debugging/lines.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | let mut vao = Vao::new(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/opengl/debugging/lines.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut position_buffer: Vbo = Vbo::new(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/opengl/debugging/lines.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | let mut color_buffer: Vbo = Vbo::new(); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/opengl/debugging/lines.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | let mut lines = DebugLines { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/element.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | let mut element = Element { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ui/element.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `CAMERA_TILT` [INFO] [stderr] --> src/camera.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | static CAMERA_TILT: Rad = Rad(3.97935069f32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `CAMERA_ORBIT` [INFO] [stderr] --> src/camera.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | static CAMERA_ORBIT: Rad = Rad(0.488692191f32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `q_down` [INFO] [stderr] --> src/camera.rs:23:3 [INFO] [stderr] | [INFO] [stderr] 23 | q_down: bool, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `e_down` [INFO] [stderr] --> src/camera.rs:24:3 [INFO] [stderr] | [INFO] [stderr] 24 | e_down: bool, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/camera.rs:28:3 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn new(width: u16, height: u16, zoom: f32) -> Camera { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `decrement_orbit` [INFO] [stderr] --> src/camera.rs:39:3 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn decrement_orbit(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `distance_to` [INFO] [stderr] --> src/camera.rs:48:3 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn distance_to(&self, point: &Point3) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `increment_orbit` [INFO] [stderr] --> src/camera.rs:52:3 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn increment_orbit(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `orbit_to` [INFO] [stderr] --> src/camera.rs:61:3 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn orbit_to(&mut self, dir: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `pan` [INFO] [stderr] --> src/camera.rs:68:3 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn pan(&mut self, amount: &Vector2) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `receive_input` [INFO] [stderr] --> src/camera.rs:76:3 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn receive_input(&mut self, window: &Window) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `unproject` [INFO] [stderr] --> src/camera.rs:124:3 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn unproject(&self, p: Point2) -> (Point3, Point3) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zoom_by` [INFO] [stderr] --> src/camera.rs:141:3 [INFO] [stderr] | [INFO] [stderr] 141 | pub fn zoom_by(&mut self, multiplier: f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `resize` [INFO] [stderr] --> src/camera.rs:147:3 [INFO] [stderr] | [INFO] [stderr] 147 | pub fn resize(&mut self, width: u16, height: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `rebuild_matrices` [INFO] [stderr] --> src/camera.rs:155:3 [INFO] [stderr] | [INFO] [stderr] 155 | fn rebuild_matrices(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `buffer_sub_data` [INFO] [stderr] --> src/opengl/vbo.rs:64:3 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn buffer_sub_data(&mut self, offset: usize, size: usize, data: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `width` [INFO] [stderr] --> src/opengl/texture.rs:10:3 [INFO] [stderr] | [INFO] [stderr] 10 | width: usize, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `height` [INFO] [stderr] --> src/opengl/texture.rs:11:3 [INFO] [stderr] | [INFO] [stderr] 11 | height: usize [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/opengl/texture.rs:23:3 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new(config: &Config, width: usize, height: usize) -> Texture2d { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_file` [INFO] [stderr] --> src/opengl/texture.rs:38:3 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn from_file(path: &Path, config: &Config) -> Texture2d { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `bind` [INFO] [stderr] --> src/opengl/texture.rs:78:3 [INFO] [stderr] | [INFO] [stderr] 78 | pub fn bind(&self, uniform_idx: GLint, texture_slot: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `upload` [INFO] [stderr] --> src/opengl/texture.rs:86:3 [INFO] [stderr] | [INFO] [stderr] 86 | / pub fn upload( [INFO] [stderr] 87 | | &mut self, [INFO] [stderr] 88 | | level: GLint, [INFO] [stderr] 89 | | internal_format: GLenum, [INFO] [stderr] ... | [INFO] [stderr] 114 | | } [INFO] [stderr] 115 | | } [INFO] [stderr] | |___^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Program` [INFO] [stderr] --> src/ui/program.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct Program { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ui/program.rs:21:3 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new() -> Program { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `bind_textures` [INFO] [stderr] --> src/ui/program.rs:33:3 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn bind_textures(&self, texture_id: GLuint) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `configure_indices` [INFO] [stderr] --> src/ui/program.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | fn configure_indices(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Allocator` [INFO] [stderr] --> src/ui/allocator.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct Allocator { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ui/allocator.rs:15:3 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new(buffer_size: usize) -> Allocator { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `alloc_slot` [INFO] [stderr] --> src/ui/allocator.rs:20:3 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn alloc_slot(&mut self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `free_slot` [INFO] [stderr] --> src/ui/allocator.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn free_slot(&mut self, idx: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Element` [INFO] [stderr] --> src/ui/element.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct Element { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_widget` [INFO] [stderr] --> src/ui/element.rs:38:3 [INFO] [stderr] | [INFO] [stderr] 38 | / pub fn from_widget( [INFO] [stderr] 39 | | widget: T, [INFO] [stderr] 40 | | ui: &mut Ui, [INFO] [stderr] 41 | | ) -> Element { [INFO] [stderr] ... | [INFO] [stderr] 70 | | element [INFO] [stderr] 71 | | } [INFO] [stderr] | |___^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_widget` [INFO] [stderr] --> src/ui/element.rs:73:3 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn add_widget(&mut self, child: T, ui: &mut Ui) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `draw` [INFO] [stderr] --> src/ui/element.rs:80:3 [INFO] [stderr] | [INFO] [stderr] 80 | pub unsafe fn draw(&self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `buffer` [INFO] [stderr] --> src/ui/element.rs:96:3 [INFO] [stderr] | [INFO] [stderr] 96 | fn buffer(&self, ui: &mut Ui) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `text` [INFO] [stderr] --> src/ui/button.rs:8:3 [INFO] [stderr] | [INFO] [stderr] 8 | text: Option [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ui/button.rs:12:3 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn new(x: i32, y: i32, w: i32, h: i32) -> Button { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `text` [INFO] [stderr] --> src/ui/button.rs:16:3 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn text(mut self, text: T) -> Button { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `BUFFER_SIZE` [INFO] [stderr] --> src/ui/mod.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | const BUFFER_SIZE: usize = 256; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Ui` [INFO] [stderr] --> src/ui/mod.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | pub struct Ui { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/ui/mod.rs:52:3 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn new() -> Ui { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_widget` [INFO] [stderr] --> src/ui/mod.rs:83:3 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn add_widget(&mut self, widget: T) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `draw` [INFO] [stderr] --> src/ui/mod.rs:88:3 [INFO] [stderr] | [INFO] [stderr] 88 | pub fn draw(&self, viewport_w: i32, viewport_h: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `configure_vao` [INFO] [stderr] --> src/ui/mod.rs:103:3 [INFO] [stderr] | [INFO] [stderr] 103 | fn configure_vao(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: linking with `cc` failed: exit code: 1 [INFO] [stderr] | [INFO] [stderr] = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.cities.btmzcmmx-cgu.9.rcgu.o" "-o" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4" "/opt/rustwide/target/debug/deps/cities-50c9006e997af1b4.2ti7qk2gfr0hgx6y.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/rustwide/target/debug/deps" "-L" "/usr/lib/x86_64-linux-gnu" "-L" "/usr/lib/x86_64-linux-gnu" "-L" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/libimage-fe5cfa25ed5abcfc.rlib" "/opt/rustwide/target/debug/deps/libscoped_threadpool-ff1f0b10ba75963d.rlib" "/opt/rustwide/target/debug/deps/libgif-8f7cd9f4b2848817.rlib" "/opt/rustwide/target/debug/deps/libcolor_quant-38da04927ac5d530.rlib" "/opt/rustwide/target/debug/deps/liblzw-7031afe4e8382d45.rlib" "/opt/rustwide/target/debug/deps/libjpeg_decoder-268a70da7035b598.rlib" "/opt/rustwide/target/debug/deps/librayon-9a152cdf190d1fab.rlib" "/opt/rustwide/target/debug/deps/librayon_core-419b4659bfe854a7.rlib" "/opt/rustwide/target/debug/deps/libnum_cpus-b14a1d8aa4a4801d.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-47d24117de3918be.rlib" "/opt/rustwide/target/debug/deps/libcoco-c909cabfaba2d085.rlib" "/opt/rustwide/target/debug/deps/libscopeguard-b55856d1221159b0.rlib" "/opt/rustwide/target/debug/deps/libeither-d1565b2d8692dc15.rlib" "/opt/rustwide/target/debug/deps/libpng-84f5a71526d4092a.rlib" "/opt/rustwide/target/debug/deps/libdeflate-b386b575c9b879a7.rlib" "/opt/rustwide/target/debug/deps/libinflate-cbff2bfa0697f812.rlib" "/opt/rustwide/target/debug/deps/libadler32-fc3168be86b8358e.rlib" "/opt/rustwide/target/debug/deps/libbyteorder-ca9613401f5048f0.rlib" "/opt/rustwide/target/debug/deps/libglfw-dbaa82a21e66559d.rlib" "/opt/rustwide/target/debug/deps/libnum-4ff45bb63331e148.rlib" "/opt/rustwide/target/debug/deps/libnum_rational-cce42e05b898190e.rlib" "/opt/rustwide/target/debug/deps/libnum_bigint-1a0a85813129293e.rlib" "/opt/rustwide/target/debug/deps/librand-c8013248b2384fbf.rlib" "/opt/rustwide/target/debug/deps/libnum_complex-4e193d1e26c5832a.rlib" "/opt/rustwide/target/debug/deps/librustc_serialize-739c46110ebaee65.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-6cad9498194d5f82.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-fec81b6a5c39f14f.rlib" "/opt/rustwide/target/debug/deps/libenum_primitive-7cca15e915697ad2.rlib" "/opt/rustwide/target/debug/deps/liblog-481af2284b34a247.rlib" "/opt/rustwide/target/debug/deps/libsemver-97b42a5d35637b9b.rlib" "/opt/rustwide/target/debug/deps/libnom-e5685e95769c6a0a.rlib" "/opt/rustwide/target/debug/deps/libgl-8b784736d166fa12.rlib" "/opt/rustwide/target/debug/deps/libfreetype-28a54e70c9c37904.rlib" "/opt/rustwide/target/debug/deps/libfreetype_sys-349ad6d3a25a69a2.rlib" "/opt/rustwide/target/debug/deps/libbitflags-98815c68dfc743de.rlib" "/opt/rustwide/target/debug/deps/libcgmath-3a4b63c323612cbc.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-2209945471a6fb12.rlib" "/opt/rustwide/target/debug/deps/librand-d299c8383f47b85b.rlib" "/opt/rustwide/target/debug/deps/liblibc-c6f4b66dac74a57b.rlib" "/opt/rustwide/target/debug/deps/libapprox-18d240db38cea552.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-db812c66f862af4c.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-e7871a21575d5ff7.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-2f2c581bc0d759e6.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-35731cabc05dc8a0.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-36477394541292db.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-8b706b170c1272d8.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-801dbb3043ccf581.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-a32aa66ce6f72b21.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-d00ea3bfb2bb6c00.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-d2c6ebe88c3e113c.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-df74f62f6bb60621.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-2170473575daeedb.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-1a08089bbddc4f51.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/beta-2019-09-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-f8f562e5472ad5c3.rlib" "-Wl,-Bdynamic" "-lglfw" "-lX11" "-lGL" "-lXxf86vm" "-lXrandr" "-lXi" "-lXcursor" "-lXinerama" "-lfreetype" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-lutil" [INFO] [stderr] = note: /usr/bin/ld: cannot find -lglfw [INFO] [stderr] collect2: error: ld returned 1 exit status [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: could not compile `cities`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "c5ca1a36fd572028091acd81ac700aad8944662336879593b88028fa877fa2fe"` [INFO] running `"docker" "rm" "-f" "c5ca1a36fd572028091acd81ac700aad8944662336879593b88028fa877fa2fe"` [INFO] [stdout] c5ca1a36fd572028091acd81ac700aad8944662336879593b88028fa877fa2fe