[INFO] cloning repository https://github.com/sindreij/rusty-elm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sindreij/rusty-elm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsindreij%2Frusty-elm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsindreij%2Frusty-elm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c4379987ee9cb1b568e955154491d413b4e0687d
[INFO] checking sindreij/rusty-elm against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsindreij%2Frusty-elm" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/sindreij/rusty-elm on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/sindreij/rusty-elm
[INFO] finished tweaking git repo https://github.com/sindreij/rusty-elm
[INFO] tweaked toml for git repo https://github.com/sindreij/rusty-elm written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/sindreij/rusty-elm already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded scoped-tls v0.1.2
[INFO] [stderr]   Downloaded futures v0.1.25
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.27
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.27
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.27
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.3.4
[INFO] [stderr]   Downloaded wasm-bindgen-test-macro v0.2.27
[INFO] [stderr]   Downloaded wasm-bindgen-test v0.2.27
[INFO] [stderr]   Downloaded wee_alloc v0.4.2
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.27
[INFO] [stderr]   Downloaded wasm-bindgen-webidl v0.2.21
[INFO] [stderr]   Downloaded weedle v0.8.0
[INFO] [stderr]   Downloaded js-sys v0.3.4
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.27
[INFO] [stderr]   Downloaded console_error_panic_hook v0.1.5
[INFO] [stderr]   Downloaded web-sys v0.3.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 50d1b6f8a64d322c2f9d33c7c8d76e14ecd990751fbfea5310ad82e66fb965e8
[INFO] running `Command { std: "docker" "start" "-a" "50d1b6f8a64d322c2f9d33c7c8d76e14ecd990751fbfea5310ad82e66fb965e8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "50d1b6f8a64d322c2f9d33c7c8d76e14ecd990751fbfea5310ad82e66fb965e8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50d1b6f8a64d322c2f9d33c7c8d76e14ecd990751fbfea5310ad82e66fb965e8", kill_on_drop: false }`
[INFO] [stdout] 50d1b6f8a64d322c2f9d33c7c8d76e14ecd990751fbfea5310ad82e66fb965e8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] db50d8eafd8e88d22bdff248b0fafa068d7971c95239ae35d85d84ba8a6deb2c
[INFO] running `Command { std: "docker" "start" "-a" "db50d8eafd8e88d22bdff248b0fafa068d7971c95239ae35d85d84ba8a6deb2c", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v0.1.6
[INFO] [stderr]    Compiling lazy_static v1.2.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.27
[INFO] [stderr]    Compiling libc v0.2.43
[INFO] [stderr]    Compiling cc v1.0.25
[INFO] [stderr]    Compiling wasm-bindgen v0.2.27
[INFO] [stderr]    Compiling failure_derive v0.1.3
[INFO] [stderr]    Compiling rustc-demangle v0.1.9
[INFO] [stderr]    Compiling ucd-util v0.1.2
[INFO] [stderr]    Compiling regex v1.0.6
[INFO] [stderr]    Compiling utf8-ranges v1.0.2
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling unicode-segmentation v1.2.1
[INFO] [stderr]    Compiling memchr v2.1.1
[INFO] [stderr]    Compiling termcolor v1.0.4
[INFO] [stderr]    Compiling syn v0.15.18
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling humantime v1.1.1
[INFO] [stderr]    Compiling regex-syntax v0.6.2
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]    Compiling heck v0.3.0
[INFO] [stderr]     Checking futures v0.1.25
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.2.27
[INFO] [stderr]     Checking itertools v0.7.8
[INFO] [stderr]     Checking scoped-tls v0.1.2
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling backtrace-sys v0.1.24
[INFO] [stderr]    Compiling nom v4.1.1
[INFO] [stderr]    Compiling aho-corasick v0.6.9
[INFO] [stderr]    Compiling weedle v0.8.0
[INFO] [stderr]    Compiling backtrace v0.3.9
[INFO] [stderr]    Compiling env_logger v0.5.13
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.27
[INFO] [stderr]    Compiling synstructure v0.10.1
[INFO] [stderr]    Compiling serde_derive v1.0.80
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.27
[INFO] [stderr]    Compiling failure v0.1.3
[INFO] [stderr]    Compiling wasm-bindgen-webidl v0.2.21
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.27
[INFO] [stderr]     Checking js-sys v0.3.4
[INFO] [stderr]     Checking console_error_panic_hook v0.1.5
[INFO] [stderr]    Compiling web-sys v0.3.4
[INFO] [stderr]     Checking wasm-bindgen-futures v0.3.4
[INFO] [stderr]     Checking wasm-bindgen-test v0.2.27
[INFO] [stderr]     Checking willow v0.1.0 (/opt/rustwide/workdir/willow)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> willow/src/html.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |             .join("\n");;
[INFO] [stdout]    |                         ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/html.rs:69:75
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:172:46
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<dyn EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<dyn Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<dyn Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:49
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>>>,
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:138:32
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:122:74
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:160:32
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:24:47
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> willow/src/html.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |             .join("\n");;
[INFO] [stdout]    |                         ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:161:31
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &Any;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &dyn Any;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/html.rs:69:75
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:172:46
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<dyn EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<dyn Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<dyn Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:49
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>>>,
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:138:32
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:122:74
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:160:32
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:24:47
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/render.rs:344:27
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<Fn(_)>);
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<dyn Fn(_)>);
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:161:31
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &Any;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &dyn Any;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/render.rs:344:27
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<Fn(_)>);
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<dyn Fn(_)>);
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking example-counter v0.1.0 (/opt/rustwide/workdir/examples/counter)
[INFO] [stderr]     Checking example-todomvc v0.1.0 (/opt/rustwide/workdir/examples/todomvc)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/counter/src/app.rs:23:48
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/counter/src/app.rs:23:48
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/todomvc/src/app.rs:61:48
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/todomvc/src/app.rs:61:48
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 22.51s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.1.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "db50d8eafd8e88d22bdff248b0fafa068d7971c95239ae35d85d84ba8a6deb2c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db50d8eafd8e88d22bdff248b0fafa068d7971c95239ae35d85d84ba8a6deb2c", kill_on_drop: false }`
[INFO] [stdout] db50d8eafd8e88d22bdff248b0fafa068d7971c95239ae35d85d84ba8a6deb2c
[INFO] checking sindreij/rusty-elm against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsindreij%2Frusty-elm" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/sindreij/rusty-elm on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/sindreij/rusty-elm
[INFO] finished tweaking git repo https://github.com/sindreij/rusty-elm
[INFO] tweaked toml for git repo https://github.com/sindreij/rusty-elm written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/sindreij/rusty-elm already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 13780d2700d7ce36a8c3a244bb5214ba6a0c7220f93df99cca8db3481c4aa27a
[INFO] running `Command { std: "docker" "start" "-a" "13780d2700d7ce36a8c3a244bb5214ba6a0c7220f93df99cca8db3481c4aa27a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "13780d2700d7ce36a8c3a244bb5214ba6a0c7220f93df99cca8db3481c4aa27a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "13780d2700d7ce36a8c3a244bb5214ba6a0c7220f93df99cca8db3481c4aa27a", kill_on_drop: false }`
[INFO] [stdout] 13780d2700d7ce36a8c3a244bb5214ba6a0c7220f93df99cca8db3481c4aa27a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dnon_local_definitions" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4697cdc19fc851a6c93ed7755bc4313a15aca9a51d452711616afafef7451b5f
[INFO] running `Command { std: "docker" "start" "-a" "4697cdc19fc851a6c93ed7755bc4313a15aca9a51d452711616afafef7451b5f", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v0.1.6
[INFO] [stderr]    Compiling lazy_static v1.2.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.27
[INFO] [stderr]    Compiling libc v0.2.43
[INFO] [stderr]    Compiling cc v1.0.25
[INFO] [stderr]    Compiling wasm-bindgen v0.2.27
[INFO] [stderr]    Compiling failure_derive v0.1.3
[INFO] [stderr]    Compiling rustc-demangle v0.1.9
[INFO] [stderr]    Compiling regex v1.0.6
[INFO] [stderr]    Compiling ucd-util v0.1.2
[INFO] [stderr]    Compiling unicode-segmentation v1.2.1
[INFO] [stderr]    Compiling utf8-ranges v1.0.2
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling memchr v2.1.1
[INFO] [stderr]    Compiling syn v0.15.18
[INFO] [stderr]    Compiling termcolor v1.0.4
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling regex-syntax v0.6.2
[INFO] [stderr]    Compiling humantime v1.1.1
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]     Checking futures v0.1.25
[INFO] [stderr]     Checking itertools v0.7.8
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.2.27
[INFO] [stderr]     Checking scoped-tls v0.1.2
[INFO] [stderr]    Compiling heck v0.3.0
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling aho-corasick v0.6.9
[INFO] [stderr]    Compiling nom v4.1.1
[INFO] [stderr]    Compiling backtrace-sys v0.1.24
[INFO] [stderr]    Compiling weedle v0.8.0
[INFO] [stderr]    Compiling backtrace v0.3.9
[INFO] [stderr]    Compiling env_logger v0.5.13
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.27
[INFO] [stderr]    Compiling synstructure v0.10.1
[INFO] [stderr]    Compiling serde_derive v1.0.80
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.27
[INFO] [stderr]    Compiling failure v0.1.3
[INFO] [stderr]    Compiling wasm-bindgen-webidl v0.2.21
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.27
[INFO] [stderr]     Checking js-sys v0.3.4
[INFO] [stderr]     Checking console_error_panic_hook v0.1.5
[INFO] [stderr]    Compiling web-sys v0.3.4
[INFO] [stderr]     Checking wasm-bindgen-futures v0.3.4
[INFO] [stderr]     Checking wasm-bindgen-test v0.2.27
[INFO] [stderr]     Checking willow v0.1.0 (/opt/rustwide/workdir/willow)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> willow/src/html.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |             .join("\n");;
[INFO] [stdout]    |                         ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> willow/src/html.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |             .join("\n");;
[INFO] [stdout]    |                         ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/html.rs:69:75
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:172:46
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<dyn EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/html.rs:69:75
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct JsClosure(pub Rc<RefCell<Option<wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>>>>);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<dyn Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<dyn Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:49
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>>>,
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:172:46
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct RcEventClosure<Input, Msg>(pub Rc<dyn EventClosure<Input, Msg>>);
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub view: Box<dyn Fn(&Model) -> Html<Msg>>,
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<dyn Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:11:49
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<Cmd<Msg>>>,
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub update: Box<Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>>>,
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:138:32
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:122:74
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:138:32
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool;
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:122:74
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn set_js_closure(&self, closure: wasm_bindgen::closure::Closure<dyn Fn(web_sys::Event)>) {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:160:32
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:160:32
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn eq_rc(&self, other: &Rc<dyn EventClosure<Input, Msg>>) -> bool {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:24:47
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> willow/src/program.rs:24:47
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |         UpdateFn: Fn(&Msg, &mut Model) -> Box<dyn Cmd<Msg>> + 'static,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:161:31
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &Any;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &dyn Any;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/html.rs:161:31
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &Any;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let other = other as &dyn Any;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/render.rs:344:27
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<Fn(_)>);
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<dyn Fn(_)>);
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> willow/src/render.rs:344:27
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<Fn(_)>);
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 344 |                 }) as Box<dyn Fn(_)>);
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking example-counter v0.1.0 (/opt/rustwide/workdir/examples/counter)
[INFO] [stderr]     Checking example-todomvc v0.1.0 (/opt/rustwide/workdir/examples/todomvc)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/counter/src/app.rs:23:48
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/counter/src/app.rs:23:48
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/todomvc/src/app.rs:61:48
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/todomvc/src/app.rs:61:48
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<Cmd<Msg>> {
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 | fn update(msg: &Msg, model: &mut Model) -> Box<dyn Cmd<Msg>> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:34:33
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Default, Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Model`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:34:44
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Default, Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Model`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Entry`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:42:35
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Entry`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:34:33
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Default, Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Model`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:34:44
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Default, Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Model`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Entry`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/todomvc/src/app.rs:42:35
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Entry`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `example-todomvc` (lib) due to 5 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 4 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `example-todomvc` (lib test) due to 5 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "4697cdc19fc851a6c93ed7755bc4313a15aca9a51d452711616afafef7451b5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4697cdc19fc851a6c93ed7755bc4313a15aca9a51d452711616afafef7451b5f", kill_on_drop: false }`
[INFO] [stdout] 4697cdc19fc851a6c93ed7755bc4313a15aca9a51d452711616afafef7451b5f
