[INFO] fetching crate cfrp 0.0.4...
[INFO] checking cfrp-0.0.4 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate cfrp 0.0.4 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate cfrp 0.0.4 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cfrp 0.0.4
[INFO] finished tweaking crates.io crate cfrp 0.0.4
[INFO] tweaked toml for crates.io crate cfrp 0.0.4 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 46 packages to latest compatible versions
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 72f7b9477bb8064ccb8856f759b86faa8443e86f2519de366db04f99a8e8a6a4
[INFO] running `Command { std: "docker" "start" "-a" "72f7b9477bb8064ccb8856f759b86faa8443e86f2519de366db04f99a8e8a6a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "72f7b9477bb8064ccb8856f759b86faa8443e86f2519de366db04f99a8e8a6a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "72f7b9477bb8064ccb8856f759b86faa8443e86f2519de366db04f99a8e8a6a4", kill_on_drop: false }`
[INFO] [stdout] 72f7b9477bb8064ccb8856f759b86faa8443e86f2519de366db04f99a8e8a6a4
[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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2ee6d66aecad28c0ba9c9e516b57220a41838b53cf3c5211f7f258a19323bb51
[INFO] running `Command { std: "docker" "start" "-a" "2ee6d66aecad28c0ba9c9e516b57220a41838b53cf3c5211f7f258a19323bb51", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]     Checking regex-syntax v0.8.3
[INFO] [stderr]     Checking utf8parse v0.2.1
[INFO] [stderr]     Checking colorchoice v1.0.0
[INFO] [stderr]     Checking anstyle-query v1.0.2
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking anstyle-parse v0.2.3
[INFO] [stderr]     Checking time-core v0.1.2
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking num-conv v0.1.0
[INFO] [stderr]     Checking anstream v0.6.13
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]     Checking env_filter v0.1.0
[INFO] [stderr]     Checking env_logger v0.11.3
[INFO] [stderr]     Checking cfrp v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:140:25
[INFO] [stdout]     |
[INFO] [stdout] 140 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:148:25
[INFO] [stdout]     |
[INFO] [stdout] 148 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:157:35
[INFO] [stdout]     |
[INFO] [stdout] 157 | A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                   ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:114:67
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn every(&self, interval: time::Duration) -> Branch<time::Tm>
[INFO] [stdout]     |                                                                   ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let initial = time::now();
[INFO] [stdout]     |                             ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:133:52
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     .take_while(|tm| { *tm < time::now() })
[INFO] [stdout]     |                                                    ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:136:44
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 let sleep_duration = time::now() - tm.unwrap();
[INFO] [stdout]     |                                            ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:205:49
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn ack_timestamp(&self) -> Branch<time::Tm>
[INFO] [stdout]     |                                                 ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:32
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:43
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                           ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/builder.rs:227:39
[INFO] [stdout]     |
[INFO] [stdout] 227 |     A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                       ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `StdRng` in `rand`
[INFO] [stdout]    --> src/lib.rs:326:29
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let rng = rand::StdRng::new().unwrap();
[INFO] [stdout]     |                             ^^^^^^ could not find `StdRng` in `rand`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 179 +     use rand::rngs::StdRng;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `StdRng`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 326 -             let rng = rand::StdRng::new().unwrap();
[INFO] [stdout] 326 +             let rng = StdRng::new().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]   --> src/primitives/input.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout]    = note: `#[deny(patterns_in_fns_without_body)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                 ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Arc<Mutex<Vec<Box<NoOp>>>>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:109:33
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Option<Box<Push<A>>>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:138:24
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn push(&mut self, Event<A>);
[INFO] [stdout]     |                        ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Event<A>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]    --> src/lib.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn run(mut self: Box<Self>);
[INFO] [stdout]     |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:140:25
[INFO] [stdout]     |
[INFO] [stdout] 140 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:148:25
[INFO] [stdout]     |
[INFO] [stdout] 148 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:157:35
[INFO] [stdout]     |
[INFO] [stdout] 157 | A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                   ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:114:67
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn every(&self, interval: time::Duration) -> Branch<time::Tm>
[INFO] [stdout]     |                                                                   ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let initial = time::now();
[INFO] [stdout]     |                             ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:133:52
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     .take_while(|tm| { *tm < time::now() })
[INFO] [stdout]     |                                                    ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:136:44
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 let sleep_duration = time::now() - tm.unwrap();
[INFO] [stdout]     |                                            ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:205:49
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn ack_timestamp(&self) -> Branch<time::Tm>
[INFO] [stdout]     |                                                 ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:32
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:43
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                           ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/builder.rs:227:39
[INFO] [stdout]     |
[INFO] [stdout] 227 |     A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                       ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/builder.rs:137:25
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 thread::sleep_ms(sleep_duration.num_milliseconds() as u32);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/lib.rs:275:33
[INFO] [stdout]     |
[INFO] [stdout] 275 |                         thread::sleep_ms(100);
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/primitives/async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<Signal<A>>,
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fold.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<Signal<A>>,
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<dyn Signal<A>>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<Signal<B>>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<dyn Signal<B>>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<RunInput>>,
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<dyn RunInput>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<Run>>,
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<dyn Run>>,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:54:23
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<NoOp>>,
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<dyn NoOp>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<RunInput>>>,
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<dyn RunInput>>>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:24:34
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<Run>>>,
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<dyn Run>>>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:13:58
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<dyn NoOp>>>>);
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<NoOp>;
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<dyn NoOp>;
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]   --> src/primitives/input.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout]    = note: `#[deny(patterns_in_fns_without_body)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                 ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Arc<Mutex<Vec<Box<NoOp>>>>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:109:33
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Option<Box<Push<A>>>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:138:24
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn push(&mut self, Event<A>);
[INFO] [stdout]     |                        ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Event<A>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]    --> src/lib.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn run(mut self: Box<Self>);
[INFO] [stdout]     |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:181:43
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<dyn Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:223:31
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<Signal<(usize, A)>>
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<dyn Signal<(usize, A)>>
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:265:37
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<Signal<Option<A>>> where
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<dyn Signal<Option<A>>> where
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:282:38
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<Signal<A>> where
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<dyn Signal<A>> where
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:109:44
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<dyn Push<A>>>);
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/async.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<dyn Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/channel.rs:36:52
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:57:52
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<dyn Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fork.rs:135:52
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:38:64
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:109:60
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:113:34
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:159:60
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:163:34
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:51:52
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:42
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<dyn Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:65
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<dyn Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<Push<C>>>) {
[INFO] [stdout]    |                                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<dyn Push<C>>>) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/value.rs:30:47
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:112:27
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<Signal<A>> where
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:127:52
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/builder.rs:137:25
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 thread::sleep_ms(sleep_duration.num_milliseconds() as u32);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/primitives/async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<Signal<A>>,
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fold.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<Signal<A>>,
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<dyn Signal<A>>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<Signal<B>>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<dyn Signal<B>>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<RunInput>>,
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<dyn RunInput>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<Run>>,
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<dyn Run>>,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:54:23
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<NoOp>>,
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<dyn NoOp>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<RunInput>>>,
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<dyn RunInput>>>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:24:34
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<Run>>>,
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<dyn Run>>>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:13:58
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<dyn NoOp>>>>);
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<NoOp>;
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<dyn NoOp>;
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:181:43
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<dyn Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:223:31
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<Signal<(usize, A)>>
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<dyn Signal<(usize, A)>>
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:265:37
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<Signal<Option<A>>> where
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<dyn Signal<Option<A>>> where
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:282:38
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<Signal<A>> where
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<dyn Signal<A>> where
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:109:44
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<dyn Push<A>>>);
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/async.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<dyn Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/channel.rs:36:52
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:57:52
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<dyn Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fork.rs:135:52
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:38:64
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:109:60
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:113:34
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:159:60
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:131:30
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<Signal<A>> where
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:163:34
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:51:52
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:42
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<dyn Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:65
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<dyn Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<Push<C>>>) {
[INFO] [stdout]    |                                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<dyn Push<C>>>) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/value.rs:30:47
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:112:27
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<Signal<A>> where
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:127:52
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:131:30
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<Signal<A>> where
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<dyn RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:61
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<dyn Run>>) -> Self {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<dyn RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:61
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<dyn Run>>) -> Self {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 15 previous errors; 49 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0412, E0425, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors; 48 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0412, E0425.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cfrp` (lib test) due to 16 previous errors; 49 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `cfrp` (lib) due to 15 previous errors; 48 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "2ee6d66aecad28c0ba9c9e516b57220a41838b53cf3c5211f7f258a19323bb51", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ee6d66aecad28c0ba9c9e516b57220a41838b53cf3c5211f7f258a19323bb51", kill_on_drop: false }`
[INFO] [stdout] 2ee6d66aecad28c0ba9c9e516b57220a41838b53cf3c5211f7f258a19323bb51
[INFO] checking cfrp-0.0.4 against try#9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88 for pr-124157
[INFO] extracting crate cfrp 0.0.4 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate cfrp 0.0.4 on toolchain 9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cfrp 0.0.4
[INFO] finished tweaking crates.io crate cfrp 0.0.4
[INFO] tweaked toml for crates.io crate cfrp 0.0.4 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 46 packages to latest compatible versions
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d5cf7cef19410da6214b96419f2eefbefc6a61873ec9bfd933d33c7247679496
[INFO] running `Command { std: "docker" "start" "-a" "d5cf7cef19410da6214b96419f2eefbefc6a61873ec9bfd933d33c7247679496", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d5cf7cef19410da6214b96419f2eefbefc6a61873ec9bfd933d33c7247679496", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d5cf7cef19410da6214b96419f2eefbefc6a61873ec9bfd933d33c7247679496", kill_on_drop: false }`
[INFO] [stdout] d5cf7cef19410da6214b96419f2eefbefc6a61873ec9bfd933d33c7247679496
[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" "-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4a8a795f56a5e8af8a44196c34613de3fea901d651ad6ef3f524f52195ce74f4
[INFO] running `Command { std: "docker" "start" "-a" "4a8a795f56a5e8af8a44196c34613de3fea901d651ad6ef3f524f52195ce74f4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]     Checking regex-syntax v0.8.3
[INFO] [stderr]     Checking utf8parse v0.2.1
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]     Checking anstyle-query v1.0.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]     Checking anstyle-parse v0.2.3
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking colorchoice v1.0.0
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking num-conv v0.1.0
[INFO] [stderr]     Checking anstream v0.6.13
[INFO] [stderr]     Checking time-core v0.1.2
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]     Checking env_filter v0.1.0
[INFO] [stderr]     Checking env_logger v0.11.3
[INFO] [stderr]     Checking cfrp v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:140:25
[INFO] [stdout]     |
[INFO] [stdout] 140 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:148:25
[INFO] [stdout]     |
[INFO] [stdout] 148 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:157:35
[INFO] [stdout]     |
[INFO] [stdout] 157 | A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                   ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:114:67
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn every(&self, interval: time::Duration) -> Branch<time::Tm>
[INFO] [stdout]     |                                                                   ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let initial = time::now();
[INFO] [stdout]     |                             ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:133:52
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     .take_while(|tm| { *tm < time::now() })
[INFO] [stdout]     |                                                    ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:136:44
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 let sleep_duration = time::now() - tm.unwrap();
[INFO] [stdout]     |                                            ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:205:49
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn ack_timestamp(&self) -> Branch<time::Tm>
[INFO] [stdout]     |                                                 ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:32
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:43
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                           ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/builder.rs:227:39
[INFO] [stdout]     |
[INFO] [stdout] 227 |     A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                       ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]   --> src/primitives/input.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout]    = note: `#[deny(patterns_in_fns_without_body)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                 ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Arc<Mutex<Vec<Box<NoOp>>>>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:109:33
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Option<Box<Push<A>>>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:138:24
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn push(&mut self, Event<A>);
[INFO] [stdout]     |                        ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Event<A>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]    --> src/lib.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn run(mut self: Box<Self>);
[INFO] [stdout]     |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:140:25
[INFO] [stdout]     |
[INFO] [stdout] 140 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:148:25
[INFO] [stdout]     |
[INFO] [stdout] 148 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:157:35
[INFO] [stdout]     |
[INFO] [stdout] 157 | A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                   ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/primitives/input.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 | A: Send + Clone + rand::Rand,
[INFO] [stdout]     |                         ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:114:67
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn every(&self, interval: time::Duration) -> Branch<time::Tm>
[INFO] [stdout]     |                                                                   ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let initial = time::now();
[INFO] [stdout]     |                             ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:133:52
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     .take_while(|tm| { *tm < time::now() })
[INFO] [stdout]     |                                                    ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:136:44
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 let sleep_duration = time::now() - tm.unwrap();
[INFO] [stdout]     |                                            ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:205:49
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn ack_timestamp(&self) -> Branch<time::Tm>
[INFO] [stdout]     |                                                 ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Tm` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:32
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                ^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `now` in crate `time`
[INFO] [stdout]    --> src/builder.rs:209:43
[INFO] [stdout]     |
[INFO] [stdout] 209 |             .lift(|_| -> time::Tm { time::now() })
[INFO] [stdout]     |                                           ^^^ not found in `time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Rand` in crate `rand`
[INFO] [stdout]    --> src/builder.rs:227:39
[INFO] [stdout]     |
[INFO] [stdout] 227 |     A: 'static + Send + Clone + rand::Rand,
[INFO] [stdout]     |                                       ^^^^ not found in `rand`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `StdRng` in `rand`
[INFO] [stdout]    --> src/lib.rs:326:29
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let rng = rand::StdRng::new().unwrap();
[INFO] [stdout]     |                             ^^^^^^ could not find `StdRng` in `rand`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout] 179 +     use rand::rngs::StdRng;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `StdRng`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 326 -             let rng = rand::StdRng::new().unwrap();
[INFO] [stdout] 326 +             let rng = StdRng::new().unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]   --> src/primitives/input.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout]    = note: `#[deny(patterns_in_fns_without_body)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                 ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/primitives/input.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Arc<Mutex<Vec<Box<NoOp>>>>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:109:33
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Option<Box<Push<A>>>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/lib.rs:138:24
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn push(&mut self, Event<A>);
[INFO] [stdout]     |                        ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Event<A>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]    --> src/lib.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn run(mut self: Box<Self>);
[INFO] [stdout]     |            ^^^^^^^^ help: remove `mut` from the parameter: `self`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/builder.rs:137:25
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 thread::sleep_ms(sleep_duration.num_milliseconds() as u32);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/primitives/async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<Signal<A>>,
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fold.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<Signal<A>>,
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<dyn Signal<A>>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<Signal<B>>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<dyn Signal<B>>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<RunInput>>,
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<dyn RunInput>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<Run>>,
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<dyn Run>>,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:54:23
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<NoOp>>,
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<dyn NoOp>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<RunInput>>>,
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<dyn RunInput>>>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:24:34
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<Run>>>,
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<dyn Run>>>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:13:58
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<dyn NoOp>>>>);
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<NoOp>;
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<dyn NoOp>;
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:181:43
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<dyn Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:223:31
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<Signal<(usize, A)>>
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<dyn Signal<(usize, A)>>
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:265:37
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<Signal<Option<A>>> where
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<dyn Signal<Option<A>>> where
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:282:38
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<Signal<A>> where
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<dyn Signal<A>> where
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:109:44
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<dyn Push<A>>>);
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/async.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<dyn Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/channel.rs:36:52
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:57:52
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<dyn Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fork.rs:135:52
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:38:64
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:109:60
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:113:34
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:159:60
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:163:34
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:51:52
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:42
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<dyn Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:65
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<dyn Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<Push<C>>>) {
[INFO] [stdout]    |                                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<dyn Push<C>>>) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/value.rs:30:47
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:112:27
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<Signal<A>> where
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:127:52
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/builder.rs:137:25
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 thread::sleep_ms(sleep_duration.num_milliseconds() as u32);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> src/lib.rs:275:33
[INFO] [stdout]     |
[INFO] [stdout] 275 |                         thread::sleep_ms(100);
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/primitives/async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<Signal<A>>,
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fold.rs:109:23
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<Signal<A>>,
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     parent: Box<dyn Signal<A>>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<Push<B>>>,
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     child: Option<Box<dyn Push<B>>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<Signal<A>>,
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     left: Box<dyn Signal<A>>,
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:16:16
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<Signal<B>>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     right: Box<dyn Signal<B>>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<RunInput>>,
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     inputs: Vec<Box<dyn RunInput>>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<Run>>,
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     runners: Vec<Box<dyn Run>>,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:54:23
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<NoOp>>,
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 54 |     term_txs: Vec<Box<dyn NoOp>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<RunInput>>>,
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub inputs: RefCell<Vec<Box<dyn RunInput>>>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/builder.rs:24:34
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<Run>>>,
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub runners: RefCell<Vec<Box<dyn Run>>>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:13:58
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<NoOp>>>>);
[INFO] [stdout]    |                                                          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn run(mut self: Box<Self>, usize, Arc<Mutex<Vec<Box<dyn NoOp>>>>);
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:131:30
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<Signal<A>> where
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<NoOp>;
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn boxed_no_op(&self) -> Box<dyn NoOp>;
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:181:43
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn zip<SB, B>(self, right: SB) -> Box<dyn Signal<(Value<A>, Value<B>)>> where
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:223:31
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<Signal<(usize, A)>>
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn enumerate(self) -> Box<dyn Signal<(usize, A)>>
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:265:37
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<Signal<Option<A>>> where
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn filter<F>(self, f: F) -> Box<dyn Signal<Option<A>>> where
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/signal_ext.rs:282:38
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<Signal<A>> where
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 |     fn inspect<F>(self, f: F) -> Box<dyn Signal<A>> where
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:109:44
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<Push<A>>>);
[INFO] [stdout]     |                                            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn push_to(self: Box<Self>, Option<Box<dyn Push<A>>>);
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/async.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(parent: Box<dyn Signal<A>>, tx: SyncSender<A>) -> Async<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/channel.rs:36:52
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, initial: B, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fold.rs:57:52
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/fork.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(parent: Box<dyn Signal<A>>, sink_txs: Arc<Mutex<Vec<SyncSender<Event<A>>>>>) -> Fork<A> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/fork.rs:135:52
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:34:34
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/input.rs:38:64
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn run(self: Box<Self>, idx: usize, txs: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:109:60
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:113:34
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:159:60
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<NoOp>>>>) {
[INFO] [stdout]     |                                                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn run(self: Box<Self>, _: usize, _: Arc<Mutex<Vec<Box<dyn NoOp>>>>) {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/primitives/input.rs:163:34
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<NoOp> {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn boxed_no_op(&self) -> Box<dyn NoOp> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn new(config: Config, parent: Box<dyn Signal<A>>, f: F) -> Self {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift.rs:51:52
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<Push<B>>>) {
[INFO] [stdout]    |                                                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<B>>>) {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:42
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<dyn Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:27:65
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn new(config: Config, left: Box<Signal<A>>, right: Box<dyn Signal<B>>, f: F) -> Self {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/lift2.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<Push<C>>>) {
[INFO] [stdout]    |                                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn push_to(self: Box<Self>, mut target: Option<Box<dyn Push<C>>>) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/primitives/value.rs:30:47
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<Push<A>>>) {
[INFO] [stdout]    |                                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn push_to(self: Box<Self>, _: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:112:27
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<Signal<A>> where
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl<A> Signal<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:127:52
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>) {
[INFO] [stdout]     |                                                    ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn push_to(self: Box<Self>, target: Option<Box<dyn Push<A>>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<dyn RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:61
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<dyn Run>>) -> Self {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:131:30
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<Signal<A>> where
[INFO] [stdout]     |                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<A> SignalExt<A> for Box<dyn Signal<A>> where
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<dyn RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/topology.rs:18:61
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<Run>>) -> Self {
[INFO] [stdout]    |                                                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(inputs: Vec<Box<RunInput>>, runners: Vec<Box<dyn Run>>) -> Self {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors; 48 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0412, E0425.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cfrp` (lib) due to 15 previous errors; 48 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 15 previous errors; 49 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0412, E0425, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cfrp` (lib test) due to 16 previous errors; 49 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "4a8a795f56a5e8af8a44196c34613de3fea901d651ad6ef3f524f52195ce74f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4a8a795f56a5e8af8a44196c34613de3fea901d651ad6ef3f524f52195ce74f4", kill_on_drop: false }`
[INFO] [stdout] 4a8a795f56a5e8af8a44196c34613de3fea901d651ad6ef3f524f52195ce74f4
