[INFO] crate subscript 0.2.9 is already in cache [INFO] checking subscript-0.2.9 against master#45d050cde277b22a755847338f2acc2c7b834141 for pr-71393 [INFO] extracting crate subscript 0.2.9 into /workspace/builds/worker-6/source [INFO] validating manifest of crates.io crate subscript 0.2.9 on toolchain 45d050cde277b22a755847338f2acc2c7b834141 [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate subscript 0.2.9 [INFO] finished tweaking crates.io crate subscript 0.2.9 [INFO] tweaked toml for crates.io crate subscript 0.2.9 written to /workspace/builds/worker-6/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 407cd2011025d7ff9bccd1593fc68d3a79567081c1610ba8ff183a11b941ed3f [INFO] running `"docker" "start" "-a" "407cd2011025d7ff9bccd1593fc68d3a79567081c1610ba8ff183a11b941ed3f"` [INFO] [stderr] Compiling syn v1.0.18 [INFO] [stderr] Compiling autocfg v0.1.7 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.61 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling bumpalo v3.2.1 [INFO] [stderr] Compiling wasm-bindgen v0.2.61 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Checking futures v0.1.29 [INFO] [stderr] Checking either v1.5.3 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking rand_jitter v0.1.4 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.61 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.61 [INFO] [stderr] Compiling serde_derive v1.0.106 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.61 [INFO] [stderr] Checking js-sys v0.3.38 [INFO] [stderr] Checking console_error_panic_hook v0.1.6 [INFO] [stderr] Checking web-sys v0.3.38 [INFO] [stderr] Checking wasm-bindgen-futures v0.3.27 [INFO] [stderr] Checking serde_json v1.0.52 [INFO] [stderr] Checking uuid v0.7.4 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Checking subscript v0.2.9 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:89:86 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn request_animation_frame(&self, callback: impl FnOnce() + 'static) -> Closure { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [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/backend/browser/apis.rs:90:28 [INFO] [stderr] | [INFO] [stderr] 90 | let callback: Closure = Closure::once(callback); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:97:88 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn set_timeout(&self, timeout: i32, callback: impl FnOnce() + 'static) -> Closure { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:98:28 [INFO] [stderr] | [INFO] [stderr] 98 | let callback: Closure = Closure::once(callback); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:106:67 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:111:70 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:24:29 [INFO] [stderr] | [INFO] [stderr] 24 | fn box_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:30:60 [INFO] [stderr] | [INFO] [stderr] 30 | fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:35:63 [INFO] [stderr] | [INFO] [stderr] 35 | fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:40:33 [INFO] [stderr] | [INFO] [stderr] 40 | fn append_child(&self, child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:45:33 [INFO] [stderr] | [INFO] [stderr] 45 | fn remove_child(&self, child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:50:38 [INFO] [stderr] | [INFO] [stderr] 50 | fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:50:59 [INFO] [stderr] | [INFO] [stderr] 50 | fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:55:38 [INFO] [stderr] | [INFO] [stderr] 55 | fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:55:59 [INFO] [stderr] | [INFO] [stderr] 55 | fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:80:74 [INFO] [stderr] | [INFO] [stderr] 80 | fn insert_adjacent_element(&self, position: AdjacentPosition, element: &ElementApi) { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElementApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:136:29 [INFO] [stderr] | [INFO] [stderr] 136 | fn box_clone(&self) -> Box {Box::new(self.clone())} [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:140:29 [INFO] [stderr] | [INFO] [stderr] 140 | fn box_clone(&self) -> Box {Box::new(self.clone())} [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:144:29 [INFO] [stderr] | [INFO] [stderr] 144 | fn box_clone(&self) -> Box {Box::new(self.clone())} [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:284:26 [INFO] [stderr] | [INFO] [stderr] 284 | pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:326:25 [INFO] [stderr] | [INFO] [stderr] 326 | callback: Option>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(JsValue)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:330:23 [INFO] [stderr] | [INFO] [stderr] 330 | pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:341:34 [INFO] [stderr] | [INFO] [stderr] 341 | pub fn new_with_fn(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings, callback: impl Fn(JsValue) + 'static) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:31:35 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn new_text_signal(cell: &Reactive) -> Self [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:60:38 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn new_toggle_control(pred: &Reactive, value: View) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:67:64 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn new_dynamic_control(input: &Reactive, f: impl Fn(&T) -> View + 'static) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:104:41 [INFO] [stderr] | [INFO] [stderr] 104 | pub fn text_cell(&mut self, value: &Reactive) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:21:43 [INFO] [stderr] | [INFO] [stderr] 21 | pub rightward: &'a RefCell>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:25:54 [INFO] [stderr] | [INFO] [stderr] 25 | pub(crate) fn get_rightward(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:26:32 [INFO] [stderr] | [INFO] [stderr] 26 | let inner: &Option> = &self.rightward.borrow(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:34:38 [INFO] [stderr] | [INFO] [stderr] 34 | pub(crate) fn insert_child<'a>(new: &browser::NodeApi, env: &ElementEnv<'a>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:272:58 [INFO] [stderr] | [INFO] [stderr] 272 | pub(crate) fn get_first_dom_ref(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:273:81 [INFO] [stderr] | [INFO] [stderr] 273 | fn check_children(children: &Vec>) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:274:40 [INFO] [stderr] | [INFO] [stderr] 274 | let mut result: Option> = None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:284:44 [INFO] [stderr] | [INFO] [stderr] 284 | let mut result: Option> = None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/extras.rs:50:42 [INFO] [stderr] | [INFO] [stderr] 50 | pub(crate) fn inspect(&self, f: &mut FnMut(&Dom)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:288:44 [INFO] [stderr] | [INFO] [stderr] 288 | pub struct EventHandler(pub(crate) Rc>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventHandlerImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:341:29 [INFO] [stderr] | [INFO] [stderr] 341 | pub struct OnClick(Box Msg>); // click [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:342:33 [INFO] [stderr] | [INFO] [stderr] 342 | pub struct OnMouseDown(BoxMsg>); // mousedown [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:343:31 [INFO] [stderr] | [INFO] [stderr] 343 | pub struct OnMouseUp(BoxMsg>); // mouseup [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:344:34 [INFO] [stderr] | [INFO] [stderr] 344 | pub struct OnMouseEnter(BoxMsg>); // mouseenter [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:345:34 [INFO] [stderr] | [INFO] [stderr] 345 | pub struct OnMouseLeave(BoxMsg>); // mouseleave [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:346:33 [INFO] [stderr] | [INFO] [stderr] 346 | pub struct OnMouseOver(BoxMsg>); // mouseover [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:347:32 [INFO] [stderr] | [INFO] [stderr] 347 | pub struct OnMouseOut(BoxMsg>); // mouseout [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:351:29 [INFO] [stderr] | [INFO] [stderr] 351 | pub struct OnInput(BoxMsg>); // input [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String)->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:352:29 [INFO] [stderr] | [INFO] [stderr] 352 | pub struct OnCheck(BoxMsg>); // click [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(bool)->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:353:30 [INFO] [stderr] | [INFO] [stderr] 353 | pub struct OnSubmit(BoxMsg>); // submit [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:357:28 [INFO] [stderr] | [INFO] [stderr] 357 | pub struct OnBlur(BoxMsg>); // blur [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:358:29 [INFO] [stderr] | [INFO] [stderr] 358 | pub struct OnFocus(BoxMsg>); // focus [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:568:56 [INFO] [stderr] | [INFO] [stderr] 568 | pub(crate) fn map_msg_impl(self, f: RcT>) -> EventHandler { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Msg)->T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:573:11 [INFO] [stderr] | [INFO] [stderr] 573 | f: RcU>, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Fn(T)->U` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:602:47 [INFO] [stderr] | [INFO] [stderr] 602 | pub struct DynamicProducer(pub(crate) RcOption>>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:25:25 [INFO] [stderr] | [INFO] [stderr] 25 | signal_sub: VecOption>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:26:24 [INFO] [stderr] | [INFO] [stderr] 26 | mail_subs: Vec)->Option>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)->Option` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:26:30 [INFO] [stderr] | [INFO] [stderr] 26 | mail_subs: Vec)->Option>>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:44:20 [INFO] [stderr] | [INFO] [stderr] 44 | let f: Box Option + 'static> = Box::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Option + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:66:20 [INFO] [stderr] | [INFO] [stderr] 66 | let f: Box)->Option> = Box::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)->Option` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:66:26 [INFO] [stderr] | [INFO] [stderr] 66 | let f: Box)->Option> = Box::new({ [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:67:33 [INFO] [stderr] | [INFO] [stderr] 67 | move |something: Rc| -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/nav.rs:113:32 [INFO] [stderr] | [INFO] [stderr] 113 | pub struct UrlParser(pub RcT>); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Url)->T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/instances.rs:22:46 [INFO] [stderr] | [INFO] [stderr] 22 | pub(crate) struct SubComponent(pub(crate) Rc); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubComponentImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/instances.rs:99:45 [INFO] [stderr] | [INFO] [stderr] 99 | pub(crate) struct SubProcess(pub(crate) Box); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubProcessImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:32:31 [INFO] [stderr] | [INFO] [stderr] 32 | let inner: Option> = cell.replace(None); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | pub(crate) static ROOT_PROCESS: RefCell>> = { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:166:14 [INFO] [stderr] | [INFO] [stderr] 166 | init: Rc)-> Model>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Option)-> Model` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:167:16 [INFO] [stderr] | [INFO] [stderr] 167 | update: Rc, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Model, Msg)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:168:14 [INFO] [stderr] | [INFO] [stderr] 168 | view: Rc View>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Model) -> View` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/signal.rs:49:43 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn zip(&self, other: &Reactive) -> Formula<(T, U)> [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/signal.rs:77:43 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn zip(&self, other: &Reactive) -> Formula<(T, U)> [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:18:43 [INFO] [stderr] | [INFO] [stderr] 18 | pub(crate) struct ViewVecObserver(Rc>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:35:41 [INFO] [stderr] | [INFO] [stderr] 35 | fn for_each_dom_node(&self, f: &mut FnMut(&Dom)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | fn build(&self, f: &Fn(Vec>)->Vec>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec>)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:43:32 [INFO] [stderr] | [INFO] [stderr] 43 | pub(crate) update: &'a mut FnMut(&mut Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec>)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub(crate) removed: &'a mut FnMut(Dom), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:70:52 [INFO] [stderr] | [INFO] [stderr] 70 | pub(crate) fn for_each_dom_node(&self, f: &mut FnMut(&Dom)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | pub(crate) fn build(&self, f: &Fn(Vec>)->Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec>)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:147:41 [INFO] [stderr] | [INFO] [stderr] 147 | fn for_each_dom_node(&self, f: &mut FnMut(&Dom)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:89:86 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn request_animation_frame(&self, callback: impl FnOnce() + 'static) -> Closure { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [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/reactive_sys/vec/view_observer.rs:163:25 [INFO] [stderr] | [INFO] [stderr] 163 | fn build(&self, f: &Fn(Vec>)->Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec>)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:90:28 [INFO] [stderr] | [INFO] [stderr] 90 | let callback: Closure = Closure::once(callback); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:246:46 [INFO] [stderr] | [INFO] [stderr] 246 | pub(crate) fn map_segment(&self, f: &mut FnMut(SegmentValue)->SegmentValue) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(SegmentValue)->SegmentValue` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:97:88 [INFO] [stderr] | [INFO] [stderr] 97 | pub fn set_timeout(&self, timeout: i32, callback: impl FnOnce() + 'static) -> Closure { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:275:22 [INFO] [stderr] | [INFO] [stderr] 275 | if_view: &'a mut FnMut(&mut Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec>)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:98:28 [INFO] [stderr] | [INFO] [stderr] 98 | let callback: Closure = Closure::once(callback); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:276:21 [INFO] [stderr] | [INFO] [stderr] 276 | if_dom: &'a mut FnMut(&mut DomSegment), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:106:67 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/apis.rs:111:70 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:313:38 [INFO] [stderr] | [INFO] [stderr] 313 | pub(crate) struct ToView(BoxView>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&T)->View` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:24:29 [INFO] [stderr] | [INFO] [stderr] 24 | fn box_clone(&self) -> Box; [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:30:52 [INFO] [stderr] | [INFO] [stderr] 30 | pub(crate) ops_subscribers: Rc>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn VecOpObserver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:30:60 [INFO] [stderr] | [INFO] [stderr] 30 | fn add_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:31:55 [INFO] [stderr] | [INFO] [stderr] 31 | pub(crate) change_subscribers: Rc)>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Vec)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:35:63 [INFO] [stderr] | [INFO] [stderr] 35 | fn remove_event_listener(&self, event_name: &str, callback: &EventListenerApi) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventListenerApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:101:24 [INFO] [stderr] | [INFO] [stderr] 101 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:40:33 [INFO] [stderr] | [INFO] [stderr] 40 | fn append_child(&self, child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:135:24 [INFO] [stderr] | [INFO] [stderr] 135 | let getter: RcRc>> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:45:33 [INFO] [stderr] | [INFO] [stderr] 45 | fn remove_child(&self, child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:50:38 [INFO] [stderr] | [INFO] [stderr] 50 | fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:18:43 [INFO] [stderr] | [INFO] [stderr] 18 | pub(crate) struct ViewVecObserver(Rc>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:50:59 [INFO] [stderr] | [INFO] [stderr] 50 | fn replace_child(&self, new_child: &NodeApi, old_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:55:38 [INFO] [stderr] | [INFO] [stderr] 55 | fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:35:41 [INFO] [stderr] | [INFO] [stderr] 35 | fn for_each_dom_node(&self, f: &mut FnMut(&Dom)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:55:59 [INFO] [stderr] | [INFO] [stderr] 55 | fn insert_before(&self, new_child: &NodeApi, ref_child: &NodeApi) { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:80:74 [INFO] [stderr] | [INFO] [stderr] 80 | fn insert_adjacent_element(&self, position: AdjacentPosition, element: &ElementApi) { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn ElementApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | fn build(&self, f: &Fn(View)->Vec>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(View)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:43:33 [INFO] [stderr] | [INFO] [stderr] 43 | pub(crate) current: &'a mut FnMut(&mut ViewItem), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub(crate) removed: &'a mut FnMut(Dom), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:136:29 [INFO] [stderr] | [INFO] [stderr] 136 | fn box_clone(&self) -> Box {Box::new(self.clone())} [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:48:32 [INFO] [stderr] | [INFO] [stderr] 48 | pub(crate) update: &'a mut FnMut(&mut ViewItem), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:49:33 [INFO] [stderr] | [INFO] [stderr] 49 | pub(crate) removed: &'a mut FnMut(Dom), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:140:29 [INFO] [stderr] | [INFO] [stderr] 140 | fn box_clone(&self) -> Box {Box::new(self.clone())} [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:280:22 [INFO] [stderr] | [INFO] [stderr] 280 | if_view: &'a mut FnMut(&mut HashMap>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut HashMap>)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:144:29 [INFO] [stderr] | [INFO] [stderr] 144 | fn box_clone(&self) -> Box {Box::new(self.clone())} [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:284:26 [INFO] [stderr] | [INFO] [stderr] 284 | pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:326:25 [INFO] [stderr] | [INFO] [stderr] 326 | callback: Option>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(JsValue)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:330:23 [INFO] [stderr] | [INFO] [stderr] 330 | pub fn new(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/backend/browser/display.rs:341:34 [INFO] [stderr] | [INFO] [stderr] 341 | pub fn new_with_fn(dom_ref: &NodeApi, event_type: &str, settings: CallbackSettings, callback: impl Fn(JsValue) + 'static) -> Self { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:281:21 [INFO] [stderr] | [INFO] [stderr] 281 | if_dom: &'a mut FnMut(&mut DomSegment), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:318:41 [INFO] [stderr] | [INFO] [stderr] 318 | pub(crate) struct ToView(BoxView>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&K, &V)->View` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map.rs:31:51 [INFO] [stderr] | [INFO] [stderr] 31 | pub(crate) op_subscribers: Rc>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MapOpObserver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map.rs:32:55 [INFO] [stderr] | [INFO] [stderr] 32 | pub(crate) change_subscribers: Rc)>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&HashMap)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map.rs:80:24 [INFO] [stderr] | [INFO] [stderr] 80 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:11:39 [INFO] [stderr] | [INFO] [stderr] 11 | type Subscribers = RefCell)>>>; [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:31:35 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn new_text_signal(cell: &Reactive) -> Self [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:35:78 [INFO] [stderr] | [INFO] [stderr] 35 | pub(crate) fn empty_named_subscribers() -> Rc)>>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:41:27 [INFO] [stderr] | [INFO] [stderr] 41 | pub(crate) getter: RcRc>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:42:34 [INFO] [stderr] | [INFO] [stderr] 42 | pub(crate) setter: Option)>>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:65:24 [INFO] [stderr] | [INFO] [stderr] 65 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:60:38 [INFO] [stderr] | [INFO] [stderr] 60 | pub fn new_toggle_control(pred: &Reactive, value: View) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:78:24 [INFO] [stderr] | [INFO] [stderr] 78 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:84:31 [INFO] [stderr] | [INFO] [stderr] 84 | let setter: Option)>> = Some(Rc::new({ [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:153:24 [INFO] [stderr] | [INFO] [stderr] 153 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:183:24 [INFO] [stderr] | [INFO] [stderr] 183 | let getter: RcRc<(T, U)>> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<(T, U)>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:67:64 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn new_dynamic_control(input: &Reactive, f: impl Fn(&T) -> View + 'static) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/dsl.rs:104:41 [INFO] [stderr] | [INFO] [stderr] 104 | pub fn text_cell(&mut self, value: &Reactive) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:21:43 [INFO] [stderr] | [INFO] [stderr] 21 | pub rightward: &'a RefCell>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:25:54 [INFO] [stderr] | [INFO] [stderr] 25 | pub(crate) fn get_rightward(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:26:32 [INFO] [stderr] | [INFO] [stderr] 26 | let inner: &Option> = &self.rightward.borrow(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:34:38 [INFO] [stderr] | [INFO] [stderr] 34 | pub(crate) fn insert_child<'a>(new: &browser::NodeApi, env: &ElementEnv<'a>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:272:58 [INFO] [stderr] | [INFO] [stderr] 272 | pub(crate) fn get_first_dom_ref(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:273:81 [INFO] [stderr] | [INFO] [stderr] 273 | fn check_children(children: &Vec>) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:274:40 [INFO] [stderr] | [INFO] [stderr] 274 | let mut result: Option> = None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/runtime/common.rs:284:44 [INFO] [stderr] | [INFO] [stderr] 284 | let mut result: Option> = None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn browser::NodeApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/extras.rs:50:42 [INFO] [stderr] | [INFO] [stderr] 50 | pub(crate) fn inspect(&self, f: &mut FnMut(&Dom)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:288:44 [INFO] [stderr] | [INFO] [stderr] 288 | pub struct EventHandler(pub(crate) Rc>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn EventHandlerImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:341:29 [INFO] [stderr] | [INFO] [stderr] 341 | pub struct OnClick(Box Msg>); // click [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:342:33 [INFO] [stderr] | [INFO] [stderr] 342 | pub struct OnMouseDown(BoxMsg>); // mousedown [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:343:31 [INFO] [stderr] | [INFO] [stderr] 343 | pub struct OnMouseUp(BoxMsg>); // mouseup [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:344:34 [INFO] [stderr] | [INFO] [stderr] 344 | pub struct OnMouseEnter(BoxMsg>); // mouseenter [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:345:34 [INFO] [stderr] | [INFO] [stderr] 345 | pub struct OnMouseLeave(BoxMsg>); // mouseleave [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:346:33 [INFO] [stderr] | [INFO] [stderr] 346 | pub struct OnMouseOver(BoxMsg>); // mouseover [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:347:32 [INFO] [stderr] | [INFO] [stderr] 347 | pub struct OnMouseOut(BoxMsg>); // mouseout [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:351:29 [INFO] [stderr] | [INFO] [stderr] 351 | pub struct OnInput(BoxMsg>); // input [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String)->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:352:29 [INFO] [stderr] | [INFO] [stderr] 352 | pub struct OnCheck(BoxMsg>); // click [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(bool)->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:353:30 [INFO] [stderr] | [INFO] [stderr] 353 | pub struct OnSubmit(BoxMsg>); // submit [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:357:28 [INFO] [stderr] | [INFO] [stderr] 357 | pub struct OnBlur(BoxMsg>); // blur [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:358:29 [INFO] [stderr] | [INFO] [stderr] 358 | pub struct OnFocus(BoxMsg>); // focus [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn()->Msg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:568:56 [INFO] [stderr] | [INFO] [stderr] 568 | pub(crate) fn map_msg_impl(self, f: RcT>) -> EventHandler { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Msg)->T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:573:11 [INFO] [stderr] | [INFO] [stderr] 573 | f: RcU>, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Fn(T)->U` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/view_sys/shared.rs:602:47 [INFO] [stderr] | [INFO] [stderr] 602 | pub struct DynamicProducer(pub(crate) RcOption>>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:25:25 [INFO] [stderr] | [INFO] [stderr] 25 | signal_sub: VecOption>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Option` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:26:24 [INFO] [stderr] | [INFO] [stderr] 26 | mail_subs: Vec)->Option>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)->Option` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:26:30 [INFO] [stderr] | [INFO] [stderr] 26 | mail_subs: Vec)->Option>>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:44:20 [INFO] [stderr] | [INFO] [stderr] 44 | let f: Box Option + 'static> = Box::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn() -> Option + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:66:20 [INFO] [stderr] | [INFO] [stderr] 66 | let f: Box)->Option> = Box::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)->Option` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:66:26 [INFO] [stderr] | [INFO] [stderr] 66 | let f: Box)->Option> = Box::new({ [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/sub.rs:67:33 [INFO] [stderr] | [INFO] [stderr] 67 | move |something: Rc| -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/effect/nav.rs:113:32 [INFO] [stderr] | [INFO] [stderr] 113 | pub struct UrlParser(pub RcT>); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(Url)->T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/instances.rs:22:46 [INFO] [stderr] | [INFO] [stderr] 22 | pub(crate) struct SubComponent(pub(crate) Rc); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubComponentImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/instances.rs:99:45 [INFO] [stderr] | [INFO] [stderr] 99 | pub(crate) struct SubProcess(pub(crate) Box); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn SubProcessImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:32:31 [INFO] [stderr] | [INFO] [stderr] 32 | let inner: Option> = cell.replace(None); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | pub(crate) static ROOT_PROCESS: RefCell>> = { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn ProgramImpl` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:166:14 [INFO] [stderr] | [INFO] [stderr] 166 | init: Rc)-> Model>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Option)-> Model` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:167:16 [INFO] [stderr] | [INFO] [stderr] 167 | update: Rc, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Model, Msg)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/program_sys/mod.rs:168:14 [INFO] [stderr] | [INFO] [stderr] 168 | view: Rc View>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Model) -> View` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/signal.rs:49:43 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn zip(&self, other: &Reactive) -> Formula<(T, U)> [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/signal.rs:77:43 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn zip(&self, other: &Reactive) -> Formula<(T, U)> [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Reactive` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:18:43 [INFO] [stderr] | [INFO] [stderr] 18 | pub(crate) struct ViewVecObserver(Rc>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:35:41 [INFO] [stderr] | [INFO] [stderr] 35 | fn for_each_dom_node(&self, f: &mut FnMut(&Dom)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | fn build(&self, f: &Fn(Vec>)->Vec>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec>)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:43:32 [INFO] [stderr] | [INFO] [stderr] 43 | pub(crate) update: &'a mut FnMut(&mut Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec>)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub(crate) removed: &'a mut FnMut(Dom), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:70:52 [INFO] [stderr] | [INFO] [stderr] 70 | pub(crate) fn for_each_dom_node(&self, f: &mut FnMut(&Dom)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:74:36 [INFO] [stderr] | [INFO] [stderr] 74 | pub(crate) fn build(&self, f: &Fn(Vec>)->Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec>)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:147:41 [INFO] [stderr] | [INFO] [stderr] 147 | fn for_each_dom_node(&self, f: &mut FnMut(&Dom)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:163:25 [INFO] [stderr] | [INFO] [stderr] 163 | fn build(&self, f: &Fn(Vec>)->Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec>)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:246:46 [INFO] [stderr] | [INFO] [stderr] 246 | pub(crate) fn map_segment(&self, f: &mut FnMut(SegmentValue)->SegmentValue) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(SegmentValue)->SegmentValue` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:275:22 [INFO] [stderr] | [INFO] [stderr] 275 | if_view: &'a mut FnMut(&mut Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Vec>)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:276:21 [INFO] [stderr] | [INFO] [stderr] 276 | if_dom: &'a mut FnMut(&mut DomSegment), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec/view_observer.rs:313:38 [INFO] [stderr] | [INFO] [stderr] 313 | pub(crate) struct ToView(BoxView>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&T)->View` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:30:52 [INFO] [stderr] | [INFO] [stderr] 30 | pub(crate) ops_subscribers: Rc>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn VecOpObserver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:31:55 [INFO] [stderr] | [INFO] [stderr] 31 | pub(crate) change_subscribers: Rc)>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Vec)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:101:24 [INFO] [stderr] | [INFO] [stderr] 101 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/vec.rs:135:24 [INFO] [stderr] | [INFO] [stderr] 135 | let getter: RcRc>> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:18:43 [INFO] [stderr] | [INFO] [stderr] 18 | pub(crate) struct ViewVecObserver(Rc>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ViewVecObserverApi` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:35:41 [INFO] [stderr] | [INFO] [stderr] 35 | fn for_each_dom_node(&self, f: &mut FnMut(&Dom)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | fn build(&self, f: &Fn(View)->Vec>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(View)->Vec>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:43:33 [INFO] [stderr] | [INFO] [stderr] 43 | pub(crate) current: &'a mut FnMut(&mut ViewItem), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub(crate) removed: &'a mut FnMut(Dom), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:48:32 [INFO] [stderr] | [INFO] [stderr] 48 | pub(crate) update: &'a mut FnMut(&mut ViewItem), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut ViewItem)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:49:33 [INFO] [stderr] | [INFO] [stderr] 49 | pub(crate) removed: &'a mut FnMut(Dom), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Dom)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:280:22 [INFO] [stderr] | [INFO] [stderr] 280 | if_view: &'a mut FnMut(&mut HashMap>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut HashMap>)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:281:21 [INFO] [stderr] | [INFO] [stderr] 281 | if_dom: &'a mut FnMut(&mut DomSegment), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DomSegment)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map/view_observer.rs:318:41 [INFO] [stderr] | [INFO] [stderr] 318 | pub(crate) struct ToView(BoxView>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&K, &V)->View` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map.rs:31:51 [INFO] [stderr] | [INFO] [stderr] 31 | pub(crate) op_subscribers: Rc>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn MapOpObserver` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map.rs:32:55 [INFO] [stderr] | [INFO] [stderr] 32 | pub(crate) change_subscribers: Rc)>>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&HashMap)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/map.rs:80:24 [INFO] [stderr] | [INFO] [stderr] 80 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:11:39 [INFO] [stderr] | [INFO] [stderr] 11 | type Subscribers = RefCell)>>>; [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:35:78 [INFO] [stderr] | [INFO] [stderr] 35 | pub(crate) fn empty_named_subscribers() -> Rc)>>>> { [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:41:27 [INFO] [stderr] | [INFO] [stderr] 41 | pub(crate) getter: RcRc>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:42:34 [INFO] [stderr] | [INFO] [stderr] 42 | pub(crate) setter: Option)>>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:65:24 [INFO] [stderr] | [INFO] [stderr] 65 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:78:24 [INFO] [stderr] | [INFO] [stderr] 78 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:84:31 [INFO] [stderr] | [INFO] [stderr] 84 | let setter: Option)>> = Some(Rc::new({ [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn Fn(Rc)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:153:24 [INFO] [stderr] | [INFO] [stderr] 153 | let getter: RcRc> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reactive_sys/value.rs:183:24 [INFO] [stderr] | [INFO] [stderr] 183 | let getter: RcRc<(T, U)>> = Rc::new({ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn()->Rc<(T, U)>` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/view_sys/runtime/css/hashids.rs:37:30 [INFO] [stderr] | [INFO] [stderr] 37 | write!(f, "{}", self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/view_sys/runtime/css/hashids.rs:58:30 [INFO] [stderr] | [INFO] [stderr] 58 | write!(f, "{}", self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/view_sys/runtime/css/hashids.rs:37:30 [INFO] [stderr] | [INFO] [stderr] 37 | write!(f, "{}", self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/view_sys/runtime/css/hashids.rs:58:30 [INFO] [stderr] | [INFO] [stderr] 58 | write!(f, "{}", self.description()) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 110 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: 110 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 11s [INFO] running `"docker" "inspect" "407cd2011025d7ff9bccd1593fc68d3a79567081c1610ba8ff183a11b941ed3f"` [INFO] running `"docker" "rm" "-f" "407cd2011025d7ff9bccd1593fc68d3a79567081c1610ba8ff183a11b941ed3f"` [INFO] [stdout] 407cd2011025d7ff9bccd1593fc68d3a79567081c1610ba8ff183a11b941ed3f