[INFO] updating cached repository https://github.com/sbhax/sbrx [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] a0ae84e5aef77e7b7803a2c8caabd171a8781a00 [INFO] testing sbhax/sbrx against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsbhax%2Fsbrx" "/workspace/builds/worker-4/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sbhax/sbrx on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/sbhax/sbrx [INFO] finished tweaking git repo https://github.com/sbhax/sbrx [INFO] tweaked toml for git repo https://github.com/sbhax/sbrx written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/sbhax/sbrx already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "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-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=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-2020-06-03" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] dee470c7d6f16279ed4425116022445706e45adb92705a9afb279a3c2ab04137 [INFO] running `"docker" "start" "-a" "dee470c7d6f16279ed4425116022445706e45adb92705a9afb279a3c2ab04137"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling lazy_static v1.0.2 [INFO] [stderr] Compiling pkg-config v0.3.12 [INFO] [stderr] Compiling libloading v0.5.0 [INFO] [stderr] Compiling log v0.4.3 [INFO] [stderr] Compiling proc-macro2 v0.4.8 [INFO] [stderr] Compiling proc-macro2 v0.3.8 [INFO] [stderr] Compiling unreachable v0.1.1 [INFO] [stderr] Compiling stb_truetype v0.2.2 [INFO] [stderr] Compiling nfd v0.0.4 [INFO] [stderr] Compiling petgraph v0.4.12 [INFO] [stderr] Compiling wayland-scanner v0.20.11 [INFO] [stderr] Compiling rand v0.5.4 [INFO] [stderr] Compiling smallvec v0.6.3 [INFO] [stderr] Compiling deflate v0.7.18 [INFO] [stderr] Compiling nix v0.11.0 [INFO] [stderr] Compiling lock_api v0.1.3 [INFO] [stderr] Compiling num-complex v0.1.43 [INFO] [stderr] Compiling backtrace-sys v0.1.23 [INFO] [stderr] Compiling num-bigint v0.1.44 [INFO] [stderr] Compiling crossbeam-epoch v0.3.1 [INFO] [stderr] Compiling shared_library v0.1.9 [INFO] [stderr] Compiling ordered-float v0.5.0 [INFO] [stderr] Compiling backtrace v0.3.9 [INFO] [stderr] Compiling gl_generator v0.9.0 [INFO] [stderr] Compiling parking_lot_core v0.2.14 [INFO] [stderr] Compiling quote v0.5.2 [INFO] [stderr] Compiling quote v0.6.3 [INFO] [stderr] Compiling osmesa-sys v0.1.2 [INFO] [stderr] Compiling crossbeam-deque v0.2.0 [INFO] [stderr] Compiling rusttype v0.5.2 [INFO] [stderr] Compiling wayland-client v0.20.11 [INFO] [stderr] Compiling wayland-protocols v0.20.11 [INFO] [stderr] Compiling png v0.12.0 [INFO] [stderr] Compiling syn v0.14.4 [INFO] [stderr] Compiling syn v0.13.11 [INFO] [stderr] Compiling rayon-core v1.4.1 [INFO] [stderr] Compiling parking_lot v0.6.3 [INFO] [stderr] Compiling x11-dl v2.18.1 [INFO] [stderr] Compiling dlib v0.4.1 [INFO] [stderr] Compiling daggy v0.5.0 [INFO] [stderr] Compiling num-rational v0.1.42 [INFO] [stderr] Compiling tempfile v3.0.3 [INFO] [stderr] Compiling wayland-sys v0.20.11 [INFO] [stderr] Compiling rayon v1.0.2 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling wayland-commons v0.20.11 [INFO] [stderr] Compiling glutin v0.17.0 [INFO] [stderr] Compiling glium v0.22.0 [INFO] [stderr] Compiling jpeg-decoder v0.1.15 [INFO] [stderr] Compiling serde_derive v1.0.70 [INFO] [stderr] Compiling num-derive v0.2.2 [INFO] [stderr] Compiling image v0.19.0 [INFO] [stderr] Compiling smithay-client-toolkit v0.2.6 [INFO] [stderr] Compiling winit v0.16.2 [INFO] [stderr] Compiling conrod_derive v0.1.2 [INFO] [stderr] Compiling pistoncore-input v0.21.0 [INFO] [stderr] Compiling conrod v0.61.1 [INFO] [stderr] Compiling sbrx v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File`, `create_dir_all` [INFO] [stderr] --> src/main.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | use std::fs::{File, OpenOptions, create_dir_all}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error::Error` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::error::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DynamicImage`, `open` [INFO] [stderr] --> src/main.rs:20:19 [INFO] [stderr] | [INFO] [stderr] 20 | use self::image::{open, ImageBuffer, Rgb, DynamicImage, ImageRgb8, ImageRgba8, ConvertBuffer}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Colorable` [INFO] [stderr] --> src/gui.rs:93:26 [INFO] [stderr] | [INFO] [stderr] 93 | use conrod::{widget, Colorable, Labelable, Positionable, Sizeable, Widget}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::once` [INFO] [stderr] --> src/gui.rs:94:9 [INFO] [stderr] | [INFO] [stderr] 94 | use std::iter::once; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/gui.rs:172:27 [INFO] [stderr] | [INFO] [stderr] 172 | let o_image = (if let Some(ref mut engine) = app.engine { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 173 | | println!("Loading character data"); [INFO] [stderr] 174 | | let character = CHARACTERS[selected_index]; [INFO] [stderr] 175 | | let palette = engine.palette_manager.load_palette_colors(character.name.to_string()); [INFO] [stderr] ... | [INFO] [stderr] 178 | | None [INFO] [stderr] 179 | | }); [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 172 | let o_image = if let Some(ref mut engine) = app.engine { [INFO] [stderr] 173 | println!("Loading character data"); [INFO] [stderr] 174 | let character = CHARACTERS[selected_index]; [INFO] [stderr] 175 | let palette = engine.palette_manager.load_palette_colors(character.name.to_string()); [INFO] [stderr] 176 | Some(engine.sprite_manager.load_spritesheet(&character).unwrap().to_img(&palette[..])) [INFO] [stderr] 177 | } else { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unused import: `data::*` [INFO] [stderr] --> src/engine.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use data::*; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `::engine::*` [INFO] [stderr] --> src/manager/palette.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use ::engine::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::mem` [INFO] [stderr] --> src/manager/sprite.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::image::gif::*` [INFO] [stderr] --> src/manager/sprite.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use self::image::gif::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `::engine::*` [INFO] [stderr] --> src/manager/sprite.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use ::engine::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImage` [INFO] [stderr] --> src/manager/sprite.rs:9:32 [INFO] [stderr] | [INFO] [stderr] 9 | use self::image::{ImageBuffer, GenericImage, Rgb}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `renderer` [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut renderer = conrod::backend::glium::Renderer::new(&display).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `total_timer` [INFO] [stderr] --> src/gui.rs:273:25 [INFO] [stderr] | [INFO] [stderr] 273 | let total_timer = Instant::now(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_timer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `c` [INFO] [stderr] --> src/manager/sprite.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | ... let c: Color; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max_frames` [INFO] [stderr] --> src/manager/sprite.rs:226:13 [INFO] [stderr] | [INFO] [stderr] 226 | let max_frames = sprite_data.iter().max_by_key(|p| { p.1 }).map_or(0, |p| { p.1 }); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_frames` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `animation_index` [INFO] [stderr] --> src/manager/sprite.rs:231:14 [INFO] [stderr] | [INFO] [stderr] 231 | for (animation_index, animation_data) in sprite_data.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_animation_index` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut renderer = conrod::backend::glium::Renderer::new(&display).unwrap(); [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/gui.rs:206:43 [INFO] [stderr] | [INFO] [stderr] 206 | ... ImageRgb8(mut image) =... [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/gui.rs:209:44 [INFO] [stderr] | [INFO] [stderr] 209 | ... ImageRgba8(mut image) =... [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/manager/sprite.rs:84:17 [INFO] [stderr] | [INFO] [stderr] 84 | let mut animation = Animation::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/manager/sprite.rs:87:21 [INFO] [stderr] | [INFO] [stderr] 87 | let mut frame = Frame::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/manager/sprite.rs:101:37 [INFO] [stderr] | [INFO] [stderr] 101 | ... let mut color_index; [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/manager/sprite.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | let mut byte_folder = ByteFolder::new(bytes.into_iter()); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SHAPE_GAP` [INFO] [stderr] --> src/gui.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 97 | const SHAPE_GAP: conrod::Scalar = 50.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SUBTITLE_SIZE` [INFO] [stderr] --> src/gui.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | const SUBTITLE_SIZE: conrod::FontSize = 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PHI_PALETTE` [INFO] [stderr] --> src/data.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub const PHI_PALETTE: i32 = 0x47AB78; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DUST_CLOUD_PALETTE` [INFO] [stderr] --> src/data.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub const DUST_CLOUD_PALETTE: i32 = 0xBF2058; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SONIC_MINE_PALETTE` [INFO] [stderr] --> src/data.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub const SONIC_MINE_PALETTE: i32 = 0xBF20D8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TAILS_BLASTER_PALETTE` [INFO] [stderr] --> src/data.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub const TAILS_BLASTER_PALETTE: i32 = 0xBF2098; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SHIELD_PALETTE` [INFO] [stderr] --> src/data.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub const SHIELD_PALETTE: i32 = 0xBF2078; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `EMERL_DATA` [INFO] [stderr] --> src/data.rs:104:1 [INFO] [stderr] | [INFO] [stderr] 104 | / pub const EMERL_DATA: Character = Character { [INFO] [stderr] 105 | | name: "Emerl", [INFO] [stderr] 106 | | palette_offset: 0x47AB38, [INFO] [stderr] 107 | | text_offsets: (0x206104, 0x20B131), [INFO] [stderr] 108 | | sprite_offset: 0x787D18, [INFO] [stderr] 109 | | sprite_frames: &[-1], [INFO] [stderr] 110 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_1` [INFO] [stderr] --> src/color.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | const PURPLE_1: Color = Color { r: 255, g: 0, b: 250 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_2` [INFO] [stderr] --> src/color.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const PURPLE_2: Color = Color { r: 185, g: 0, b: 255 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_3` [INFO] [stderr] --> src/color.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const PURPLE_3: Color = Color { r: 185, g: 0, b: 185 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `print_palette` [INFO] [stderr] --> src/manager/palette.rs:87:12 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn print_palette(&mut self, character: &Character) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_frames` [INFO] [stderr] --> src/manager/sprite.rs:145:12 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn get_frames(&self, palette: &[Color]) -> Vec, Vec>> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `to_image` [INFO] [stderr] --> src/manager/sprite.rs:160:12 [INFO] [stderr] | [INFO] [stderr] 160 | pub fn to_image(&self, palette: &[Color]) -> ImageBuffer, Vec> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `store_image` [INFO] [stderr] --> src/manager/sprite.rs:307:12 [INFO] [stderr] | [INFO] [stderr] 307 | pub fn store_image(&mut self, palette_manager: &mut palette::PaletteManager, image: &mut ImageBuffer, Vec>, character: &Character) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `write_spritesheets` [INFO] [stderr] --> src/manager/sprite.rs:314:12 [INFO] [stderr] | [INFO] [stderr] 314 | pub fn write_spritesheets(&mut self) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `save_spritesheet` [INFO] [stderr] --> src/manager/sprite.rs:359:12 [INFO] [stderr] | [INFO] [stderr] 359 | pub fn save_spritesheet(&self, palette_manager: &mut palette::PaletteManager, character: &Character) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 44 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 54s [INFO] running `"docker" "inspect" "dee470c7d6f16279ed4425116022445706e45adb92705a9afb279a3c2ab04137"` [INFO] running `"docker" "rm" "-f" "dee470c7d6f16279ed4425116022445706e45adb92705a9afb279a3c2ab04137"` [INFO] [stdout] dee470c7d6f16279ed4425116022445706e45adb92705a9afb279a3c2ab04137 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=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-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stdout] 19156284bc46b439255057c370cd645671d81a480f2117c6011c1edd6df03160 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "19156284bc46b439255057c370cd645671d81a480f2117c6011c1edd6df03160"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling sbrx v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File`, `create_dir_all` [INFO] [stderr] --> src/main.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | use std::fs::{File, OpenOptions, create_dir_all}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error::Error` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::error::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DynamicImage`, `open` [INFO] [stderr] --> src/main.rs:20:19 [INFO] [stderr] | [INFO] [stderr] 20 | use self::image::{open, ImageBuffer, Rgb, DynamicImage, ImageRgb8, ImageRgba8, ConvertBuffer}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Colorable` [INFO] [stderr] --> src/gui.rs:93:26 [INFO] [stderr] | [INFO] [stderr] 93 | use conrod::{widget, Colorable, Labelable, Positionable, Sizeable, Widget}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::once` [INFO] [stderr] --> src/gui.rs:94:9 [INFO] [stderr] | [INFO] [stderr] 94 | use std::iter::once; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/gui.rs:172:27 [INFO] [stderr] | [INFO] [stderr] 172 | let o_image = (if let Some(ref mut engine) = app.engine { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 173 | | println!("Loading character data"); [INFO] [stderr] 174 | | let character = CHARACTERS[selected_index]; [INFO] [stderr] 175 | | let palette = engine.palette_manager.load_palette_colors(character.name.to_string()); [INFO] [stderr] ... | [INFO] [stderr] 178 | | None [INFO] [stderr] 179 | | }); [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 172 | let o_image = if let Some(ref mut engine) = app.engine { [INFO] [stderr] 173 | println!("Loading character data"); [INFO] [stderr] 174 | let character = CHARACTERS[selected_index]; [INFO] [stderr] 175 | let palette = engine.palette_manager.load_palette_colors(character.name.to_string()); [INFO] [stderr] 176 | Some(engine.sprite_manager.load_spritesheet(&character).unwrap().to_img(&palette[..])) [INFO] [stderr] 177 | } else { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unused import: `data::*` [INFO] [stderr] --> src/engine.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use data::*; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `::engine::*` [INFO] [stderr] --> src/manager/palette.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use ::engine::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::mem` [INFO] [stderr] --> src/manager/sprite.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::image::gif::*` [INFO] [stderr] --> src/manager/sprite.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use self::image::gif::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `::engine::*` [INFO] [stderr] --> src/manager/sprite.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use ::engine::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImage` [INFO] [stderr] --> src/manager/sprite.rs:9:32 [INFO] [stderr] | [INFO] [stderr] 9 | use self::image::{ImageBuffer, GenericImage, Rgb}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `renderer` [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut renderer = conrod::backend::glium::Renderer::new(&display).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `total_timer` [INFO] [stderr] --> src/gui.rs:273:25 [INFO] [stderr] | [INFO] [stderr] 273 | let total_timer = Instant::now(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_timer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `c` [INFO] [stderr] --> src/manager/sprite.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | ... let c: Color; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max_frames` [INFO] [stderr] --> src/manager/sprite.rs:226:13 [INFO] [stderr] | [INFO] [stderr] 226 | let max_frames = sprite_data.iter().max_by_key(|p| { p.1 }).map_or(0, |p| { p.1 }); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_frames` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `animation_index` [INFO] [stderr] --> src/manager/sprite.rs:231:14 [INFO] [stderr] | [INFO] [stderr] 231 | for (animation_index, animation_data) in sprite_data.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_animation_index` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut renderer = conrod::backend::glium::Renderer::new(&display).unwrap(); [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/gui.rs:206:43 [INFO] [stderr] | [INFO] [stderr] 206 | ... ImageRgb8(mut image) =... [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/gui.rs:209:44 [INFO] [stderr] | [INFO] [stderr] 209 | ... ImageRgba8(mut image) =... [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/manager/sprite.rs:84:17 [INFO] [stderr] | [INFO] [stderr] 84 | let mut animation = Animation::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/manager/sprite.rs:87:21 [INFO] [stderr] | [INFO] [stderr] 87 | let mut frame = Frame::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/manager/sprite.rs:101:37 [INFO] [stderr] | [INFO] [stderr] 101 | ... let mut color_index; [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/manager/sprite.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | let mut byte_folder = ByteFolder::new(bytes.into_iter()); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SHAPE_GAP` [INFO] [stderr] --> src/gui.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 97 | const SHAPE_GAP: conrod::Scalar = 50.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SUBTITLE_SIZE` [INFO] [stderr] --> src/gui.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | const SUBTITLE_SIZE: conrod::FontSize = 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PHI_PALETTE` [INFO] [stderr] --> src/data.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub const PHI_PALETTE: i32 = 0x47AB78; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DUST_CLOUD_PALETTE` [INFO] [stderr] --> src/data.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub const DUST_CLOUD_PALETTE: i32 = 0xBF2058; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SONIC_MINE_PALETTE` [INFO] [stderr] --> src/data.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub const SONIC_MINE_PALETTE: i32 = 0xBF20D8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TAILS_BLASTER_PALETTE` [INFO] [stderr] --> src/data.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub const TAILS_BLASTER_PALETTE: i32 = 0xBF2098; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SHIELD_PALETTE` [INFO] [stderr] --> src/data.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub const SHIELD_PALETTE: i32 = 0xBF2078; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `EMERL_DATA` [INFO] [stderr] --> src/data.rs:104:1 [INFO] [stderr] | [INFO] [stderr] 104 | / pub const EMERL_DATA: Character = Character { [INFO] [stderr] 105 | | name: "Emerl", [INFO] [stderr] 106 | | palette_offset: 0x47AB38, [INFO] [stderr] 107 | | text_offsets: (0x206104, 0x20B131), [INFO] [stderr] 108 | | sprite_offset: 0x787D18, [INFO] [stderr] 109 | | sprite_frames: &[-1], [INFO] [stderr] 110 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_1` [INFO] [stderr] --> src/color.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | const PURPLE_1: Color = Color { r: 255, g: 0, b: 250 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_2` [INFO] [stderr] --> src/color.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const PURPLE_2: Color = Color { r: 185, g: 0, b: 255 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_3` [INFO] [stderr] --> src/color.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const PURPLE_3: Color = Color { r: 185, g: 0, b: 185 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `print_palette` [INFO] [stderr] --> src/manager/palette.rs:87:12 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn print_palette(&mut self, character: &Character) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_frames` [INFO] [stderr] --> src/manager/sprite.rs:145:12 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn get_frames(&self, palette: &[Color]) -> Vec, Vec>> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `to_image` [INFO] [stderr] --> src/manager/sprite.rs:160:12 [INFO] [stderr] | [INFO] [stderr] 160 | pub fn to_image(&self, palette: &[Color]) -> ImageBuffer, Vec> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `store_image` [INFO] [stderr] --> src/manager/sprite.rs:307:12 [INFO] [stderr] | [INFO] [stderr] 307 | pub fn store_image(&mut self, palette_manager: &mut palette::PaletteManager, image: &mut ImageBuffer, Vec>, character: &Character) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `write_spritesheets` [INFO] [stderr] --> src/manager/sprite.rs:314:12 [INFO] [stderr] | [INFO] [stderr] 314 | pub fn write_spritesheets(&mut self) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `save_spritesheet` [INFO] [stderr] --> src/manager/sprite.rs:359:12 [INFO] [stderr] | [INFO] [stderr] 359 | pub fn save_spritesheet(&self, palette_manager: &mut palette::PaletteManager, character: &Character) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 44 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.28s [INFO] running `"docker" "inspect" "19156284bc46b439255057c370cd645671d81a480f2117c6011c1edd6df03160"` [INFO] running `"docker" "rm" "-f" "19156284bc46b439255057c370cd645671d81a480f2117c6011c1edd6df03160"` [INFO] [stdout] 19156284bc46b439255057c370cd645671d81a480f2117c6011c1edd6df03160 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=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-2020-06-03" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] a3b88d3045f5d815d38a30200a00de9638e45a9f7ecc5a3d836fcd005c103be5 [INFO] running `"docker" "start" "-a" "a3b88d3045f5d815d38a30200a00de9638e45a9f7ecc5a3d836fcd005c103be5"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File`, `create_dir_all` [INFO] [stderr] --> src/main.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | use std::fs::{File, OpenOptions, create_dir_all}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error::Error` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::error::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DynamicImage`, `open` [INFO] [stderr] --> src/main.rs:20:19 [INFO] [stderr] | [INFO] [stderr] 20 | use self::image::{open, ImageBuffer, Rgb, DynamicImage, ImageRgb8, ImageRgba8, ConvertBuffer}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Colorable` [INFO] [stderr] --> src/gui.rs:93:26 [INFO] [stderr] | [INFO] [stderr] 93 | use conrod::{widget, Colorable, Labelable, Positionable, Sizeable, Widget}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::once` [INFO] [stderr] --> src/gui.rs:94:9 [INFO] [stderr] | [INFO] [stderr] 94 | use std::iter::once; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/gui.rs:172:27 [INFO] [stderr] | [INFO] [stderr] 172 | let o_image = (if let Some(ref mut engine) = app.engine { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 173 | | println!("Loading character data"); [INFO] [stderr] 174 | | let character = CHARACTERS[selected_index]; [INFO] [stderr] 175 | | let palette = engine.palette_manager.load_palette_colors(character.name.to_string()); [INFO] [stderr] ... | [INFO] [stderr] 178 | | None [INFO] [stderr] 179 | | }); [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 172 | let o_image = if let Some(ref mut engine) = app.engine { [INFO] [stderr] 173 | println!("Loading character data"); [INFO] [stderr] 174 | let character = CHARACTERS[selected_index]; [INFO] [stderr] 175 | let palette = engine.palette_manager.load_palette_colors(character.name.to_string()); [INFO] [stderr] 176 | Some(engine.sprite_manager.load_spritesheet(&character).unwrap().to_img(&palette[..])) [INFO] [stderr] 177 | } else { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unused import: `data::*` [INFO] [stderr] --> src/engine.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use data::*; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `::engine::*` [INFO] [stderr] --> src/manager/palette.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use ::engine::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::mem` [INFO] [stderr] --> src/manager/sprite.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::image::gif::*` [INFO] [stderr] --> src/manager/sprite.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use self::image::gif::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `::engine::*` [INFO] [stderr] --> src/manager/sprite.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use ::engine::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImage` [INFO] [stderr] --> src/manager/sprite.rs:9:32 [INFO] [stderr] | [INFO] [stderr] 9 | use self::image::{ImageBuffer, GenericImage, Rgb}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `renderer` [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut renderer = conrod::backend::glium::Renderer::new(&display).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `total_timer` [INFO] [stderr] --> src/gui.rs:273:25 [INFO] [stderr] | [INFO] [stderr] 273 | let total_timer = Instant::now(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_timer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `c` [INFO] [stderr] --> src/manager/sprite.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | ... let c: Color; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max_frames` [INFO] [stderr] --> src/manager/sprite.rs:226:13 [INFO] [stderr] | [INFO] [stderr] 226 | let max_frames = sprite_data.iter().max_by_key(|p| { p.1 }).map_or(0, |p| { p.1 }); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_frames` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `animation_index` [INFO] [stderr] --> src/manager/sprite.rs:231:14 [INFO] [stderr] | [INFO] [stderr] 231 | for (animation_index, animation_data) in sprite_data.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_animation_index` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let mut renderer = conrod::backend::glium::Renderer::new(&display).unwrap(); [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/gui.rs:206:43 [INFO] [stderr] | [INFO] [stderr] 206 | ... ImageRgb8(mut image) =... [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/gui.rs:209:44 [INFO] [stderr] | [INFO] [stderr] 209 | ... ImageRgba8(mut image) =... [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/manager/sprite.rs:84:17 [INFO] [stderr] | [INFO] [stderr] 84 | let mut animation = Animation::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/manager/sprite.rs:87:21 [INFO] [stderr] | [INFO] [stderr] 87 | let mut frame = Frame::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/manager/sprite.rs:101:37 [INFO] [stderr] | [INFO] [stderr] 101 | ... let mut color_index; [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/manager/sprite.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | let mut byte_folder = ByteFolder::new(bytes.into_iter()); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SHAPE_GAP` [INFO] [stderr] --> src/gui.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 97 | const SHAPE_GAP: conrod::Scalar = 50.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SUBTITLE_SIZE` [INFO] [stderr] --> src/gui.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | const SUBTITLE_SIZE: conrod::FontSize = 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PHI_PALETTE` [INFO] [stderr] --> src/data.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub const PHI_PALETTE: i32 = 0x47AB78; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DUST_CLOUD_PALETTE` [INFO] [stderr] --> src/data.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub const DUST_CLOUD_PALETTE: i32 = 0xBF2058; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SONIC_MINE_PALETTE` [INFO] [stderr] --> src/data.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub const SONIC_MINE_PALETTE: i32 = 0xBF20D8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TAILS_BLASTER_PALETTE` [INFO] [stderr] --> src/data.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub const TAILS_BLASTER_PALETTE: i32 = 0xBF2098; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `SHIELD_PALETTE` [INFO] [stderr] --> src/data.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub const SHIELD_PALETTE: i32 = 0xBF2078; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `EMERL_DATA` [INFO] [stderr] --> src/data.rs:104:1 [INFO] [stderr] | [INFO] [stderr] 104 | / pub const EMERL_DATA: Character = Character { [INFO] [stderr] 105 | | name: "Emerl", [INFO] [stderr] 106 | | palette_offset: 0x47AB38, [INFO] [stderr] 107 | | text_offsets: (0x206104, 0x20B131), [INFO] [stderr] 108 | | sprite_offset: 0x787D18, [INFO] [stderr] 109 | | sprite_frames: &[-1], [INFO] [stderr] 110 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_1` [INFO] [stderr] --> src/color.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | const PURPLE_1: Color = Color { r: 255, g: 0, b: 250 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_2` [INFO] [stderr] --> src/color.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const PURPLE_2: Color = Color { r: 185, g: 0, b: 255 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `PURPLE_3` [INFO] [stderr] --> src/color.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const PURPLE_3: Color = Color { r: 185, g: 0, b: 185 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `print_palette` [INFO] [stderr] --> src/manager/palette.rs:87:12 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn print_palette(&mut self, character: &Character) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_frames` [INFO] [stderr] --> src/manager/sprite.rs:145:12 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn get_frames(&self, palette: &[Color]) -> Vec, Vec>> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `to_image` [INFO] [stderr] --> src/manager/sprite.rs:160:12 [INFO] [stderr] | [INFO] [stderr] 160 | pub fn to_image(&self, palette: &[Color]) -> ImageBuffer, Vec> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `store_image` [INFO] [stderr] --> src/manager/sprite.rs:307:12 [INFO] [stderr] | [INFO] [stderr] 307 | pub fn store_image(&mut self, palette_manager: &mut palette::PaletteManager, image: &mut ImageBuffer, Vec>, character: &Character) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `write_spritesheets` [INFO] [stderr] --> src/manager/sprite.rs:314:12 [INFO] [stderr] | [INFO] [stderr] 314 | pub fn write_spritesheets(&mut self) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `save_spritesheet` [INFO] [stderr] --> src/manager/sprite.rs:359:12 [INFO] [stderr] | [INFO] [stderr] 359 | pub fn save_spritesheet(&self, palette_manager: &mut palette::PaletteManager, character: &Character) -> Result<(), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 44 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.47s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/sbrx-cb81a3ae4ec0baa6 [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 [INFO] [stdout] [INFO] running `"docker" "inspect" "a3b88d3045f5d815d38a30200a00de9638e45a9f7ecc5a3d836fcd005c103be5"` [INFO] running `"docker" "rm" "-f" "a3b88d3045f5d815d38a30200a00de9638e45a9f7ecc5a3d836fcd005c103be5"` [INFO] [stdout] a3b88d3045f5d815d38a30200a00de9638e45a9f7ecc5a3d836fcd005c103be5