[INFO] crate flo 0.1.0 is already in cache [INFO] testing flo-0.1.0 against 1.44.0 for beta-1.45-1 [INFO] extracting crate flo 0.1.0 into /workspace/builds/worker-5/source [INFO] validating manifest of crates.io crate flo 0.1.0 on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate flo 0.1.0 [INFO] finished tweaking crates.io crate flo 0.1.0 [INFO] tweaked toml for crates.io crate flo 0.1.0 written to /workspace/builds/worker-5/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [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=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.44.0" "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] 687d0cfbbc0d577cd7d11d53cc13f3045d74dce21382447f88760e240590b645 [INFO] running `"docker" "start" "-a" "687d0cfbbc0d577cd7d11d53cc13f3045d74dce21382447f88760e240590b645"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling flo_float_encoder v0.1.0 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling png v0.11.0 [INFO] [stderr] Compiling flo_binding v0.1.2 [INFO] [stderr] Compiling rulinalg v0.4.2 [INFO] [stderr] Compiling flo_curves v0.1.0 [INFO] [stderr] Compiling flo_canvas v0.1.0 [INFO] [stderr] Compiling flo_ui v0.1.0 [INFO] [stderr] Compiling flo_animation v0.1.0 [INFO] [stderr] Compiling flo v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/menu_controller.rs:19:51 [INFO] [stderr] | [INFO] [stderr] 19 | tool_controllers: Mutex>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [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/editor/menu_controller.rs:97:57 [INFO] [stderr] | [INFO] [stderr] 97 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:72 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(f32, f32) -> Box ()+Send+Sync>+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:92 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:100 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:43 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:51 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:356:38 [INFO] [stderr] | [INFO] [stderr] 356 | fn draw_frame_indicator(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:376:43 [INFO] [stderr] | [INFO] [stderr] 376 | fn draw_frame_indicator_line(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:486:43 [INFO] [stderr] | [INFO] [stderr] 486 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:61:45 [INFO] [stderr] | [INFO] [stderr] 61 | fn create_ui(tool_sets: Binding>>>, viewmodel: Arc, images: Arc>) -> BindRef { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:183:43 [INFO] [stderr] | [INFO] [stderr] 183 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:37:48 [INFO] [stderr] | [INFO] [stderr] 37 | subcontrollers: HashMap> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | let mut subcontrollers: HashMap> = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | layer_frame: Arc, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:114:99 [INFO] [stderr] | [INFO] [stderr] 114 | fn relay_drawing_for_overlay>(&mut self, overlay: u32, gc: &mut GraphicsPrimitives, drawing: DrawIter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:224:44 [INFO] [stderr] | [INFO] [stderr] 224 | fn draw_background(&mut self, gc: &mut GraphicsPrimitives, (width, height): (f64, f64)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:356:47 [INFO] [stderr] | [INFO] [stderr] 356 | pub fn annotate_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, draw_annotations: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:400:48 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn commit_to_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, commit_drawing: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:51:112 [INFO] [stderr] | [INFO] [stderr] 51 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:58:100 [INFO] [stderr] | [INFO] [stderr] 58 | fn actions_for_model(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:86 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:139 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:71:87 [INFO] [stderr] | [INFO] [stderr] 71 | impl PartialEq for Tool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:72:26 [INFO] [stderr] | [INFO] [stderr] 72 | fn eq(&self, other: &Tool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | impl PartialEq for ToolSet { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:26:26 [INFO] [stderr] | [INFO] [stderr] 26 | fn eq(&self, other: &ToolSet) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:22:26 [INFO] [stderr] | [INFO] [stderr] 22 | pub type FloTool = Tool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct GenericToolData(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct GenericToolModel(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:144:115 [INFO] [stderr] | [INFO] [stderr] 144 | fn create_menu_controller(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:150:103 [INFO] [stderr] | [INFO] [stderr] 150 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:153:43 [INFO] [stderr] | [INFO] [stderr] 153 | .map(move |tool_model| -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:87 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:141 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | model_actions: Option, Error=()>+Send>>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:77:44 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn model_actions(&mut self) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:97:110 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn actions_for_input>>(&mut self, input: Iter) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:20:31 [INFO] [stderr] | [INFO] [stderr] 20 | frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | frame: Option>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:271:112 [INFO] [stderr] | [INFO] [stderr] 271 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &SelectModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:278:98 [INFO] [stderr] | [INFO] [stderr] 278 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &SelectModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:79 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:128 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:34:103 [INFO] [stderr] | [INFO] [stderr] 34 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &()) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:76 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:117 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:113:108 [INFO] [stderr] | [INFO] [stderr] 113 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:120:95 [INFO] [stderr] | [INFO] [stderr] 120 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:80 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:126 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:57:108 [INFO] [stderr] | [INFO] [stderr] 57 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:61:95 [INFO] [stderr] | [INFO] [stderr] 61 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:79 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:125 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | let ink: &Tool = &self.ink; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:317:43 [INFO] [stderr] | [INFO] [stderr] 317 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:321:57 [INFO] [stderr] | [INFO] [stderr] 321 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/eraser.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/color_picker_controller.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:251:43 [INFO] [stderr] | [INFO] [stderr] 251 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:255:58 [INFO] [stderr] | [INFO] [stderr] 255 | fn get_subcontroller(&self, _id: &str) -> Option> { None } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | pub tool_sets: Binding>>>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | let default_tool_sets: Vec>> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:73:148 [INFO] [stderr] | [INFO] [stderr] 73 | fn effective_tool(selected_tool: Binding>>>, current_pointer: Binding<(PaintDevice, i32)>, tool_sets: Binding>>>) -> BindRef>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/layer.rs:23:39 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new<'a>(layer: &Reader<'a, Layer>) -> LayerModel { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/frame.rs:18:35 [INFO] [stderr] | [INFO] [stderr] 18 | pub frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:40:76 [INFO] [stderr] | [INFO] [stderr] 40 | fn get_layer_with_id<'a>(&'a self, layer_id: u64) -> Option> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_log<'a>(&'a self) -> Reader<'a, EditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | fn edit<'a>(&'a self) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:95:27 [INFO] [stderr] | [INFO] [stderr] 95 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:102:62 [INFO] [stderr] | [INFO] [stderr] 102 | fn edit_layer<'a>(&'a self, layer_id: u64) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:133:27 [INFO] [stderr] | [INFO] [stderr] 133 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/standard_tools/eraser.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | let mut model = InkModel::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/model/frame.rs:68:35 [INFO] [stderr] | [INFO] [stderr] 68 | Entry::Vacant(mut vacant) => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LAYER_PANEL_WIDTH` [INFO] [stderr] --> src/editor/timeline_controller.rs:43:1 [INFO] [stderr] | [INFO] [stderr] 43 | const LAYER_PANEL_WIDTH: f32 = 256.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Select` [INFO] [stderr] --> src/standard_tools/select.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | Select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RubberBand` [INFO] [stderr] --> src/standard_tools/select.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | RubberBand, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Drag` [INFO] [stderr] --> src/standard_tools/select.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | Drag [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_initial_position` [INFO] [stderr] --> src/standard_tools/select.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | fn with_initial_position(&self, new_initial_position: RawPoint) -> SelectData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 85 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 13.55s [INFO] running `"docker" "inspect" "687d0cfbbc0d577cd7d11d53cc13f3045d74dce21382447f88760e240590b645"` [INFO] running `"docker" "rm" "-f" "687d0cfbbc0d577cd7d11d53cc13f3045d74dce21382447f88760e240590b645"` [INFO] [stdout] 687d0cfbbc0d577cd7d11d53cc13f3045d74dce21382447f88760e240590b645 [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=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.44.0" "test" "--frozen" "--no-run"` [INFO] [stdout] a31003a10d05d9e7a21a32264e8460272d410116bfa993e3f0f4163f1e119940 [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" "a31003a10d05d9e7a21a32264e8460272d410116bfa993e3f0f4163f1e119940"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling flo v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/menu_controller.rs:19:51 [INFO] [stderr] | [INFO] [stderr] 19 | tool_controllers: Mutex>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [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/editor/menu_controller.rs:97:57 [INFO] [stderr] | [INFO] [stderr] 97 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:72 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(f32, f32) -> Box ()+Send+Sync>+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:92 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:100 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:43 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:51 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:356:38 [INFO] [stderr] | [INFO] [stderr] 356 | fn draw_frame_indicator(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:376:43 [INFO] [stderr] | [INFO] [stderr] 376 | fn draw_frame_indicator_line(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:486:43 [INFO] [stderr] | [INFO] [stderr] 486 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:61:45 [INFO] [stderr] | [INFO] [stderr] 61 | fn create_ui(tool_sets: Binding>>>, viewmodel: Arc, images: Arc>) -> BindRef { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:183:43 [INFO] [stderr] | [INFO] [stderr] 183 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:37:48 [INFO] [stderr] | [INFO] [stderr] 37 | subcontrollers: HashMap> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | let mut subcontrollers: HashMap> = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | layer_frame: Arc, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:114:99 [INFO] [stderr] | [INFO] [stderr] 114 | fn relay_drawing_for_overlay>(&mut self, overlay: u32, gc: &mut GraphicsPrimitives, drawing: DrawIter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:224:44 [INFO] [stderr] | [INFO] [stderr] 224 | fn draw_background(&mut self, gc: &mut GraphicsPrimitives, (width, height): (f64, f64)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:356:47 [INFO] [stderr] | [INFO] [stderr] 356 | pub fn annotate_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, draw_annotations: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:400:48 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn commit_to_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, commit_drawing: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:51:112 [INFO] [stderr] | [INFO] [stderr] 51 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:58:100 [INFO] [stderr] | [INFO] [stderr] 58 | fn actions_for_model(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:86 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:139 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:71:87 [INFO] [stderr] | [INFO] [stderr] 71 | impl PartialEq for Tool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:72:26 [INFO] [stderr] | [INFO] [stderr] 72 | fn eq(&self, other: &Tool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | impl PartialEq for ToolSet { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:26:26 [INFO] [stderr] | [INFO] [stderr] 26 | fn eq(&self, other: &ToolSet) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:22:26 [INFO] [stderr] | [INFO] [stderr] 22 | pub type FloTool = Tool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct GenericToolData(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct GenericToolModel(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:144:115 [INFO] [stderr] | [INFO] [stderr] 144 | fn create_menu_controller(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:150:103 [INFO] [stderr] | [INFO] [stderr] 150 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:153:43 [INFO] [stderr] | [INFO] [stderr] 153 | .map(move |tool_model| -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:87 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:141 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | model_actions: Option, Error=()>+Send>>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:77:44 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn model_actions(&mut self) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:97:110 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn actions_for_input>>(&mut self, input: Iter) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:20:31 [INFO] [stderr] | [INFO] [stderr] 20 | frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | frame: Option>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:271:112 [INFO] [stderr] | [INFO] [stderr] 271 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &SelectModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:278:98 [INFO] [stderr] | [INFO] [stderr] 278 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &SelectModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:79 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:128 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:34:103 [INFO] [stderr] | [INFO] [stderr] 34 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &()) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:76 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:117 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:113:108 [INFO] [stderr] | [INFO] [stderr] 113 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:120:95 [INFO] [stderr] | [INFO] [stderr] 120 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:80 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:126 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:57:108 [INFO] [stderr] | [INFO] [stderr] 57 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:61:95 [INFO] [stderr] | [INFO] [stderr] 61 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:79 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:125 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | let ink: &Tool = &self.ink; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:317:43 [INFO] [stderr] | [INFO] [stderr] 317 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:321:57 [INFO] [stderr] | [INFO] [stderr] 321 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/eraser.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/color_picker_controller.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:251:43 [INFO] [stderr] | [INFO] [stderr] 251 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:255:58 [INFO] [stderr] | [INFO] [stderr] 255 | fn get_subcontroller(&self, _id: &str) -> Option> { None } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | pub tool_sets: Binding>>>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | let default_tool_sets: Vec>> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:73:148 [INFO] [stderr] | [INFO] [stderr] 73 | fn effective_tool(selected_tool: Binding>>>, current_pointer: Binding<(PaintDevice, i32)>, tool_sets: Binding>>>) -> BindRef>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/layer.rs:23:39 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new<'a>(layer: &Reader<'a, Layer>) -> LayerModel { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/frame.rs:18:35 [INFO] [stderr] | [INFO] [stderr] 18 | pub frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:40:76 [INFO] [stderr] | [INFO] [stderr] 40 | fn get_layer_with_id<'a>(&'a self, layer_id: u64) -> Option> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_log<'a>(&'a self) -> Reader<'a, EditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | fn edit<'a>(&'a self) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:95:27 [INFO] [stderr] | [INFO] [stderr] 95 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:102:62 [INFO] [stderr] | [INFO] [stderr] 102 | fn edit_layer<'a>(&'a self, layer_id: u64) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:133:27 [INFO] [stderr] | [INFO] [stderr] 133 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/standard_tools/eraser.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | let mut model = InkModel::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/model/frame.rs:68:35 [INFO] [stderr] | [INFO] [stderr] 68 | Entry::Vacant(mut vacant) => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LAYER_PANEL_WIDTH` [INFO] [stderr] --> src/editor/timeline_controller.rs:43:1 [INFO] [stderr] | [INFO] [stderr] 43 | const LAYER_PANEL_WIDTH: f32 = 256.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Select` [INFO] [stderr] --> src/standard_tools/select.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | Select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RubberBand` [INFO] [stderr] --> src/standard_tools/select.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | RubberBand, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Drag` [INFO] [stderr] --> src/standard_tools/select.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | Drag [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_initial_position` [INFO] [stderr] --> src/standard_tools/select.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | fn with_initial_position(&self, new_initial_position: RawPoint) -> SelectData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 85 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/menu_controller.rs:19:51 [INFO] [stderr] | [INFO] [stderr] 19 | tool_controllers: Mutex>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [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/editor/menu_controller.rs:97:57 [INFO] [stderr] | [INFO] [stderr] 97 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:72 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(f32, f32) -> Box ()+Send+Sync>+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:92 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:100 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:43 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:51 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:356:38 [INFO] [stderr] | [INFO] [stderr] 356 | fn draw_frame_indicator(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:376:43 [INFO] [stderr] | [INFO] [stderr] 376 | fn draw_frame_indicator_line(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:486:43 [INFO] [stderr] | [INFO] [stderr] 486 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:61:45 [INFO] [stderr] | [INFO] [stderr] 61 | fn create_ui(tool_sets: Binding>>>, viewmodel: Arc, images: Arc>) -> BindRef { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:183:43 [INFO] [stderr] | [INFO] [stderr] 183 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:37:48 [INFO] [stderr] | [INFO] [stderr] 37 | subcontrollers: HashMap> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | let mut subcontrollers: HashMap> = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | layer_frame: Arc, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:114:99 [INFO] [stderr] | [INFO] [stderr] 114 | fn relay_drawing_for_overlay>(&mut self, overlay: u32, gc: &mut GraphicsPrimitives, drawing: DrawIter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:224:44 [INFO] [stderr] | [INFO] [stderr] 224 | fn draw_background(&mut self, gc: &mut GraphicsPrimitives, (width, height): (f64, f64)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:356:47 [INFO] [stderr] | [INFO] [stderr] 356 | pub fn annotate_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, draw_annotations: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:400:48 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn commit_to_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, commit_drawing: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:51:112 [INFO] [stderr] | [INFO] [stderr] 51 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:58:100 [INFO] [stderr] | [INFO] [stderr] 58 | fn actions_for_model(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:86 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:139 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:71:87 [INFO] [stderr] | [INFO] [stderr] 71 | impl PartialEq for Tool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:72:26 [INFO] [stderr] | [INFO] [stderr] 72 | fn eq(&self, other: &Tool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | impl PartialEq for ToolSet { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:26:26 [INFO] [stderr] | [INFO] [stderr] 26 | fn eq(&self, other: &ToolSet) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:22:26 [INFO] [stderr] | [INFO] [stderr] 22 | pub type FloTool = Tool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct GenericToolData(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct GenericToolModel(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:144:115 [INFO] [stderr] | [INFO] [stderr] 144 | fn create_menu_controller(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:150:103 [INFO] [stderr] | [INFO] [stderr] 150 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:153:43 [INFO] [stderr] | [INFO] [stderr] 153 | .map(move |tool_model| -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:87 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:141 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:201:80 [INFO] [stderr] | [INFO] [stderr] 201 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:201:122 [INFO] [stderr] | [INFO] [stderr] 201 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/tools/generic_tool.rs:269:81 [INFO] [stderr] | [INFO] [stderr] 269 | let model = generic_tool.create_model(Arc::clone(&flo_model));; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | model_actions: Option, Error=()>+Send>>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:77:44 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn model_actions(&mut self) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:97:110 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn actions_for_input>>(&mut self, input: Iter) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:20:31 [INFO] [stderr] | [INFO] [stderr] 20 | frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | frame: Option>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:271:112 [INFO] [stderr] | [INFO] [stderr] 271 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &SelectModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:278:98 [INFO] [stderr] | [INFO] [stderr] 278 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &SelectModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:79 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:128 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:34:103 [INFO] [stderr] | [INFO] [stderr] 34 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &()) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:76 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:117 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:113:108 [INFO] [stderr] | [INFO] [stderr] 113 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:120:95 [INFO] [stderr] | [INFO] [stderr] 120 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:80 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:126 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:57:108 [INFO] [stderr] | [INFO] [stderr] 57 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:61:95 [INFO] [stderr] | [INFO] [stderr] 61 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:79 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:125 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | let ink: &Tool = &self.ink; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:317:43 [INFO] [stderr] | [INFO] [stderr] 317 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:321:57 [INFO] [stderr] | [INFO] [stderr] 321 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/eraser.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/color_picker_controller.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:251:43 [INFO] [stderr] | [INFO] [stderr] 251 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:255:58 [INFO] [stderr] | [INFO] [stderr] 255 | fn get_subcontroller(&self, _id: &str) -> Option> { None } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | pub tool_sets: Binding>>>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | let default_tool_sets: Vec>> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:73:148 [INFO] [stderr] | [INFO] [stderr] 73 | fn effective_tool(selected_tool: Binding>>>, current_pointer: Binding<(PaintDevice, i32)>, tool_sets: Binding>>>) -> BindRef>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/layer.rs:23:39 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new<'a>(layer: &Reader<'a, Layer>) -> LayerModel { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/frame.rs:18:35 [INFO] [stderr] | [INFO] [stderr] 18 | pub frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:40:76 [INFO] [stderr] | [INFO] [stderr] 40 | fn get_layer_with_id<'a>(&'a self, layer_id: u64) -> Option> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_log<'a>(&'a self) -> Reader<'a, EditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | fn edit<'a>(&'a self) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:95:27 [INFO] [stderr] | [INFO] [stderr] 95 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:102:62 [INFO] [stderr] | [INFO] [stderr] 102 | fn edit_layer<'a>(&'a self, layer_id: u64) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:133:27 [INFO] [stderr] | [INFO] [stderr] 133 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/standard_tools/eraser.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | let mut model = InkModel::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/model/frame.rs:68:35 [INFO] [stderr] | [INFO] [stderr] 68 | Entry::Vacant(mut vacant) => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LAYER_PANEL_WIDTH` [INFO] [stderr] --> src/editor/timeline_controller.rs:43:1 [INFO] [stderr] | [INFO] [stderr] 43 | const LAYER_PANEL_WIDTH: f32 = 256.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Select` [INFO] [stderr] --> src/standard_tools/select.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | Select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RubberBand` [INFO] [stderr] --> src/standard_tools/select.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | RubberBand, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Drag` [INFO] [stderr] --> src/standard_tools/select.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | Drag [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_initial_position` [INFO] [stderr] --> src/standard_tools/select.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | fn with_initial_position(&self, new_initial_position: RawPoint) -> SelectData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 88 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 11.00s [INFO] running `"docker" "inspect" "a31003a10d05d9e7a21a32264e8460272d410116bfa993e3f0f4163f1e119940"` [INFO] running `"docker" "rm" "-f" "a31003a10d05d9e7a21a32264e8460272d410116bfa993e3f0f4163f1e119940"` [INFO] [stdout] a31003a10d05d9e7a21a32264e8460272d410116bfa993e3f0f4163f1e119940 [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=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.44.0" "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] 74a7466a599aeea86006fe32f58dc7928cdde29d8599f1245ac1e7b930370148 [INFO] running `"docker" "start" "-a" "74a7466a599aeea86006fe32f58dc7928cdde29d8599f1245ac1e7b930370148"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/menu_controller.rs:19:51 [INFO] [stderr] | [INFO] [stderr] 19 | tool_controllers: Mutex>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [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/editor/menu_controller.rs:97:57 [INFO] [stderr] | [INFO] [stderr] 97 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:72 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(f32, f32) -> Box ()+Send+Sync>+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:92 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:100 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:43 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:51 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:356:38 [INFO] [stderr] | [INFO] [stderr] 356 | fn draw_frame_indicator(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:376:43 [INFO] [stderr] | [INFO] [stderr] 376 | fn draw_frame_indicator_line(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:486:43 [INFO] [stderr] | [INFO] [stderr] 486 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:61:45 [INFO] [stderr] | [INFO] [stderr] 61 | fn create_ui(tool_sets: Binding>>>, viewmodel: Arc, images: Arc>) -> BindRef { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:183:43 [INFO] [stderr] | [INFO] [stderr] 183 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:37:48 [INFO] [stderr] | [INFO] [stderr] 37 | subcontrollers: HashMap> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | let mut subcontrollers: HashMap> = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | layer_frame: Arc, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:114:99 [INFO] [stderr] | [INFO] [stderr] 114 | fn relay_drawing_for_overlay>(&mut self, overlay: u32, gc: &mut GraphicsPrimitives, drawing: DrawIter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:224:44 [INFO] [stderr] | [INFO] [stderr] 224 | fn draw_background(&mut self, gc: &mut GraphicsPrimitives, (width, height): (f64, f64)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:356:47 [INFO] [stderr] | [INFO] [stderr] 356 | pub fn annotate_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, draw_annotations: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:400:48 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn commit_to_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, commit_drawing: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:51:112 [INFO] [stderr] | [INFO] [stderr] 51 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:58:100 [INFO] [stderr] | [INFO] [stderr] 58 | fn actions_for_model(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:86 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:139 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:71:87 [INFO] [stderr] | [INFO] [stderr] 71 | impl PartialEq for Tool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:72:26 [INFO] [stderr] | [INFO] [stderr] 72 | fn eq(&self, other: &Tool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | impl PartialEq for ToolSet { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:26:26 [INFO] [stderr] | [INFO] [stderr] 26 | fn eq(&self, other: &ToolSet) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:22:26 [INFO] [stderr] | [INFO] [stderr] 22 | pub type FloTool = Tool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct GenericToolData(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct GenericToolModel(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:144:115 [INFO] [stderr] | [INFO] [stderr] 144 | fn create_menu_controller(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:150:103 [INFO] [stderr] | [INFO] [stderr] 150 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:153:43 [INFO] [stderr] | [INFO] [stderr] 153 | .map(move |tool_model| -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:87 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:141 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | model_actions: Option, Error=()>+Send>>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:77:44 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn model_actions(&mut self) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:97:110 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn actions_for_input>>(&mut self, input: Iter) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:20:31 [INFO] [stderr] | [INFO] [stderr] 20 | frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | frame: Option>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:271:112 [INFO] [stderr] | [INFO] [stderr] 271 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &SelectModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:278:98 [INFO] [stderr] | [INFO] [stderr] 278 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &SelectModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:79 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:128 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:34:103 [INFO] [stderr] | [INFO] [stderr] 34 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &()) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:76 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:117 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:113:108 [INFO] [stderr] | [INFO] [stderr] 113 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:120:95 [INFO] [stderr] | [INFO] [stderr] 120 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:80 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:126 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:57:108 [INFO] [stderr] | [INFO] [stderr] 57 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:61:95 [INFO] [stderr] | [INFO] [stderr] 61 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:79 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:125 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | let ink: &Tool = &self.ink; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:317:43 [INFO] [stderr] | [INFO] [stderr] 317 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:321:57 [INFO] [stderr] | [INFO] [stderr] 321 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/eraser.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/color_picker_controller.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:251:43 [INFO] [stderr] | [INFO] [stderr] 251 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:255:58 [INFO] [stderr] | [INFO] [stderr] 255 | fn get_subcontroller(&self, _id: &str) -> Option> { None } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | pub tool_sets: Binding>>>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | let default_tool_sets: Vec>> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:73:148 [INFO] [stderr] | [INFO] [stderr] 73 | fn effective_tool(selected_tool: Binding>>>, current_pointer: Binding<(PaintDevice, i32)>, tool_sets: Binding>>>) -> BindRef>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/layer.rs:23:39 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new<'a>(layer: &Reader<'a, Layer>) -> LayerModel { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/frame.rs:18:35 [INFO] [stderr] | [INFO] [stderr] 18 | pub frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:40:76 [INFO] [stderr] | [INFO] [stderr] 40 | fn get_layer_with_id<'a>(&'a self, layer_id: u64) -> Option> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_log<'a>(&'a self) -> Reader<'a, EditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | fn edit<'a>(&'a self) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:95:27 [INFO] [stderr] | [INFO] [stderr] 95 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:102:62 [INFO] [stderr] | [INFO] [stderr] 102 | fn edit_layer<'a>(&'a self, layer_id: u64) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:133:27 [INFO] [stderr] | [INFO] [stderr] 133 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/standard_tools/eraser.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | let mut model = InkModel::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/model/frame.rs:68:35 [INFO] [stderr] | [INFO] [stderr] 68 | Entry::Vacant(mut vacant) => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LAYER_PANEL_WIDTH` [INFO] [stderr] --> src/editor/timeline_controller.rs:43:1 [INFO] [stderr] | [INFO] [stderr] 43 | const LAYER_PANEL_WIDTH: f32 = 256.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Select` [INFO] [stderr] --> src/standard_tools/select.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | Select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RubberBand` [INFO] [stderr] --> src/standard_tools/select.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | RubberBand, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Drag` [INFO] [stderr] --> src/standard_tools/select.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | Drag [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_initial_position` [INFO] [stderr] --> src/standard_tools/select.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | fn with_initial_position(&self, new_initial_position: RawPoint) -> SelectData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 85 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/menu_controller.rs:19:51 [INFO] [stderr] | [INFO] [stderr] 19 | tool_controllers: Mutex>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [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/editor/menu_controller.rs:97:57 [INFO] [stderr] | [INFO] [stderr] 97 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:72 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(f32, f32) -> Box ()+Send+Sync>+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:92 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:214:100 [INFO] [stderr] | [INFO] [stderr] 214 | fn create_draw_keyframes_fn(timeline: &TimelineModel) -> Box Box ()+Send+Sync>+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:43 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut GraphicsPrimitives) -> ()+Send+Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:300:51 [INFO] [stderr] | [INFO] [stderr] 300 | fn draw_scale(x: f32, _y: f32) -> Box ()+Send+Sync> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:356:38 [INFO] [stderr] | [INFO] [stderr] 356 | fn draw_frame_indicator(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:376:43 [INFO] [stderr] | [INFO] [stderr] 376 | fn draw_frame_indicator_line(gc: &mut GraphicsPrimitives) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/timeline_controller.rs:486:43 [INFO] [stderr] | [INFO] [stderr] 486 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:61:45 [INFO] [stderr] | [INFO] [stderr] 61 | fn create_ui(tool_sets: Binding>>>, viewmodel: Arc, images: Arc>) -> BindRef { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/toolbox_controller.rs:183:43 [INFO] [stderr] | [INFO] [stderr] 183 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:37:48 [INFO] [stderr] | [INFO] [stderr] 37 | subcontrollers: HashMap> [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | let mut subcontrollers: HashMap> = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/editor/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | layer_frame: Arc, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:114:99 [INFO] [stderr] | [INFO] [stderr] 114 | fn relay_drawing_for_overlay>(&mut self, overlay: u32, gc: &mut GraphicsPrimitives, drawing: DrawIter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:224:44 [INFO] [stderr] | [INFO] [stderr] 224 | fn draw_background(&mut self, gc: &mut GraphicsPrimitives, (width, height): (f64, f64)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:356:47 [INFO] [stderr] | [INFO] [stderr] 356 | pub fn annotate_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, draw_annotations: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/animation_canvas/canvas_renderer.rs:400:48 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn commit_to_layer ()+Send>(&mut self, canvas: &BindingCanvas, layer_id: u64, commit_drawing: DrawFn) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GraphicsPrimitives` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:51:112 [INFO] [stderr] | [INFO] [stderr] 51 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:58:100 [INFO] [stderr] | [INFO] [stderr] 58 | fn actions_for_model(&self, _flo_model: Arc>, _tool_model: &Self::Model) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:86 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:65:139 [INFO] [stderr] | [INFO] [stderr] 65 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:71:87 [INFO] [stderr] | [INFO] [stderr] 71 | impl PartialEq for Tool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_trait.rs:72:26 [INFO] [stderr] | [INFO] [stderr] 72 | fn eq(&self, other: &Tool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | impl PartialEq for ToolSet { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_set.rs:26:26 [INFO] [stderr] | [INFO] [stderr] 26 | fn eq(&self, other: &ToolSet) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:22:26 [INFO] [stderr] | [INFO] [stderr] 22 | pub type FloTool = Tool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:45:38 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct GenericToolData(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:50:39 [INFO] [stderr] | [INFO] [stderr] 50 | pub struct GenericToolModel(Mutex>); [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Any+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:144:115 [INFO] [stderr] | [INFO] [stderr] 144 | fn create_menu_controller(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:150:103 [INFO] [stderr] | [INFO] [stderr] 150 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &GenericToolModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:153:43 [INFO] [stderr] | [INFO] [stderr] 153 | .map(move |tool_model| -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:87 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:160:141 [INFO] [stderr] | [INFO] [stderr] 160 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:201:80 [INFO] [stderr] | [INFO] [stderr] 201 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/generic_tool.rs:201:122 [INFO] [stderr] | [INFO] [stderr] 201 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/tools/generic_tool.rs:269:81 [INFO] [stderr] | [INFO] [stderr] 269 | let model = generic_tool.create_model(Arc::clone(&flo_model));; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | model_actions: Option, Error=()>+Send>>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:77:44 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn model_actions(&mut self) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/tools/tool_runner.rs:97:110 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn actions_for_input>>(&mut self, input: Iter) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:20:31 [INFO] [stderr] | [INFO] [stderr] 20 | frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | frame: Option>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:271:112 [INFO] [stderr] | [INFO] [stderr] 271 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &SelectModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:278:98 [INFO] [stderr] | [INFO] [stderr] 278 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &SelectModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:79 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/select.rs:342:128 [INFO] [stderr] | [INFO] [stderr] 342 | fn actions_for_input<'a>(&self, data: Option>, input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:34:103 [INFO] [stderr] | [INFO] [stderr] 34 | fn create_menu_controller(&self, _flo_model: Arc>, _tool_model: &()) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:76 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/adjust.rs:38:117 [INFO] [stderr] | [INFO] [stderr] 38 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pan.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:76 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/pencil.rs:32:117 [INFO] [stderr] | [INFO] [stderr] 32 | fn actions_for_input<'a>(&'a self, _data: Option>, _input: Box<'a+Iterator>>) -> Box>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:113:108 [INFO] [stderr] | [INFO] [stderr] 113 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:120:95 [INFO] [stderr] | [INFO] [stderr] 120 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:80 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/ink.rs:141:126 [INFO] [stderr] | [INFO] [stderr] 141 | fn actions_for_input<'a>(&'a self, _data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:57:108 [INFO] [stderr] | [INFO] [stderr] 57 | fn create_menu_controller(&self, _flo_model: Arc>, tool_model: &InkModel) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:61:95 [INFO] [stderr] | [INFO] [stderr] 61 | fn actions_for_model(&self, flo_model: Arc>, tool_model: &InkModel) -> Box, Error=()>+Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream, Error=()>+Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:79 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:79:125 [INFO] [stderr] | [INFO] [stderr] 79 | fn actions_for_input<'a>(&'a self, data: Option>, input: Box<'a+Iterator>>) -> Box<'a+Iterator>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+Iterator>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/standard_tools/eraser.rs:83:19 [INFO] [stderr] | [INFO] [stderr] 83 | let ink: &Tool = &self.ink; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Tool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:317:43 [INFO] [stderr] | [INFO] [stderr] 317 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/ink.rs:321:57 [INFO] [stderr] | [INFO] [stderr] 321 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menu/eraser.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/color_picker_controller.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | fn get_subcontroller(&self, id: &str) -> Option> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:251:43 [INFO] [stderr] | [INFO] [stderr] 251 | fn get_viewmodel(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn ViewModel` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/color/hsluv_picker_controller.rs:255:58 [INFO] [stderr] | [INFO] [stderr] 255 | fn get_subcontroller(&self, _id: &str) -> Option> { None } [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Controller` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | pub tool_sets: Binding>>>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | let default_tool_sets: Vec>> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/tools.rs:73:148 [INFO] [stderr] | [INFO] [stderr] 73 | fn effective_tool(selected_tool: Binding>>>, current_pointer: Binding<(PaintDevice, i32)>, tool_sets: Binding>>>) -> BindRef>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn ToolSet` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/layer.rs:23:39 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new<'a>(layer: &Reader<'a, Layer>) -> LayerModel { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/frame.rs:18:35 [INFO] [stderr] | [INFO] [stderr] 18 | pub frame: BindRef>>, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Frame` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:40:76 [INFO] [stderr] | [INFO] [stderr] 40 | fn get_layer_with_id<'a>(&'a self, layer_id: u64) -> Option> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Layer` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | fn get_log<'a>(&'a self) -> Reader<'a, EditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | fn edit<'a>(&'a self) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:95:27 [INFO] [stderr] | [INFO] [stderr] 95 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:102:62 [INFO] [stderr] | [INFO] [stderr] 102 | fn edit_layer<'a>(&'a self, layer_id: u64) -> Editor<'a, PendingEditLog> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PendingEditLog` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model/animation.rs:133:27 [INFO] [stderr] | [INFO] [stderr] 133 | let edit_log: Box<'a+PendingEditLog<_>> = Box::new(model_edit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn 'a+PendingEditLog<_>` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/standard_tools/eraser.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | let mut model = InkModel::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/model/frame.rs:68:35 [INFO] [stderr] | [INFO] [stderr] 68 | Entry::Vacant(mut vacant) => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LAYER_PANEL_WIDTH` [INFO] [stderr] --> src/editor/timeline_controller.rs:43:1 [INFO] [stderr] | [INFO] [stderr] 43 | const LAYER_PANEL_WIDTH: f32 = 256.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Select` [INFO] [stderr] --> src/standard_tools/select.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | Select, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RubberBand` [INFO] [stderr] --> src/standard_tools/select.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | RubberBand, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Drag` [INFO] [stderr] --> src/standard_tools/select.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | Drag [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_initial_position` [INFO] [stderr] --> src/standard_tools/select.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | fn with_initial_position(&self, new_initial_position: RawPoint) -> SelectData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 88 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.10s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/flo-28b4217742611943 [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test tools::generic_tool::test::data_survives_round_trip ... ok [INFO] [stdout] test model::animation::test::size_command_updates_size_binding ... ok [INFO] [stdout] test tools::generic_tool::test::model_survives_round_trip ... ok [INFO] [stdout] test tools::generic_tool::test::generates_generic_data_for_standard_data ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests flo [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" "74a7466a599aeea86006fe32f58dc7928cdde29d8599f1245ac1e7b930370148"` [INFO] running `"docker" "rm" "-f" "74a7466a599aeea86006fe32f58dc7928cdde29d8599f1245ac1e7b930370148"` [INFO] [stdout] 74a7466a599aeea86006fe32f58dc7928cdde29d8599f1245ac1e7b930370148