[INFO] crate micro-gui 0.1.0 is already in cache [INFO] testing micro-gui-0.1.0 against 1.38.0 for beta-1.39-1 [INFO] extracting crate micro-gui 0.1.0 into work/builds/worker-4/source [INFO] validating manifest of crates.io crate micro-gui 0.1.0 on toolchain 1.38.0 [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+1.38.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate micro-gui 0.1.0 [INFO] finished tweaking crates.io crate micro-gui 0.1.0 [INFO] tweaked toml for crates.io crate micro-gui 0.1.0 written to work/builds/worker-4/source/Cargo.toml [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+1.38.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/big/crater/work/cargo-home/bin/cargo" "+1.38.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/big/crater/work/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/big/crater/work/builds/worker-4/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" "+1.38.0" "build" "--frozen"` [INFO] [stdout] 680221d106053b8665b9e25dcc9afebd0a165acf1a6ecf33931c27db62f43673 [INFO] running `"docker" "start" "-a" "680221d106053b8665b9e25dcc9afebd0a165acf1a6ecf33931c27db62f43673"` [INFO] [stderr] Compiling sdl2-sys v0.30.0 [INFO] [stderr] Compiling sdl2 v0.30.0 [INFO] [stderr] Compiling micro-gui v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/layer.rs:12:31 [INFO] [stderr] | [INFO] [stderr] 12 | renderer: Option<&'a mut (Renderable + 'a)>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Renderable + 'a` [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/core/layer.rs:18:56 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new(bounds: Rect, renderer: Option<&'a mut (Renderable + 'a)>) -> Layer<'a, Pixel> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Renderable + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/layer.rs:35:71 [INFO] [stderr] | [INFO] [stderr] 35 | fn render(&mut self, graphics: &mut Graphics, buffer: &mut Buff) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:19:30 [INFO] [stderr] | [INFO] [stderr] 19 | on_load: Option<&'a mut (OnLoad + 'a)>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn OnLoad + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:20:32 [INFO] [stderr] | [INFO] [stderr] 20 | on_unload: Option<&'a mut (OnUnload + 'a)>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn OnUnload + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:21:31 [INFO] [stderr] | [INFO] [stderr] 21 | on_event: Option<&'a mut (OnEvent + 'a)> [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn OnEvent + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:41:62 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new(w: usize, h: usize, renderer: Option<&'a mut (Renderable + 'a)>) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Renderable + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:48:61 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn bind_handlers(&mut self, on_load: Option<&'a mut OnLoad>, on_unload: Option<&'a mut OnUnload>, on_event: Option<&'a mut OnEvent>) { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn OnLoad` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:48:96 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn bind_handlers(&mut self, on_load: Option<&'a mut OnLoad>, on_unload: Option<&'a mut OnUnload>, on_event: Option<&'a mut OnEvent>) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn OnUnload` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:48:132 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn bind_handlers(&mut self, on_load: Option<&'a mut OnLoad>, on_unload: Option<&'a mut OnUnload>, on_event: Option<&'a mut OnEvent>) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn OnEvent` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/window.rs:55:75 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn render(&mut self, graphics: &mut Graphics, buffer: &mut Buff) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/gui.rs:44:41 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn render(&mut self, buff: &mut Buff) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:17:71 [INFO] [stderr] | [INFO] [stderr] 17 | fn render(&mut self, graphics: &mut Graphics, buffer: &mut Buff); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:44:31 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn set(&self, b: &mut Buff, x: usize, y: usize, p: &Pixel) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:73:39 [INFO] [stderr] | [INFO] [stderr] 73 | pub fn draw_line(&self, buf: &mut Buff, p1: Point, p2: Point, p: &Pixel) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:133:37 [INFO] [stderr] | [INFO] [stderr] 133 | pub fn draw_rect(&self, b: &mut Buff, r: Rect, p: &Pixel) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:145:37 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn fill_rect(&self, b: &mut Buff, r: Rect, p: &Pixel) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:154:41 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn draw_polyline(&self, b: &mut Buff, points: &[Point], p: &Pixel) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/graphics/mod.rs:164:42 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn draw_ellipse(&self, buf: &mut Buff, r: Rect, p: &Pixel) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/widgets/demo.rs:23:71 [INFO] [stderr] | [INFO] [stderr] 23 | fn render(&mut self, graphics: &mut Graphics, buffer: &mut Buff) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Buff` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `limit` [INFO] [stderr] --> src/graphics/mod.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | fn limit(min: usize, max: usize, actual: usize) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [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/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.micro_gui_example.7xq36at9-cgu.9.rcgu.o" "-o" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599" "/opt/rustwide/target/debug/deps/micro_gui_example-75a659e22eafb599.ydctbk8nlyznvmv.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/libmicro_gui-71178fd2abfd38d6.rlib" "/opt/rustwide/target/debug/deps/libsdl2-e5375e6e550c9b54.rlib" "/opt/rustwide/target/debug/deps/librand-df37cf038f4c3201.rlib" "/opt/rustwide/target/debug/deps/librand-250eafcf18e8ca2a.rlib" "/opt/rustwide/target/debug/deps/libsdl2_sys-af47c5c0872d9935.rlib" "/opt/rustwide/target/debug/deps/libbitflags-8e02dfeceb8e06ce.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-1660a65f58d1cb98.rlib" "/opt/rustwide/target/debug/deps/liblibc-a3b13f6b27abcc70.rlib" "/opt/rustwide/target/debug/deps/libnum-9dbba59d754511b6.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-bbf34e9632c3a30c.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-dbac7e428283a153.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-a4ff9b7e87bbd905.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-12ce12f1efc08aa3.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-5d3cd1b3ddab72e4.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-f8222943dfd167e2.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-0cd00b2d3108cd48.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-485c05ba6ce1b438.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-63e6b1072426ba59.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-a421aff1d43911ee.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-3deef8ef4fe80dff.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-f65a176f0586269e.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-ad46d4080f4d7e57.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-da6c590582bf0885.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-837ca740df32db0a.rlib" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-db27c965e824589f.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/1.38.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-68a4f8466685ed76.rlib" "-Wl,-Bdynamic" "-lSDL2_image" "-lSDL2" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-lutil" [INFO] [stderr] = note: /usr/bin/ld: cannot find -lSDL2_image [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 `micro-gui`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "680221d106053b8665b9e25dcc9afebd0a165acf1a6ecf33931c27db62f43673"` [INFO] running `"docker" "rm" "-f" "680221d106053b8665b9e25dcc9afebd0a165acf1a6ecf33931c27db62f43673"` [INFO] [stdout] 680221d106053b8665b9e25dcc9afebd0a165acf1a6ecf33931c27db62f43673