[INFO] fetching crate terminal-midi-monitor 0.3.0...
[INFO] testing terminal-midi-monitor-0.3.0 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate terminal-midi-monitor 0.3.0 into /workspace/builds/worker-2-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-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate terminal-midi-monitor 0.3.0 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "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" "+beta-2026-04-21" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 26 packages to latest compatible versions
[INFO] [stderr]       Adding alsa v0.2.2 (available: v0.11.0)
[INFO] [stderr]       Adding clap v2.34.0 (available: v4.6.1)
[INFO] [stderr]       Adding colored v1.9.4 (available: v3.1.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3e24dc3e321f2fabb29a9ecb7e6e0535df609e1bbe67e96d56c5907505a6f7aa
[INFO] running `Command { std: "docker" "start" "-a" "3e24dc3e321f2fabb29a9ecb7e6e0535df609e1bbe67e96d56c5907505a6f7aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e24dc3e321f2fabb29a9ecb7e6e0535df609e1bbe67e96d56c5907505a6f7aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e24dc3e321f2fabb29a9ecb7e6e0535df609e1bbe67e96d56c5907505a6f7aa", kill_on_drop: false }`
[INFO] [stdout] 3e24dc3e321f2fabb29a9ecb7e6e0535df609e1bbe67e96d56c5907505a6f7aa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a0774a0e702f03e852c97c9bff8fd3545117be44e193f63242d6cd1adc86385d
[INFO] running `Command { std: "docker" "start" "-a" "a0774a0e702f03e852c97c9bff8fd3545117be44e193f63242d6cd1adc86385d", kill_on_drop: false }`
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling ansi_term v0.12.1
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[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: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: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: 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 5.69s
[INFO] running `Command { std: "docker" "inspect" "a0774a0e702f03e852c97c9bff8fd3545117be44e193f63242d6cd1adc86385d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0774a0e702f03e852c97c9bff8fd3545117be44e193f63242d6cd1adc86385d", kill_on_drop: false }`
[INFO] [stdout] a0774a0e702f03e852c97c9bff8fd3545117be44e193f63242d6cd1adc86385d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 274caed13df032eb1975c34c491cea5cf040971acce374dce1d68a88e280953c
[INFO] running `Command { std: "docker" "start" "-a" "274caed13df032eb1975c34c491cea5cf040971acce374dce1d68a88e280953c", 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: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: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: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: 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.43s
[INFO] running `Command { std: "docker" "inspect" "274caed13df032eb1975c34c491cea5cf040971acce374dce1d68a88e280953c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "274caed13df032eb1975c34c491cea5cf040971acce374dce1d68a88e280953c", kill_on_drop: false }`
[INFO] [stdout] 274caed13df032eb1975c34c491cea5cf040971acce374dce1d68a88e280953c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b9d334d46896a8eeea725809467ed3ef3f242f27200a0b11c80cb396cf607570
[INFO] running `Command { std: "docker" "start" "-a" "b9d334d46896a8eeea725809467ed3ef3f242f27200a0b11c80cb396cf607570", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:290:69
[INFO] [stderr]     |
[INFO] [stderr] 290 |     fn get_origin(&mut self, ev: &seq::Event) -> Result<String, Box<error::Error>> {
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 290 |     fn get_origin(&mut self, ev: &seq::Event) -> Result<String, Box<dyn error::Error>> {
[INFO] [stderr]     |                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:294:74
[INFO] [stderr]     |
[INFO] [stderr] 294 |     fn get_port_name(&mut self, source: seq::Addr) -> Result<String, Box<error::Error>> {
[INFO] [stderr]     |                                                                          ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 294 |     fn get_port_name(&mut self, source: seq::Addr) -> Result<String, Box<dyn error::Error>> {
[INFO] [stderr]     |                                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:321:53
[INFO] [stderr]     |
[INFO] [stderr] 321 |     fn autoconnect_all(&mut self) -> Result<(), Box<error::Error>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 321 |     fn autoconnect_all(&mut self) -> Result<(), Box<dyn error::Error>> {
[INFO] [stderr]     |                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:335:69
[INFO] [stderr]     |
[INFO] [stderr] 335 |     fn connect_from(&mut self, sender: seq::Addr) -> Result<(), Box<error::Error>> {
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 335 |     fn connect_from(&mut self, sender: seq::Addr) -> Result<(), Box<dyn error::Error>> {
[INFO] [stderr]     |                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:255:51
[INFO] [stderr]     |
[INFO] [stderr] 255 | fn setup_alsaseq() -> Result<(seq::Seq, i32), Box<error::Error>>{
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 255 | fn setup_alsaseq() -> Result<(seq::Seq, i32), Box<dyn error::Error>>{
[INFO] [stderr]     |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:344:85
[INFO] [stderr]     |
[INFO] [stderr] 344 | fn print_midi_ev(midi_monitor: &mut MidiMonitor, ev: &seq::Event) -> Result<(), Box<error::Error>>{
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 344 | fn print_midi_ev(midi_monitor: &mut MidiMonitor, ev: &seq::Event) -> Result<(), Box<dyn error::Error>>{
[INFO] [stderr]     |                                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:511:29
[INFO] [stderr]     |
[INFO] [stderr] 511 | fn main() -> Result<(), Box<error::Error>> {
[INFO] [stderr]     |                             ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 511 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> src/main.rs:571:5
[INFO] [stderr]     |
[INFO] [stderr] 554 | /     loop {
[INFO] [stderr] 555 | |         // FIXME For some events (PortStart,End...) this timeout limits how many to receive per loop.
[INFO] [stderr] 556 | |         alsa::poll::poll(&mut fds, 1000)?;
[INFO] [stderr] 557 | |         while input.event_input_pending(true)? != 0 {
[INFO] [stderr] ...   |
[INFO] [stderr] 569 | |     };
[INFO] [stderr]     | |_____- any code following this expression is unreachable
[INFO] [stderr] 570 |
[INFO] [stderr] 571 |       Ok(())
[INFO] [stderr]     |       ^^^^^^ unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:347:9
[INFO] [stderr]     |
[INFO] [stderr] 347 |     let mut event;
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `terminal-midi-monitor` (bin "terminal-midi-monitor" test) generated 9 warnings (run `cargo fix --bin "terminal-midi-monitor" -p terminal-midi-monitor --tests` to apply 8 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/terminal_midi_monitor-2d85e548727a41ef)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b9d334d46896a8eeea725809467ed3ef3f242f27200a0b11c80cb396cf607570", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b9d334d46896a8eeea725809467ed3ef3f242f27200a0b11c80cb396cf607570", kill_on_drop: false }`
[INFO] [stdout] b9d334d46896a8eeea725809467ed3ef3f242f27200a0b11c80cb396cf607570
