[INFO] cloning repository https://github.com/fantamp/gen-ammo
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/fantamp/gen-ammo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffantamp%2Fgen-ammo", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffantamp%2Fgen-ammo'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d9b323c784d1a79df8a641e00c4d7ad423d2fe82
[INFO] checking fantamp/gen-ammo against master#cb06d12710575a0d7ff71d6fe108f3bcff4f9195 for pr-128425-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffantamp%2Fgen-ammo" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/fantamp/gen-ammo 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/fantamp/gen-ammo
[INFO] finished tweaking git repo https://github.com/fantamp/gen-ammo
[INFO] tweaked toml for git repo https://github.com/fantamp/gen-ammo written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/fantamp/gen-ammo 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]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded strsim v0.5.2
[INFO] [stderr]   Downloaded twoway v0.1.3
[INFO] [stderr]   Downloaded unicode-segmentation v0.1.3
[INFO] [stderr]   Downloaded term_size v0.2.1
[INFO] [stderr]   Downloaded flate2 v0.2.14
[INFO] [stderr]   Downloaded clap v2.19.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 905c4a20be7bf183ceafb217f346ec6047ffa3efc079c1db04d63b8188e0df48
[INFO] running `Command { std: "docker" "start" "-a" "905c4a20be7bf183ceafb217f346ec6047ffa3efc079c1db04d63b8188e0df48", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "905c4a20be7bf183ceafb217f346ec6047ffa3efc079c1db04d63b8188e0df48", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "905c4a20be7bf183ceafb217f346ec6047ffa3efc079c1db04d63b8188e0df48", kill_on_drop: false }`
[INFO] [stdout] 905c4a20be7bf183ceafb217f346ec6047ffa3efc079c1db04d63b8188e0df48
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 439a420ee0e887a5de7782402fae312b7ab7075353221d73950489929334dd25
[INFO] running `Command { std: "docker" "start" "-a" "439a420ee0e887a5de7782402fae312b7ab7075353221d73950489929334dd25", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Checking libc v0.2.18
[INFO] [stderr]    Compiling gcc v0.3.41
[INFO] [stderr]     Checking unicode-width v0.1.4
[INFO] [stderr]     Checking strsim v0.5.2
[INFO] [stderr]     Checking unicode-segmentation v0.1.3
[INFO] [stderr]     Checking vec_map v0.6.0
[INFO] [stderr]     Checking ansi_term v0.9.0
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking term_size v0.2.1
[INFO] [stderr]     Checking rand v0.3.15
[INFO] [stderr]     Checking clap v2.19.3
[INFO] [stderr]    Compiling miniz-sys v0.1.7
[INFO] [stderr]     Checking twoway v0.1.3
[INFO] [stderr]     Checking flate2 v0.2.14
[INFO] [stderr]     Checking logut v0.1.0 (/opt/rustwide/workdir/logut)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:41:26
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub sources: Vec<Box<ReadByLine>>,
[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] 41 |     pub sources: Vec<Box<dyn ReadByLine>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:60:21
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub reader: Box<BufRead>,
[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] 60 |     pub reader: Box<dyn BufRead>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> logut/src/read.rs:8:47
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()>;
[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] 8 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()>;
[INFO] [stdout]   |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn process_lines(raw: &mut BufRead, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[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] 12 | fn process_lines(raw: &mut dyn BufRead, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:12:51
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn process_lines(raw: &mut BufRead, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[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] 12 | fn process_lines(raw: &mut BufRead, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()>
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:45:47
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[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] 45 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:65:47
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[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] 65 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:77:47
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[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] 77 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:90:47
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()>
[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] 90 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> logut/src/read.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut reader: Box<BufRead> = match GzDecoder::new(Cursor::new(&prefetched)) {
[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] 21 |     let mut reader: Box<dyn BufRead> = match GzDecoder::new(Cursor::new(&prefetched)) {
[INFO] [stdout]    |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking gen_ammo v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ammo_proc.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |                 try!(self.subprocessor.process(&bullet.get_data()));
[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/ammo_proc.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             try!(self.subprocessor.process(bullet));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(self.subprocessors[self.current].process(bullet));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             try!(consumer.finish());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let f = try!(File::create(filename));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:158:26
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let p = Box::new(try!(Command::new("sh")
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 |     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] 23 |     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/ammo_proc.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 |     subprocessor: Box<AmmoProcessor>,
[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] 24 |     subprocessor: Box<dyn AmmoProcessor>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:69:14
[INFO] [stdout]    |
[INFO] [stdout] 69 |     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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     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/ammo_proc.rs:70:23
[INFO] [stdout]    |
[INFO] [stdout] 70 |     subprocessor: Box<AmmoProcessor>,
[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] 70 |     subprocessor: Box<dyn AmmoProcessor>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:110:28
[INFO] [stdout]     |
[INFO] [stdout] 110 |     subprocessors: Vec<Box<AmmoProcessor>>,
[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] 110 |     subprocessors: Vec<Box<dyn AmmoProcessor>>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |     writer: Box<Write>,
[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] 142 |     writer: Box<dyn Write>,
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | type ReaderFabric = Fn() -> Box<ReadByLine>;
[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] 28 | type ReaderFabric = dyn Fn() -> Box<ReadByLine>;
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:28:33
[INFO] [stdout]    |
[INFO] [stdout] 28 | type ReaderFabric = Fn() -> Box<ReadByLine>;
[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] 28 | type ReaderFabric = Fn() -> Box<dyn ReadByLine>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:187:16
[INFO] [stdout]     |
[INFO] [stdout] 187 |     check: Box<Fn(&[u8]) -> bool>,
[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] 187 |     check: Box<dyn Fn(&[u8]) -> bool>,
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |     source: Box<ReadByLine>,
[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] 188 |     source: Box<dyn ReadByLine>,
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:167:46
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn make_writer(conf: &RunConf) -> Result<Box<AmmoProcessor>, error::ProcError> {
[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] 167 | fn make_writer(conf: &RunConf) -> Result<Box<dyn AmmoProcessor>, error::ProcError> {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:192:47
[INFO] [stdout]     |
[INFO] [stdout] 192 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()> {
[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] 192 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:204:46
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn make_reader(conf: &RunConf) -> Result<Box<ReadByLine>, std::io::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] 204 | fn make_reader(conf: &RunConf) -> Result<Box<dyn ReadByLine>, std::io::Error> {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:237:47
[INFO] [stdout]     |
[INFO] [stdout] 237 | fn make_processor(conf: &RunConf, writer: Box<AmmoProcessor>) -> io::Result<Box<AmmoProcessor>> {
[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] 237 | fn make_processor(conf: &RunConf, writer: Box<dyn AmmoProcessor>) -> io::Result<Box<AmmoProcessor>> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:237:81
[INFO] [stdout]     |
[INFO] [stdout] 237 | fn make_processor(conf: &RunConf, writer: Box<AmmoProcessor>) -> io::Result<Box<AmmoProcessor>> {
[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] 237 | fn make_processor(conf: &RunConf, writer: Box<AmmoProcessor>) -> io::Result<Box<dyn AmmoProcessor>> {
[INFO] [stdout]     |                                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:249:63
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<AmmoProcessor>) -> Box<FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<dyn AmmoProcessor>) -> Box<FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:249:86
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<AmmoProcessor>) -> Box<FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<AmmoProcessor>) -> Box<dyn FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |     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] 30 |     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/ammo_proc.rs:28:51
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn new(set_size: usize, subprocessor: Box<AmmoProcessor>) -> ReserviorSampling {
[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] 28 |     pub fn new(set_size: usize, subprocessor: Box<dyn AmmoProcessor>) -> ReserviorSampling {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:74:84
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<AmmoProcessor>) -> Box<AmmoProcessor> {
[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] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<dyn AmmoProcessor>) -> Box<AmmoProcessor> {
[INFO] [stdout]    |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:74:107
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<AmmoProcessor>) -> Box<AmmoProcessor> {
[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] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<AmmoProcessor>) -> Box<dyn AmmoProcessor> {
[INFO] [stdout]    |                                                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:115:39
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn new(subprocessors: Vec<Box<AmmoProcessor>>) -> RoundRobin {
[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] 115 |     pub fn new(subprocessors: Vec<Box<dyn AmmoProcessor>>) -> RoundRobin {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub fn to_stream(to: Box<Write>) -> Result<WriteAmmo, io::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] 166 |     pub fn to_stream(to: Box<dyn Write>) -> Result<WriteAmmo, io::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/error.rs:25:43
[INFO] [stdout]    |
[INFO] [stdout] 25 |             ProcError::Io(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:169:30
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let mut writers: Vec<Box<ammo_proc::AmmoProcessor>> = Vec::new();
[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] 169 |     let mut writers: Vec<Box<dyn ammo_proc::AmmoProcessor>> = Vec::new();
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let source: Box<ReadByLine> = if conf.in_files.len() <= 0 {
[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] 209 |     let source: Box<dyn ReadByLine> = if conf.in_files.len() <= 0 {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:212:34
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let mut readers: Vec<Box<ReadByLine>> = Vec::new();
[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 |         let mut readers: Vec<Box<dyn ReadByLine>> = Vec::new();
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:214:29
[INFO] [stdout]     |
[INFO] [stdout] 214 |             let reader: Box<ReadByLine> = match source {
[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] 214 |             let reader: Box<dyn ReadByLine> = match source {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ammo_proc.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |                 try!(self.subprocessor.process(&bullet.get_data()));
[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/ammo_proc.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             try!(self.subprocessor.process(bullet));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(self.subprocessors[self.current].process(bullet));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             try!(consumer.finish());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let f = try!(File::create(filename));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/ammo_proc.rs:158:26
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let p = Box::new(try!(Command::new("sh")
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:23:14
[INFO] [stdout]    |
[INFO] [stdout] 23 |     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] 23 |     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/ammo_proc.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 |     subprocessor: Box<AmmoProcessor>,
[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] 24 |     subprocessor: Box<dyn AmmoProcessor>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:69:14
[INFO] [stdout]    |
[INFO] [stdout] 69 |     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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     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/ammo_proc.rs:70:23
[INFO] [stdout]    |
[INFO] [stdout] 70 |     subprocessor: Box<AmmoProcessor>,
[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] 70 |     subprocessor: Box<dyn AmmoProcessor>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:110:28
[INFO] [stdout]     |
[INFO] [stdout] 110 |     subprocessors: Vec<Box<AmmoProcessor>>,
[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] 110 |     subprocessors: Vec<Box<dyn AmmoProcessor>>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |     writer: Box<Write>,
[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] 142 |     writer: Box<dyn Write>,
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | type ReaderFabric = Fn() -> Box<ReadByLine>;
[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] 28 | type ReaderFabric = dyn Fn() -> Box<ReadByLine>;
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:28:33
[INFO] [stdout]    |
[INFO] [stdout] 28 | type ReaderFabric = Fn() -> Box<ReadByLine>;
[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] 28 | type ReaderFabric = Fn() -> Box<dyn ReadByLine>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:187:16
[INFO] [stdout]     |
[INFO] [stdout] 187 |     check: Box<Fn(&[u8]) -> bool>,
[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] 187 |     check: Box<dyn Fn(&[u8]) -> bool>,
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |     source: Box<ReadByLine>,
[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] 188 |     source: Box<dyn ReadByLine>,
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:167:46
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn make_writer(conf: &RunConf) -> Result<Box<AmmoProcessor>, error::ProcError> {
[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] 167 | fn make_writer(conf: &RunConf) -> Result<Box<dyn AmmoProcessor>, error::ProcError> {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:192:47
[INFO] [stdout]     |
[INFO] [stdout] 192 |     fn process_lines(&mut self, feed_to: &mut FnMut(&[u8])) -> io::Result<()> {
[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] 192 |     fn process_lines(&mut self, feed_to: &mut dyn FnMut(&[u8])) -> io::Result<()> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:204:46
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn make_reader(conf: &RunConf) -> Result<Box<ReadByLine>, std::io::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] 204 | fn make_reader(conf: &RunConf) -> Result<Box<dyn ReadByLine>, std::io::Error> {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:237:47
[INFO] [stdout]     |
[INFO] [stdout] 237 | fn make_processor(conf: &RunConf, writer: Box<AmmoProcessor>) -> io::Result<Box<AmmoProcessor>> {
[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] 237 | fn make_processor(conf: &RunConf, writer: Box<dyn AmmoProcessor>) -> io::Result<Box<AmmoProcessor>> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:237:81
[INFO] [stdout]     |
[INFO] [stdout] 237 | fn make_processor(conf: &RunConf, writer: Box<AmmoProcessor>) -> io::Result<Box<AmmoProcessor>> {
[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] 237 | fn make_processor(conf: &RunConf, writer: Box<AmmoProcessor>) -> io::Result<Box<dyn AmmoProcessor>> {
[INFO] [stdout]     |                                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:249:63
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<AmmoProcessor>) -> Box<FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                               ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<dyn AmmoProcessor>) -> Box<FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:249:86
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<AmmoProcessor>) -> Box<FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn make_log_line_process_func<'a>(ammo_processor: &'a mut Box<AmmoProcessor>) -> Box<dyn FnMut(&[u8]) + 'a> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |     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] 30 |     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/ammo_proc.rs:28:51
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn new(set_size: usize, subprocessor: Box<AmmoProcessor>) -> ReserviorSampling {
[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] 28 |     pub fn new(set_size: usize, subprocessor: Box<dyn AmmoProcessor>) -> ReserviorSampling {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:74:84
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<AmmoProcessor>) -> Box<AmmoProcessor> {
[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] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<dyn AmmoProcessor>) -> Box<AmmoProcessor> {
[INFO] [stdout]    |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ammo_proc.rs:74:107
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<AmmoProcessor>) -> Box<AmmoProcessor> {
[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] 74 |     pub fn new(input_lines_count: usize, target_set_size: usize, subprocessor: Box<AmmoProcessor>) -> Box<dyn AmmoProcessor> {
[INFO] [stdout]    |                                                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:115:39
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn new(subprocessors: Vec<Box<AmmoProcessor>>) -> RoundRobin {
[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] 115 |     pub fn new(subprocessors: Vec<Box<dyn AmmoProcessor>>) -> RoundRobin {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ammo_proc.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub fn to_stream(to: Box<Write>) -> Result<WriteAmmo, io::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] 166 |     pub fn to_stream(to: Box<dyn Write>) -> Result<WriteAmmo, io::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/error.rs:25:43
[INFO] [stdout]    |
[INFO] [stdout] 25 |             ProcError::Io(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:169:30
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let mut writers: Vec<Box<ammo_proc::AmmoProcessor>> = Vec::new();
[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] 169 |     let mut writers: Vec<Box<dyn ammo_proc::AmmoProcessor>> = Vec::new();
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let source: Box<ReadByLine> = if conf.in_files.len() <= 0 {
[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] 209 |     let source: Box<dyn ReadByLine> = if conf.in_files.len() <= 0 {
[INFO] [stdout]     |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:212:34
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let mut readers: Vec<Box<ReadByLine>> = Vec::new();
[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 |         let mut readers: Vec<Box<dyn ReadByLine>> = Vec::new();
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:214:29
[INFO] [stdout]     |
[INFO] [stdout] 214 |             let reader: Box<ReadByLine> = match source {
[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] 214 |             let reader: Box<dyn ReadByLine> = match source {
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:358:38
[INFO] [stdout]     |
[INFO] [stdout] 358 |         let closure = move || -> Box<ReadByLine> {
[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] 358 |         let closure = move || -> Box<dyn ReadByLine> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.67s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0, clap v2.19.3
[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" "439a420ee0e887a5de7782402fae312b7ab7075353221d73950489929334dd25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "439a420ee0e887a5de7782402fae312b7ab7075353221d73950489929334dd25", kill_on_drop: false }`
[INFO] [stdout] 439a420ee0e887a5de7782402fae312b7ab7075353221d73950489929334dd25
