[INFO] cloning repository https://github.com/mattias-p/digraph123
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mattias-p/digraph123" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattias-p%2Fdigraph123", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattias-p%2Fdigraph123'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6d75d23e0842ed2e866dee9561505b673b235a05
[INFO] checking mattias-p/digraph123 against master#cb06d12710575a0d7ff71d6fe108f3bcff4f9195 for pr-128425-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattias-p%2Fdigraph123" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/mattias-p/digraph123 on toolchain cb06d12710575a0d7ff71d6fe108f3bcff4f9195
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/mattias-p/digraph123
[INFO] finished tweaking git repo https://github.com/mattias-p/digraph123
[INFO] tweaked toml for git repo https://github.com/mattias-p/digraph123 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/mattias-p/digraph123 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" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/mattias-p/vorbis-rs.git`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded gcc v0.3.26
[INFO] [stderr]   Downloaded ogg-sys v0.0.9
[INFO] [stderr]   Downloaded mempool v0.3.1
[INFO] [stderr]   Downloaded strsim v0.4.0
[INFO] [stderr]   Downloaded ole32-sys v0.1.0
[INFO] [stderr]   Downloaded cpal v0.2.9
[INFO] [stderr]   Downloaded ansi_term v0.7.2
[INFO] [stderr]   Downloaded coreaudio-rs v0.4.0
[INFO] [stderr]   Downloaded alsa-sys v0.0.8
[INFO] [stderr]   Downloaded vorbisfile-sys v0.0.8
[INFO] [stderr]   Downloaded regex-syntax v0.3.1
[INFO] [stderr]   Downloaded libc v0.2.9
[INFO] [stderr]   Downloaded clap v2.2.5
[INFO] [stderr]   Downloaded regex v0.1.65
[INFO] [stderr]   Downloaded vorbis-sys v0.0.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] edf1cca4de9d56174787a569396f5ca43e452201af8c51615382945dcb410d35
[INFO] running `Command { std: "docker" "start" "-a" "edf1cca4de9d56174787a569396f5ca43e452201af8c51615382945dcb410d35", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "edf1cca4de9d56174787a569396f5ca43e452201af8c51615382945dcb410d35", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "edf1cca4de9d56174787a569396f5ca43e452201af8c51615382945dcb410d35", kill_on_drop: false }`
[INFO] [stdout] edf1cca4de9d56174787a569396f5ca43e452201af8c51615382945dcb410d35
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cd0f47a0ae736b18749bf24c18fa3da034ea2d6077db8640b45135a3b9c60420
[INFO] running `Command { std: "docker" "start" "-a" "cd0f47a0ae736b18749bf24c18fa3da034ea2d6077db8640b45135a3b9c60420", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling pkg-config v0.3.8
[INFO] [stderr]     Checking libc v0.2.9
[INFO] [stderr]    Compiling gcc v0.3.26
[INFO] [stderr]    Compiling ole32-sys v0.1.0
[INFO] [stderr]     Checking winapi v0.2.6
[INFO] [stderr]     Checking ansi_term v0.7.2
[INFO] [stderr]     Checking utf8-ranges v0.1.3
[INFO] [stderr]     Checking regex-syntax v0.3.1
[INFO] [stderr]     Checking strsim v0.4.0
[INFO] [stderr]     Checking mempool v0.3.1
[INFO] [stderr]     Checking vec_map v0.6.0
[INFO] [stderr]     Checking bitflags v0.4.0
[INFO] [stderr]     Checking unicode-width v0.1.3
[INFO] [stderr]     Checking lazy_static v0.1.15
[INFO] [stderr]    Compiling alsa-sys v0.0.8
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking rand v0.3.14
[INFO] [stderr]     Checking clap v2.2.5
[INFO] [stderr]     Checking aho-corasick v0.5.1
[INFO] [stderr]    Compiling ogg-sys v0.0.9
[INFO] [stderr]    Compiling vorbis-sys v0.0.8
[INFO] [stderr]    Compiling vorbisfile-sys v0.0.8
[INFO] [stderr]     Checking cpal v0.2.9
[INFO] [stderr]     Checking regex v0.1.65
[INFO] [stderr]     Checking vorbis v0.0.14 (https://github.com/mattias-p/vorbis-rs.git?branch=comments#089bab7d)
[INFO] [stderr]     Checking digraph123 v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/stream.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         try!(stream.load());
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/stream.rs:55:18
[INFO] [stdout]    |
[INFO] [stdout] 55 |             Some(try!(first)
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:105:32
[INFO] [stdout]     |
[INFO] [stdout] 105 |                     let data = try!(vorbis_packet).data;
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let decoder = try!(vorbis::Decoder::new(file));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:145:28
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let splice_point = try!(decoder.get_comment("SPLICEPOINT"));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:149:60
[INFO] [stdout]     |
[INFO] [stdout] 149 | ...                   let value = try!(u64::from_str(value));
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:155:28
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let splice_point = try!(splice_point);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let stream = try!(VorbisStream::new(decoder));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             try!(self.stream.load());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:223:25
[INFO] [stdout]     |
[INFO] [stdout] 223 |             let tails = try!(player.load());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:254:26
[INFO] [stdout]     |
[INFO] [stdout] 254 |             tails.extend(try!(new_tails));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:257:34
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     self.track = try!(new_track);
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:62:20
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let file = try!(fs::File::open(path));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:63:27
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut decoder = try!(vorbis::Decoder::new(file));
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:64:22
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let packet = try!(decoder.packets().next().expect("first packet"));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `lazy_static` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `lazy_static` may come from an old version of the `lazy_static` crate, try updating your dependency with `cargo update -p lazy_static`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `lazy_static` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `lazy_static` may come from an old version of the `lazy_static` crate, try updating your dependency with `cargo update -p lazy_static`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:105:36
[INFO] [stdout]     |
[INFO] [stdout] 105 |             Ok(Some((voice_config, try!(stream::Player::new(Box::new(tracks))))))
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:128:26
[INFO] [stdout]     |
[INFO] [stdout] 128 |             for entry in try!(fs::read_dir(dir)) {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:129:29
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let entry = try!(entry);
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |             if let Some((voice_config, player)) = try!(player_builder.build()) {
[INFO] [stdout]     |                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:139:38
[INFO] [stdout]     |
[INFO] [stdout] 139 |                        error::Error::description(&why))
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/digraph.rs:66:14
[INFO] [stdout]    |
[INFO] [stdout] 66 |     rng: Box<rand::Rng>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     rng: Box<dyn rand::Rng>,
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |     stream: Box<Stream>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 121 |     stream: Box<dyn Stream>,
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |     play_list: Box<Iterator<Item = Result<Track>>>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 212 |     play_list: Box<dyn Iterator<Item = Result<Track>>>,
[INFO] [stdout]     |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:268:22
[INFO] [stdout]     |
[INFO] [stdout] 268 |     streams: Vec<Box<Stream>>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 268 |     streams: Vec<Box<dyn Stream>>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:113:22
[INFO] [stdout]     |
[INFO] [stdout] 113 |     streams: Vec<Box<stream::Stream>>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 113 |     streams: Vec<Box<dyn stream::Stream>>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/stream.rs:19:42
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn load(&mut self) -> Result<Vec<Box<Stream>>>;
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>>;
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/digraph.rs:9:44
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn into_random_walk(self, rng: Box<rand::Rng>) -> IntoRandomWalk {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn into_random_walk(self, rng: Box<dyn rand::Rng>) -> IntoRandomWalk {
[INFO] [stdout]   |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/stream.rs:39:42
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/stream.rs:98:42
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:194:42
[INFO] [stdout]     |
[INFO] [stdout] 194 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 194 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:246:42
[INFO] [stdout]     |
[INFO] [stdout] 246 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 246 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:306:42
[INFO] [stdout]     |
[INFO] [stdout] 306 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 306 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:368:32
[INFO] [stdout]     |
[INFO] [stdout] 368 |     fn cause(&self) -> Option<&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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 368 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:216:28
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn new(tracks: Box<Iterator<Item = Result<Track>>>) -> Result<Player> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn new(tracks: Box<dyn Iterator<Item = Result<Track>>>) -> Result<Player> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:272:33
[INFO] [stdout]     |
[INFO] [stdout] 272 |     pub fn new(streams: Vec<Box<Stream>>) -> Mixer {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 272 |     pub fn new(streams: Vec<Box<dyn Stream>>) -> Mixer {
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/stream.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         try!(stream.load());
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/stream.rs:55:18
[INFO] [stdout]    |
[INFO] [stdout] 55 |             Some(try!(first)
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:105:32
[INFO] [stdout]     |
[INFO] [stdout] 105 |                     let data = try!(vorbis_packet).data;
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let decoder = try!(vorbis::Decoder::new(file));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:145:28
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let splice_point = try!(decoder.get_comment("SPLICEPOINT"));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:149:60
[INFO] [stdout]     |
[INFO] [stdout] 149 | ...                   let value = try!(u64::from_str(value));
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:155:28
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let splice_point = try!(splice_point);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let stream = try!(VorbisStream::new(decoder));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             try!(self.stream.load());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:223:25
[INFO] [stdout]     |
[INFO] [stdout] 223 |             let tails = try!(player.load());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:254:26
[INFO] [stdout]     |
[INFO] [stdout] 254 |             tails.extend(try!(new_tails));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/stream.rs:257:34
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     self.track = try!(new_track);
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:62:20
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let file = try!(fs::File::open(path));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:63:27
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut decoder = try!(vorbis::Decoder::new(file));
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:64:22
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let packet = try!(decoder.packets().next().expect("first packet"));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `lazy_static` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `lazy_static` may come from an old version of the `lazy_static` crate, try updating your dependency with `cargo update -p lazy_static`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `lazy_static` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `lazy_static` may come from an old version of the `lazy_static` crate, try updating your dependency with `cargo update -p lazy_static`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:105:36
[INFO] [stdout]     |
[INFO] [stdout] 105 |             Ok(Some((voice_config, try!(stream::Player::new(Box::new(tracks))))))
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:128:26
[INFO] [stdout]     |
[INFO] [stdout] 128 |             for entry in try!(fs::read_dir(dir)) {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:129:29
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let entry = try!(entry);
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |             if let Some((voice_config, player)) = try!(player_builder.build()) {
[INFO] [stdout]     |                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:371:49
[INFO] [stdout]     |
[INFO] [stdout] 371 |             &Error::Io(ref err) => Some(err as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 371 |             &Error::Io(ref err) => Some(err as &dyn error::Error),
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:372:52
[INFO] [stdout]     |
[INFO] [stdout] 372 |             &Error::Parse(ref err) => Some(err as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 372 |             &Error::Parse(ref err) => Some(err as &dyn error::Error),
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:373:53
[INFO] [stdout]     |
[INFO] [stdout] 373 |             &Error::Vorbis(ref err) => Some(err as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 373 |             &Error::Vorbis(ref err) => Some(err as &dyn error::Error),
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:374:62
[INFO] [stdout]     |
[INFO] [stdout] 374 |             &Error::File(_, ref err) => Some(err.deref() as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 374 |             &Error::File(_, ref err) => Some(err.deref() as &dyn error::Error),
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:375:61
[INFO] [stdout]     |
[INFO] [stdout] 375 |             &Error::Dir(_, ref err) => Some(err.deref() as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 375 |             &Error::Dir(_, ref err) => Some(err.deref() as &dyn error::Error),
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:413:61
[INFO] [stdout]     |
[INFO] [stdout] 413 |             &::stream::Error::Io(_) => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:414:64
[INFO] [stdout]     |
[INFO] [stdout] 414 |             &::stream::Error::Parse(_) => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:415:65
[INFO] [stdout]     |
[INFO] [stdout] 415 |             &::stream::Error::Vorbis(_) => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:418:46
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 write!(f, "{}:\n * {}", self.description(), parts.join("\n * "))
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:420:67
[INFO] [stdout]     |
[INFO] [stdout] 420 |             &::stream::Error::AudioFormat => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:425:63
[INFO] [stdout]     |
[INFO] [stdout] 425 |             &::stream::Error::NoItems => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |         let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |                     print_error!(&err, "warning: ignoring file");
[INFO] [stdout]     |                     -------------------------------------------- in this macro invocation
[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: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |         while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |                     print_error!(&err, "warning: ignoring file");
[INFO] [stdout]     |                     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |           let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |           let formats = insist!(formats,
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 164 | |                               "fatal: failed to get list of supported audio formats");
[INFO] [stdout]     | |_____________________________________________________________________________________- in this macro invocation
[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: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |           while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |           let formats = insist!(formats,
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 164 | |                               "fatal: failed to get list of supported audio formats");
[INFO] [stdout]     | |_____________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/main.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         lazy_static! {
[INFO] [stdout] 70 | |             static ref SECTION_RE: regex::Regex = regex::Regex::new(r"^([^-]+)-([^-]+)(?:-(.+))?.ogg$").unwrap();
[INFO] [stdout] 71 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:139:38
[INFO] [stdout]     |
[INFO] [stdout] 139 |                        error::Error::description(&why))
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/digraph.rs:66:14
[INFO] [stdout]    |
[INFO] [stdout] 66 |     rng: Box<rand::Rng>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     rng: Box<dyn rand::Rng>,
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |     stream: Box<Stream>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 121 |     stream: Box<dyn Stream>,
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |     play_list: Box<Iterator<Item = Result<Track>>>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 212 |     play_list: Box<dyn Iterator<Item = Result<Track>>>,
[INFO] [stdout]     |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |         let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |             print_error!(&err, "warning: ignoring directory");
[INFO] [stdout]     |             ------------------------------------------------- in this macro invocation
[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: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:268:22
[INFO] [stdout]     |
[INFO] [stdout] 268 |     streams: Vec<Box<Stream>>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 268 |     streams: Vec<Box<dyn Stream>>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |         while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |             print_error!(&err, "warning: ignoring directory");
[INFO] [stdout]     |             ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |           let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |       let (voice_config, coefficient, mut mixer) = insist!(mixer_builder.build(),
[INFO] [stdout]     |  __________________________________________________-
[INFO] [stdout] 199 | |                                                          "fatal: failed to construct mixer");
[INFO] [stdout]     | |____________________________________________________________________________________________- in this macro invocation
[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: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |           while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |       let (voice_config, coefficient, mut mixer) = insist!(mixer_builder.build(),
[INFO] [stdout]     |  __________________________________________________-
[INFO] [stdout] 199 | |                                                          "fatal: failed to construct mixer");
[INFO] [stdout]     | |____________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |         let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |                 print_error!(&err, "warning: an error occurred loading the mixer");
[INFO] [stdout]     |                 ------------------------------------------------------------------ in this macro invocation
[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: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |         while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |                 print_error!(&err, "warning: an error occurred loading the mixer");
[INFO] [stdout]     |                 ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:113:22
[INFO] [stdout]     |
[INFO] [stdout] 113 |     streams: Vec<Box<stream::Stream>>,
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 113 |     streams: Vec<Box<dyn stream::Stream>>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/stream.rs:19:42
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn load(&mut self) -> Result<Vec<Box<Stream>>>;
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>>;
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/digraph.rs:9:44
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn into_random_walk(self, rng: Box<rand::Rng>) -> IntoRandomWalk {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn into_random_walk(self, rng: Box<dyn rand::Rng>) -> IntoRandomWalk {
[INFO] [stdout]   |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/stream.rs:39:42
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/stream.rs:98:42
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:194:42
[INFO] [stdout]     |
[INFO] [stdout] 194 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 194 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:246:42
[INFO] [stdout]     |
[INFO] [stdout] 246 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 246 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:306:42
[INFO] [stdout]     |
[INFO] [stdout] 306 |     fn load(&mut self) -> Result<Vec<Box<Stream>>> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 306 |     fn load(&mut self) -> Result<Vec<Box<dyn Stream>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:368:32
[INFO] [stdout]     |
[INFO] [stdout] 368 |     fn cause(&self) -> Option<&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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 368 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:216:28
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn new(tracks: Box<Iterator<Item = Result<Track>>>) -> Result<Player> {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 216 |     pub fn new(tracks: Box<dyn Iterator<Item = Result<Track>>>) -> Result<Player> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:272:33
[INFO] [stdout]     |
[INFO] [stdout] 272 |     pub fn new(streams: Vec<Box<Stream>>) -> Mixer {
[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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 272 |     pub fn new(streams: Vec<Box<dyn Stream>>) -> Mixer {
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:371:49
[INFO] [stdout]     |
[INFO] [stdout] 371 |             &Error::Io(ref err) => Some(err as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 371 |             &Error::Io(ref err) => Some(err as &dyn error::Error),
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:372:52
[INFO] [stdout]     |
[INFO] [stdout] 372 |             &Error::Parse(ref err) => Some(err as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 372 |             &Error::Parse(ref err) => Some(err as &dyn error::Error),
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:373:53
[INFO] [stdout]     |
[INFO] [stdout] 373 |             &Error::Vorbis(ref err) => Some(err as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 373 |             &Error::Vorbis(ref err) => Some(err as &dyn error::Error),
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:374:62
[INFO] [stdout]     |
[INFO] [stdout] 374 |             &Error::File(_, ref err) => Some(err.deref() as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 374 |             &Error::File(_, ref err) => Some(err.deref() as &dyn error::Error),
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/stream.rs:375:61
[INFO] [stdout]     |
[INFO] [stdout] 375 |             &Error::Dir(_, ref err) => Some(err.deref() as &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 a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 375 |             &Error::Dir(_, ref err) => Some(err.deref() as &dyn error::Error),
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:413:61
[INFO] [stdout]     |
[INFO] [stdout] 413 |             &::stream::Error::Io(_) => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:414:64
[INFO] [stdout]     |
[INFO] [stdout] 414 |             &::stream::Error::Parse(_) => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:415:65
[INFO] [stdout]     |
[INFO] [stdout] 415 |             &::stream::Error::Vorbis(_) => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:418:46
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 write!(f, "{}:\n * {}", self.description(), parts.join("\n * "))
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:420:67
[INFO] [stdout]     |
[INFO] [stdout] 420 |             &::stream::Error::AudioFormat => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/stream.rs:425:63
[INFO] [stdout]     |
[INFO] [stdout] 425 |             &::stream::Error::NoItems => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |         let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |                     print_error!(&err, "warning: ignoring file");
[INFO] [stdout]     |                     -------------------------------------------- in this macro invocation
[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: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |         while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |                     print_error!(&err, "warning: ignoring file");
[INFO] [stdout]     |                     -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |           let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |           let formats = insist!(formats,
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 164 | |                               "fatal: failed to get list of supported audio formats");
[INFO] [stdout]     | |_____________________________________________________________________________________- in this macro invocation
[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: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |           while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |           let formats = insist!(formats,
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 164 | |                               "fatal: failed to get list of supported audio formats");
[INFO] [stdout]     | |_____________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |         let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |             print_error!(&err, "warning: ignoring directory");
[INFO] [stdout]     |             ------------------------------------------------- in this macro invocation
[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: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |         while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |             print_error!(&err, "warning: ignoring directory");
[INFO] [stdout]     |             ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |           let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |       let (voice_config, coefficient, mut mixer) = insist!(mixer_builder.build(),
[INFO] [stdout]     |  __________________________________________________-
[INFO] [stdout] 199 | |                                                          "fatal: failed to construct mixer");
[INFO] [stdout]     | |____________________________________________________________________________________________- in this macro invocation
[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: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |           while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |       let (voice_config, coefficient, mut mixer) = insist!(mixer_builder.build(),
[INFO] [stdout]     |  __________________________________________________-
[INFO] [stdout] 199 | |                                                          "fatal: failed to construct mixer");
[INFO] [stdout]     | |____________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` which comes from the expansion of the macro `insist` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:27:32
[INFO] [stdout]     |
[INFO] [stdout] 27  |         let mut err = $err as &std::error::Error;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |                 print_error!(&err, "warning: an error occurred loading the mixer");
[INFO] [stdout]     |                 ------------------------------------------------------------------ in this macro invocation
[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: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/main.rs:29:37
[INFO] [stdout]     |
[INFO] [stdout] 29  |         while let Some(cause) = err.cause() {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |                 print_error!(&err, "warning: an error occurred loading the mixer");
[INFO] [stdout]     |                 ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `print_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.09s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.4.0, clap v2.2.5
[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" "cd0f47a0ae736b18749bf24c18fa3da034ea2d6077db8640b45135a3b9c60420", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd0f47a0ae736b18749bf24c18fa3da034ea2d6077db8640b45135a3b9c60420", kill_on_drop: false }`
[INFO] [stdout] cd0f47a0ae736b18749bf24c18fa3da034ea2d6077db8640b45135a3b9c60420
