[INFO] fetching crate thrift 0.13.0...
[INFO] testing thrift-0.13.0 against beta-2021-08-01 for beta-1.55-1
[INFO] extracting crate thrift 0.13.0 into /workspace/builds/worker-36/source
[INFO] validating manifest of crates.io crate thrift 0.13.0 on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate thrift 0.13.0
[INFO] finished tweaking crates.io crate thrift 0.13.0
[INFO] tweaked toml for crates.io crate thrift 0.13.0 written to /workspace/builds/worker-36/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ba541b72941c1c20924903f6de4802abc4459e2128c71b3d1d94cdce4e8813d7
[INFO] running `Command { std: "docker" "start" "-a" "ba541b72941c1c20924903f6de4802abc4459e2128c71b3d1d94cdce4e8813d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ba541b72941c1c20924903f6de4802abc4459e2128c71b3d1d94cdce4e8813d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ba541b72941c1c20924903f6de4802abc4459e2128c71b3d1d94cdce4e8813d7", kill_on_drop: false }`
[INFO] [stdout] ba541b72941c1c20924903f6de4802abc4459e2128c71b3d1d94cdce4e8813d7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] df45cf44ce45cec3c5c390bff4d565f45281b03f4e1156be8e05e362cfc83313
[INFO] running `Command { std: "docker" "start" "-a" "df45cf44ce45cec3c5c390bff4d565f45281b03f4e1156be8e05e362cfc83313", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling integer-encoding v1.1.7
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling threadpool v1.8.1
[INFO] [stderr]    Compiling ordered-float v1.1.1
[INFO] [stderr]    Compiling thrift v0.13.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:280:37
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Error::User(ref e) => e.description(),
[INFO] [stdout]     |                                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:438:30
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:442:30
[INFO] [stdout]     |
[INFO] [stdout] 442 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:446:30
[INFO] [stdout]     |
[INFO] [stdout] 446 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:450:30
[INFO] [stdout]     |
[INFO] [stdout] 450 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:455:34
[INFO] [stdout]     |
[INFO] [stdout] 455 |                     message: err.description().to_owned(), // FIXME: use io error's debug string
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:466:26
[INFO] [stdout]     |
[INFO] [stdout] 466 |             message: err.description().to_owned(), // FIXME: use fmt::Error's debug string
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/protocol/compact.rs:621:21
[INFO] [stdout]     |
[INFO] [stdout] 621 |           _ => panic!(format!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 622 | |             "should not have attempted to convert {} to u8",
[INFO] [stdout] 623 | |             field_type
[INFO] [stdout] 624 | |         )),
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 621 |         _ => panic!(
[INFO] [stdout] 622 |             "should not have attempted to convert {} to u8",
[INFO] [stdout] 623 |             field_type
[INFO] [stdout] 624 |         ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 7.28s
[INFO] running `Command { std: "docker" "inspect" "df45cf44ce45cec3c5c390bff4d565f45281b03f4e1156be8e05e362cfc83313", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df45cf44ce45cec3c5c390bff4d565f45281b03f4e1156be8e05e362cfc83313", kill_on_drop: false }`
[INFO] [stdout] df45cf44ce45cec3c5c390bff4d565f45281b03f4e1156be8e05e362cfc83313
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a12ec800decafdaed3f28b579c5fdb70cddf8b1b0ec1dba539f5764ecc9639b4
[INFO] running `Command { std: "docker" "start" "-a" "a12ec800decafdaed3f28b579c5fdb70cddf8b1b0ec1dba539f5764ecc9639b4", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:280:37
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Error::User(ref e) => e.description(),
[INFO] [stdout]     |                                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:438:30
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:442:30
[INFO] [stdout]     |
[INFO] [stdout] 442 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:446:30
[INFO] [stdout]     |
[INFO] [stdout] 446 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:450:30
[INFO] [stdout]     |
[INFO] [stdout] 450 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:455:34
[INFO] [stdout]     |
[INFO] [stdout] 455 |                     message: err.description().to_owned(), // FIXME: use io error's debug string
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:466:26
[INFO] [stdout]     |
[INFO] [stdout] 466 |             message: err.description().to_owned(), // FIXME: use fmt::Error's debug string
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling thrift v0.13.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/protocol/compact.rs:621:21
[INFO] [stdout]     |
[INFO] [stdout] 621 |           _ => panic!(format!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 622 | |             "should not have attempted to convert {} to u8",
[INFO] [stdout] 623 | |             field_type
[INFO] [stdout] 624 | |         )),
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 621 |         _ => panic!(
[INFO] [stdout] 622 |             "should not have attempted to convert {} to u8",
[INFO] [stdout] 623 |             field_type
[INFO] [stdout] 624 |         ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/server/multiplexed.rs:265:18
[INFO] [stdout]     |
[INFO] [stdout] 265 |                 .compare_and_swap(false, true, Ordering::Relaxed);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:280:37
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Error::User(ref e) => e.description(),
[INFO] [stdout]     |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:438:30
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:442:30
[INFO] [stdout]     |
[INFO] [stdout] 442 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:446:30
[INFO] [stdout]     |
[INFO] [stdout] 446 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:450:30
[INFO] [stdout]     |
[INFO] [stdout] 450 |                 message: err.description().to_owned(),
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:455:34
[INFO] [stdout]     |
[INFO] [stdout] 455 |                     message: err.description().to_owned(), // FIXME: use io error's debug string
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/errors.rs:466:26
[INFO] [stdout]     |
[INFO] [stdout] 466 |             message: err.description().to_owned(), // FIXME: use fmt::Error's debug string
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/protocol/compact.rs:621:21
[INFO] [stdout]     |
[INFO] [stdout] 621 |           _ => panic!(format!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 622 | |             "should not have attempted to convert {} to u8",
[INFO] [stdout] 623 | |             field_type
[INFO] [stdout] 624 | |         )),
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 621 |         _ => panic!(
[INFO] [stdout] 622 |             "should not have attempted to convert {} to u8",
[INFO] [stdout] 623 |             field_type
[INFO] [stdout] 624 |         ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.10s
[INFO] running `Command { std: "docker" "inspect" "a12ec800decafdaed3f28b579c5fdb70cddf8b1b0ec1dba539f5764ecc9639b4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a12ec800decafdaed3f28b579c5fdb70cddf8b1b0ec1dba539f5764ecc9639b4", kill_on_drop: false }`
[INFO] [stdout] a12ec800decafdaed3f28b579c5fdb70cddf8b1b0ec1dba539f5764ecc9639b4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-36/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c07cd411748833495be48d1413b05c44c9c0195bc990c97473ce7cb8dcb7e68e
[INFO] running `Command { std: "docker" "start" "-a" "c07cd411748833495be48d1413b05c44c9c0195bc990c97473ce7cb8dcb7e68e", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:280:37
[INFO] [stderr]     |
[INFO] [stderr] 280 |             Error::User(ref e) => e.description(),
[INFO] [stderr]     |                                     ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:438:30
[INFO] [stderr]     |
[INFO] [stderr] 438 |                 message: err.description().to_owned(),
[INFO] [stderr]     |                              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:442:30
[INFO] [stderr]     |
[INFO] [stderr] 442 |                 message: err.description().to_owned(),
[INFO] [stderr]     |                              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:446:30
[INFO] [stderr]     |
[INFO] [stderr] 446 |                 message: err.description().to_owned(),
[INFO] [stderr]     |                              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:450:30
[INFO] [stderr]     |
[INFO] [stderr] 450 |                 message: err.description().to_owned(),
[INFO] [stderr]     |                              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:455:34
[INFO] [stderr]     |
[INFO] [stderr] 455 |                     message: err.description().to_owned(), // FIXME: use io error's debug string
[INFO] [stderr]     |                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:466:26
[INFO] [stderr]     |
[INFO] [stderr] 466 |             message: err.description().to_owned(), // FIXME: use fmt::Error's debug string
[INFO] [stderr]     |                          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/protocol/compact.rs:621:21
[INFO] [stderr]     |
[INFO] [stderr] 621 |           _ => panic!(format!(
[INFO] [stderr]     |  _____________________^
[INFO] [stderr] 622 | |             "should not have attempted to convert {} to u8",
[INFO] [stderr] 623 | |             field_type
[INFO] [stderr] 624 | |         )),
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the panic!() macro supports formatting, so there's no need for the format!() macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 621 |         _ => panic!(
[INFO] [stderr] 622 |             "should not have attempted to convert {} to u8",
[INFO] [stderr] 623 |             field_type
[INFO] [stderr] 624 |         ),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `thrift` (lib) generated 8 warnings
[INFO] [stderr] warning: use of deprecated associated function `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/server/multiplexed.rs:265:18
[INFO] [stderr]     |
[INFO] [stderr] 265 |                 .compare_and_swap(false, true, Ordering::Relaxed);
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> src/errors.rs:280:37
[INFO] [stderr]     |
[INFO] [stderr] 280 |             Error::User(ref e) => e.description(),
[INFO] [stderr]     |                                     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `thrift` (lib test) generated 9 warnings (7 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/thrift-05b42cb5aca25940)
[INFO] [stdout] 
[INFO] [stdout] running 121 tests
[INFO] [stdout] test protocol::binary::tests::must_read_bool_false ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_bytes ... ok
[INFO] [stdout] test protocol::binary::tests::must_allow_any_non_zero_value_to_be_interpreted_as_bool_true ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_field_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_list_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_field_stop ... ok
[INFO] [stdout] test protocol::binary::tests::must_read_bool_true ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_map_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_strict_message_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_bool_false ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_bool_true ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_bytes ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_field_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_field_end ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_list_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_list_end ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_map_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_set_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_map_end ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_message_end ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_non_strict_message_call_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_set_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_set_end ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_stop_field ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_non_strict_message_reply_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_strict_message_call_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_struct_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_struct_end ... ok
[INFO] [stdout] test protocol::binary::tests::must_round_trip_non_strict_message_begin ... ok
[INFO] [stdout] test protocol::binary::tests::must_write_strict_message_reply_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_read_map_end ... ok
[INFO] [stdout] test protocol::compact::tests::must_read_zero_sized_map_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_large_sized_set_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_map_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_map_with_bool_value ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_large_sized_list_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_nested_structs_2 ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_small_sized_list_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_nested_structs_1 ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_nested_structs_3 ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_message_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_small_sized_set_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_struct_with_delta_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_struct_with_mix_of_long_and_delta_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_struct_with_non_zero_initial_field_and_delta_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_bool_field ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_field_end ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_large_sized_list_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_large_sized_set_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_struct_with_long_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_map_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_nested_structs_0 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_list_end ... ok
[INFO] [stdout] test protocol::compact::tests::must_round_trip_bool_field ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_message_end ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_message_begin_1 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_nested_structs_2 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_nested_structs_3 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_nested_structs_0 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_set_end ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_struct_with_mix_of_long_and_delta_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_struct_with_non_zero_initial_field_and_delta_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_message_begin_0 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_zero_sized_map_begin ... ok
[INFO] [stdout] test protocol::tests::must_create_usable_input_protocol_from_boxed_input ... ok
[INFO] [stdout] test protocol::tests::must_create_usable_input_protocol_from_concrete_input_protocol ... ok
[INFO] [stdout] test protocol::tests::must_create_usable_output_protocol_from_boxed_output ... ok
[INFO] [stdout] test protocol::tests::must_create_usable_output_protocol_from_concrete_output_protocol ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_nested_structs_1 ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_small_sized_set_begin ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_struct_with_delta_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_struct_with_long_fields ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_map_with_bool_key_and_value ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_small_sized_list_begin ... ok
[INFO] [stdout] test protocol::multiplexed::tests::must_write_message_begin_with_prefixed_service_name ... ok
[INFO] [stdout] test server::multiplexed::tests::should_return_full_ident_if_no_separator_exists ... ok
[INFO] [stdout] test protocol::compact::tests::must_write_map_end ... ok
[INFO] [stdout] test server::multiplexed::tests::should_route_call_to_correct_processor_if_no_separator_exists_and_default_processor_set ... ok
[INFO] [stdout] test server::multiplexed::tests::should_split_name_into_proper_separator_and_service_call ... ok
[INFO] [stdout] test server::multiplexed::tests::should_write_error_if_separator_exists_and_no_processor_found ... ok
[INFO] [stdout] test server::multiplexed::tests::should_route_call_to_correct_processor ... ok
[INFO] [stdout] test transport::buffered::tests::must_fill_user_buffer_with_only_as_many_bytes_as_available ... ok
[INFO] [stdout] test transport::buffered::tests::must_auto_flush_if_write_buffer_full ... ok
[INFO] [stdout] test server::multiplexed::tests::should_write_error_if_no_separator_found_and_no_default_processor_exists ... ok
[INFO] [stdout] test transport::buffered::tests::must_read_successfully ... ok
[INFO] [stdout] test transport::buffered::tests::must_return_zero_if_caller_calls_write_with_empty_buffer ... ok
[INFO] [stdout] test transport::buffered::tests::must_return_zero_if_caller_reads_into_zero_capacity_buffer ... ok
[INFO] [stdout] test transport::buffered::tests::must_return_zero_if_read_buffer_is_empty ... ok
[INFO] [stdout] test transport::buffered::tests::must_write_successfully_after_flush ... ok
[INFO] [stdout] test transport::buffered::tests::must_return_zero_if_nothing_more_can_be_read ... ok
[INFO] [stdout] test transport::buffered::tests::must_write_to_inner_transport_on_flush ... ok
[INFO] [stdout] test transport::buffered::tests::must_return_error_when_nothing_can_be_written_to_underlying_channel ... ok
[INFO] [stdout] test transport::framed::tests::must_read_message_greater_than_initial_buffer_size ... ok
[INFO] [stdout] test transport::framed::tests::must_return_error_if_nothing_can_be_written_to_inner_transport_on_flush ... ok
[INFO] [stdout] test transport::framed::tests::must_read_message_smaller_than_initial_buffer_size ... ok
[INFO] [stdout] test transport::framed::tests::must_return_zero_if_caller_calls_write_with_empty_buffer ... ok
[INFO] [stdout] test transport::framed::tests::must_write_message_smaller_than_buffer_size ... ok
[INFO] [stdout] test transport::framed::tests::must_write_successfully_after_flush ... ok
[INFO] [stdout] test transport::framed::tests::must_write_message_greater_than_buffer_size_01 ... ok
[INFO] [stdout] test transport::framed::tests::must_write_message_greater_than_buffer_size_00 ... ok
[INFO] [stdout] test transport::framed::tests::must_read_multiple_messages_in_sequence_correctly ... ok
[INFO] [stdout] test transport::mem::tests::must_accept_multiple_reads_until_all_bytes_read ... ok
[INFO] [stdout] test transport::mem::tests::must_accept_multiple_writes_until_buffer_is_full ... ok
[INFO] [stdout] test transport::framed::tests::must_write_to_inner_transport_on_flush ... ok
[INFO] [stdout] test transport::mem::tests::must_allow_readable_bytes_to_be_set_after_read_buffer_emptied ... ok
[INFO] [stdout] test transport::mem::tests::must_allow_reads_to_succeed_after_read_buffer_replenished ... ok
[INFO] [stdout] test transport::mem::tests::must_empty_read_buffer ... ok
[INFO] [stdout] test transport::mem::tests::must_accept_writes_after_buffer_emptied ... ok
[INFO] [stdout] test transport::tests::must_create_usable_read_channel_from_boxed_read ... ok
[INFO] [stdout] test transport::tests::must_create_usable_read_channel_from_concrete_read_type ... ok
[INFO] [stdout] test transport::tests::must_create_usable_read_transport_from_boxed_read ... ok
[INFO] [stdout] test transport::tests::must_create_usable_read_transport_from_concrete_read_transport ... ok
[INFO] [stdout] test transport::tests::must_create_usable_write_channel_from_boxed_write ... ok
[INFO] [stdout] test transport::tests::must_create_usable_write_channel_from_concrete_write_type ... ok
[INFO] [stdout] test transport::tests::must_create_usable_write_transport_from_boxed_write ... ok
[INFO] [stdout] test transport::tests::must_create_usable_write_transport_from_concrete_write_transport ... ok
[INFO] [stdout] test transport::mem::tests::must_empty_write_buffer ... ok
[INFO] [stdout] test protocol::compact::tests::must_fail_if_write_field_end_without_writing_bool_value - should panic ... ok
[INFO] [stdout] test protocol::compact::tests::must_fail_if_write_stop_field_without_writing_bool_value - should panic ... ok
[INFO] [stdout] test protocol::compact::tests::must_fail_if_write_struct_end_without_any_fields - should panic ... ok
[INFO] [stdout] test protocol::compact::tests::must_fail_if_write_struct_end_without_writing_bool_value - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 121 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests thrift
[INFO] [stdout] 
[INFO] [stdout] running 23 tests
[INFO] [stdout] test src/protocol/compact.rs - protocol::compact::TCompactOutputProtocol (line 336) - compile ... ok
[INFO] [stdout] test src/protocol/mod.rs - protocol::TOutputProtocolFactory (line 568) - compile ... ok
[INFO] [stdout] test src/protocol/compact.rs - protocol::compact::TCompactInputProtocol (line 40) - compile ... ok
[INFO] [stdout] test src/transport/socket.rs - transport::socket::TTcpChannel (line 32) - compile ... ok
[INFO] [stdout] test src/transport/framed.rs - transport::framed::TFramedWriteTransport (line 141) - compile ... ok
[INFO] [stdout] test src/protocol/mod.rs - protocol (line 24) - compile ... ok
[INFO] [stdout] test src/protocol/binary.rs - protocol::binary::TBinaryOutputProtocol (line 267) - compile ... ok
[INFO] [stdout] test src/protocol/mod.rs - protocol::TInputProtocolFactory (line 537) - compile ... ok
[INFO] [stdout] test src/transport/buffered.rs - transport::buffered::TBufferedReadTransport (line 43) - compile ... ok
[INFO] [stdout] test src/server/threaded.rs - server::threaded::TServer (line 45) - compile ... FAILED
[INFO] [stdout] test src/protocol/binary.rs - protocol::binary::TBinaryInputProtocol (line 41) - compile ... ok
[INFO] [stdout] test src/transport/socket.rs - transport::socket::TTcpChannel (line 46) - compile ... ok
[INFO] [stdout] test src/protocol/mod.rs - protocol (line 43) - compile ... ok
[INFO] [stdout] test src/server/mod.rs - server::TProcessor (line 41) - compile ... FAILED
[INFO] [stdout] test src/protocol/multiplexed.rs - protocol::multiplexed::TMultiplexedOutputProtocol (line 41) - compile ... ok
[INFO] [stdout] test src/protocol/mod.rs - protocol::TOutputProtocol (line 275) - compile ... ok
[INFO] [stdout] test src/protocol/mod.rs - protocol::TInputProtocol (line 126) - compile ... ok
[INFO] [stdout] test src/transport/buffered.rs - transport::buffered::TBufferedWriteTransport (line 159) - compile ... ok
[INFO] [stdout] test src/protocol/stored.rs - protocol::stored::TStoredInputProtocol (line 44) - compile ... FAILED
[INFO] [stdout] test src/transport/framed.rs - transport::framed::TFramedReadTransport (line 44) - compile ... ok
[INFO] [stdout] test src/errors.rs - errors::Error (line 134) ... FAILED
[INFO] [stdout] test src/errors.rs - errors::Error (line 105) ... ok
[INFO] [stdout] test src/errors.rs - errors::Error (line 60) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/server/threaded.rs - server::threaded::TServer (line 45) stdout ----
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/threaded.rs:67:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn process(&self, i: &mut TInputProtocol, o: &mut TOutputProtocol) -> thrift::Result<()> {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/server/threaded.rs:43:9
[INFO] [stderr] error: test failed, to rerun pass '--doc'
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/threaded.rs:67:55
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn process(&self, i: &mut TInputProtocol, o: &mut TOutputProtocol) -> thrift::Result<()> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/threaded.rs:93:20
[INFO] [stdout]    |
[INFO] [stdout] 52 | let i_tr_fact: Box<TReadTransportFactory> = Box::new(TBufferedReadTransportFactory::new());
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TReadTransportFactory`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/threaded.rs:94:20
[INFO] [stdout]    |
[INFO] [stdout] 53 | let i_pr_fact: Box<TInputProtocolFactory> = Box::new(TBinaryInputProtocolFactory::new());
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocolFactory`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/threaded.rs:95:20
[INFO] [stdout]    |
[INFO] [stdout] 54 | let o_tr_fact: Box<TWriteTransportFactory> = Box::new(TBufferedWriteTransportFactory::new());
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TWriteTransportFactory`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/threaded.rs:96:20
[INFO] [stdout]    |
[INFO] [stdout] 55 | let o_pr_fact: Box<TOutputProtocolFactory> = Box::new(TBinaryOutputProtocolFactory::new());
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocolFactory`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/server/mod.rs - server::TProcessor (line 41) stdout ----
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/mod.rs:59:31
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn process(&self, i: &mut TInputProtocol, o: &mut TOutputProtocol) -> thrift::Result<()> {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/server/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server/mod.rs:59:55
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn process(&self, i: &mut TInputProtocol, o: &mut TOutputProtocol) -> thrift::Result<()> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/protocol/stored.rs - protocol::stored::TStoredInputProtocol (line 44) stdout ----
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/protocol/stored.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         _: &mut TInputProtocol,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^ help: use `dyn`: `dyn TInputProtocol`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/protocol/stored.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/protocol/stored.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |         _: &mut TOutputProtocol
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TOutputProtocol`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/errors.rs - errors::Error (line 134) stdout ----
[INFO] [stdout] error: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:163:10
[INFO] [stdout]    |
[INFO] [stdout] 33 |     self.description().fmt(f)
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/errors.rs:132:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/errors.rs - errors::Error (line 134)
[INFO] [stdout]     src/protocol/stored.rs - protocol::stored::TStoredInputProtocol (line 44)
[INFO] [stdout]     src/server/mod.rs - server::TProcessor (line 41)
[INFO] [stdout]     src/server/threaded.rs - server::threaded::TServer (line 45)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 19 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.51s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c07cd411748833495be48d1413b05c44c9c0195bc990c97473ce7cb8dcb7e68e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c07cd411748833495be48d1413b05c44c9c0195bc990c97473ce7cb8dcb7e68e", kill_on_drop: false }`
[INFO] [stdout] c07cd411748833495be48d1413b05c44c9c0195bc990c97473ce7cb8dcb7e68e
