[INFO] cloning repository https://github.com/prevy/prevy-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/prevy/prevy-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fprevy%2Fprevy-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fprevy%2Fprevy-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b8e392dc545f284440a4ddda2bdf23e78ec83cc4
[INFO] checking prevy/prevy-rust against master#cb06d12710575a0d7ff71d6fe108f3bcff4f9195 for pr-128425-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fprevy%2Fprevy-rust" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/prevy/prevy-rust on toolchain cb06d12710575a0d7ff71d6fe108f3bcff4f9195
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/prevy/prevy-rust
[INFO] finished tweaking git repo https://github.com/prevy/prevy-rust
[INFO] tweaked toml for git repo https://github.com/prevy/prevy-rust written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/prevy/prevy-rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xdg-basedir v1.0.0
[INFO] [stderr]   Downloaded atty v0.1.2
[INFO] [stderr]   Downloaded threadpool v1.3.0
[INFO] [stderr]   Downloaded yaml-rust v0.3.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a70c75c9c398f245a25b9e8e1d5620bb3eb699bf33462279d74d2d7abc4291b5
[INFO] running `Command { std: "docker" "start" "-a" "a70c75c9c398f245a25b9e8e1d5620bb3eb699bf33462279d74d2d7abc4291b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a70c75c9c398f245a25b9e8e1d5620bb3eb699bf33462279d74d2d7abc4291b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a70c75c9c398f245a25b9e8e1d5620bb3eb699bf33462279d74d2d7abc4291b5", kill_on_drop: false }`
[INFO] [stdout] a70c75c9c398f245a25b9e8e1d5620bb3eb699bf33462279d74d2d7abc4291b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+cb06d12710575a0d7ff71d6fe108f3bcff4f9195" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2c734da182fec854dcd160d44d977895b8ac77d5a923e4f8e488379730bb6b91
[INFO] running `Command { std: "docker" "start" "-a" "2c734da182fec854dcd160d44d977895b8ac77d5a923e4f8e488379730bb6b91", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Checking winapi v0.2.7
[INFO] [stderr]     Checking libc v0.2.12
[INFO] [stderr]     Checking strsim v0.4.1
[INFO] [stderr]     Checking ansi_term v0.7.2
[INFO] [stderr]     Checking bitflags v0.5.0
[INFO] [stderr]     Checking vec_map v0.6.0
[INFO] [stderr]     Checking unicode-width v0.1.3
[INFO] [stderr]     Checking yaml-rust v0.3.3
[INFO] [stderr]     Checking xdg-basedir v1.0.0
[INFO] [stderr]     Checking threadpool v1.3.0
[INFO] [stderr]     Checking kernel32-sys v0.2.2
[INFO] [stderr]     Checking atty v0.1.2
[INFO] [stderr]     Checking clap v2.6.0
[INFO] [stderr]     Checking prevy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/vcs/mod.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn from_info(RepoInfo) -> Self where Self: Sized;
[INFO] [stdout]    |                  ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: RepoInfo`
[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: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/vcs/mod.rs:99:15
[INFO] [stdout]    |
[INFO] [stdout] 99 |         path: try!(as_string(hash.0)),
[INFO] [stdout]    |               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/vcs/mod.rs:104:34
[INFO] [stdout]     |
[INFO] [stdout] 104 |         repo_info.remotes.insert(try!(as_string(remote)), try!(as_string(url)));
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/vcs/mod.rs:104:59
[INFO] [stdout]     |
[INFO] [stdout] 104 |         repo_info.remotes.insert(try!(as_string(remote)), try!(as_string(url)));
[INFO] [stdout]     |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/commands/mod.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()>;
[INFO] [stdout]   |                           ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<dyn Repo + Send>>) -> Box<Fn() -> ()>;
[INFO] [stdout]   |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/commands/mod.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()>;
[INFO] [stdout]   |                                                 ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<dyn Fn() -> ()>;
[INFO] [stdout]   |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:62:32
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn clone_box(&self) -> Box<Repo>;
[INFO] [stdout]    |                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn clone_box(&self) -> Box<dyn Repo>;
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context/workspace.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub repos: Vec<Box<Repo>>,
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub repos: Vec<Box<dyn Repo>>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/update.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()> {
[INFO] [stdout]    |                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<dyn Repo + Send>>) -> Box<Fn() -> ()> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/update.rs:11:49
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()> {
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<dyn Fn() -> ()> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:87:20
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl Clone for Box<Repo> {
[INFO] [stdout]    |                    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl Clone for Box<dyn Repo> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl fmt::Debug for Repo {
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl fmt::Debug for dyn Repo {
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/vcs/mod.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn from_info(RepoInfo) -> Self where Self: Sized;
[INFO] [stdout]    |                  ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: RepoInfo`
[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: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/vcs/mod.rs:99:15
[INFO] [stdout]    |
[INFO] [stdout] 99 |         path: try!(as_string(hash.0)),
[INFO] [stdout]    |               ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/vcs/mod.rs:104:34
[INFO] [stdout]     |
[INFO] [stdout] 104 |         repo_info.remotes.insert(try!(as_string(remote)), try!(as_string(url)));
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/vcs/mod.rs:104:59
[INFO] [stdout]     |
[INFO] [stdout] 104 |         repo_info.remotes.insert(try!(as_string(remote)), try!(as_string(url)));
[INFO] [stdout]     |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/commands/mod.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()>;
[INFO] [stdout]   |                           ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<dyn Repo + Send>>) -> Box<Fn() -> ()>;
[INFO] [stdout]   |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/commands/mod.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()>;
[INFO] [stdout]   |                                                 ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<dyn Fn() -> ()>;
[INFO] [stdout]   |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:68:32
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn clone_box(&self) -> Box<Repo> {
[INFO] [stdout]    |                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn clone_box(&self) -> Box<dyn Repo> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:62:32
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn clone_box(&self) -> Box<Repo>;
[INFO] [stdout]    |                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn clone_box(&self) -> Box<dyn Repo>;
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context/workspace.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub repos: Vec<Box<Repo>>,
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub repos: Vec<Box<dyn Repo>>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/update.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()> {
[INFO] [stdout]    |                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<dyn Repo + Send>>) -> Box<Fn() -> ()> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/commands/update.rs:11:49
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<Fn() -> ()> {
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn run(repos: Vec<Box<Repo + Send>>) -> Box<dyn Fn() -> ()> {
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:88:28
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn clone(&self) -> Box<Repo> {
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn clone(&self) -> Box<dyn Repo> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:97:54
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn from_hash(hash: (&Yaml, &Yaml)) -> Result<Box<Repo>> {
[INFO] [stdout]    |                                                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn from_hash(hash: (&Yaml, &Yaml)) -> Result<Box<dyn Repo>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:87:20
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl Clone for Box<Repo> {
[INFO] [stdout]    |                    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl Clone for Box<dyn Repo> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl fmt::Debug for Repo {
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl fmt::Debug for dyn Repo {
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:68:32
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn clone_box(&self) -> Box<Repo> {
[INFO] [stdout]    |                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn clone_box(&self) -> Box<dyn Repo> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:88:28
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn clone(&self) -> Box<Repo> {
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn clone(&self) -> Box<dyn Repo> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/vcs/mod.rs:97:54
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn from_hash(hash: (&Yaml, &Yaml)) -> Result<Box<Repo>> {
[INFO] [stdout]    |                                                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn from_hash(hash: (&Yaml, &Yaml)) -> Result<Box<dyn Repo>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]   --> src/core/constants.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     var.trim_left_matches(VAR_PREFIX).to_lowercase().to_string()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 32 -     var.trim_left_matches(VAR_PREFIX).to_lowercase().to_string()
[INFO] [stdout] 32 +     var.trim_start_matches(VAR_PREFIX).to_lowercase().to_string()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]   --> src/commands/update.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let (tx, rx) = channel();
[INFO] [stdout]    |                  ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]   --> src/core/constants.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     var.trim_left_matches(VAR_PREFIX).to_lowercase().to_string()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 32 -     var.trim_left_matches(VAR_PREFIX).to_lowercase().to_string()
[INFO] [stdout] 32 +     var.trim_start_matches(VAR_PREFIX).to_lowercase().to_string()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx`
[INFO] [stdout]   --> src/commands/update.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let (tx, rx) = channel();
[INFO] [stdout]    |                  ^^ help: if this is intentional, prefix it with an underscore: `_rx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Cmd` is never used
[INFO] [stdout]  --> src/commands/mod.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | trait Cmd {
[INFO] [stdout]   |       ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Update` is never constructed
[INFO] [stdout]  --> src/commands/update.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Update;
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]   --> src/core/errors.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Error {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 38 |     /// The kind of error.
[INFO] [stdout] 39 |     pub kind: ErrorKind,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Cmd` is never used
[INFO] [stdout]  --> src/commands/mod.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | trait Cmd {
[INFO] [stdout]   |       ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Update` is never constructed
[INFO] [stdout]  --> src/commands/update.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Update;
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]   --> src/core/errors.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Error {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 38 |     /// The kind of error.
[INFO] [stdout] 39 |     pub kind: ErrorKind,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.57s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.5.0, clap v2.6.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "2c734da182fec854dcd160d44d977895b8ac77d5a923e4f8e488379730bb6b91", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c734da182fec854dcd160d44d977895b8ac77d5a923e4f8e488379730bb6b91", kill_on_drop: false }`
[INFO] [stdout] 2c734da182fec854dcd160d44d977895b8ac77d5a923e4f8e488379730bb6b91
