[INFO] fetching crate terminal-midi-monitor 0.3.0...
[INFO] building terminal-midi-monitor-0.3.0 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate terminal-midi-monitor 0.3.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate terminal-midi-monitor 0.3.0
[INFO] finished tweaking crates.io crate terminal-midi-monitor 0.3.0
[INFO] tweaked toml for crates.io crate terminal-midi-monitor 0.3.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate terminal-midi-monitor 0.3.0 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 34 packages to latest compatible versions
[INFO] [stderr]       Adding alsa v0.2.2 (available: v0.10.0)
[INFO] [stderr]       Adding clap v2.34.0 (available: v4.5.48)
[INFO] [stderr]       Adding colored v1.9.4 (available: v3.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bfecd638587341e05640ca06090c1dda9c98caeb7815e868a0c176a90d8e10d3
[INFO] running `Command { std: "docker" "start" "-a" "bfecd638587341e05640ca06090c1dda9c98caeb7815e868a0c176a90d8e10d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bfecd638587341e05640ca06090c1dda9c98caeb7815e868a0c176a90d8e10d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfecd638587341e05640ca06090c1dda9c98caeb7815e868a0c176a90d8e10d3", kill_on_drop: false }`
[INFO] [stdout] bfecd638587341e05640ca06090c1dda9c98caeb7815e868a0c176a90d8e10d3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bc1b51d9325199aff479c784bec22ba79fb3a44c66052e1d8d7d61923ff46c83
[INFO] running `Command { std: "docker" "start" "-a" "bc1b51d9325199aff479c784bec22ba79fb3a44c66052e1d8d7d61923ff46c83", kill_on_drop: false }`
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]    Compiling ansi_term v0.12.1
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling colored v1.9.4
[INFO] [stderr]    Compiling nix v0.9.0
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling alsa v0.2.2
[INFO] [stderr]    Compiling terminal-midi-monitor v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:290:69
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn get_origin(&mut self, ev: &seq::Event) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn get_origin(&mut self, ev: &seq::Event) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:294:74
[INFO] [stdout]     |
[INFO] [stdout] 294 |     fn get_port_name(&mut self, source: seq::Addr) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 294 |     fn get_port_name(&mut self, source: seq::Addr) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:321:53
[INFO] [stdout]     |
[INFO] [stdout] 321 |     fn autoconnect_all(&mut self) -> Result<(), Box<error::Error>> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 321 |     fn autoconnect_all(&mut self) -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:335:69
[INFO] [stdout]     |
[INFO] [stdout] 335 |     fn connect_from(&mut self, sender: seq::Addr) -> Result<(), Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 335 |     fn connect_from(&mut self, sender: seq::Addr) -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:344:85
[INFO] [stdout]     |
[INFO] [stdout] 344 | fn print_midi_ev(midi_monitor: &mut MidiMonitor, ev: &seq::Event) -> Result<(), Box<error::Error>>{
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 344 | fn print_midi_ev(midi_monitor: &mut MidiMonitor, ev: &seq::Event) -> Result<(), Box<dyn error::Error>>{
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:511:29
[INFO] [stdout]     |
[INFO] [stdout] 511 | fn main() -> Result<(), Box<error::Error>> {
[INFO] [stdout]     |                             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 511 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:255:51
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn setup_alsaseq() -> Result<(seq::Seq, i32), Box<error::Error>>{
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn setup_alsaseq() -> Result<(seq::Seq, i32), Box<dyn error::Error>>{
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/main.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 554 | /     loop {
[INFO] [stdout] 555 | |         // FIXME For some events (PortStart,End...) this timeout limits how many to receive per loop.
[INFO] [stdout] 556 | |         alsa::poll::poll(&mut fds, 1000)?;
[INFO] [stdout] 557 | |         while input.event_input_pending(true)? != 0 {
[INFO] [stdout] ...   |
[INFO] [stdout] 569 | |     };
[INFO] [stdout]     | |_____- any code following this expression is unreachable
[INFO] [stdout] 570 |
[INFO] [stdout] 571 |       Ok(())
[INFO] [stdout]     |       ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 347 |     let mut event;
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.28s
[INFO] running `Command { std: "docker" "inspect" "bc1b51d9325199aff479c784bec22ba79fb3a44c66052e1d8d7d61923ff46c83", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc1b51d9325199aff479c784bec22ba79fb3a44c66052e1d8d7d61923ff46c83", kill_on_drop: false }`
[INFO] [stdout] bc1b51d9325199aff479c784bec22ba79fb3a44c66052e1d8d7d61923ff46c83
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2ec01dc01dbeabe924054a8201236fcc52a84aad15b38ee9b7e23017f8543a48
[INFO] running `Command { std: "docker" "start" "-a" "2ec01dc01dbeabe924054a8201236fcc52a84aad15b38ee9b7e23017f8543a48", kill_on_drop: false }`
[INFO] [stderr]    Compiling terminal-midi-monitor v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:344:85
[INFO] [stdout]     |
[INFO] [stdout] 344 | fn print_midi_ev(midi_monitor: &mut MidiMonitor, ev: &seq::Event) -> Result<(), Box<error::Error>>{
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 344 | fn print_midi_ev(midi_monitor: &mut MidiMonitor, ev: &seq::Event) -> Result<(), Box<dyn error::Error>>{
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:290:69
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn get_origin(&mut self, ev: &seq::Event) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn get_origin(&mut self, ev: &seq::Event) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:511:29
[INFO] [stdout]     |
[INFO] [stdout] 511 | fn main() -> Result<(), Box<error::Error>> {
[INFO] [stdout]     |                             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 511 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:255:51
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn setup_alsaseq() -> Result<(seq::Seq, i32), Box<error::Error>>{
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn setup_alsaseq() -> Result<(seq::Seq, i32), Box<dyn error::Error>>{
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:294:74
[INFO] [stdout]     |
[INFO] [stdout] 294 |     fn get_port_name(&mut self, source: seq::Addr) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 294 |     fn get_port_name(&mut self, source: seq::Addr) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:321:53
[INFO] [stdout]     |
[INFO] [stdout] 321 |     fn autoconnect_all(&mut self) -> Result<(), Box<error::Error>> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 321 |     fn autoconnect_all(&mut self) -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:335:69
[INFO] [stdout]     |
[INFO] [stdout] 335 |     fn connect_from(&mut self, sender: seq::Addr) -> Result<(), Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 335 |     fn connect_from(&mut self, sender: seq::Addr) -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/main.rs:571:5
[INFO] [stdout]     |
[INFO] [stdout] 554 | /     loop {
[INFO] [stdout] 555 | |         // FIXME For some events (PortStart,End...) this timeout limits how many to receive per loop.
[INFO] [stdout] 556 | |         alsa::poll::poll(&mut fds, 1000)?;
[INFO] [stdout] 557 | |         while input.event_input_pending(true)? != 0 {
[INFO] [stdout] ...   |
[INFO] [stdout] 569 | |     };
[INFO] [stdout]     | |_____- any code following this expression is unreachable
[INFO] [stdout] 570 |
[INFO] [stdout] 571 |       Ok(())
[INFO] [stdout]     |       ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 347 |     let mut event;
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.57s
[INFO] running `Command { std: "docker" "inspect" "2ec01dc01dbeabe924054a8201236fcc52a84aad15b38ee9b7e23017f8543a48", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ec01dc01dbeabe924054a8201236fcc52a84aad15b38ee9b7e23017f8543a48", kill_on_drop: false }`
[INFO] [stdout] 2ec01dc01dbeabe924054a8201236fcc52a84aad15b38ee9b7e23017f8543a48
