[INFO] cloning repository https://github.com/aoikonomopoulos/subdiff
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aoikonomopoulos/subdiff" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9793cb6ac6dd0afb94b3fdc14a7eab73f7dcd2d4
[INFO] checking aoikonomopoulos/subdiff against nightly-2024-02-05 for check-cfg-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aoikonomopoulos/subdiff on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aoikonomopoulos/subdiff
[INFO] finished tweaking git repo https://github.com/aoikonomopoulos/subdiff
[INFO] tweaked toml for git repo https://github.com/aoikonomopoulos/subdiff written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/aoikonomopoulos/subdiff 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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded utf8-ranges v1.0.0
[INFO] [stderr]   Downloaded rand v0.4.2
[INFO] [stderr]   Downloaded lcs-diff v0.1.1
[INFO] [stderr]   Downloaded thread_local v0.3.5
[INFO] [stderr]   Downloaded memoffset v0.2.1
[INFO] [stderr]   Downloaded random v0.12.2
[INFO] [stderr]   Downloaded cfg-if v0.1.3
[INFO] [stderr]   Downloaded num_cpus v1.8.0
[INFO] [stderr]   Downloaded crossbeam-epoch v0.3.1
[INFO] [stderr]   Downloaded clap v2.31.2
[INFO] [stderr]   Downloaded winapi v0.3.5
[INFO] [stderr]   Downloaded libc v0.2.42
[INFO] [stderr]   Downloaded num-traits v0.2.4
[INFO] [stderr]   Downloaded itertools v0.7.8
[INFO] [stderr]   Downloaded temporary v0.6.3
[INFO] [stderr]   Downloaded regex v1.0.0
[INFO] [stderr]   Downloaded regex-syntax v0.6.1
[INFO] [stderr]   Downloaded arrayvec v0.4.7
[INFO] [stderr]   Downloaded crossbeam-utils v0.2.2
[INFO] [stderr]   Downloaded bitflags v1.0.3
[INFO] [stderr]   Downloaded num-integer v0.1.38
[INFO] [stderr]   Downloaded time v0.1.40
[INFO] [stderr]   Downloaded ucd-util v0.1.1
[INFO] [stderr]   Downloaded aho-corasick v0.6.4
[INFO] [stderr]   Downloaded memchr v2.0.1
[INFO] [stderr]   Downloaded lazy_static v1.0.1
[INFO] [stderr]   Downloaded either v1.5.0
[INFO] [stderr]   Downloaded crossbeam-deque v0.2.0
[INFO] [stderr]   Downloaded redox_syscall v0.1.40
[INFO] [stderr]   Downloaded termion v1.5.1
[INFO] [stderr]   Downloaded vec_map v0.8.1
[INFO] [stderr]   Downloaded unicode-width v0.1.5
[INFO] [stderr]   Downloaded rayon v1.0.1
[INFO] [stderr]   Downloaded strsim v0.7.0
[INFO] [stderr]   Downloaded textwrap v0.9.0
[INFO] [stderr]   Downloaded nodrop v0.1.12
[INFO] [stderr]   Downloaded redox_termios v0.1.1
[INFO] [stderr]   Downloaded atty v0.2.10
[INFO] [stderr]   Downloaded rayon-core v1.4.0
[INFO] [stderr]   Downloaded chrono v0.4.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] aee5cd40e5285e01fbbcdc3e8979095cd24a8c1315013de46e2bb4fc2f83e274
[INFO] running `Command { std: "docker" "start" "-a" "aee5cd40e5285e01fbbcdc3e8979095cd24a8c1315013de46e2bb4fc2f83e274", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aee5cd40e5285e01fbbcdc3e8979095cd24a8c1315013de46e2bb4fc2f83e274", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aee5cd40e5285e01fbbcdc3e8979095cd24a8c1315013de46e2bb4fc2f83e274", kill_on_drop: false }`
[INFO] [stdout] aee5cd40e5285e01fbbcdc3e8979095cd24a8c1315013de46e2bb4fc2f83e274
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fd322ca506891afa1713daee42579e3566246bde650450a80b0c07500d60391f
[INFO] running `Command { std: "docker" "start" "-a" "fd322ca506891afa1713daee42579e3566246bde650450a80b0c07500d60391f", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.2.42
[INFO] [stderr]     Checking lazy_static v1.0.1
[INFO] [stderr]    Compiling num-traits v0.2.4
[INFO] [stderr]     Checking nodrop v0.1.12
[INFO] [stderr]     Checking cfg-if v0.1.3
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling num-integer v0.1.38
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking ucd-util v0.1.1
[INFO] [stderr]    Compiling rayon-core v1.4.0
[INFO] [stderr]    Compiling regex v1.0.0
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking bitflags v1.0.3
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking strsim v0.7.0
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking crossbeam-utils v0.2.2
[INFO] [stderr]     Checking utf8-ranges v1.0.0
[INFO] [stderr]     Checking lcs-diff v0.1.1
[INFO] [stderr]     Checking itertools v0.7.8
[INFO] [stderr]     Checking thread_local v0.3.5
[INFO] [stderr]     Checking regex-syntax v0.6.1
[INFO] [stderr]     Checking textwrap v0.9.0
[INFO] [stderr]     Checking random v0.12.2
[INFO] [stderr]     Checking temporary v0.6.3
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]     Checking memchr v2.0.1
[INFO] [stderr]     Checking time v0.1.40
[INFO] [stderr]     Checking atty v0.2.10
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking rand v0.4.2
[INFO] [stderr]     Checking clap v2.31.2
[INFO] [stderr]     Checking aho-corasick v0.6.4
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]     Checking chrono v0.4.3
[INFO] [stderr]     Checking rayon v1.0.1
[INFO] [stderr]     Checking subdiff v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:14:24
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn do_write(&self, &Conf,
[INFO] [stdout]    |                        ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:36
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> io::Result<()>;
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                   ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:26
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:14:24
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn do_write(&self, &Conf,
[INFO] [stdout]    |                        ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:36
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> io::Result<()>;
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> 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]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                   ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:26
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:252:48
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<ReSelector>
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<dyn ReSelector>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:274:43
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector,
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:282:36
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option<Regex>,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option<Regex>,
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:287:33
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:145:35
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:179:29
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write,
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:197:33
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:255:35
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:351:45
[INFO] [stdout]     |
[INFO] [stdout] 351 | ...                   ds : &mut Iterator<Item=DiffResult<T>>) {
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 351 |                                   ds : &mut dyn Iterator<Item=DiffResult<T>>) {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:404:43
[INFO] [stdout]     |
[INFO] [stdout] 404 |                            dump_hunk : &mut FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 405 | |                          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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 404 |                          dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:580:28
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:629:16
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut dyn Write,
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/hunked.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:292:28
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:199:42
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write,
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:234:47
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:293:45
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> 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]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:335:40
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:350:42
[INFO] [stdout]     |
[INFO] [stdout] 350 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 350 |                               out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:252:48
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<ReSelector>
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<dyn ReSelector>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:274:43
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector,
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:368:45
[INFO] [stdout]     |
[INFO] [stdout] 368 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 368 |                                  out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:282:36
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option<Regex>,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option<Regex>,
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:287:33
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:145:35
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:41:35
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:179:29
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write,
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:197:33
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:255:35
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:172:32
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut dyn Write) -> io::Result<()>{
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:351:45
[INFO] [stdout]     |
[INFO] [stdout] 351 | ...                   ds : &mut Iterator<Item=DiffResult<T>>) {
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 351 |                                   ds : &mut dyn Iterator<Item=DiffResult<T>>) {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:404:43
[INFO] [stdout]     |
[INFO] [stdout] 404 |                            dump_hunk : &mut FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 405 | |                          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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 404 |                          dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:580:28
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:629:16
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut dyn Write,
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/hunked.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:292:28
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:199:42
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write,
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:234:47
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:293:45
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:335:40
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:350:42
[INFO] [stdout]     |
[INFO] [stdout] 350 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 350 |                               out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:368:45
[INFO] [stdout]     |
[INFO] [stdout] 368 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 368 |                                  out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:41:35
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:172:32
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut dyn Write) -> io::Result<()>{
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/tests.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut dyn Write) {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<ReSelector> = re.map(build_re_selector)
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<dyn ReSelector> = re.map(build_re_selector)
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hunked.rs:422:31
[INFO] [stdout]     |
[INFO] [stdout] 422 |         CollectingCommonsTail(mut hunk, _, _) => hunk,
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<ReSelector> = re.map(build_re_selector)
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<dyn ReSelector> = re.map(build_re_selector)
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hunked.rs:422:31
[INFO] [stdout]     |
[INFO] [stdout] 422 |         CollectingCommonsTail(mut hunk, _, _) => hunk,
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 39 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 38 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 6.59s
[INFO] running `Command { std: "docker" "inspect" "fd322ca506891afa1713daee42579e3566246bde650450a80b0c07500d60391f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd322ca506891afa1713daee42579e3566246bde650450a80b0c07500d60391f", kill_on_drop: false }`
[INFO] [stdout] fd322ca506891afa1713daee42579e3566246bde650450a80b0c07500d60391f
[INFO] checking aoikonomopoulos/subdiff against nightly-2024-02-05+rustflags=-Dunexpected_cfgs+cargoflags=-Zcheck-cfg for check-cfg-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aoikonomopoulos/subdiff on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aoikonomopoulos/subdiff
[INFO] finished tweaking git repo https://github.com/aoikonomopoulos/subdiff
[INFO] tweaked toml for git repo https://github.com/aoikonomopoulos/subdiff written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/aoikonomopoulos/subdiff 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" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 39d49274e2bf39358ca56863d21691338a3e5318c4e49cf3e501b815a3413e7f
[INFO] running `Command { std: "docker" "start" "-a" "39d49274e2bf39358ca56863d21691338a3e5318c4e49cf3e501b815a3413e7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "39d49274e2bf39358ca56863d21691338a3e5318c4e49cf3e501b815a3413e7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "39d49274e2bf39358ca56863d21691338a3e5318c4e49cf3e501b815a3413e7f", kill_on_drop: false }`
[INFO] [stdout] 39d49274e2bf39358ca56863d21691338a3e5318c4e49cf3e501b815a3413e7f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunexpected_cfgs" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zcheck-cfg", kill_on_drop: false }`
[INFO] [stdout] 85a3397e02e84a61236c063b299667fd89d6afc83038105363e308cea4cb22a4
[INFO] running `Command { std: "docker" "start" "-a" "85a3397e02e84a61236c063b299667fd89d6afc83038105363e308cea4cb22a4", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.2.42
[INFO] [stderr]     Checking lazy_static v1.0.1
[INFO] [stderr]     Checking nodrop v0.1.12
[INFO] [stderr]     Checking cfg-if v0.1.3
[INFO] [stderr]    Compiling num-traits v0.2.4
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling num-integer v0.1.38
[INFO] [stderr]    Compiling rayon-core v1.4.0
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]    Compiling regex v1.0.0
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking ucd-util v0.1.1
[INFO] [stderr]     Checking strsim v0.7.0
[INFO] [stderr]     Checking utf8-ranges v1.0.0
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking bitflags v1.0.3
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking crossbeam-utils v0.2.2
[INFO] [stderr]     Checking thread_local v0.3.5
[INFO] [stderr]     Checking itertools v0.7.8
[INFO] [stderr]     Checking random v0.12.2
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]     Checking lcs-diff v0.1.1
[INFO] [stderr]     Checking textwrap v0.9.0
[INFO] [stderr]     Checking regex-syntax v0.6.1
[INFO] [stderr]     Checking temporary v0.6.3
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]     Checking memchr v2.0.1
[INFO] [stderr]     Checking rand v0.4.2
[INFO] [stderr]     Checking time v0.1.40
[INFO] [stderr]     Checking atty v0.2.10
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking clap v2.31.2
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]     Checking aho-corasick v0.6.4
[INFO] [stderr]     Checking chrono v0.4.3
[INFO] [stderr]     Checking rayon v1.0.1
[INFO] [stderr]     Checking subdiff v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:14:24
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn do_write(&self, &Conf,
[INFO] [stdout]    |                        ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:36
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> io::Result<()>;
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/wdiff.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[cfg_attr(feature = "cargo-clippy", allow(enum_variant_names))]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout]    = note: requested on the command line with `-D unexpected-cfgs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                   ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:26
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> 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]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:252:48
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<ReSelector>
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<dyn ReSelector>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:274:43
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector,
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:282:36
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option<Regex>,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option<Regex>,
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:287:33
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:145:35
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:179:29
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write,
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:197:33
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:255:35
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:351:45
[INFO] [stdout]     |
[INFO] [stdout] 351 | ...                   ds : &mut Iterator<Item=DiffResult<T>>) {
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 351 |                                   ds : &mut dyn Iterator<Item=DiffResult<T>>) {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:404:43
[INFO] [stdout]     |
[INFO] [stdout] 404 |                            dump_hunk : &mut FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 405 | |                          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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 404 |                          dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:580:28
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:629:16
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut dyn Write,
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/hunked.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:292:28
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:199:42
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write,
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:234:47
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:293:45
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:335:40
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:350:42
[INFO] [stdout]     |
[INFO] [stdout] 350 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 350 |                               out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:368:45
[INFO] [stdout]     |
[INFO] [stdout] 368 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 368 |                                  out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:41:35
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:172:32
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut dyn Write) -> io::Result<()>{
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:14:24
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn do_write(&self, &Conf,
[INFO] [stdout]    |                        ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:15:36
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 &[Self::DiffItem], &[Self::DiffItem],
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/hunked.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> io::Result<()>;
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/wdiff.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[cfg_attr(feature = "cargo-clippy", allow(enum_variant_names))]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg> for more information about checking conditional configuration
[INFO] [stdout]    = note: requested on the command line with `-D unexpected-cfgs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                   ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/main.rs:144:26
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn sel(&self, &Conf, &[u8]) -> Option<Vec<u8>>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> 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]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:252:48
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<ReSelector>
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn build_re_selector<I, S>(re_strs : I) -> Box<dyn ReSelector>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:274:43
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector,
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:282:36
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option<Regex>,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option<Regex>,
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:287:33
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:145:35
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |                        out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:179:29
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write,
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:197:33
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write,
[INFO] [stdout]     |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:255:35
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf,
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:351:45
[INFO] [stdout]     |
[INFO] [stdout] 351 | ...                   ds : &mut Iterator<Item=DiffResult<T>>) {
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 351 |                                   ds : &mut dyn Iterator<Item=DiffResult<T>>) {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:404:43
[INFO] [stdout]     |
[INFO] [stdout] 404 |                            dump_hunk : &mut FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |  ___________________________________________^
[INFO] [stdout] 405 | |                          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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 404 |                          dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) ->
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 441 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:580:28
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut FnMut(Option<&Hunk<T>>) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 580 |           dump_hunk : &mut dyn FnMut(Option<&Hunk<T>>) -> io::Result<()>,
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:629:16
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 629 |     out : &mut dyn Write,
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/hunked.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/hunked.rs:292:28
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:199:42
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write,
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:234:47
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:293:45
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:335:40
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write,
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:350:42
[INFO] [stdout]     |
[INFO] [stdout] 350 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 350 |                               out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:368:45
[INFO] [stdout]     |
[INFO] [stdout] 368 | ...                   out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 368 |                                  out : &mut dyn Write) -> io::Result<()>
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()>;
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:41:35
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wdiff.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn write_to(&self, out : &mut dyn Write) -> io::Result<()> {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wdiff.rs:172:32
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut Write) -> 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn write(&self, out : &mut dyn Write) -> io::Result<()>{
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/tests.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut 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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut dyn Write) {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<ReSelector> = re.map(build_re_selector)
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<dyn ReSelector> = re.map(build_re_selector)
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hunked.rs:422:31
[INFO] [stdout]     |
[INFO] [stdout] 422 |         CollectingCommonsTail(mut hunk, _, _) => hunk,
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:310:27
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<ReSelector> = re.map(build_re_selector)
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 310 |             let mre : Box<dyn ReSelector> = re.map(build_re_selector)
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hunked.rs:422:31
[INFO] [stdout]     |
[INFO] [stdout] 422 |         CollectingCommonsTail(mut hunk, _, _) => hunk,
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 38 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `subdiff` (bin "subdiff") due to 2 previous errors; 38 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 1 previous error; 39 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `subdiff` (bin "subdiff" test) due to 2 previous errors; 39 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "85a3397e02e84a61236c063b299667fd89d6afc83038105363e308cea4cb22a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85a3397e02e84a61236c063b299667fd89d6afc83038105363e308cea4cb22a4", kill_on_drop: false }`
[INFO] [stdout] 85a3397e02e84a61236c063b299667fd89d6afc83038105363e308cea4cb22a4
