[INFO] fetching crate cargo-add 0.2.0...
[INFO] checking cargo-add-0.2.0 against master#e59540968e0c6fc3c37d92a639b83fc8fcee5e81 for pr-114559
[INFO] extracting crate cargo-add 0.2.0 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate cargo-add 0.2.0 on toolchain e59540968e0c6fc3c37d92a639b83fc8fcee5e81
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cargo-add 0.2.0
[INFO] finished tweaking crates.io crate cargo-add 0.2.0
[INFO] tweaked toml for crates.io crate cargo-add 0.2.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded toml v0.2.1
[INFO] [stderr]   Downloaded rustc-serialize v0.3.22
[INFO] [stderr]   Downloaded strsim v0.6.0
[INFO] [stderr]   Downloaded docopt v0.7.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:5c16f4e6c37141f9fef0bc86f7a492d732943053e42aab8461035881e3f53823" "/opt/rustwide/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c32100751126e1dd25b2cb02c6be2564d788a0c8d2d174f831f6d402c077ba60
[INFO] running `Command { std: "docker" "start" "-a" "c32100751126e1dd25b2cb02c6be2564d788a0c8d2d174f831f6d402c077ba60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c32100751126e1dd25b2cb02c6be2564d788a0c8d2d174f831f6d402c077ba60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c32100751126e1dd25b2cb02c6be2564d788a0c8d2d174f831f6d402c077ba60", kill_on_drop: false }`
[INFO] [stdout] c32100751126e1dd25b2cb02c6be2564d788a0c8d2d174f831f6d402c077ba60
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:5c16f4e6c37141f9fef0bc86f7a492d732943053e42aab8461035881e3f53823" "/opt/rustwide/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 10588456907a85090f345a9ff1fbe8d25ae0dec64e92713c281c1c4883912706
[INFO] running `Command { std: "docker" "start" "-a" "10588456907a85090f345a9ff1fbe8d25ae0dec64e92713c281c1c4883912706", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling regex v0.2.11
[INFO] [stderr]     Checking ucd-util v0.1.10
[INFO] [stderr]     Checking utf8-ranges v1.0.5
[INFO] [stderr]     Checking rustc-serialize v0.3.22
[INFO] [stderr]     Checking semver-parser v0.7.0
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking strsim v0.6.0
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]     Checking regex-syntax v0.5.6
[INFO] [stderr]     Checking semver v0.6.0
[INFO] [stderr]     Checking aho-corasick v0.6.10
[INFO] [stderr]     Checking toml v0.2.1
[INFO] [stderr]     Checking docopt v0.7.0
[INFO] [stderr]     Checking cargo-add v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/main.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Debug, RustcDecodable)]
[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/main.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     try!(semver::VersionReq::parse(version));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     try!(file.read_to_string(&mut data));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     try!(file.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |         try!(toml.remove("package").map(|data| ("package", data))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:73:74
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn parse_dependency(dep: &String, args: &Args) -> Result<Dependency, Box<Error>> {
[INFO] [stdout]    |                                                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn parse_dependency(dep: &String, args: &Args) -> Result<Dependency, Box<dyn Error>> {
[INFO] [stdout]    |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:82:62
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn parse_semver(version: &String) -> Result<toml::Value, Box<Error>> {
[INFO] [stdout]    |                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn parse_semver(version: &String) -> Result<toml::Value, Box<dyn Error>> {
[INFO] [stdout]    |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:88:56
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn parse_git(repo: &String) -> Result<toml::Value, Box<Error>> {
[INFO] [stdout]    |                                                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn parse_git(repo: &String) -> Result<toml::Value, Box<dyn Error>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:95:57
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn parse_path(path: &String) -> Result<toml::Value, Box<Error>> {
[INFO] [stdout]    |                                                         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn parse_path(path: &String) -> Result<toml::Value, Box<dyn Error>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:105:69
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn find_manifest(specified: Option<&String>) -> Result<PathBuf, Box<Error>> {
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn find_manifest(specified: Option<&String>) -> Result<PathBuf, Box<dyn Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:122:79
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn read_as_toml(file: &mut File) -> Result<BTreeMap<String, toml::Value>, Box<Error>> {
[INFO] [stdout]     |                                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn read_as_toml(file: &mut File) -> Result<BTreeMap<String, toml::Value>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:131:27
[INFO] [stdout]     |
[INFO] [stdout] 131 |         -> Result<(), Box<Error>> {
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 |         -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported
[INFO] [stdout]   --> src/main.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 | #[derive(Debug, RustcDecodable)]
[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/main.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     try!(semver::VersionReq::parse(version));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     try!(file.read_to_string(&mut data));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     try!(file.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |         try!(toml.remove("package").map(|data| ("package", data))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:73:74
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn parse_dependency(dep: &String, args: &Args) -> Result<Dependency, Box<Error>> {
[INFO] [stdout]    |                                                                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn parse_dependency(dep: &String, args: &Args) -> Result<Dependency, Box<dyn Error>> {
[INFO] [stdout]    |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:82:62
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn parse_semver(version: &String) -> Result<toml::Value, Box<Error>> {
[INFO] [stdout]    |                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn parse_semver(version: &String) -> Result<toml::Value, Box<dyn Error>> {
[INFO] [stdout]    |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:88:56
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn parse_git(repo: &String) -> Result<toml::Value, Box<Error>> {
[INFO] [stdout]    |                                                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn parse_git(repo: &String) -> Result<toml::Value, Box<dyn Error>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:95:57
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn parse_path(path: &String) -> Result<toml::Value, Box<Error>> {
[INFO] [stdout]    |                                                         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn parse_path(path: &String) -> Result<toml::Value, Box<dyn Error>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:105:69
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn find_manifest(specified: Option<&String>) -> Result<PathBuf, Box<Error>> {
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn find_manifest(specified: Option<&String>) -> Result<PathBuf, Box<dyn Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:122:79
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn read_as_toml(file: &mut File) -> Result<BTreeMap<String, toml::Value>, Box<Error>> {
[INFO] [stdout]     |                                                                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn read_as_toml(file: &mut File) -> Result<BTreeMap<String, toml::Value>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:131:27
[INFO] [stdout]     |
[INFO] [stdout] 131 |         -> Result<(), Box<Error>> {
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 131 |         -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/main.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |         format.write_str(self.description())
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/main.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |         format.write_str(self.description())
[INFO] [stdout]    |                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:184:38
[INFO] [stdout]     |
[INFO] [stdout] 184 |     .or_else(|err| -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 184 |     .or_else(|err| -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:184:38
[INFO] [stdout]     |
[INFO] [stdout] 184 |     .or_else(|err| -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 184 |     .or_else(|err| -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 14 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 14 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.59s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.22
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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" "10588456907a85090f345a9ff1fbe8d25ae0dec64e92713c281c1c4883912706", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "10588456907a85090f345a9ff1fbe8d25ae0dec64e92713c281c1c4883912706", kill_on_drop: false }`
[INFO] [stdout] 10588456907a85090f345a9ff1fbe8d25ae0dec64e92713c281c1c4883912706
