[INFO] cloning repository https://github.com/lautis/nad-volume-sync
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lautis/nad-volume-sync" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flautis%2Fnad-volume-sync", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flautis%2Fnad-volume-sync'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9feed935983bf2b1a546bb68a1bd4aca83ae3e06
[INFO] checking lautis/nad-volume-sync against master#b389b0ab72cb0aa9acf4df0ae0c0e12090782da9 for pr-128351-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flautis%2Fnad-volume-sync" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/lautis/nad-volume-sync on toolchain b389b0ab72cb0aa9acf4df0ae0c0e12090782da9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/lautis/nad-volume-sync
[INFO] finished tweaking git repo https://github.com/lautis/nad-volume-sync
[INFO] tweaked toml for git repo https://github.com/lautis/nad-volume-sync written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/lautis/nad-volume-sync already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded nix v0.9.0
[INFO] [stderr]   Downloaded alsa-sys v0.1.2
[INFO] [stderr]   Downloaded bitflags v0.9.1
[INFO] [stderr]   Downloaded alsa v0.2.1
[INFO] [stderr]   Downloaded nom v4.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 17c8774c3205445d4affdffec77ead3f668a4b4e418f54a4aabc8cf2db8c3c7f
[INFO] running `Command { std: "docker" "start" "-a" "17c8774c3205445d4affdffec77ead3f668a4b4e418f54a4aabc8cf2db8c3c7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "17c8774c3205445d4affdffec77ead3f668a4b4e418f54a4aabc8cf2db8c3c7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17c8774c3205445d4affdffec77ead3f668a4b4e418f54a4aabc8cf2db8c3c7f", kill_on_drop: false }`
[INFO] [stdout] 17c8774c3205445d4affdffec77ead3f668a4b4e418f54a4aabc8cf2db8c3c7f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1eb40bf1e84668df53c3892e6e834df41d51ee62938e5f5783d4618319d85a55
[INFO] running `Command { std: "docker" "start" "-a" "1eb40bf1e84668df53c3892e6e834df41d51ee62938e5f5783d4618319d85a55", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]    Compiling libc v0.2.48
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]    Compiling memchr v2.1.3
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]     Checking nix v0.9.0
[INFO] [stderr]     Checking nom v4.2.0
[INFO] [stderr]     Checking alsa v0.2.1
[INFO] [stderr]     Checking nad-volume-sync v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:189:70
[INFO] [stdout]     |
[INFO] [stdout] 189 |                     .expect("Could not send receiver volume change");;
[INFO] [stdout]     |                                                                      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:231:65
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 .expect("Could not send volume change command");;
[INFO] [stdout]     |                                                                 ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:14:56
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, Box<error::Error>> {
[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] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, 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:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn open_mixer(name: &str) -> Result<alsa::Mixer, Box<error::Error>> {
[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 | fn open_mixer(name: &str) -> Result<alsa::Mixer, 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:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<dyn Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:24:67
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> 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:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn alsa_volume(name: &str) -> Result<f64, Box<error::Error>> {
[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] 40 | fn alsa_volume(name: &str) -> Result<f64, 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:65:65
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn set_alsa_volume(name: String, volume: f64) -> Result<(), Box<error::Error>> {
[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] 65 | fn set_alsa_volume(name: String, volume: f64) -> 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:82:79
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> Result<(), Box<error::Error>> {
[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] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> 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:98:59
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, Box<error::Error>> {
[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] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, 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:119:67
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> Result<(), Box<error::Error>> {
[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] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> 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:198:63
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn receiver_connect(address: String) -> Result<TcpStream, Box<error::Error>> {
[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] 198 | fn receiver_connect(address: String) -> Result<TcpStream, 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:204:29
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn main() -> Result<(), Box<error::Error>> {
[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] 204 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:189:70
[INFO] [stdout]     |
[INFO] [stdout] 189 |                     .expect("Could not send receiver volume change");;
[INFO] [stdout]     |                                                                      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:231:65
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 .expect("Could not send volume change command");;
[INFO] [stdout]     |                                                                 ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:14:56
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, Box<error::Error>> {
[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] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, 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:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn open_mixer(name: &str) -> Result<alsa::Mixer, Box<error::Error>> {
[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 | fn open_mixer(name: &str) -> Result<alsa::Mixer, 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:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<dyn Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:24:67
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> 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:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn alsa_volume(name: &str) -> Result<f64, Box<error::Error>> {
[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] 40 | fn alsa_volume(name: &str) -> Result<f64, 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:65:65
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn set_alsa_volume(name: String, volume: f64) -> Result<(), Box<error::Error>> {
[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] 65 | fn set_alsa_volume(name: String, volume: f64) -> 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:82:79
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> Result<(), Box<error::Error>> {
[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] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> 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:98:59
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, Box<error::Error>> {
[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] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, 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:119:67
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> Result<(), Box<error::Error>> {
[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] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> 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:198:63
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn receiver_connect(address: String) -> Result<TcpStream, Box<error::Error>> {
[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] 198 | fn receiver_connect(address: String) -> Result<TcpStream, 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:204:29
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn main() -> Result<(), Box<error::Error>> {
[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] 204 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.89s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "1eb40bf1e84668df53c3892e6e834df41d51ee62938e5f5783d4618319d85a55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1eb40bf1e84668df53c3892e6e834df41d51ee62938e5f5783d4618319d85a55", kill_on_drop: false }`
[INFO] [stdout] 1eb40bf1e84668df53c3892e6e834df41d51ee62938e5f5783d4618319d85a55
[INFO] checking lautis/nad-volume-sync against try#16d823b1c168ce52c66ccc00dfd686f775a45c65 for pr-128351-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flautis%2Fnad-volume-sync" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/lautis/nad-volume-sync on toolchain 16d823b1c168ce52c66ccc00dfd686f775a45c65
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/lautis/nad-volume-sync
[INFO] finished tweaking git repo https://github.com/lautis/nad-volume-sync
[INFO] tweaked toml for git repo https://github.com/lautis/nad-volume-sync written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/lautis/nad-volume-sync already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bc8a97f443d3b260ded949d1e065deabb4b191128bd9afcd853e3bd9d8519694
[INFO] running `Command { std: "docker" "start" "-a" "bc8a97f443d3b260ded949d1e065deabb4b191128bd9afcd853e3bd9d8519694", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bc8a97f443d3b260ded949d1e065deabb4b191128bd9afcd853e3bd9d8519694", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc8a97f443d3b260ded949d1e065deabb4b191128bd9afcd853e3bd9d8519694", kill_on_drop: false }`
[INFO] [stdout] bc8a97f443d3b260ded949d1e065deabb4b191128bd9afcd853e3bd9d8519694
[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=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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5bc1f6bff62dd751b5a61e3a72c5543ff4118d4cf01c6da08106081023a0256a
[INFO] running `Command { std: "docker" "start" "-a" "5bc1f6bff62dd751b5a61e3a72c5543ff4118d4cf01c6da08106081023a0256a", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]    Compiling libc v0.2.48
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]    Compiling memchr v2.1.3
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]     Checking nix v0.9.0
[INFO] [stderr]     Checking nom v4.2.0
[INFO] [stderr]     Checking alsa v0.2.1
[INFO] [stderr]     Checking nad-volume-sync v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:189:70
[INFO] [stdout]     |
[INFO] [stdout] 189 |                     .expect("Could not send receiver volume change");;
[INFO] [stdout]     |                                                                      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:231:65
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 .expect("Could not send volume change command");;
[INFO] [stdout]     |                                                                 ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:14:56
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, Box<error::Error>> {
[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] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, 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:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn open_mixer(name: &str) -> Result<alsa::Mixer, Box<error::Error>> {
[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 | fn open_mixer(name: &str) -> Result<alsa::Mixer, 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:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<dyn Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:24:67
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> 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:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn alsa_volume(name: &str) -> Result<f64, Box<error::Error>> {
[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] 40 | fn alsa_volume(name: &str) -> Result<f64, 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:65:65
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn set_alsa_volume(name: String, volume: f64) -> Result<(), Box<error::Error>> {
[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] 65 | fn set_alsa_volume(name: String, volume: f64) -> 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:82:79
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> Result<(), Box<error::Error>> {
[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] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> 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:98:59
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, Box<error::Error>> {
[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] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, 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:119:67
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> Result<(), Box<error::Error>> {
[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] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> 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:198:63
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn receiver_connect(address: String) -> Result<TcpStream, Box<error::Error>> {
[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] 198 | fn receiver_connect(address: String) -> Result<TcpStream, 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:204:29
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn main() -> Result<(), Box<error::Error>> {
[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] 204 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:189:70
[INFO] [stdout]     |
[INFO] [stdout] 189 |                     .expect("Could not send receiver volume change");;
[INFO] [stdout]     |                                                                      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:231:65
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 .expect("Could not send volume change command");;
[INFO] [stdout]     |                                                                 ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:14:56
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, Box<error::Error>> {
[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] 14 | fn open_audio_ctl(name: &str) -> Result<alsa::Ctl, 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:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn open_mixer(name: &str) -> Result<alsa::Mixer, Box<error::Error>> {
[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 | fn open_mixer(name: &str) -> Result<alsa::Mixer, 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:24:32
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<dyn Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:24:67
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> Result<(), Box<error::Error>> {
[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 | fn listen(name: String, f: Box<Fn(f64) + Send>) -> 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:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn alsa_volume(name: &str) -> Result<f64, Box<error::Error>> {
[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] 40 | fn alsa_volume(name: &str) -> Result<f64, 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:65:65
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn set_alsa_volume(name: String, volume: f64) -> Result<(), Box<error::Error>> {
[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] 65 | fn set_alsa_volume(name: String, volume: f64) -> 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:82:79
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> Result<(), Box<error::Error>> {
[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] 82 | fn set_receiver_volume(stream: &mut TcpStream, volume: f64) -> 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:98:59
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, Box<error::Error>> {
[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] 98 | fn read_stream(stream: &mut TcpStream) -> Result<f64, 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:119:67
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> Result<(), Box<error::Error>> {
[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] 119 | fn poll_receiver_volume(stream: &mut TcpStream) -> 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:198:63
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn receiver_connect(address: String) -> Result<TcpStream, Box<error::Error>> {
[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] 198 | fn receiver_connect(address: String) -> Result<TcpStream, 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:204:29
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn main() -> Result<(), Box<error::Error>> {
[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] 204 | fn main() -> Result<(), Box<dyn error::Error>> {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.85s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "5bc1f6bff62dd751b5a61e3a72c5543ff4118d4cf01c6da08106081023a0256a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bc1f6bff62dd751b5a61e3a72c5543ff4118d4cf01c6da08106081023a0256a", kill_on_drop: false }`
[INFO] [stdout] 5bc1f6bff62dd751b5a61e3a72c5543ff4118d4cf01c6da08106081023a0256a
